'1.0',
'info' => ['style' => 'RPC', 'product' => 'Dts', 'version' => '2020-01-01'],
'directories' => [
[
'children' => ['DescribeDTSIP', 'DescribeEndpointSwitchStatus', 'DescribeInitializationStatus', 'ShieldPrecheck'],
'type' => 'directory',
'title' => 'Data management',
],
[
'children' => ['CreateMigrationJob', 'DeleteMigrationJob', 'StartMigrationJob', 'StopMigrationJob', 'SuspendMigrationJob', 'ConfigureMigrationJob', 'DescribeMigrationJobDetail', 'DescribeMigrationJobs', 'DescribeMigrationJobStatus', 'DescribeConnectionStatus'],
'type' => 'directory',
'title' => 'Data migration',
],
[
'children' => [
'ConfigureSubscription',
[
'children' => ['CreateConsumerChannel', 'DeleteConsumerChannel', 'ModifyConsumerChannel', 'DescribeConsumerChannel'],
'type' => 'directory',
'title' => 'Manage consumer channels',
],
[
'children' => ['CreateConsumerGroup', 'DeleteConsumerGroup', 'ModifyConsumerGroupPassword', 'DescribeConsumerGroup'],
'type' => 'directory',
'title' => 'Manage consumer groups',
],
'CreateSubscriptionInstance',
'DeleteSubscriptionInstance',
'StartSubscriptionInstance',
'ModifySubscriptionObject',
'ModifyConsumptionTimestamp',
'DescribeSubscriptionInstances',
'DescribeSubscriptionInstanceStatus',
'ConfigureSubscriptionInstance',
],
'type' => 'directory',
'title' => 'Change tracking',
],
[
'children' => ['CreateSynchronizationJob', 'DeleteSynchronizationJob', 'StartSynchronizationJob', 'ModifySynchronizationObject', 'DescribeSynchronizationJobReplicatorCompare', 'DescribeSynchronizationJobs', 'DescribeSynchronizationJobStatus', 'DescribeSynchronizationJobStatusList', 'DescribeSynchronizationObjectModifyStatus', 'SuspendSynchronizationJob', 'ResetSynchronizationJob', 'ConfigureSynchronizationJobReplicatorCompare', 'ConfigureSynchronizationJob', 'SwitchSynchronizationEndpoint'],
'type' => 'directory',
'title' => 'Data synchronization',
],
[
'children' => ['DescribeMigrationJobAlert', 'DescribeSynchronizationJobAlert', 'DescribeSubscriptionInstanceAlert', 'ConfigureMigrationJobAlert', 'ConfigureSynchronizationJobAlert', 'ConfigureSubscriptionInstanceAlert'],
'type' => 'directory',
'title' => 'Monitoring and alerting',
],
[
'children' => ['DeleteDtsJob', 'ConfigureDtsJob', 'ModifyDtsJob', 'ModifyDtsJobName', 'ModifyDtsJobPassword', 'ResetDtsJob', 'StartDtsJob', 'StopDtsJob', 'SuspendDtsJob', 'DescribeDtsJobDetail', 'DescribeDtsJobs'],
'type' => 'directory',
'title' => 'Task management',
],
[
'children' => ['ListTagResources', 'TagResources', 'UntagResources'],
'type' => 'directory',
'title' => 'Tag management',
],
[
'children' => ['ConvertInstanceResourceGroup'],
'type' => 'directory',
'title' => 'Resource Group Management',
],
[
'children' => [
'DescribeDocParserJobResult', 'CreateDocParserJob', 'CountJobByCondition', 'CreateDtsInstance', 'CreateJobMonitorRule', 'DeleteDtsJobs', 'DescribeDtsServiceLog', 'DescribeJobMonitorRule', 'DescribePreCheckStatus', 'DescribeSubscriptionMeta', 'DescribeTagKeys', 'DescribeTagValues', 'InitDtsRdsInstance', 'ModifySubscription', 'RenewInstance', 'SkipPreCheck', 'StartDtsJobs', 'StopDtsJobs', 'SummaryJobDetail', 'SuspendDtsJobs',
'TransferInstanceClass', 'TransferPayType', 'UpgradeTwoWay', 'WhiteIpList', 'DescribeDtsEtlJobVersionInfo', 'DescribeEtlJobLogs', 'CreateDedicatedClusterMonitorRule', 'DescribeClusterOperateLogs', 'DescribeClusterUsedUtilization', 'DescribeDedicatedClusterMonitorRule', 'DescribeDedicatedCluster', 'DescribeMetricList', 'ListDedicatedCluster', 'ModifyDtsJobDedicatedCluster', 'ModifyDedicatedCluster', 'ModifyDtsJobDuLimit', 'StopDedicatedCluster', 'DescribeDataCheckTableDiffDetails', 'DescribeDataCheckTableDetails', 'DescribeDataCheckReportUrl',
'DescribeCheckJobs', 'SwitchPhysicalDtsJobToCloud', 'ModifyDynamicConfig', 'ModifyDtsJobConfig', 'StartReverseWriter', 'CreateReverseDtsJob', 'ModifyDtsJobEndpoint', 'SkipFullJobTable', 'DescribeFullProcessList', 'ModifyGadInstanceName', 'DescribePreCheckCreateGadOrderResult', 'DetachGadInstanceDbMember', 'PreCheckCreateGadOrder', 'DescribeGadInstances', 'DescribeDocParserJobStatus',
],
'type' => 'directory',
'title' => 'Other',
],
[
'children' => ['ListJobStep', 'ModifyJobStepCheckpoint', 'PromoteToMaster'],
'title' => 'Others',
'type' => 'directory',
],
],
'components' => [
'schemas' => [],
],
'apis' => [
'ConfigureDtsJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '52203',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobName',
'in' => 'query',
'schema' => ['description' => 'The name of the DTS instance.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'rdsmysql_to_mysql', 'title' => ''],
],
[
'name' => 'SourceEndpointInstanceType',
'in' => 'query',
'schema' => ['description' => 'The type of the source instance. Valid values:'."\n"
."\n"
.'**Alibaba Cloud databases**'."\n"
."\n"
.'- **RDS**: ApsaraDB RDS for MySQL, ApsaraDB RDS for SQL Server, ApsaraDB RDS for PostgreSQL, or ApsaraDB RDS for MariaDB.'."\n"
.'- **PolarDB**: PolarDB for MySQL.'."\n"
.'- **ADS**: AnalyticDB for MySQL.'."\n"
.'- **REDIS**: Tair (Redis® OSS-Compatible).'."\n"
.'- **DISTRIBUTED_POLARDBX10**: PolarDB-X 1.0 (formerly DRDS).'."\n"
.'- **POLARDBX20**: PolarDB-X 2.0.'."\n"
.'- **MONGODB**: ApsaraDB for MongoDB.'."\n"
.'- **DISTRIBUTED_DMSLOGICDB**: Data Management (DMS) logical database.'."\n"
.'- **LINDORM**: Lindorm.'."\n"
."\n"
.'**Self-managed databases**'."\n"
.'- **OTHER**: self-managed database with a public IP address.'."\n"
.'- **ECS**: self-managed database hosted on ECS.'."\n"
.'- **EXPRESS**: self-managed database connected over Express Connect.'."\n"
.'- **CEN**: self-managed database connected over Cloud Enterprise Network (CEN).'."\n"
.'- **DG**: self-managed database connected over Database Gateway.'."\n"
."\n\n"
.'> - If the source instance is a PolarDB for PostgreSQL (Compatible with Oracle) cluster, set this parameter to **OTHER** or **EXPRESS** to connect the cluster as a self-managed database over a public IP address or Express Connect.'."\n"
.'- For information about supported source and destination database combinations, see [Supported databases](~~131497~~).'."\n"
.'- If the source instance is a self-managed database, you must complete the required preparations. For more information, see [Preparations overview](~~130607~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'SourceEndpointInstanceID',
'in' => 'query',
'schema' => ['description' => 'The ID of the source instance.'."\n"
."\n"
.'If the source instance is an Alibaba Cloud database (such as ApsaraDB RDS for MySQL), specify the ID of the Alibaba Cloud database instance (such as the ApsaraDB RDS for MySQL instance ID).'."\n"
."\n"
.'If the source instance is a self-managed database, the value of this parameter varies based on the value of **SourceEndpointInstanceType**. Example:'."\n"
."\n"
.'- **ECS**: Specify the ID of the ECS instance.'."\n"
.'- **DG**: Specify the ID of the database gateway.'."\n"
.'- **EXPRESS** or **CEN**: Specify the ID of the VPC that is connected to the source database.'."\n"
."\n"
.'> If the value is **CEN**, you must also specify the CEN instance ID in the Reserve parameter. For the metric description, see [Reserve parameter description](~~273111~~).', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1imrtn6fq7h****', 'title' => ''],
],
[
'name' => 'SourceEndpointEngineName',
'in' => 'query',
'schema' => ['description' => 'The database type of the source instance. Valid values:'."\n"
.'- **MYSQL**: MySQL database (including ApsaraDB RDS for MySQL and self-managed MySQL).'."\n"
.'- **MARIADB**: ApsaraDB RDS for MariaDB.'."\n"
.'- **PolarDB**: PolarDB for MySQL.'."\n"
.'- **POLARDB_O**: PolarDB for PostgreSQL (Compatible with Oracle).'."\n"
.'- **POLARDBX10**: PolarDB-X 1.0 (formerly DRDS).'."\n"
.'- **POLARDBX20**: cloud-native distributed database PolarDB-X 2.0.'."\n"
.'- **ADB30**: AnalyticDB for MySQL 3.0.'."\n"
.'- **ORACLE**: self-managed Oracle.'."\n"
.'- **POSTGRESQL**: PostgreSQL database (including ApsaraDB RDS for PostgreSQL and self-managed PostgreSQL).'."\n"
.'- **MSSQL**: SQL Server database (including ApsaraDB RDS for SQL Server and self-managed SQL Server).'."\n"
.'- **MONGODB**: MongoDB database (including self-managed MongoDB and ApsaraDB for MongoDB).'."\n"
.'- **DB2**: self-managed Db2 for LUW.'."\n"
.'- **AS400**: self-managed Db2 for i.'."\n"
.'- **DMSPOLARDB**: Data Management (DMS) logical database.'."\n"
.'- **HBASE**: self-managed HBase database.'."\n"
.'- **TERADATA**: Teradata database.'."\n"
.'- **TiDB**: TiDB database.'."\n"
.'- **REDIS**: Redis database, including self-managed Redis and Tair (Redis® OSS-Compatible).'."\n"
.'- **LINDORM**: Lindorm.'."\n"
."\n\n"
.'> - Default value: **MYSQL**.'."\n"
.' - If the database type of the source instance is set to **MONGODB**, you must also specify additional information in the Reserve parameter. For the metric description, see [Reserve parameter description](~~273111~~).', 'type' => 'string', 'required' => false, 'example' => 'MYSQL', 'title' => ''],
],
[
'name' => 'SourceEndpointRegion',
'in' => 'query',
'schema' => ['description' => 'The region of the source instance. For details, see [Supported regions](~~141033~~).'."\n"
.'> If the source instance is an Alibaba Cloud database, this parameter is required.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SourceEndpointIP',
'in' => 'query',
'schema' => ['description' => 'The IP address of the source instance.'."\n"
.'> This parameter is available and required only when **SourceEndpointInstanceType** is set to **OTHER**, **EXPRESS**, **DG**, or **CEN**.', 'type' => 'string', 'required' => false, 'example' => '172.16.**.***', 'title' => ''],
],
[
'name' => 'SourceEndpointPort',
'in' => 'query',
'schema' => ['description' => 'The database service port of the source instance.'."\n"
.'> This parameter is available and required only when the source instance is a self-managed database.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'SourceEndpointOracleSID',
'in' => 'query',
'schema' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is available and required only when **SourceEndpointEngineName** is set to **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'required' => false, 'example' => 'testsid', 'title' => ''],
],
[
'name' => 'SourceEndpointDatabaseName',
'in' => 'query',
'schema' => ['description' => 'The name of the database to which the objects to be migrated belong in the source instance.'."\n"
.'> This parameter is available and required only when the source instance or its database type is PolarDB for PostgreSQL (Compatible with Oracle), PostgreSQL, or MongoDB.', 'type' => 'string', 'required' => false, 'example' => 'dtstestdatabase', 'title' => ''],
],
[
'name' => 'SourceEndpointUserName',
'in' => 'query',
'schema' => ['description' => 'The database account of the source database.'."\n"
.'> - In most cases, you must specify the database account of the source database.'."\n"
.'- The required permissions vary depending on the database being migrated or synchronized. For more information, see [Prepare database accounts for data migration](~~175878~~) and [Prepare database accounts for data synchronization](~~213152~~).', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'SourceEndpointPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the source database account.', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'SourceEndpointOwnerID',
'in' => 'query',
'schema' => ['description' => 'The Alibaba Cloud account ID to which the source instance belongs.'."\n"
.'> Specifying this parameter indicates you execute a cross-account data migration or synchronization. You must also specify the **SourceEndpointRole** parameter.', 'type' => 'string', 'required' => false, 'example' => '140692647406****', 'title' => ''],
],
[
'name' => 'SourceEndpointRole',
'in' => 'query',
'schema' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the source instance belongs.'."\n"
.'> This parameter is required for cross-account data migration or synchronization. For information about the permissions and authorization method required for this role, see [Configure RAM authorization for cross-account data migration or synchronization](~~48468~~).', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'DestinationEndpointInstanceType',
'in' => 'query',
'schema' => ['description' => 'The target instance type. Valid values:'."\n"
."\n"
.'**Alibaba Cloud databases**'."\n"
.'- **RDS**: ApsaraDB RDS for MySQL, ApsaraDB RDS for SQL Server, ApsaraDB RDS for PostgreSQL, or ApsaraDB RDS for MariaDB.'."\n"
.'- **PolarDB**: PolarDB for MySQL.'."\n"
.'- **DISTRIBUTED_POLARDBX10**: PolarDB-X 1.0 (formerly DRDS).'."\n"
.'- **POLARDBX20**: PolarDB-X 2.0.'."\n"
.'- **REDIS**: Tair (Redis® OSS-Compatible).'."\n"
.'- **ADS**: AnalyticDB for MySQL 2.0 or 3.0.'."\n"
.'- **MONGODB**: ApsaraDB for MongoDB.'."\n"
.'- **ROCKETMQ**: ApsaraMQ for RocketMQ.'."\n"
.'- **GREENPLUM**: AnalyticDB for PostgreSQL.'."\n"
.'- **DATAHUB**: Alibaba Cloud DataHub platform.'."\n"
.'- **ELK**: Alibaba Cloud Elasticsearch.'."\n"
.'- **Tablestore**: Tablestore.'."\n"
.'- **ODPS**: MaxCompute.'."\n"
.'- **LINDORM**: cloud-native multi-model database Lindorm.'."\n"
."\n"
.'**Self-managed databases**'."\n"
.'- **OTHER**: self-managed database with a public IP address.'."\n"
.'- **ECS**: self-managed database hosted on ECS.'."\n"
.'- **EXPRESS**: self-managed database connected over Express Connect.'."\n"
.'- **CEN**: self-managed database connected over Cloud Enterprise Network (CEN).'."\n"
.'- **DG**: self-managed database connected over Database Gateway.'."\n"
."\n"
.'> - If the destination instance is a PolarDB for PostgreSQL (Compatible with Oracle) cluster, set this parameter to **OTHER** or **EXPRESS** to connect the cluster as a self-managed database over a public IP address or Express Connect.'."\n"
.'- If the destination instance is MSMQ for Apache Kafka, set this parameter to **ECS** or **EXPRESS** to connect the instance as a self-managed database over ECS or Express Connect.'."\n"
.'- For information about supported source and destination database combinations, see [Supported databases](~~131497~~)[Supported source and destination databases](~~176064~~).'."\n"
.'- If the destination instance is a self-managed database, you must also execute the required preparations. For more information, see [Preparations overview](~~146958~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'EXPRESS', 'title' => ''],
],
[
'name' => 'DestinationEndpointInstanceID',
'in' => 'query',
'schema' => ['description' => 'The ID of the destination instance.'."\n"
."\n"
.' If the destination instance is an Alibaba Cloud database (such as ApsaraDB RDS for MySQL), specify the ID of the Alibaba Cloud database instance (such as the ApsaraDB RDS for MySQL instance ID).'."\n"
."\n"
.' If the destination instance is a self-managed database, the value of this parameter varies based on the value of **DestinationEndpointInstanceType**. Example:'."\n"
."\n\n"
.'- **ECS**: Specify the ID of the ECS instance.'."\n"
.'- **DG**: Specify the ID of the database gateway.'."\n"
.'- **EXPRESS** or **CEN**: Specify the ID of the VPC that is connected to the source database.'."\n"
."\n"
.'> If the value is **CEN**, you must also specify the CEN instance ID in the Reserve parameter. For the metric description, see [Reserve parameter description](~~273111~~).', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1opxu1zkhn00gzv****', 'title' => ''],
],
[
'name' => 'DestinationEndpointEngineName',
'in' => 'query',
'schema' => ['description' => 'The database type of the destination instance. Valid values:'."\n"
.'- **MYSQL**: MySQL database (including ApsaraDB RDS for MySQL and self-managed MySQL).'."\n"
.'- **MARIADB**: ApsaraDB RDS for MariaDB.'."\n"
.'- **PolarDB**: PolarDB for MySQL.'."\n"
.'- **POLARDB_O**: PolarDB for PostgreSQL (Compatible with Oracle).'."\n"
.'- **POLARDBX10**: PolarDB-X 1.0 (formerly DRDS).'."\n"
.'- **POLARDBX20**: cloud-native distributed database PolarDB-X 2.0.'."\n"
.'- **ORACLE**: self-managed Oracle.'."\n"
.'- **PostgreSQL**: PostgreSQL database (including ApsaraDB RDS for PostgreSQL and self-managed PostgreSQL).'."\n"
.'- **MSSQL**: SQL Server database (including ApsaraDB RDS for SQL Server and self-managed SQL Server).'."\n"
.'- **ADS**: AnalyticDB for MySQL 2.0.'."\n"
.'- **ADB30**: AnalyticDB for MySQL 3.0.'."\n"
.'- **MONGODB**: MongoDB database (including self-managed MongoDB and ApsaraDB for MongoDB).'."\n"
.'- **ROCKETMQ**: ApsaraMQ for RocketMQ.'."\n"
.'- **GREENPLUM**: AnalyticDB for PostgreSQL.'."\n"
.'- **KAFKA**: Kafka database (including MSMQ for Apache Kafka and self-managed Kafka).'."\n"
.'- **DATAHUB**: Alibaba Cloud DataHub.'."\n"
.'- **DB2**: self-managed Db2 for LUW.'."\n"
.'- **AS400**: Db2 for i.'."\n"
.'- **ODPS**: MaxCompute.'."\n"
.'- **Tablestore**: Tablestore.'."\n"
.'- **ELK**: Alibaba Cloud Elasticsearch.'."\n"
.'- **REDIS**: Redis database, including self-managed Redis and Tair (Redis® OSS-Compatible).'."\n"
.'- **LINDORM**: cloud-native multi-model database Lindorm.'."\n"
."\n"
.'> - Default value: **MYSQL**.'."\n"
.'- If the database type of the destination instance is set to **KAFKA**, **MONGODB**, or **PolarDB**, you must also specify additional information in the Reserve parameter. For the metric description, see [Reserve parameter description](~~273111~~).', 'type' => 'string', 'required' => false, 'example' => 'MYSQL', 'title' => ''],
],
[
'name' => 'DestinationEndpointRegion',
'in' => 'query',
'schema' => ['description' => 'The region of the destination instance. For more information, see [Supported regions](~~141033~~).'."\n"
.'> If the destination instance is an Alibaba Cloud database, this parameter is required.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DestinationEndpointIP',
'in' => 'query',
'schema' => ['description' => 'The IP address of the destination instance.'."\n"
.'> This parameter is available and required only when **DestinationEndpointInstanceType** is set to **OTHER**, **EXPRESS**, **DG**, or **CEN**.', 'type' => 'string', 'required' => false, 'example' => '172.16.**.***', 'title' => ''],
],
[
'name' => 'DestinationEndpointPort',
'in' => 'query',
'schema' => ['description' => 'The database service port of the destination instance.'."\n"
.'> This parameter is available and required only when the destination instance is a self-managed database.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'DestinationEndpointDataBaseName',
'in' => 'query',
'schema' => ['description' => 'The name of the database to which the objects to be migrated belong in the destination instance.'."\n"
.'> - This parameter is available and required only when the destination instance or destination database type is PolarDB for PostgreSQL (Compatible with Oracle), AnalyticDB for PostgreSQL, PostgreSQL, MaxCompute, or MongoDB.'."\n"
.'- If the destination database is MaxCompute, specify the project of the MaxCompute instance.', 'type' => 'string', 'required' => false, 'example' => 'dtstestdata', 'title' => ''],
],
[
'name' => 'DestinationEndpointUserName',
'in' => 'query',
'schema' => ['description' => 'The database account of the destination database.'."\n"
.'> - In most cases, you must specify the database account of the destination database.'."\n"
.'- The required permissions vary depending on the database being migrated or synchronized. For more information, see [Prepare database accounts for data migration](~~175878~~) and [Prepare database accounts for data synchronization](~~213152~~).'."\n"
.'- If the destination database is MaxCompute, specify the AccessKey ID of the Alibaba Cloud account. For more information about how to obtain the AccessKey ID, see [Create an AccessKey pair](~~116401~~).', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'DestinationEndpointPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the destination database account.'."\n"
.'> If the destination database is MaxCompute, specify the AccessKey secret of the Alibaba Cloud account. For more information about how to obtain the AccessKey secret, see [Create an AccessKey pair](~~116401~~).', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'DestinationEndpointOwnerID',
'in' => 'query',
'schema' => ['description' => 'The Alibaba Cloud account ID to which the destination ApsaraDB RDS for MySQL instance belongs.'."\n"
.'> - This parameter can be configured only when the destination instance is ApsaraDB RDS for MySQL.'."\n"
.'- Specifying this parameter indicates you execute a cross-account data migration or synchronization. You must also specify the **DestinationEndpointRole** parameter.', 'type' => 'string', 'required' => false, 'example' => '140692647406****', 'title' => ''],
],
[
'name' => 'DestinationEndpointRole',
'in' => 'query',
'schema' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the destination instance belongs.'."\n"
.'> This parameter is required for cross-account data migration or synchronization. For information about the permissions and authorization method required for this role, see [Configure RAM authorization for cross-account data migration or synchronization](~~48468~~).', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'StructureInitialization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform schema migration or initial schema synchronization. Valid values:'."\n"
."\n"
.'- **true**: Yes. This is the default value.'."\n"
.'- **false**: No.'."\n"
."\n"
.'> If **JobType** is set to **CHECK**, this parameter can only be set to **false**.', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DataInitialization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform full data migration or initial full data synchronization. Valid values:'."\n"
."\n"
.'- **true**: Yes. This is the default value.'."\n"
.'- **false**: No.'."\n"
."\n"
.'> If **JobType** is set to **CHECK**, this parameter can only be set to **false**.', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DataSynchronization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform incremental data migration or synchronization. Valid values:'."\n"
."\n"
.'- **false**: No. This is the default value.'."\n"
.'- **true**: Yes.'."\n"
."\n"
.'> If **JobType** is set to **CHECK**, this parameter can only be set to **false**.', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DbList',
'in' => 'formData',
'schema' => ['description' => 'The objects to be migrated or synchronized, in JSON format. For more information, see [Objects of migration, synchronization, or change tracking tasks](~~209545~~).'."\n"
."\n"
.'- The maximum size of the DbList value is 1 MB.'."\n"
.'- If DbList contains filter conditions, the total length of DbList (including filter conditions) cannot exceed 1 MB.'."\n"
.'- For distributed tasks (such as migration or synchronization tasks with PolarDB-X 1.0 as the source), DbList is split based on physical shards and multiple subtasks are generated. The maximum size of DbList for each subtask is 1 MB.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => '{"dtstest":{"name":"dtstest","all":true}}', 'title' => ''],
],
[
'name' => 'Reserve',
'in' => 'formData',
'schema' => ['description' => 'The reserved parameter of DTS, in JSON character string format. You can specify this parameter to add information about the source and destination databases (such as the data storage format of the destination Kafka database, the CEN instance ID, and ETL feature configurations). For more information, see [Reserve parameter description](~~273111~~).', 'type' => 'string', 'required' => false, 'example' => '{ "srcInstanceId": "cen-9kqshqum*******" }', 'title' => ''],
],
[
'name' => 'Checkpoint',
'in' => 'query',
'schema' => ['description' => 'The start position for incremental data migration or the synchronization checkpoint, in the format of a UNIX timestamp. Unit: seconds.'."\n"
."\n"
.'> If you specify the **Checkpoint** parameter, make sure that no other running DTS instance has the same source database as the destination DTS instance.', 'type' => 'string', 'required' => false, 'example' => '1610540493', 'title' => ''],
],
[
'name' => 'DestinationEndpointOracleSID',
'in' => 'query',
'schema' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is available and required only when **DestinationEndpointEngineName** is set to **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'required' => false, 'example' => 'testsid', 'title' => ''],
],
[
'name' => 'JobType',
'in' => 'query',
'schema' => ['description' => 'The type of the node. Valid values:'."\n"
."\n"
.'- **MIGRATION**: data migration.'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **CHECK**: data validation (purchased separately).'."\n"
."\n"
.'> - If the value is **MIGRATION** or **SYNC**, you can also configure a data validation node within the migration or synchronization instance.'."\n"
.'- To configure a data validation node, you must also specify the **DataCheckConfigure** parameter.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SYNC', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the migration or synchronization task.'."\n"
.'> You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => false, 'example' => 'k2gm967v16f****', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the migration or synchronization instance.'."\n"
.'> You can call [DescribeDtsJobs](~~209702~~) to query the instance ID.', 'type' => 'string', 'required' => false, 'example' => 'dtsk2gm967v16f****', 'title' => ''],
],
[
'name' => 'DelayPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers for latency alerting of the contact. Separate multiple phone numbers with commas (,).'."\n"
.'> - This parameter is supported only on the China site. Only the Chinese mainland phone numbers are supported, and a maximum of 10 phone numbers can be specified.'."\n"
.'- The international site does not support phone alerting. You can only [configure alert rules for DTS tasks through the CloudMonitor platform to set alert rules](~~175876~~).', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'DelayRuleTime',
'in' => 'query',
'schema' => ['description' => 'The threshold for triggering latency alerts. Unit: seconds. The value must be an integer. Set the threshold based on your business requirements. To avoid alert fluctuations caused by network conditions or database loads, set the threshold to 10 seconds or more.'."\n"
.'> This parameter is required when **DelayNotice** is set to **true**.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'maximum' => '10000000000', 'minimum' => '1', 'default' => '1000', 'example' => '10', 'title' => ''],
],
[
'name' => 'DelayNotice',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the latency status. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ErrorPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers for error alerting of the contact. Separate multiple phone numbers with commas (,).'."\n"
.'> - This parameter is supported only on the China site. Only the Chinese mainland phone numbers are supported, and a maximum of 10 phone numbers can be specified.'."\n"
.'- The international site does not support phone alerting. You can only [configure alert rules for DTS tasks through the CloudMonitor platform to set alert rules](~~175876~~).', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'ErrorNotice',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the error status. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- The value **Reverse** takes effect only when the synchronization topology of the synchronization task is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the DTS instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The ID of the DTS dedicated cluster.'."\n"
."\n"
.'> If you specify the ID of a dedicated cluster, the task is scheduled to the corresponding cluster.', 'type' => 'string', 'required' => false, 'example' => 'dtscluster_atyl3b5214uk***', 'title' => ''],
],
[
'name' => 'FileOssUrl',
'in' => 'query',
'schema' => ['description' => 'The OSS URL of the task file.', 'type' => 'string', 'isFileTransferUrl' => true, 'required' => false, 'example' => 'http://db-list-os-file.oss-cn-shanghai.aliyuncs.com/8e42_121852**********_79dd3aeabe2f43cdb**************', 'title' => ''],
],
[
'name' => 'DataCheckConfigure',
'in' => 'query',
'schema' => ['description' => 'The parameters of the data validation node, in JSON character string format, such as parameter limits and alert configuration. For more information, see [DataCheckConfigure parameter description](~~459023~~).', 'type' => 'string', 'required' => false, 'example' => '{"fullCheckModel":1,"fullCheckRatio":20,"checkMaximumHourEnable":1,"checkMaximumHour":1,"fullCheckErrorNotice":true,"fullCheckValidFailNotice":true,"fullCheckNoticeValue":8,"incrementalCheckErrorNotice":true,"incrementalCheckValidFailNotice":true,"incrementalCheckValidFailNoticeTimes":2,"incrementalCheckValidFailNoticePeriod":1,"incrementalCheckValidFailNoticeValue":1,"incrementalCheckDelayNotice":true,"incrementalCheckDelayNoticeTimes":2,"incrementalCheckDelayNoticePeriod":1,"incrementalCheckDelayNoticeValue":60,"fullDataCheck":true,"incrementalDataCheck":true,"dataCheckNoticePhone":"13126800****","dataCheckDbList":{"dts":{"name":"dts","all":true}}}', 'title' => ''],
],
[
'name' => 'DisasterRecoveryJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether this is a disaster recovery instance. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'SourceEndpointVSwitchID',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The vSwitch instance ID for the data delivery link.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp10df3mxae6lpmku****'],
],
[
'name' => 'DtsBisLabel',
'in' => 'query',
'schema' => ['description' => 'The environment label of the DTS instance. Valid values:'."\n"
."\n"
.'- **normal**: normal'."\n"
.'- **online**: online.', 'type' => 'string', 'required' => false, 'example' => 'normal', 'title' => ''],
],
[
'name' => 'SrcCaCertificateOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the CA certificate for SSL connection to the source database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcCaCertificatePassword',
'in' => 'query',
'schema' => ['description' => 'The password of the CA certificate for SSL connection to the source database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestCaCertificateOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the CA certificate for SSL connection to the destination database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestCaCertificatePassword',
'in' => 'query',
'schema' => ['description' => 'The password of the CA certificate for SSL connection to the destination database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'MinDu',
'in' => 'query',
'schema' => ['description' => 'The minimum number of DTS Units (DUs).'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'MaxDu',
'in' => 'query',
'schema' => ['description' => 'The maximum number of DTS Units (DUs).'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '16', 'title' => ''],
],
[
'name' => 'SrcClientCertOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the client certificate for SSL connection to the source database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcClientKeyOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the client certificate private key for SSL connection to the source database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcClientPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the client certificate private key for SSL connection to the source database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestClientCertOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the client certificate for SSL connection to the destination database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestClientKeyOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the client certificate private key for SSL connection to the destination database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestClientPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the client certificate private key for SSL connection to the destination database.'."\n"
."\n"
.'> This feature is not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcPrimaryVswId',
'in' => 'query',
'schema' => ['description' => 'The primary vSwitch of the VPC NAT gateway on the source side.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcSecondaryVswId',
'in' => 'query',
'schema' => ['description' => 'The secondary vSwitch of the VPC NAT gateway on the source side.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestPrimaryVswId',
'in' => 'query',
'schema' => ['description' => 'The primary vSwitch of the VPC NAT gateway on the destination side.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestSecondaryVswId',
'in' => 'query',
'schema' => ['description' => 'The secondary vSwitch of the VPC NAT gateway on the destination side.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '224DB9F7-3100-4899-AB9C-C938BCCB****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the migration or synchronization task.', 'type' => 'string', 'example' => 'k2gm967v16f****', 'title' => ''],
'DtsInstanceId' => ['description' => 'The instance ID of the migration or synchronization task.', 'type' => 'string', 'example' => 'dtsk2gm967v16f****', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request is successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidParameter.KafkaBrokerInvalid', 'errorMessage' => 'kafka broker configuration must be intranet IP', 'description' => 'You must set the name of a node of a self-managed Kafka cluster hosted on ECS to an IP address.'],
['errorCode' => 'InvalidParameter.KafkaHostInvalid', 'errorMessage' => 'kafaka host name should be intranet IP', 'description' => 'You must set the hostname of a Kafka instance to its internal IP address.'],
['errorCode' => 'UpdateJob.OperationDenied.InitStatus', 'errorMessage' => 'The operation is not permitted due to Dts job status is init.', 'description' => 'The task is started and cannot be modified. You can reconfigure the task or use the reselect objects feature. If you reconfigure the task, the current task configurations are removed.'],
['errorCode' => 'GetMongoDbShardInfo.NoShardAddress', 'errorMessage' => 'MongoDb has not yet opened the shard connection address, please try again after opening.', 'description' => 'Failed to obtain shard connection information. Check parameter configurations to ensure that a database of an ApsaraDB for MongoDB sharded cluster instance is configured and an endpoint is applied for the required shard node.'],
['errorCode' => 'GetMongoDbShardInfo.EmptyInstances', 'errorMessage' => 'Failed to get MongoDb shard information, the return is empty.', 'description' => 'Failed to obtain shard information. Check parameter configurations to ensure that a database of an ApsaraDB for MongoDB sharded cluster instance is configured.'],
['errorCode' => 'CheckJobFailed.ServerUnAvailable', 'errorMessage' => 'Unable to check whether the node can connect to the database because the node service is unavailable.', 'description' => 'Failed to connect to specific DTS node servers. Try again later. If the error persists, contact technical support.'],
['errorCode' => 'DbTypeNotSupport.PolarDBRDS', 'errorMessage' => 'The current rds instance is of type PolarDB, which is not supported for the time being. Only rds instances under drds are supported.', 'description' => 'DTS does not support data synchronization for PolarDB-X instances that have data distributed to PolarDB for MySQL clusters.'],
['errorCode' => 'DbTypeNotSupport.OnlyReadRDS', 'errorMessage' => 'Synchronization is not currently supported due to latency issues with read-only DRDS instances.', 'description' => 'DTS does not support data synchronization for read-only sharded databases of PolarDB-X 1.0 instances.'],
['errorCode' => 'DTS.Msg.InvalidParameter.KafkaBrokerInvalid', 'errorMessage' => 'kafka broker configuration must be intranet IP', 'description' => 'You must set the name of a node of a self-managed Kafka cluster hosted on ECS to an IP address.'],
['errorCode' => 'DTS.Msg.InvalidParameter.KafkaHostInvalid', 'errorMessage' => 'kafaka host name should be intranet IP', 'description' => 'You must set the hostname of a Kafka instance to its internal IP address.'],
['errorCode' => 'DTS.Msg.UpdateJob.OperationDenied.InitStatus', 'errorMessage' => 'The operation is not permitted due to Dts job status is init.', 'description' => 'The task is started and cannot be modified. You can reconfigure the task or use the reselect objects feature. If you reconfigure the task, the current task configurations are removed.'],
['errorCode' => 'DTS.Msg.GetMongoDbShardInfo.NoShardAddress', 'errorMessage' => 'MongoDb has not yet opened the shard connection address, please try again after opening.', 'description' => 'Failed to obtain shard connection information. Check parameter configurations to ensure that a database of an ApsaraDB for MongoDB sharded cluster instance is configured and an endpoint is applied for the required shard node.'],
['errorCode' => 'DTS.Msg.GetMongoDbShardInfo.EmptyInstances', 'errorMessage' => 'Failed to get MongoDb shard information, the return is empty.', 'description' => 'Failed to obtain shard information. Check parameter configurations to ensure that a database of an ApsaraDB for MongoDB sharded cluster instance is configured.'],
['errorCode' => 'DTS.Msg.CheckJobFailed.ServerUnAvailable', 'errorMessage' => 'Unable to check whether the node can connect to the database because the node service is unavailable.', 'description' => 'Failed to connect to specific DTS node servers. Try again later. If the error persists, contact technical support.'],
['errorCode' => 'DTS.Msg.DbTypeNotSupport.PolarDBRDS', 'errorMessage' => 'The current rds instance is of type PolarDB, which is not supported for the time being. Only rds instances under drds are supported.', 'description' => 'DTS does not support data synchronization for PolarDB-X instances that have data distributed to PolarDB for MySQL clusters.'],
['errorCode' => 'DTS.Msg.DbTypeNotSupport.OnlyReadRDS', 'errorMessage' => 'Synchronization is not currently supported due to latency issues with read-only DRDS instances.', 'description' => 'DTS does not support data synchronization for read-only sharded databases of PolarDB-X 1.0 instances.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'eventInfo' => [
'enable' => false,
'eventNames' => [],
],
'title' => 'Configure a DTS migration or synchronization task',
'summary' => 'Configures a data migration or synchronization task.',
'description' => '- You can perform the required pre-configurations in the console and then preview the corresponding OpenAPI parameter information to help you specify request parameters. For more information, see [Preview OpenAPI request parameters](~~2851612~~).'."\n"
.'- Tasks on dedicated clusters support only the configure-before-purchase mode and do not support cross-region tasks.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ConfigureDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"224DB9F7-3100-4899-AB9C-C938BCCB****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"DtsJobId\\": \\"k2gm967v16f****\\",\\n \\"DtsInstanceId\\": \\"dtsk2gm967v16f****\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
],
'ConfigureMigrationJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the data migration instance. For more information, see [Supported regions](~~141033~~).'."\n"
.'> The region ID must be the same as the region ID of the destination database.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsxxxxxxxx', 'title' => ''],
],
[
'name' => 'MigrationJobName',
'in' => 'query',
'schema' => ['description' => 'The name of the migration task. The name can be up to 32 characters in length. Specify a descriptive name for easy identification. Uniqueness is not required.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MySQL_TO_RDS', 'title' => ''],
],
[
'name' => 'SourceEndpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '源库的实例类型,取值:'."\n"
.'- **RDS**:阿里云RDS实例。'."\n"
.'- **ECS**:ECS上的自建数据库。'."\n"
.'- **LocalInstance**:有公网IP的自建数据库。'."\n"
.'- **Express**:通过专线/VPN网关/智能接入网关接入的自建数据库。'."\n"
.'- **dg**:通过数据库网关DG接入的自建数据库。'."\n"
.'- **cen**:通过云企业网CEN接入的自建数据库。'."\n"
.'- **MongoDB**:阿里云MongoDB实例。'."\n"
.'- **POLARDB**:阿里云PolarDB MySQL、PolarDB PostgreSQL。'."\n"
.'- **PolarDB_o**:阿里云PolarDB O引擎集群。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'SourceEndpoint.InstanceID',
'in' => 'query',
'schema' => ['description' => '源库的实例ID。'."\n"
.'> - 当**SourceEndpoint.InstanceType**取值为**RDS**、**ECS**、**Express**、**MongoDB**、**POLARDB**或**PolarDB_o**时,本参数才可用且必须传入对应的实例ID(例如取值为**ECS**,则本参数传入ECS实例的ID)。'."\n"
.'- 当**SourceEndpoint.InstanceType**取值为**Express**时,本参数传入VPC ID(即专有网络ID)。', 'type' => 'string', 'required' => false, 'example' => 'bp-rmxxxxxxxx', 'title' => ''],
],
[
'name' => 'SourceEndpoint.EngineName',
'in' => 'query',
'schema' => ['description' => '源库的数据库类型,取值:**MySQL**、**TiDB**、**SQLServer**、**PostgreSQL**、**Oracle**、**MongoDB**、**Redis**、**POLARDB**、**polardb_pg**。'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**RDS**、**POLARDB**、**ECS**、**LocalInstance**或**Express**时,本参数才可用且必须传入。'."\n", 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Region',
'in' => 'query',
'schema' => ['description' => '源库所属的地域ID。'."\n"
.'> 当**SourceEndpoint.InstanceType**取值为**LocalInstance**时,您可以传入**cn-hangzhou**或者离自建数据库地物理距离最近的地域ID,详情请参见[支持的地域列表](~~141033~~)。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SourceEndpoint.IP',
'in' => 'query',
'schema' => ['description' => '源库的连接地址。'."\n"
.'> 当**SourceEndpoint.InstanceType**取值为**LocalInstance**或**Express**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '172.16.88.*** ', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Port',
'in' => 'query',
'schema' => ['description' => '源库的服务端口。'."\n"
.'> 当**SourceEndpoint.InstanceType**取值为**ECS**、**LocalInstance**或**Express**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'SourceEndpoint.OracleSID',
'in' => 'query',
'schema' => ['description' => 'Oracle数据库的SID信息。'."\n"
.'> 当**SourceEndpoint.EngineName**取值为**Oracle**,且Oracle数据库为非RAC实例时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => 'testsid', 'title' => ''],
],
[
'name' => 'SourceEndpoint.DatabaseName',
'in' => 'query',
'schema' => ['description' => '待迁移的数据库名称或鉴权数据库名称。'."\n"
.'> - 当**SourceEndpoint.EngineName**取值为**PostgreSQL**或**MongoDB**时,本参数才可用且必须传入。'."\n"
.'- 当**SourceEndpoint.EngineName**取值为**PostgreSQL**时,传入待迁移的数据库名称;取值为**MongoDB**时,传入数据库账号的鉴权数据库名称。', 'type' => 'string', 'required' => false, 'example' => 'dtstestdatabase', 'title' => ''],
],
[
'name' => 'SourceEndpoint.UserName',
'in' => 'query',
'schema' => ['description' => '源库的数据库账号。'."\n"
."\n"
.'说明 迁移不同的数据库所需的权限有所差异,详情请参见迁移方案概览中对应的配置案例。', 'type' => 'string', 'required' => false, 'example' => 'dtstestaccount', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Password',
'in' => 'query',
'schema' => ['description' => '源库数据库账号对应的密码。', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'SourceEndpoint.OwnerID',
'in' => 'query',
'schema' => ['description' => '源实例所属的阿里云账号ID。'."\n"
.'> 仅在配置跨阿里云账号的数据迁移时本参数才可用,且必须传入。', 'type' => 'string', 'required' => false, 'example' => '140692647406****', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Role',
'in' => 'query',
'schema' => ['description' => '当源实例与目标实例所属阿里云账号不同时,需传入该参数,来指定源实例的授权角色,以允许目标实例阿里云账号访问源实例的实例信息。'."\n"
.'> 角色所需的权限及授权方式,请参见[跨阿里云账号数据迁移或同步时如何配置RAM授权](~~48468~~)。', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '目标库的实例类型,取值:'."\n"
.'- **ECS**:ECS上的自建数据库。'."\n"
.'- **LocalInstance**:有公网IP的自建数据库。'."\n"
.'- **RDS**:阿里云RDS实例。'."\n"
.'- **DRDS**:阿里云PolarDB-X实例。'."\n"
.'- **MongoDB**:阿里云MongoDB实例。'."\n"
.'- **Redis**:阿里云Redis实例。'."\n"
.'- **PetaData**:阿里云HybridDB for MySQL实例。'."\n"
.'- **POLARDB**:阿里云PolarDB MySQL、PolarDB PostgreSQL。'."\n"
.'- **PolarDB_o**:阿里云PolarDB O引擎集群。'."\n"
.'- **AnalyticDB**:阿里云云原生数据仓库AnalyticDB MySQL 3.0和2.0版本。'."\n"
.'- **Greenplum**:阿里云云原生数据仓库AnalyticDB PostgreSQL。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.InstanceID',
'in' => 'query',
'schema' => ['description' => '目标实例ID。'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**RDS**、**ECS**、**MongoDB**、**Redis**、**DRDS**、**PetaData**、**OceanBase**、**POLARDB**、**PolarDB_o**、**AnalyticDB**或**Greenplum**时,本参数才可用且必须传入对应的实例ID(例如取值为**ECS**,则需要传入ECS实例ID)。', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1r46452ai50****', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.EngineName',
'in' => 'query',
'schema' => ['description' => '目标库的数据库类型。取值:**MySQL**、**DRDS**、**SQLServer**、**PostgreSQL**、**PPAS**、**MongoDB**、**Redis**、**POLARDB**、**polardb_pg**'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**RDS**、**POLARDB**、**ECS**、**LocalInstance**或**Express**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.Region',
'in' => 'query',
'schema' => ['description' => '目标库所属的地域ID。'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**LocalInstance**时,您可以传入**cn-hangzhou**或者离自建数据库地物理距离最近的地域ID,详情请参见[支持的地域列表](~~141033~~)。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.IP',
'in' => 'query',
'schema' => ['description' => '目标库的连接地址。'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**LocalInstance**或**Express**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '172.16.88.***', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.Port',
'in' => 'query',
'schema' => ['description' => '目标库的服务端口。'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**ECS**、**LocalInstance**或**Express**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.DataBaseName',
'in' => 'query',
'schema' => ['description' => '待迁入的数据库名称或鉴权数据库名称。 '."\n"
.'> - 当**DestinationEndpoint.EngineName**取值为**PostgreSQL**、**DRDS**或**MongoDB**时,本参数才可用且必须传入。'."\n"
.'- 当**DestinationEndpoint.EngineName**取值为**PostgreSQL**或**DRDS**时,传入待迁移的数据库名称;取值为**MongoDB**时,传入数据库账号的鉴权数据库名称。', 'type' => 'string', 'required' => false, 'example' => 'dtstestdatabase', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.UserName',
'in' => 'query',
'schema' => ['description' => '目标库的数据库账号。'."\n"
."\n"
.'说明 迁移不同的数据库所需的权限有所差异,详情请参见迁移方案概览中对应的配置案例。', 'type' => 'string', 'required' => false, 'example' => 'dtstestaccount', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.Password',
'in' => 'query',
'schema' => ['description' => '目标库数据库账号的密码。', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'MigrationMode.StructureIntialization',
'in' => 'query',
'schema' => ['description' => '是否进行结构迁移,取值:'."\n"
.'- **true**:是。'."\n"
.'- **false**:否。'."\n"
."\n"
.'> DTS对结构迁移的支持情况因数据库类型不同而有所差异,详情请参见[支持的数据库和迁移类型](~~26618~~)。', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'MigrationMode.DataIntialization',
'in' => 'query',
'schema' => ['description' => '是否进行全量数据迁移,取值:'."\n"
.'- **true**:是。'."\n"
.'- **false**:否。'."\n"
."\n"
.'> DTS对全量数据迁移的支持情况因数据库类型不同而有所差异,详情请参见[支持的数据库和迁移类型](~~26618~~)。', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'MigrationMode.DataSynchronization',
'in' => 'query',
'schema' => ['description' => '是否进行增量数据迁移,取值:'."\n"
.'- **true**:是。'."\n"
.'- **false**:否。'."\n"
."\n"
.'> DTS对增量数据迁移的支持情况因数据库类型不同而有所差异,详情请参见[支持的数据库和迁移类型](~~26618~~)。', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'MigrationObject',
'in' => 'formData',
'schema' => ['description' => 'The objects to be migrated. The value is a JSON string that supports regular expressions. For more information, see [Migration object configuration](~141901~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '[{"DBName":"dtstestdata","TableIncludes":[{"TableName":"customer"}]}]', 'title' => ''],
],
[
'name' => 'MigrationReserved',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet special requirements, such as whether to automatically start the precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'required' => false, 'example' => '{ "autoStartModulesAfterConfig": "none", "targetTableMode": 2 }', 'title' => ''],
],
[
'name' => 'Checkpoint',
'in' => 'query',
'schema' => ['description' => 'The start position of incremental data migration. The value is a UNIX timestamp in seconds.', 'type' => 'string', 'required' => false, 'example' => '111', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The Alibaba Cloud account ID. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.OracleSID',
'in' => 'query',
'schema' => ['description' => 'Oracle数据库的SID信息。'."\n"
.'> 当**DestinationEndpoint.EngineName**取值为**Oracle**,且**Oracle**数据库为非RAC实例时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => 'testsid', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '40E35BD9-002E-4D63-9BE5-FBA48833****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"40E35BD9-002E-4D63-9BE5-FBA48833****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Configure a data migration task',
'summary' => 'Configures a legacy data migration task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ConfigureMigrationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ConfigureMigrationJobAlert' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data migration instance resides. For more information, see the supported region list.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtslb9113qq11n****', 'title' => ''],
],
[
'name' => 'DelayAlertStatus',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the latency status. Valid values:'."\n"
."\n"
.'- **enable**: yes.'."\n"
.'- **disable**: no.'."\n"
."\n"
.'> - Default value: **enable**.'."\n"
.'- You must specify at least one of this parameter and the **ErrorAlertStatus** parameter.', 'type' => 'string', 'required' => false, 'example' => 'enable', 'title' => ''],
],
[
'name' => 'DelayAlertPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers of contacts for latency alerts. Separate multiple mobile phone numbers with commas (,).'."\n"
."\n"
.'This parameter is supported only on the China site (aliyun.com) and supports only Chinese mainland mobile phone numbers. You can specify up to 10 mobile phone numbers.'."\n"
.'The China site does not support phone alerts. You can configure alert rules for DTS tasks only in the CloudMonitor console.', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'ErrorAlertStatus',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the exception status. Valid values:'."\n"
."\n"
.'- **enable**: yes.'."\n"
.'- **disable**: no.'."\n"
."\n"
.'> - Default value: **enable**.'."\n"
.'- You must specify at least one of this parameter and the **DelayAlertStatus** parameter.'."\n"
.'- After you enable the exception status monitoring feature, an alert is triggered when an exception is detected.', 'type' => 'string', 'required' => false, 'example' => 'enable', 'title' => ''],
],
[
'name' => 'ErrorAlertPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers of contacts for exception alerts. Separate multiple mobile phone numbers with commas (,).'."\n"
."\n"
.'This parameter is supported only on the China site (aliyun.com) and supports only Chinese mainland mobile phone numbers. You can specify up to 10 mobile phone numbers.'."\n"
.'The international site does not support phone alerts. You can configure alert rules for DTS tasks only in the CloudMonitor console.', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'DelayOverSeconds',
'in' => 'query',
'schema' => ['description' => 'The threshold for triggering a latency alert. Unit: seconds. The value must be an integer. Set the threshold based on your business requirements. To avoid latency fluctuations caused by network conditions or database loads, set the threshold to 10 seconds or more.'."\n"
.'> This parameter is required when **DelayAlertStatus** is set to **enable**.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter. This parameter will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0a2a047516051973705541561d****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0a2a047516051973705541561d****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Configure monitoring alerts for a data migration task',
'summary' => 'Configures monitoring alerts to monitor the latency and exception status of a data migration task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureMigrationJobAlert',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ConfigureSubscription' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'abilityTreeCode' => '52207',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsJobName',
'in' => 'query',
'schema' => ['description' => 'The name of the change tracking task.'."\n"
.'> Specify a descriptive name that makes it easy to identify the task. The name does not need to be unique.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MySQL订阅', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call [DescribeDtsJobs](~~209702~~) to query the instance ID.', 'type' => 'string', 'required' => false, 'example' => 'dtsy0zz3t13h7d****', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => false, 'example' => 'y0zz3t13h7d****', 'title' => ''],
],
[
'name' => 'SourceEndpointEngineName',
'in' => 'query',
'schema' => ['description' => 'The engine type of the source database. Valid values: **MySQL**, **PostgreSQL**, and **Oracle**.'."\n"
."\n"
.'> This parameter is required if the source database is a self-managed database.', 'type' => 'string', 'required' => false, 'example' => 'PostgreSQL', 'title' => ''],
],
[
'name' => 'SourceEndpointInstanceType',
'in' => 'query',
'schema' => ['description' => 'The instance type of the source database. Valid values:'."\n"
."\n"
.'- **RDS**: ApsaraDB RDS instance.'."\n"
.'- **PolarDB**: PolarDB for MySQL cluster.'."\n"
.'- **DRDS**: PolarDB-X 1.0 instance.'."\n"
.'- **LocalInstance**: self-managed database with a public IP address.'."\n"
.'- **ECS**: self-managed database hosted on an ECS instance.'."\n"
.'- **Express**: self-managed database connected over Express Connect.'."\n"
.'- **CEN**: self-managed database connected over Cloud Enterprise Network (CEN).'."\n"
.'- **dg**: self-managed database connected over Database Gateway.', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'SourceEndpointRegion',
'in' => 'query',
'schema' => ['description' => 'The region of the source instance. For more information, see [Supported regions](~~141033~~).'."\n"
.'> If the source instance is a self-managed database with a public IP address, you can set this parameter to **cn-hangzhou** or the region ID closest to the self-managed database.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SourceEndpointInstanceID',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the source instance.'."\n"
.'> This parameter is active and required only when the source database is an ApsaraDB RDS for MySQL instance, a PolarDB-X 1.0 instance, or a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1zc3iyqe3qw****', 'title' => ''],
],
[
'name' => 'SourceEndpointIP',
'in' => 'query',
'schema' => ['description' => 'The endpoint of the source database.'."\n"
.'> This parameter is available and required only when the source database is a self-managed database.', 'type' => 'string', 'required' => false, 'example' => '172.16.8*.***', 'title' => ''],
],
[
'name' => 'SourceEndpointPort',
'in' => 'query',
'schema' => ['description' => 'The service port of the source database.'."\n"
.'> This parameter is available and required only when the source database is a self-managed database.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'SourceEndpointOracleSID',
'in' => 'query',
'schema' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is available and required only when the source database is a self-managed Oracle database that is not a Real Application Cluster (RAC) instance.', 'type' => 'string', 'required' => false, 'example' => 'testsid', 'title' => ''],
],
[
'name' => 'SourceEndpointDatabaseName',
'in' => 'query',
'schema' => ['description' => 'The name of the database to be tracked.', 'type' => 'string', 'required' => false, 'example' => 'dtstestdata', 'title' => ''],
],
[
'name' => 'SourceEndpointUserName',
'in' => 'query',
'schema' => ['description' => 'The database account of the source instance.'."\n"
.'> The permissions required for change tracking vary depending on the database type. For more information, see the account permissions section in [Prepare database accounts for change tracking](~~212653~~).', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'SourceEndpointPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the database account for the source instance.', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'SourceEndpointOwnerID',
'in' => 'query',
'schema' => ['description' => 'The Alibaba Cloud account ID of the account to which the source instance belongs.'."\n"
.'> This parameter is active and required only when you configure cross-Alibaba Cloud account change tracking. You must subscribe to the task.', 'type' => 'string', 'required' => false, 'example' => '140692647406****', 'title' => ''],
],
[
'name' => 'SourceEndpointRole',
'in' => 'query',
'schema' => ['description' => 'The authorized role of the source instance. If the source instance and the change tracking task belong to different Alibaba Cloud accounts, specify this parameter to allow the Alibaba Cloud account that owns the change tracking task to access the source instance.'."\n"
.'> For more information about the permissions and authorization methods required for the role, see [Configure RAM authorization for cross-account data migration or synchronization](~~48468~~).', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'DbList',
'in' => 'query',
'schema' => ['description' => 'The objects to be tracked, in JSON format. For more information, see [Objects of DTS tasks](~~209545~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '{"dtstest":{"name":"dtstest","all":true}}', 'title' => ''],
],
[
'name' => 'Reserve',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter of DTS, in JSON format. You can specify this parameter to add information about the source and destination databases, such as the data storage format of the destination Kafka database or the CEN instance ID. For more information, see the [Reserve metric description](~~176470~~).', 'type' => 'string', 'required' => false, 'example' => '{ "srcInstanceId": "cen-9kqshqum*******" }', 'title' => ''],
],
[
'name' => 'Checkpoint',
'in' => 'query',
'schema' => ['description' => 'The start time of change tracking, in the format of a UNIX timestamp. Unit: seconds.'."\n"
.'> You can use a search engine to find a UNIX timestamp converter.', 'type' => 'string', 'required' => false, 'example' => '1616902385', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceNetworkType',
'in' => 'query',
'schema' => ['description' => 'The network type of the change tracking task. The only valid value is **vpc**, which indicates virtual private cloud (VPC).'."\n"
."\n"
.'> - If you specify this parameter, the change tracking task is defined as the new version. You must also correctly set the **SubscriptionInstanceVPCId** and **SubscriptionInstanceVSwitchID** parameters. If you do not specify this parameter, the change tracking task is defined as the legacy version.'."\n"
.'- Legacy change tracking tasks support tracking data from self-managed MySQL, ApsaraDB RDS for MySQL, and PolarDB-X 1.0. New-version change tracking tasks support tracking data from self-managed MySQL, ApsaraDB RDS for MySQL, PolarDB for MySQL, and Oracle.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'vpc', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceVPCId',
'in' => 'query',
'schema' => ['description' => 'The VPC ID of the change tracking instance.'."\n"
.'> This parameter is available and required only when **SubscriptionInstanceNetworkType** is set to **vpc**.', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1vwnn14rqpyiczj****', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceVSwitchId',
'in' => 'query',
'schema' => ['description' => 'The vSwitch ID of the change tracking instance.'."\n"
.'> This parameter is available and required only when **SubscriptionInstanceNetworkType** is set to **vpc**.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp10df3mxae6lpmku****', 'title' => ''],
],
[
'name' => 'SubscriptionDataTypeDDL',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to track DDL data. Valid values:'."\n"
."\n"
.'- **true** (default): tracks DDL data.'."\n"
.'- **false**: does not track DDL data.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'SubscriptionDataTypeDML',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to track DML data. Valid values:'."\n"
.'- **true** (default): tracks DML data.'."\n"
.'- **false**: does not track DML data.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DelayPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers for receiving latency alerts. Separate multiple phone numbers with commas (,).'."\n"
.'> - This parameter is supported only on the China site (aliyun.com). Only Chinese mainland phone numbers are supported, and you can specify up to 10 phone numbers.'."\n"
.'- The China site (Chinese mainland) does not support phone alerts. You can only [configure alert rules for DTS tasks in CloudMonitor](~~175876~~).', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'DelayRuleTime',
'in' => 'query',
'schema' => ['description' => 'The threshold for triggering latency alerts. Unit: seconds. The value must be an integer. Set the threshold based on your business requirements. To avoid alert fluctuations caused by network conditions or database loads, set the threshold to 10 seconds or more.'."\n"
.'> This parameter is required when **DelayNotice** is set to **true**.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'name' => 'DelayNotice',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the latency status. Valid values:'."\n"
."\n"
.'- **true**: monitors the latency status.'."\n"
.'- **false**: does not monitor the latency status.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ErrorPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers for receiving error alerts. Separate multiple phone numbers with commas (,).'."\n"
.'> - This parameter is supported only on the China site (aliyun.com). Only Chinese mainland phone numbers are supported, and you can specify up to 10 phone numbers.'."\n"
.'- The China site (Chinese mainland) does not support phone alerts. You can only [configure alert rules for DTS tasks in CloudMonitor](~~175876~~).', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'ErrorNotice',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the error status. Valid values:'."\n"
."\n"
.'- **true**: monitors the error status.'."\n"
.'- **false**: does not monitor the error status.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The ID of the DTS dedicated cluster. This parameter is used to schedule the change tracking task to the specified DTS dedicated cluster.', 'type' => 'string', 'required' => false, 'example' => 'dtscluster_atyl3b5214uk***', 'title' => ''],
],
[
'name' => 'DtsBisLabel',
'in' => 'query',
'schema' => ['description' => 'The environment tag of the DTS instance. Valid values:'."\n"
."\n"
.'- **normal**: normal'."\n"
.'- **online**: online.', 'type' => 'string', 'required' => false, 'example' => 'normal', 'title' => ''],
],
[
'name' => 'MinDu',
'in' => 'query',
'schema' => ['description' => 'The minimum number of DTS Units (DUs) for a serverless instance. Valid values: 1, 2, 4, 8, and 16.'."\n"
.''."\n"
.'> This feature is currently not supported. Do not specify this parameter..', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'MaxDu',
'in' => 'query',
'schema' => ['description' => 'The maximum number of DUs for a serverless instance. Valid values: 2, 4, 8, and 16.'."\n"
.''."\n"
.'> This feature is currently not supported. Do not specify this parameter..', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '16', 'title' => ''],
],
[
'name' => 'SrcCaCertificateOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the CA certificate when the source database uses an SSL connection.'."\n"
."\n"
.'> This feature is currently not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcCaCertificatePassword',
'in' => 'query',
'schema' => ['description' => 'The key of the CA certificate when the source database uses an SSL connection.'."\n"
."\n"
.'> This feature is currently not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcClientCertOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the client certificate when the source database uses an SSL connection.'."\n"
."\n"
.'> This feature is currently not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcClientKeyOssUrl',
'in' => 'query',
'schema' => ['description' => 'The path of the client certificate private key when the source database uses an SSL connection.'."\n"
."\n"
.'> This feature is currently not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcClientPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the client certificate private key when the source database uses an SSL connection.'."\n"
."\n"
.'> This feature is currently not supported. Do not specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1D6ECADF-C5E9-4C96-8811-77602B31****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the change tracking task.', 'type' => 'string', 'example' => 'y0zz3t13h7d****', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'DtsInstanceId' => ['description' => 'The instance ID of the subscribe instance.', 'type' => 'string', 'example' => 'dtsy0zz3t13h7d****', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"1D6ECADF-C5E9-4C96-8811-77602B31****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"DtsJobId\\": \\"y0zz3t13h7d****\\",\\n \\"Success\\": \\"true\\",\\n \\"DtsInstanceId\\": \\"dtsy0zz3t13h7d****\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Configure a DTS change tracking task',
'summary' => 'Configures a DTS change tracking task.',
'description' => '> You can perform the required pre-configurations in the console and then preview the corresponding OpenAPI parameter information to help you specify request parameters. For more information, see [Preview OpenAPI request parameters](~~2851612~~).',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureSubscription',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ConfigureSubscriptionInstance' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the [DescribeSubscriptionInstances](~~49442~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtshp8n2ze4r5x****', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceName',
'in' => 'query',
'schema' => ['description' => 'The name of the change tracking instance.'."\n"
.'> Specify a descriptive name for easy identification. The name does not need to be unique.', 'type' => 'string', 'required' => false, 'example' => 'MySQL订阅', 'title' => ''],
],
[
'name' => 'SourceEndpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '源数据库的实例类型,取值:'."\n"
.'- **RDS**:RDS MySQL。'."\n"
.'- **PolarDB**:PolarDB MySQL。'."\n"
.'- **LocalInstance**:有公网IP的自建数据库。'."\n"
.'- **ECS**:ECS上的自建数据库。'."\n"
.'- **Express**:通过专线接入的自建数据库。'."\n"
.'- **CEN**:通过云企业网CEN接入的自建数据库。'."\n"
.'- **dg**:通过数据库网关接入的自建数据库。'."\n"
."\n"
.'> 支持自建数据库的数据库类型为MySQL、Oracle,您需要提前调用[CreateSubscriptionInstance](~~49436~~)设置。', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'SourceEndpoint.InstanceID',
'in' => 'query',
'schema' => ['description' => '源实例ID。'."\n"
.'> 源数据库的实例类型为RDS MySQL、PolarDB-X 1.0、PolarDB MySQL时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1zc3iyqe3qw****', 'title' => ''],
],
[
'name' => 'SubscriptionDataType.DDL',
'in' => 'query',
'schema' => ['description' => '是否订阅DDL类型的数据,取值:'."\n"
."\n"
.'- **true**:是,为默认值。'."\n"
.'- **false**:否。', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'SubscriptionDataType.DML',
'in' => 'query',
'schema' => ['description' => '是否订阅DML类型的数据,取值:'."\n"
.'- **true**:是,为默认值。'."\n"
.'- **false**:否。', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'SubscriptionObject',
'in' => 'formData',
'schema' => ['description' => 'The objects to be subscribed to. The value is a JSON string that supports regular expressions. For more information, see [Subscription object configuration](~~141902~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '[{ "DBName": "dtstestdata" }]', 'title' => ''],
],
[
'name' => 'SourceEndpoint.IP',
'in' => 'query',
'schema' => ['description' => '源数据库的连接地址。'."\n"
.'> 当源数据库为自建数据库时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '172.16.88.*** ', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Port',
'in' => 'query',
'schema' => ['description' => '源数据库的服务端口。'."\n"
.'> 当源数据库为自建数据库时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'SourceEndpoint.UserName',
'in' => 'query',
'schema' => ['description' => '源实例的数据库账号。'."\n"
.'> 订阅不同的数据库所需的权限有所差异,详情请参见[DTS数据订阅方案概览](~~145715~~)中对应的配置案例。', 'type' => 'string', 'required' => false, 'example' => 'dtstestaccount', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Password',
'in' => 'query',
'schema' => ['description' => '源实例的数据库账号密码。', 'type' => 'string', 'required' => false, 'example' => 'Test123456 ', 'title' => ''],
],
[
'name' => 'SourceEndpoint.OracleSID',
'in' => 'query',
'schema' => ['description' => 'Oracle数据库的SID信息。'."\n"
.'> 当源数据库为自建Oracle时,且Oracle数据库为非RAC实例时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => 'testsid', 'title' => ''],
],
[
'name' => 'SourceEndpoint.DatabaseName',
'in' => 'query',
'schema' => ['description' => '待订阅的数据库名称。', 'type' => 'string', 'required' => false, 'example' => 'dtstestdata', 'title' => ''],
],
[
'name' => 'SourceEndpoint.OwnerID',
'in' => 'query',
'schema' => ['description' => '源实例所属的阿里云账号ID。'."\n"
.'> 仅在配置跨阿里云账号的数据订阅时本参数才可用,且必须传入。', 'type' => 'string', 'required' => false, 'example' => '140692647406****', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Role',
'in' => 'query',
'schema' => ['description' => '源实例的授权角色。当源实例与配置订阅任务所属阿里云账号不同时,需传入该参数,来指定源实例的授权角色,以允许配置订阅任务所属阿里云账号访问源实例的实例信息。'."\n"
.'> 角色所需的权限及授权方式,请参见[跨阿里云账号数据迁移或同步时如何配置RAM授权](~~48468~~)。'."\n", 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceNetworkType',
'in' => 'query',
'schema' => ['description' => 'The network type of the change tracking instance. The only valid value is **vpc**, which indicates a virtual private cloud (VPC).'."\n"
."\n"
.'> - If you specify this parameter, the change tracking instance is defined as the new version. You must also correctly set the **SubscriptionInstance.VPCId** and **SubscriptionInstance.VSwitchID** parameters. If you do not specify this parameter, the change tracking instance is defined as the legacy version.'."\n"
.'> - The legacy version supports change tracking for self-managed MySQL, ApsaraDB RDS for MySQL, and DRDS. The new version supports change tracking for self-managed MySQL, ApsaraDB RDS for MySQL, PolarDB for MySQL, and Oracle.', 'type' => 'string', 'required' => false, 'example' => 'vpc', 'title' => ''],
],
[
'name' => 'SubscriptionInstance.VPCId',
'in' => 'query',
'schema' => ['description' => '订阅实例的专有网络ID。'."\n"
.'> 当**SubscriptionInstanceNetworkType**取值为**vpc**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1vwnn14rqpyiczj****', 'title' => ''],
],
[
'name' => 'SubscriptionInstance.VSwitchId',
'in' => 'query',
'schema' => ['description' => '订阅实例的虚拟交换机ID。'."\n"
.'> 当**SubscriptionInstanceNetworkType**取值为**vpc**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp10df3mxae6lpmku****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0CC15092-8957-4532-B559-B4FB80AC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0CC15092-8957-4532-B559-B4FB80AC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Configure a change tracking channel',
'summary' => 'Configures a change tracking channel. This is a legacy operation.',
'description' => 'Before you call this operation, you must call the [CreateSubscriptionInstance](~~49436~~) operation to create a change tracking instance.'."\n"
."\n"
.'> In the **Advanced Settings** step of the console, move the pointer over the **Next: Save the task and perform a precheck** button, and then click **Preview OpenAPI parameters** in the tooltip to view the parameter information for configuring this instance by using API operations.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureSubscriptionInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ConfigureSubscriptionInstanceAlert' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the DescribeSubscriptionInstances operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsl8zl9ek6292****', 'title' => ''],
],
[
'name' => 'DelayAlertStatus',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the latency status. Valid values:'."\n"
."\n"
.'- **enable**: yes.'."\n"
.'- **disable**: no.'."\n"
."\n"
.'> - Default value: **enable**.'."\n"
.'- You must specify at least one of this parameter and the **ErrorAlertStatus** parameter.', 'type' => 'string', 'required' => false, 'example' => 'enable', 'title' => ''],
],
[
'name' => 'DelayAlertPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers of contacts for latency alerts. Separate multiple mobile phone numbers with commas (,).'."\n"
.'>- This parameter is supported only on the China site (aliyun.com). Only Chinese mainland mobile phone numbers are supported, and you can specify up to 10 mobile phone numbers.'."\n"
.'- China site (Chinese mainland) does not support Chinese mainland mobile phone alerts. You can only [configure alert rules for DTS tasks in CloudMonitor](~~175876~~).', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'ErrorAlertStatus',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the exception status. Valid values:'."\n"
."\n"
.'- **enable**: yes.'."\n"
.'- **disable**: no.'."\n"
."\n"
.'> - Default value: **enable**.'."\n"
.'- You must specify at least one of this parameter and the **DelayAlertStatus** parameter.'."\n"
.'- After you enable exception status monitoring, an alert is triggered when an exception is detected.', 'type' => 'string', 'required' => false, 'example' => 'enable', 'title' => ''],
],
[
'name' => 'ErrorAlertPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers of contacts for exception alerts. Separate multiple mobile phone numbers with commas (,).'."\n"
.'>- This parameter is supported only on the China site (aliyun.com). Only Chinese mainland mobile phone numbers are supported, and you can specify up to 10 mobile phone numbers.'."\n"
.'- China site (Chinese mainland) does not support Chinese mainland mobile phone alerts. You can only [configure alert rules for DTS tasks in CloudMonitor](~~175876~~).', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'DelayOverSeconds',
'in' => 'query',
'schema' => ['description' => 'The threshold for triggering a latency alert. Unit: seconds. The value must be an integer. Set the threshold based on your business requirements. To avoid alert fluctuations caused by network issues or database loads, set the threshold to 10 seconds or more.'."\n"
.'> This parameter is required when **DelayAlertStatus** is set to **enable**.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0a2a047516051973705541561d****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'InternalError The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0a2a047516051973705541561d****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"InternalError The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Configure monitoring and alerting for a change tracking channel',
'summary' => 'Configures monitoring and alerting to monitor the latency and exception status of a change tracking channel.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [],
],
'ConfigureSynchronizationJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data synchronization instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobName',
'in' => 'query',
'schema' => ['description' => 'The name of the synchronization task.'."\n"
.'> Specify a descriptive name that makes it easy to identify the task. It does not need to be unique.', 'type' => 'string', 'required' => false, 'example' => 'MySQL同步', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the [DescribeSynchronizationJobs](~~49454~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsz4ao1dor13d****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- This parameter takes effect only if you set it to **Reverse** and the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'SourceEndpoint.InstanceId',
'in' => 'query',
'schema' => ['description' => '源实例ID。', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1i99e8l7913****', 'title' => ''],
],
[
'name' => 'SourceEndpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '源实例类型,取值为:'."\n"
."\n"
.'- **RDS**:阿里云RDS实例。'."\n"
.'- **Redis**:阿里云Redis实例。'."\n"
.'- **PolarDB**:阿里云PolarDB集群(仅支持MySQL或兼容Oracle语法的引擎)。'."\n"
.'- **ECS**:ECS上的自建数据库。'."\n"
.'- **Express**:通过专线接入的自建数据库。'."\n"
.'- **dg**:通过数据库网关DG接入的自建数据库。'."\n"
.'- **cen**:通过云企业网CEN接入的自建数据库。'."\n"
."\n"
.'> 默认取值为**RDS**。', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'SourceEndpoint.IP',
'in' => 'query',
'schema' => ['description' => '源库的IP地址。'."\n"
.'> 当**SourceEndpoint.InstanceType**取值为**ECS**、**Express**、**dg**或**cen**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '172.16.88.***', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Port',
'in' => 'query',
'schema' => ['description' => '源库的数据库服务端口。'."\n"
.'> 当**SourceEndpoint.InstanceType**取值为**ECS**、**Express**、**dg**或**cen**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'SourceEndpoint.UserName',
'in' => 'query',
'schema' => ['description' => '源库的数据库账号。'."\n"
.'> - 当**SourceEndpoint.InstanceType**取值为**ECS**、**Express**、**dg**或**cen**时,本参数才可用且必须传入。'."\n"
.'- 当**SourceEndpoint.InstanceType**取值为**Redis**时,本参数无需传入。'."\n"
.'- 同步不同的数据库所需的权限有所差异,详情请参见[DTS数据同步方案概览](~~140954~~)中对应的配置案例。', 'type' => 'string', 'required' => false, 'example' => 'dtstestaccount', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Password',
'in' => 'query',
'schema' => ['description' => '源库数据库账号密码。'."\n"
.'> 当**SourceEndpoint.InstanceType**取值为**ECS**、**Express**、**dg**或**cen**时,本参数必须传入。', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.InstanceId',
'in' => 'query',
'schema' => ['description' => '同步目标实例的实例ID'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**MaxCompute**或**DataHub**时,本参数传入MaxCompute实例或DataHub的Project名称。'."\n"
.'当目标实例为阿里云分析型数据库MySQL版时,传入分析型数据库MySQL版的集群ID。', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1r46452ai50****', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '目标实例类型,取值为:'."\n"
."\n"
.'- **Redis**:阿里云Redis实例。'."\n"
.'- **RDS**:阿里云RDS实例。'."\n"
.'- **PolarDB**:阿里云PolarDB集群(仅支持MySQL或兼容Oracle语法的引擎)。'."\n"
.'- **ECS**:ECS上的自建数据库。'."\n"
.'- **Express**:通过专线接入的本地数据库。'."\n"
.'- **DataHub**:阿里云DataHub实例。'."\n"
.'- **MaxCompute**:阿里云MaxCompute实例。'."\n"
.'- **AnalyticDB**:云原生数据仓库AnalyticDB MySQL 3.0和2.0版本。'."\n"
.'- **Greenplum**:云原生数据仓库ADB PostgreSQL版(原分析型数据库PostgreSQL版)。'."\n"
."\n"
.'> 默认取值为**RDS**。', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.IP',
'in' => 'query',
'schema' => ['description' => '目标库的IP地址。'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**Express**、**dg**或**cen**时,本参数必须传入本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '172.16.88.***', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.Port',
'in' => 'query',
'schema' => ['description' => '目标库的数据库服务端口。'."\n"
.'> 当**DestinationEndpoint.InstanceType**取值为**ECS**、**Express**、**dg**或**cen**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.UserName',
'in' => 'query',
'schema' => ['description' => '目标库的数据库账号。'."\n"
.'> - 同步不同的数据库所需的权限有所差异,详情请参见[DTS数据同步方案概览](~~140954~~)中对应的配置案例。'."\n"
.'- 当**DestinationEndpoint.InstanceType**取值为**ECS**、**Express**、**dg**或**cen**时,本参数必须传入。'."\n"
.'- 当**DestinationEndpoint.InstanceType**取值为RDS且数据库版本为MySQL 5.5或MySQL 5.6,无需传入本参数和**DestinationEndpoint.Password**参数。'."\n"
.'- 当**DestinationEndpoint.InstanceType**取值为**Redis**时,无需传入本参数。', 'type' => 'string', 'required' => false, 'example' => 'dtstestaccount', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.Password',
'in' => 'query',
'schema' => ['description' => '目标库数据库账号密码。'."\n"
."\n"
.'> - 当**DestinationEndpoint.InstanceType**取值为**ECS**、**Express**、**dg**或**cen**时,本参数必须传入。', 'type' => 'string', 'required' => false, 'example' => 'Test654321', 'title' => ''],
],
[
'name' => 'StructureInitialization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform initial schema synchronization. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.'."\n"
."\n"
.'> Default value: **true**.', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DataInitialization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform initial full data synchronization. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.'."\n"
."\n"
.'> Default value: **true**.', 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'SynchronizationObjects',
'in' => 'formData',
'schema' => ['description' => 'The objects to be synchronized. The value is a JSON string and supports certain regular expressions. For more information, see [Synchronization object configuration](~~141901~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '[{"DBName":"dtstestdata","TableIncludes":[{"TableName":"customer"}]}]', 'title' => ''],
],
[
'name' => 'SourceEndpoint.OwnerID',
'in' => 'query',
'schema' => ['description' => '源RDS实例所属的阿里云账号ID。'."\n"
.'> 传入本参数即代表执行跨阿里云账号的数据同步,同时您还需要传入**SourceEndpoint.Role**参数。', 'type' => 'string', 'required' => false, 'example' => '140692647406****', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Role',
'in' => 'query',
'schema' => ['description' => '源实例所属云账号配置的角色名称。'."\n"
.'> 执行跨阿里云账号的数据同步时须传入本参数,该角色所需的权限及授权方式请参见[跨阿里云账号数据迁移或同步时如何配置RAM授权](~~48468~~)。', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'PartitionKey.ModifyTime_Year',
'in' => 'query',
'schema' => ['description' => '设置增量日志表是否包含以增量更新时间对应年份信息定义的分区,取值:**true**或**false**。'."\n"
.'> 当**DestinationEndpoint.InstanceType**参数取值为**Maxcompute**时,本参数才可用。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'PartitionKey.ModifyTime_Month',
'in' => 'query',
'schema' => ['description' => '设置增量日志表是否包含以增量更新时间对应月份信息定义的分区,取值:**true**或**false**。'."\n"
.'> 当**DestinationEndpoint.InstanceType**参数取值为**Maxcompute**时,本参数才可用。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'PartitionKey.ModifyTime_Day',
'in' => 'query',
'schema' => ['description' => '设置增量日志表是否包含以增量更新时间对应日期信息定义的分区,取值:**true**或**false**。'."\n"
.'> 当**DestinationEndpoint.InstanceType**参数取值为**Maxcompute**时,本参数才可用。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'PartitionKey.ModifyTime_Hour',
'in' => 'query',
'schema' => ['description' => '设置增量日志表是否包含以增量更新时间对应小时信息定义的分区,取值:**true**或**false**。'."\n"
.'> 当**DestinationEndpoint.InstanceType**参数取值为**Maxcompute**时,本参数才可用。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'PartitionKey.ModifyTime_Minute',
'in' => 'query',
'schema' => ['description' => '设置增量日志表是否包含以增量更新时间对应分钟信息定义的分区,取值:**true**或**false**。'."\n"
."\n"
.'> 当**DestinationEndpoint.InstanceType**参数取值为**Maxcompute**时,本参数才可用。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'MigrationReserved',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet special requirements, such as specifying whether to automatically start the precheck. For more information, see [MigrationReserved parameter description](~~176470~~).'."\n"
.'> For example, you can use this parameter for data synchronization between ApsaraDB for Redis Enhanced Edition (Tair) instances. For more information, see [Use OpenAPI to configure one-way or bidirectional data synchronization between ApsaraDB for Redis Enhanced Edition instances](~~155967~~).', 'type' => 'string', 'required' => false, 'example' => '{ "autoStartModulesAfterConfig": "none", "targetTableMode": 2 }', 'title' => ''],
],
[
'name' => 'Checkpoint',
'in' => 'query',
'schema' => ['description' => 'The synchronization checkpoint.', 'type' => 'string', 'required' => false, 'example' => '1610540493', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'SourceEndpoint.DatabaseName',
'in' => 'query',
'schema' => ['description' => '源实例中的同步对象所属数据库名称。', 'type' => 'string', 'required' => false, 'example' => 'dtstestdata', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.DataBaseName',
'in' => 'query',
'schema' => ['description' => '目标实例中的同步对象所属数据库名称。', 'type' => 'string', 'required' => false, 'example' => 'dtstestdata', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '2690E467-7773-43BC-A009-370EE2E7****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2690E467-7773-43BC-A009-370EE2E7****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Configure a data synchronization task',
'summary' => 'Configures a data synchronization task by using the previous version.',
'description' => 'Before you call this operation, you must call the [CreateSynchronizationJob](~~49446~~) operation to create a data synchronization instance.'."\n"
.'> - After this operation is called, the data synchronization instance automatically starts and performs a precheck. You do not need to call the [StartSynchronizationJob](~~49448~~) operation to start the instance.'."\n"
.'- If the data synchronization instance fails to start, the precheck may have failed. You can call the [DescribeSynchronizationJobStatus](~~49453~~) operation to query the status of the data synchronization instance, obtain the error message of the precheck failure, and adjust the parameters. After the adjustment, you can call the [StartSynchronizationJob](~~49448~~) operation to restart the data synchronization instance.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:ConfigureSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ConfigureSynchronizationJobAlert' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data synchronization instance. You can call the DescribeSynchronizationJobs operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtskxz1170c10p****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> Default value: **Forward**.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'DelayAlertStatus',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the latency status. Valid values:'."\n"
."\n"
.'- **enable**: yes.'."\n"
.'- **disable**: no.'."\n"
."\n"
.'> - Default value: **enable**.'."\n"
.'- You must specify at least one of this parameter and the **ErrorAlertStatus** parameter.', 'type' => 'string', 'required' => false, 'example' => 'enable', 'title' => ''],
],
[
'name' => 'DelayAlertPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers of contacts for latency alerts. Separate multiple phone numbers with commas (,).'."\n"
."\n"
.'Note'."\n"
.'This parameter is supported only on the China site (aliyun.com) and only Chinese mainland phone numbers are supported. You can specify up to 10 phone numbers.'."\n"
.'China site (Chinese mainland) does not support phone alerts on the China site. You can configure alert rules for DTS tasks only in the CloudMonitor console.', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'ErrorAlertStatus',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to monitor the exception status. Valid values:'."\n"
."\n"
.'- **enable**: yes.'."\n"
.'- **disable**: no.'."\n"
."\n"
.'> - Default value: **enable**.'."\n"
.'- You must specify at least one of this parameter and the **DelayAlertStatus** parameter.'."\n"
.'- After you enable exception status monitoring, an alert is triggered when an exception is detected.', 'type' => 'string', 'required' => false, 'example' => 'enable', 'title' => ''],
],
[
'name' => 'ErrorAlertPhone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers of contacts for exception alerts. Separate multiple phone numbers with commas (,).'."\n"
."\n"
.'Note'."\n"
.'This parameter is supported only on the China site (aliyun.com) and only Chinese mainland phone numbers are supported. You can specify up to 10 phone numbers.'."\n"
.'The China site does not support phone alerts on the international site (alibabacloud.com). You can configure alert rules for DTS tasks only in the CloudMonitor console.', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'DelayOverSeconds',
'in' => 'query',
'schema' => ['description' => 'The threshold for triggering a latency alert. Unit: seconds. The value must be an integer. Set the threshold based on your business requirements. We recommend that you set the threshold to 10 seconds or more to avoid alert fluctuations caused by network issues or database loads.'."\n"
.'> This parameter is required when **DelayAlertStatus** is set to **enable**.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8EEE7858-7D41-4EDF-9435-AEED2A34****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"8EEE7858-7D41-4EDF-9435-AEED2A34****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Configure monitoring and alerting for a synchronization task',
'summary' => 'Configures monitoring and alerting to monitor the latency and exception status of a synchronization task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureSynchronizationJobAlert',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ConfigureSynchronizationJobReplicatorCompare' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the [DescribeSynchronizationJobs](~~49454~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsexjk1alb116****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You need to specify this parameter only if the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'SynchronizationReplicatorCompareEnable',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to enable full image matching. Valid values:'."\n"
.'- **true**: enabled.'."\n"
.'- **false**: disabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The **ClientToken** parameter can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '86A8FF0F-FA92-449D-B559-05CFF9F9****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"86A8FF0F-FA92-449D-B559-05CFF9F9****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Configure full image matching switch for synchronization',
'summary' => 'Configures the full image matching switch for a data synchronization instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureSynchronizationJobReplicatorCompare',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ConvertInstanceResourceGroup' => [
'summary' => 'Transfers a DTS instance to a different resource group.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '152991',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'A legacy parameter. This parameter does not take effect. You do not need to pass this parameter.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'm4312mab158****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the DTS instance. You can view the ID in the **ID/Name** column on the task list page in the console.'."\n"
."\n"
.'> This parameter is required.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'dtszhc12zp727o****', 'title' => ''],
],
[
'name' => 'NewResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the new resource group. You can obtain the ID from the Resource Management console. For more information, see [View basic information of a resource group](~~151181~~).', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2r4fkrqw****', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'A parameter reserved for special business scenarios. You do not need to pass this parameter.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'A parameter reserved for special business scenarios. You do not need to pass this parameter.', 'type' => 'string', 'required' => false, 'example' => 'rg-3m1213ye7l****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AD823BD3-1BA6-4117-A536-165CB280****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'Code' => ['description' => 'The backend error code, which increments numerically.', 'type' => 'string', 'example' => '500', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
.'> For example, if **The Value of Input Parameter %s is not valid** is returned and DynamicMessage returns DtsJobId, the request parameter DtsJobId that you specified is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"AD823BD3-1BA6-4117-A536-165CB280****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"Code\\": \\"500\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\"\\n}","type":"json"}]',
'title' => 'Modify the resource group of a DTS instance',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ConvertInstanceResourceGroup',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'CountJobByCondition' => [
'summary' => 'Queries the count of tasks by conditions.',
'methods' => ['get', 'post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'none'],
'parameters' => [
[
'name' => 'Type',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The query type. Valid values: '."\n"
.'- **name**: queries by job name. '."\n"
.'- **rds**: queries by destination instance ID. '."\n"
.'- **instance**: queries by DTS instance ID.'."\n"
.'- **srcRds**: queries by source instance ID.'."\n"
."\n"
.'> This parameter corresponds to the **JobType** parameter.', 'type' => 'string', 'example' => 'name/instance', 'required' => false],
],
[
'name' => 'Region',
'in' => 'query',
'schema' => ['description' => 'The region ID used as a filter condition. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the DTS instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'JobType',
'in' => 'query',
'schema' => ['description' => 'The task type. Valid values:'."\n"
."\n"
.'- **MIGRATION**: data migration.'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **SUBSCRIBE**: change tracking.', 'type' => 'string', 'required' => false, 'example' => 'SYNC', 'title' => ''],
],
[
'name' => 'Params',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The query value that corresponds to JobType.', 'type' => 'string', 'required' => false, 'example' => 'dtspk3f13r731m****'],
],
[
'name' => 'Status',
'in' => 'query',
'schema' => ['description' => 'The instance status of the DTS instance. Valid values:'."\n"
."\n"
.'Data migration node statuses:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a dry run.'."\n"
.'- **PrecheckFailed**: dry run failed.'."\n"
.'- **PreCheckPass**: dry run passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Finished**: finished.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.'."\n"
."\n"
.'Data synchronization node statuses:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a dry run.'."\n"
.'- **PrecheckFailed**: dry run failed.'."\n"
.'- **PreCheckPass**: dry run passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Initializing**: performing initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **Synchronizing**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying sub-objects.'."\n"
.'- **Finished**: finished.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.'."\n"
."\n"
.'Subscribe node statuses:'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a dry run.'."\n"
.'- **PrecheckFailed**: dry run failed.'."\n"
.'- **PreCheckPass**: dry run passed.'."\n"
.'- **Starting**: starting.'."\n"
.'- **Normal**: Normal.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Abnormal**: abnormal.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.', 'type' => 'string', 'required' => false, 'example' => 'Finished', 'title' => ''],
],
[
'name' => 'GroupId',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The parent task ID of a distributed synchronization task.', 'type' => 'string', 'required' => false, 'example' => 'pk13r731m****'],
],
[
'name' => 'SrcDbType',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The type of the source database.', 'type' => 'string', 'example' => 'MongoDB', 'required' => false],
],
[
'name' => 'DestDbType',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The type of the destination database.', 'type' => 'string', 'example' => 'MongoDB', 'required' => false],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID. This is a global parameter and does not need to be passed for this API operation.', 'type' => 'string', 'required' => false, 'example' => '资源组ID,全局参数,当前API无需传入。', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'FC3BAAF2-74E3-4471-8EB5-96202D6A****'],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** placeholder in the **ErrMessage** parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'present environment is not support,so skip.', 'title' => ''],
'DynamicCode' => ['description' => 'The internal error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of data synchronization instances that meet the specified conditions under the Alibaba Cloud account.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
],
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FC3BAAF2-74E3-4471-8EB5-96202D6A****\\",\\n \\"HttpStatusCode\\": 200,\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DynamicMessage\\": \\"present environment is not support,so skip.\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"TotalRecordCount\\": 100\\n}","type":"json"}]',
'title' => 'Count tasks by conditions',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'none',
'ramAction' => [
'action' => 'dts:CountJobByCondition',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'CreateConsumerChannel' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region in which the DTS change tracking instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call [DescribeDtsJobs](~~209702~~) to query the instance ID.'."\n"
.'> You must specify one of the **DtsInstanceId** and **DtsJobId** parameters.', 'type' => 'string', 'required' => false, 'example' => 'dtsboss6pn1w******', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.'."\n"
.'> You must specify one of the **DtsInstanceId** and **DtsJobId** parameters.', 'type' => 'string', 'required' => false, 'example' => 'boss6pn1w******', 'title' => ''],
],
[
'name' => 'ConsumerGroupName',
'in' => 'query',
'schema' => ['description' => 'The name of the consumer group. The name can be up to 128 characters in length. Specify a business-meaningful name for easy identification.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '订阅组A', 'title' => ''],
],
[
'name' => 'ConsumerGroupPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the consumer group account.'."\n"
."\n"
.'- The password must contain characters from at least two of the following categories: uppercase letters, lowercase letters, digits, and special characters.'."\n"
.'- The password must be 8 to 32 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'ConsumerGroupUserName',
'in' => 'query',
'schema' => ['description' => 'The username of the consumer group account.'."\n"
."\n"
.'The username can contain uppercase letters, lowercase letters, digits, and underscores (_). The username can be up to 16 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2zx4uizich7y', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '5F566C5B-E5B0-4020-A531-FC6F5005****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'ConsumerGroupID' => ['description' => 'The consumer group ID. You can pass this ID to the downstream client to consume the change tracking data.', 'type' => 'string', 'example' => 'dtsor2y66j4219****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"5F566C5B-E5B0-4020-A531-FC6F5005****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"ConsumerGroupID\\": \\"dtsor2y66j4219****\\"\\n}","type":"json"}]',
'title' => 'Create a consumer group for a change tracking task',
'summary' => 'Creates a consumer group for a change tracking task (new version).',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:CreateConsumerChannel',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'CreateConsumerGroup' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the DescribeSubscriptionInstances operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsg2m10r1x15a****', 'title' => ''],
],
[
'name' => 'ConsumerGroupName',
'in' => 'query',
'schema' => ['description' => 'The name of the consumer group. The name can be up to 128 characters in length. We recommend that you use a descriptive name for easy identification.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '测试订阅组', 'title' => ''],
],
[
'name' => 'ConsumerGroupUserName',
'in' => 'query',
'schema' => ['description' => 'The account of the consumer group.'."\n"
."\n"
.'The account can contain uppercase letters, lowercase letters, digits, and underscores (_). The account can be up to 16 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'ConsumerGroupPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the consumer group account.'."\n"
."\n"
.'- The password must contain characters from at least two of the following categories: uppercase letters, lowercase letters, digits, and special characters.'."\n"
.'- The password must be 8 to 32 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'ConsumerGroupID' => ['description' => 'The ID of the consumer group.', 'type' => 'string', 'example' => 'dtswc411cg617p****', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '6063641E-BAD1-4BA7-B70B-26FFFD18****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ConsumerGroupID\\": \\"dtswc411cg617p****\\",\\n \\"RequestId\\": \\"6063641E-BAD1-4BA7-B70B-26FFFD18****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Create a consumer group',
'summary' => 'Creates a consumer group for a change tracking instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => '',
'ramAction' => [
'action' => 'dts:CreateConsumerGroup',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'CreateDedicatedClusterMonitorRule' => [
'summary' => 'Creates an alert rule by calling the CreateDedicatedClusterMonitorRule operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'docRequired' => false, 'required' => false, 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
],
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The cluster ID.', 'type' => 'string', 'required' => true, 'example' => 'dts-dasd22******', 'title' => ''],
],
[
'name' => 'NoticeSwitch',
'in' => 'query',
'schema' => ['description' => 'The alert switch. Valid values:'."\n"
."\n"
.'- **1**: on.'."\n"
.'- **0**: off.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'DuAlarmThreshold',
'in' => 'query',
'schema' => ['description' => 'The DU alert threshold. Unit: %.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''],
],
[
'name' => 'CpuAlarmThreshold',
'in' => 'query',
'schema' => ['description' => 'The CPU alert threshold. Unit: %.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '30', 'title' => ''],
],
[
'name' => 'MemAlarmThreshold',
'in' => 'query',
'schema' => ['description' => 'The memory alert threshold. Unit: %.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '40', 'title' => ''],
],
[
'name' => 'DiskAlarmThreshold',
'in' => 'query',
'schema' => ['description' => 'The disk alert threshold. Unit: %.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100', 'title' => ''],
],
[
'name' => 'Phones',
'in' => 'query',
'schema' => ['description' => 'The alert phone numbers. Separate multiple phone numbers with commas (,).', 'type' => 'string', 'required' => true, 'example' => '186****7654', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID. This is a global parameter and does not need to be passed in for this API operation.', 'type' => 'string', 'required' => false, 'example' => '资源组ID,全局参数,当前API无需传入。', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\"\\n}","type":"json"}]',
'title' => 'Create an alert rule',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateDedicatedClusterMonitorRule',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'CreateDocParserJob' => [
'summary' => 'Creates a document parsing task.',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '52309',
'abilityTreeNodes' => ['FEATUREdtsE4ZR2L'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the document parsing task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'FileUrl',
'in' => 'query',
'schema' => ['description' => 'The OSS URL of the document to be parsed.'."\n"
."\n"
.'> This parameter is automatically populated when you call this operation by using an SDK.', 'type' => 'string', 'isFileTransferUrl' => true, 'required' => false, 'example' => 'https://oss-cn-hangzhou.aliyuncs.com/storage/pdf/40184458-fbb0-44cf-a391-350628ceccdd17375122****', 'title' => ''],
],
[
'name' => 'FileName',
'in' => 'query',
'schema' => ['description' => 'The name of the document to be parsed.'."\n"
."\n"
.'> The name must include the file name extension. Currently, only .pdf is supported.', 'type' => 'string', 'required' => false, 'example' => '2.pdf', 'title' => ''],
],
[
'name' => 'ResultType',
'in' => 'query',
'schema' => ['description' => 'The output format of the parsing result after the task is complete. Valid values:'."\n"
."\n"
.'- **zip**: a ZIP compressed file.'."\n"
.'- **content**: plain text.', 'type' => 'string', 'required' => false, 'example' => 'zip', 'title' => ''],
],
[
'name' => 'RagInstanceId',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FDC111B1-ACBF-457D-9656-247FDEE9****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the %s variable in the **ErrMessage** response parameter.', 'type' => 'string', 'example' => 'present environment is not support, so skip', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the document parsing task.', 'type' => 'string', 'example' => 'dts-20250729-boss6pn1w******', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'OperationDenied.NotPurchased', 'errorMessage' => 'The instance has not been purchased and the task cannot be started.', 'description' => 'Failed to start a task. Purchase a task first.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"FDC111B1-ACBF-457D-9656-247FDEE9****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DynamicMessage\\": \\"present environment is not support, so skip\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"DtsJobId\\": \\"dts-20250729-boss6pn1w******\\"\\n}","type":"json"}]',
'title' => 'Create a document parsing task',
'description' => 'Calling this operation creates a document parsing task and returns a task ID (DtsJobId).'."\n"
."\n"
.'> - This operation relies on Object Storage Service (OSS) for file transfer. We recommend that you call this operation by using an SDK. The CreateDocParserJobAdvance operation automatically encapsulates the file transfer process.'."\n"
.'> - After you obtain the DtsJobId response parameter, you can call the DescribeDocParserJobStatus operation to query the execution status of the document parsing task, and call the DescribeDocParserJobResult operation to obtain the output of the document parsing task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateDocParserJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'CreateDtsInstance' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '52216',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'query',
'schema' => ['description' => 'The task ID (**DtsJobId**) obtained by calling the **ConfigureDtsJob** operation.'."\n"
.'> If you specify this parameter, you do not need to specify **SourceRegion**, **DestinationRegion**, **Type**, **SourceEndpointEngineName**, or **DestinationEndpointEngineName**. Even if you specify these parameters, the configurations in **JobId** take precedence.', 'type' => 'string', 'required' => false, 'example' => 'bi6e22ay243****', 'title' => ''],
],
[
'name' => 'InstanceClass',
'in' => 'query',
'schema' => ['description' => 'The specification of the data migration or data synchronization instance.'."\n"
."\n"
.'- Specifications supported by data migration instances: **xxlarge**, **xlarge**, **large**, **medium**, and **small**.'."\n"
.'- Specifications supported by data synchronization instances: **large**, **medium**, **small**, and **micro**.'."\n"
."\n"
.'> For more information about the performance of each specification, see [Specifications of data migration instances](~~26606~~) and [Specifications of data synchronization instances](~~26605~~).', 'type' => 'string', 'required' => false, 'example' => 'xxlarge', 'title' => ''],
],
[
'name' => 'PayType',
'in' => 'query',
'schema' => ['description' => 'The billing method. Valid values:'."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.'."\n"
."\n"
.'> Correction: This parameter is required.', 'type' => 'string', 'required' => false, 'example' => 'PrePaid', 'title' => ''],
],
[
'name' => 'Period',
'in' => 'query',
'schema' => ['description' => 'The billing method of the subscription instance. Valid values: **Year** and **Month**.'."\n"
.'> This parameter is valid and required only when **PayType** is set to **PrePaid** (subscription).', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''],
],
[
'name' => 'SyncArchitecture',
'in' => 'query',
'schema' => ['description' => 'The synchronization topology. Valid values:'."\n"
."\n"
.'- **oneway**: one-way synchronization. This is the default value.'."\n"
.'- **bidirectional**: two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'oneway', 'title' => ''],
],
[
'name' => 'AutoStart',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to automatically start the task after the purchase is complete. Valid values:'."\n"
.'- **false**: no. This is the default value.'."\n"
.'- **true**: yes.'."\n"
."\n"
.'> This parameter takes effect only when **JobId** is set to a valid task ID and this parameter is set to **true**.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'UsedTime',
'in' => 'query',
'schema' => ['description' => 'The subscription duration of the subscription instance.'."\n"
.'- If **Period** is set to **Month**, valid values are 1, 2, 3, 4, 5, 6, 7, 8, and 9.'."\n"
.'- If **Period** is set to **Year**, valid values are 1, 2, 3, and 5.'."\n"
.'> - This parameter is valid and required only when **PayType** is set to **PrePaid** (subscription).'."\n"
.'- You can set the billing method of the subscription instance by using the **Period** parameter.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '10000', 'minimum' => '1', 'default' => '1', 'example' => '5', 'title' => ''],
],
[
'name' => 'Quantity',
'in' => 'query',
'schema' => ['description' => 'The number of instances to purchase.'."\n"
.'> A maximum of one instance can be purchased per call.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '9999999', 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'AutoPay',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to enable auto-renewal upon expiration. Valid values:'."\n"
.'- **false**: no. This is the default value.'."\n"
.'- **true**: yes.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'Type',
'in' => 'query',
'schema' => ['description' => 'The instance type. Valid values:'."\n"
."\n"
.'- **MIGRATION**: data migration.'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **SUBSCRIBE**: change tracking.'."\n"
.'> You must specify this parameter or **JobId**.', 'type' => 'string', 'required' => false, 'example' => 'SYNC', 'title' => ''],
],
[
'name' => 'DatabaseCount',
'in' => 'query',
'schema' => ['description' => 'The number of private custom ApsaraDB RDS instances under PolarDB-X. Default value: **1**.'."\n"
.'> This parameter is required only when **SourceEndpointEngineName** is set to **drds**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '10000', 'minimum' => '1', 'default' => '1', 'example' => '3', 'title' => ''],
],
[
'name' => 'SourceRegion',
'in' => 'query',
'schema' => ['description' => 'The region of the source instance. For more information, see [List of supported regions](~~141033~~).'."\n"
.'> You must specify this parameter or **JobId**.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DestinationRegion',
'in' => 'query',
'schema' => ['description' => 'The region of the destination instance. For more information, see [List of supported regions](~~141033~~).'."\n"
.'> You must specify this parameter or **JobId**.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SourceEndpointEngineName',
'in' => 'query',
'schema' => ['description' => 'The database engine type of the source instance. Valid values:'."\n"
.'- **MySQL**: MySQL database, including ApsaraDB RDS for MySQL and self-managed MySQL.'."\n"
.'- **PolarDB**: PolarDB for MySQL.'."\n"
.'- **polardb_o**: PolarDB for Oracle.'."\n"
.'- **polardb_pg**: PolarDB for PostgreSQL.'."\n"
.'- **Redis**: Redis database, including Tair (Redis® OSS-Compatible) and self-managed Redis.'."\n"
.'- **DRDS**: cloud-native distributed database PolarDB-X 1.0 and 2.0.'."\n"
.'- **PostgreSQL**: self-managed PostgreSQL.'."\n"
.'- **odps**: MaxCompute.'."\n"
.'- **oracle**: self-managed Oracle.'."\n"
.'- **mongodb**: MongoDB database, including ApsaraDB for MongoDB and self-managed MongoDB.'."\n"
.'- **tidb**: TiDB database.'."\n"
.'- **ADS**: AnalyticDB for MySQL 2.0.'."\n"
.'- **ADB30**: AnalyticDB for MySQL 3.0.'."\n"
.'- **Greenplum**: AnalyticDB for PostgreSQL.'."\n"
.'- **MSSQL**: SQL Server database, including ApsaraDB RDS for SQL Server and self-managed SQL Server.'."\n"
.'- **kafka**: Kafka database, including ApsaraMQ for Kafka and self-managed Kafka.'."\n"
.'- **DataHub**: Alibaba Cloud DataHub.'."\n"
.'- **DB2**: self-managed Db2 for LUW.'."\n"
.'- **as400**: AS/400.'."\n"
.'- **Tablestore**: Tablestore.'."\n"
.'- **OceanBase**: OceanBase (MySQL). Only data migration instances are supported.'."\n"
."\n"
.'> - Default value: **MySQL**.'."\n"
.'- For more information about the supported source and destination database combinations, see [Databases, initial synchronization types, and synchronization topologies](~~130744~~) and [Supported databases and migration types](~~26618~~).'."\n"
.'- You must specify this parameter or **JobId**.', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'DestinationEndpointEngineName',
'in' => 'query',
'schema' => ['description' => 'The database engine type of the destination instance. Valid values:'."\n"
.'- **MySQL**: MySQL database, including ApsaraDB RDS for MySQL and self-managed MySQL.'."\n"
.'- **PolarDB**: PolarDB for MySQL.'."\n"
.'- **polardb_o**: PolarDB for Oracle.'."\n"
.'- **polardb_pg**: PolarDB for PostgreSQL.'."\n"
.'- **Redis**: Redis database, including Tair (Redis® OSS-Compatible) and self-managed Redis.'."\n"
.'- **DRDS**: cloud-native distributed database PolarDB-X 1.0 and 2.0.'."\n"
.'- **PostgreSQL**: self-managed PostgreSQL.'."\n"
.'- **odps**: MaxCompute.'."\n"
.'- **oracle**: self-managed Oracle.'."\n"
.'- **mongodb**: MongoDB database, including ApsaraDB for MongoDB and self-managed MongoDB.'."\n"
.'- **tidb**: TiDB database.'."\n"
.'- **ADS**: AnalyticDB for MySQL 2.0.'."\n"
.'- **ADB30**: AnalyticDB for MySQL 3.0.'."\n"
.'- **Greenplum**: AnalyticDB for PostgreSQL.'."\n"
.'- **MSSQL**: SQL Server database, including ApsaraDB RDS for SQL Server and self-managed SQL Server.'."\n"
.'- **kafka**: Kafka database, including ApsaraMQ for Kafka and self-managed Kafka.'."\n"
.'- **DataHub**: Alibaba Cloud DataHub.'."\n"
.'- **DB2**: self-managed Db2 for LUW.'."\n"
.'- **as400**: AS/400.'."\n"
.'- **Tablestore**: Tablestore.'."\n"
."\n"
.'> - Default value: **MySQL**.'."\n"
.'- For more information about the supported source and destination database combinations, see [Databases, initial synchronization types, and synchronization topologies](~~130744~~) and [Supported databases and migration types](~~26618~~).'."\n"
.'- You must specify this parameter or **JobId**.', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'ComputeUnit',
'in' => 'query',
'schema' => ['description' => 'The specifications of the ETL instance. Unit: compute unit (CU). 1 CU = 1 vCPU + 4 GB memory. Valid values: integers that are greater than or equal to 2.'."\n"
.''."\n"
.'> If you specify this parameter, the [ETL feature](~~212324~~) is enabled for data cleaning and transformation..', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '999999', 'minimum' => '1', 'default' => '2', 'example' => '5', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the instance. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'FeeType',
'in' => 'query',
'schema' => ['description' => 'The billing type for change tracking. Valid values: ONLY_CONFIGURATION_FEE, which indicates that only configuration fees are charged and data traffic fees are waived. CONFIGURATION_FEE_AND_DATA_FEE, which indicates that data traffic fees are additionally charged.', 'type' => 'string', 'example' => 'ONLY_CONFIGURATION_FEE', 'required' => false, 'title' => ''],
],
[
'name' => 'Du',
'in' => 'query',
'schema' => ['description' => 'The number of DU resources to allocate to the DTS task on a DTS dedicated cluster. Valid values: **1** to **100**.'."\n"
."\n"
.'> - The value must be within the range of available DUs in the DTS dedicated cluster.'."\n"
.'- For more information about DTS dedicated clusters, see [What is a DTS dedicated cluster](~~417481~~).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'MinDu',
'in' => 'query',
'schema' => ['description' => 'The minimum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'MaxDu',
'in' => 'query',
'schema' => ['description' => 'The maximum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '16', 'title' => ''],
],
[
'name' => 'DtsRegion',
'in' => 'query',
'schema' => ['description' => 'The region to which the instance belongs. The value must be the same as the value of **RegionId**.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'InsightModule',
'in' => 'query',
'schema' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C166D79D-436B-45F0-B5A5-25E1****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'bi6e22ay243****', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'dtsbi6e22ay243****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'LXCreateOrderError', 'errorMessage' => 'Failed to create order, failure message: The module is invalid', 'description' => 'DTS supports cross-border data synchronization only in specific scenarios. To purchase a data synchronization instance used to synchronize data across countries, fill in the Application for DTS cross-border data synchronization.'],
['errorCode' => 'LXCreateOrder.NotFoundPricePlan', 'errorMessage' => 'Pricing plan price result not found, please check the parameters of the task configuration.', 'description' => 'Failed to create an order. No pricing plans are found. Possible causes include invalid parameters and a lack of pricing.'],
['errorCode' => 'LXPayOrder.InsufficientBalance', 'errorMessage' => 'Insufficient balance, order payment failed.', 'description' => 'Failed to complete the payment due to insufficient balance. Please add funds to your account and try again later.'],
['errorCode' => 'DTS.Msg.LXCreateOrderError', 'errorMessage' => 'Failed to create order, failure message: The module is invalid', 'description' => 'DTS supports cross-border data synchronization only in specific scenarios. To purchase a data synchronization instance used to synchronize data across countries, fill in the Application for DTS cross-border data synchronization.'],
['errorCode' => 'DTS.Msg.LXCreateOrder.NotFoundPricePlan', 'errorMessage' => 'Pricing plan price result not found, please check the parameters of the task configuration.', 'description' => 'Failed to create an order. No pricing plans are found. Possible causes include invalid parameters and a lack of pricing.'],
['errorCode' => 'DTS.Msg.LXPayOrder.InsufficientBalance', 'errorMessage' => 'Insufficient balance, order payment failed.', 'description' => 'Failed to complete the payment due to insufficient balance. Please add funds to your account and try again later.'],
['errorCode' => 'DTS.Msg.LXCreateOrderErrorIntl', 'errorMessage' => 'DTS supports cross-border data synchronization only in specific scenarios. To purchase a data synchronization instance used to synchronize data across countries, application for DTS cross-border data synchronization.', 'description' => 'DTS supports cross-border data synchronization only in specific scenarios. To purchase a data synchronization instance used to synchronize data across countries, fill in the Application for DTS cross-border data synchronization.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'title' => 'Purchase a DTS instance',
'summary' => 'Purchases a DTS instance by calling the CreateDtsInstance operation.',
'description' => ''."\n"
.'- Before invoking this operation, make sure that you fully understand the billing methods and [pricing](https://www.aliyun.com/price/product#/dts/detail) of Data Transmission Service (DTS).'."\n"
.''."\n"
.'- Before invoking this operation, make sure that you fully understand the billing methods and [pricing](https://www.alibabacloud.com/product/data-transmission-service/pricing) of Data Transmission Service (DTS).'."\n"
.'- Nodes on a dedicated cluster support only the workflow of configuring a node before purchasing an instance. You can invoke the [ConfigureDtsJob](~~208399~~) operation to configure a node.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:CreateDtsInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C166D79D-436B-45F0-B5A5-25E1****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"JobId\\": \\"bi6e22ay243****\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"InstanceId\\": \\"dtsbi6e22ay243****\\"\\n}","type":"json"}]',
],
'CreateJobMonitorRule' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task. You can call [DescribeDtsJobs](~~209702~~) to obtain the task ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i03e3zty16i****', 'title' => ''],
],
[
'name' => 'Type',
'in' => 'query',
'schema' => ['description' => 'The type of the alert metric. Valid values:'."\n"
.'- **delay**: the **Latency** metric.'."\n"
.'- **error**: the **Migration Status** metric.'."\n"
.'- **full_timeout**: the **Full Migration Duration** metric.'."\n"
."\n"
.'Default value: **error**. This parameter must be manually specified.', 'type' => 'string', 'required' => false, 'example' => 'delay', 'title' => ''],
],
[
'name' => 'State',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to enable the alert rule. Valid values:'."\n"
."\n"
.'- **Y**: Enable the alert rule.'."\n"
.'- **N**: Disable the alert rule.'."\n"
."\n"
.'Default value: **Y**.', 'type' => 'string', 'required' => false, 'example' => 'Y', 'title' => ''],
],
[
'name' => 'Phone',
'in' => 'query',
'schema' => ['description' => 'The mobile phone numbers of alert contacts, separated by commas (,).'."\n"
.'>- This parameter is supported only on the China site (aliyun.com) and only for the Chinese mainland mobile phone numbers. A maximum of 10 mobile phone numbers can be specified.'."\n"
.'- The international site does not support SMS-based alerting. You can only [set alert rules for DTS tasks through the CloudMonitor monitoring platform](~~175876~~).', 'type' => 'string', 'required' => false, 'example' => '1361234****,1371234****', 'title' => ''],
],
[
'name' => 'DelayRuleTime',
'in' => 'query',
'schema' => ['description' => 'The threshold for triggering an alert.'."\n"
."\n"
.'- If **Type** is set to **delay**, the unit is seconds and the value must be an integer. Set the threshold based on your business requirements. A value of 10 or greater is recommended to avoid alert fluctuations caused by network issues or database loads.'."\n"
."\n"
.'- If **Type** is set to **full_timeout**, the unit is hours and the value must be an integer.'."\n"
."\n"
.'> This parameter is required when **Type** is set to **delay** or **full_timeout** and **State** is set to **Y**.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '11', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'Period',
'in' => 'query',
'schema' => ['description' => 'The statistical period of the incremental verification task. Unit: minutes.'."\n"
."\n"
.'> Valid values: 1, 5, 10, and 30.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''],
],
[
'name' => 'Times',
'in' => 'query',
'schema' => ['description' => 'The number of statistical periods for the incremental verification task.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''],
],
[
'name' => 'NoticeValue',
'in' => 'query',
'schema' => ['description' => 'The alert threshold.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8C498360-7892-433C-847A-BA71A850****', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => '403', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'Code' => ['description' => 'The error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"8C498360-7892-433C-847A-BA71A850****\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"ErrCode\\": \\"403\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\"\\n}","type":"json"}]',
'title' => 'Create or modify a task alert rule',
'summary' => 'Creates or modifies an alert rule for a DTS task.',
'description' => 'DTS currently supports the following alert metrics: **Latency**, **Migration Status**, and **Full Migration Duration**:'."\n"
."\n"
.'- **Latency**: Monitors incremental data migration latency. An alert is triggered when the migration latency, synchronization latency, or change tracking latency exceeds the specified threshold (in seconds).'."\n"
.'- **Migration Status**: Monitors the task status. An alert is triggered when the task status is **Error** or **Recovered**.'."\n"
.'- **Full Migration Duration**: Monitors the duration of full data migration. An alert is triggered when the duration exceeds the specified threshold (in hours).',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateJobMonitorRule',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'CreateMigrationJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region of the data migration instance. You do not need to specify this parameter. This parameter will be discontinued.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'Region',
'in' => 'query',
'schema' => ['description' => 'The region of the data migration instance, which is the region of the destination database instance. For more information, see the supported [region list](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobClass',
'in' => 'query',
'schema' => ['description' => 'The specification of the data migration instance. Valid values: **small**, **medium**, **large**, **xlarge**, and **2xlarge**.'."\n"
."\n"
.'> - For the test performance of each specification, see [Data migration specifications](~~26606~~).'."\n"
.'- For instance specifications and pricing, see [Pricing](~~117780~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '2xlarge', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. Generate a value from your client to ensure that the value is unique among different requests. The **ClientToken** parameter supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter. This parameter will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C166D79D-436B-45F0-B5A5-25E1959F****', 'title' => ''],
'MigrationJobId' => ['description' => 'The instance ID of the data migration instance.', 'type' => 'string', 'example' => 'dtsi8911td9233****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C166D79D-436B-45F0-B5A5-25E1959F****\\",\\n \\"MigrationJobId\\": \\"dtsi8911td9233****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Purchase a data migration instance',
'summary' => 'Purchases a data migration instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateMigrationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'CreateReverseDtsJob' => [
'summary' => 'Creates a reverse task for a specified synchronization or migration task by calling the CreateReverseDtsJob operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '195766',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the synchronization or migration task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => true, 'example' => 'n99m9jx822k****', 'title' => ''],
],
[
'name' => 'ShardUsername',
'in' => 'query',
'schema' => ['description' => 'The account of the shard in a MongoDB sharded cluster instance.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'ShardPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the shard in a MongoDB sharded cluster instance.'."\n"
."\n"
.'> - This parameter is available and required only when the source database instance is a MongoDB sharded cluster instance.'."\n"
.'- This parameter takes effect only when **ModifyAccount** is set to **true**.', 'type' => 'string', 'required' => false, 'example' => 'DTStest****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group. This is a global parameter that does not need to be specified for this operation.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the generated reverse synchronization task.', 'type' => 'string', 'example' => 'n99m9jx822k****', 'title' => ''],
'DtsInstanceId' => ['description' => 'The ID of the DTS instance that corresponds to the generated reverse task.', 'type' => 'string', 'example' => 'dtsor1f9kr822l****', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
['errorCode' => 'ReverseJob.Exists', 'errorMessage' => 'The operation is not permitted due to reverse Dts job is already exists.', 'description' => 'Creation failed, reverse task already exists.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"DtsJobId\\": \\"n99m9jx822k****\\",\\n \\"DtsInstanceId\\": \\"dtsor1f9kr822l****\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\"\\n}","type":"json"}]',
'title' => 'Create a reverse task',
'description' => 'The reverse task created by calling this operation immediately starts a precheck. After the precheck is passed, incremental data collection begins, but the incremental data write module does not run. You must call the **StartReverseWriter** operation to start it.'."\n"
."\n"
.'> The created reverse task is a synchronization task that contains only the incremental write module.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:CreateReverseDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'CreateSubscriptionInstance' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region to which the change tracking instance belongs. You do not need to specify this parameter. This parameter will be discontinued.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'Region',
'in' => 'query',
'schema' => ['description' => 'The region ID. Set this parameter to the region where the subscription object resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SourceEndpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '数据订阅的实例类型,取值为:**MySQL**、**PolarDB**、**DRDS**、**Oracle**。'."\n"
.'> 默认取值为:**MySQL**。', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'PayType',
'in' => 'query',
'schema' => ['description' => 'The billing method.'."\n"
."\n"
.'- **Postpaid**: pay-as-you-go. This is the default value.'."\n"
.'- **Prepaid**: subscription.', 'type' => 'string', 'required' => false, 'example' => 'Prepaid', 'title' => ''],
],
[
'name' => 'Period',
'in' => 'query',
'schema' => ['description' => 'The billing method of the subscription instance. Valid values:'."\n"
."\n"
.'- **Year**: annual subscription.'."\n"
.'- **Month**: monthly subscription.'."\n"
."\n"
.'> This parameter is valid and required only when PayType is set to **Prepaid** (subscription).', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''],
],
[
'name' => 'UsedTime',
'in' => 'query',
'schema' => ['description' => 'The purchase duration of the subscription instance.'."\n"
."\n"
.'- If the billing method is set to **Year** (annual subscription), the valid values are **1 to 5**.'."\n"
.'- If the billing method is set to **Month** (monthly subscription), the valid values are **1 to 60**.'."\n"
."\n"
.'> This parameter is valid and required only when PayType is set to **Prepaid** (subscription).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. Generate a value from your client to make sure that the value is unique among different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter. This parameter will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4E9564C5-F99D-4176-A6BA-2D7F2DC8****', 'title' => ''],
'SubscriptionInstanceId' => ['description' => 'The change tracking instance ID.', 'type' => 'string', 'example' => 'dtsfen11q2g23x****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4E9564C5-F99D-4176-A6BA-2D7F2DC8****\\",\\n \\"SubscriptionInstanceId\\": \\"dtsfen11q2g23x****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Create a change tracking channel',
'summary' => 'Creates a change tracking channel. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateSubscriptionInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'CreateSynchronizationJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'abilityTreeCode' => '52221',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the data synchronization instance. Set this parameter to the same value as the **DestRegion** parameter.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SourceRegion',
'in' => 'query',
'schema' => ['description' => 'The region ID of the source database for data synchronization. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DestRegion',
'in' => 'query',
'schema' => ['description' => 'The region ID of the destination database for data synchronization. For more information, see [Supported regions](~~141033~~).'."\n"
.'> If the region specified by the **SourceRegion** parameter is Hong Kong (China) or a region outside China, set this parameter to the same region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'Topology',
'in' => 'query',
'schema' => ['description' => 'The synchronization topology. Valid values:'."\n"
."\n"
.'- **oneway**: one-way synchronization.'."\n"
.'- **bidirectional**: two-way synchronization.'."\n"
."\n"
.'> - Default value: **oneway**.'."\n"
.'- You can set this parameter to **bidirectional** only when both **SourceEndpoint.InstanceType** and **DestinationEndpoint.InstanceType** are set to **MySQL**, **PolarDB**, or **Redis**.', 'type' => 'string', 'required' => false, 'example' => 'oneway', 'title' => ''],
],
[
'name' => 'SynchronizationJobClass',
'in' => 'query',
'schema' => ['description' => 'The specification of the data synchronization link. Valid values: **micro**, **small**, **medium**, **large**.'."\n"
.'> For more information about the description and performance test results of each specification, see [Specifications of data synchronization links](~~26605~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'small', 'title' => ''],
],
[
'name' => 'PayType',
'in' => 'query',
'schema' => ['description' => 'The billing method. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go. This is the default value.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'PostPaid ', 'title' => ''],
],
[
'name' => 'Period',
'in' => 'query',
'schema' => ['description' => 'The billing method of the subscription instance. Valid values:'."\n"
."\n"
.'- **Year**: annual subscription.'."\n"
.'- **Month**: monthly subscription.'."\n"
."\n"
.'> This parameter is valid and required only when **PayType** is set to **PrePaid** (subscription).', 'type' => 'string', 'required' => false, 'example' => 'Year', 'title' => ''],
],
[
'name' => 'UsedTime',
'in' => 'query',
'schema' => ['description' => 'The subscription duration of the subscription instance.'."\n"
."\n"
.'- If the billing method is set to **Year**, valid values are **1 to 5**.'."\n"
.'- If the billing method is set to **Month**, valid values are **1 to 60**.'."\n"
."\n"
.'> This parameter is valid and required only when **PayType** is set to **PrePaid** (subscription).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. Generate a value from your client to ensure uniqueness across different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'SourceEndpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '源库的实例类型,取值:'."\n"
."\n"
.'- **MySQL**:MySQL数据库(包括RDS MySQL和自建MySQL)。'."\n"
.'- **PolarDB**:PolarDB集群(仅支持MySQL或兼容Oracle语法的引擎)。'."\n"
.'- **Redis**:Redis数据库。'."\n"
.'- **DRDS**:云原生分布式数据库PolarDB-X 1.0。'."\n"
."\n"
.'> - 默认取值为**MySQL**。'."\n"
.'- 关于支持的源库和目标库对应情况,请参见支持的[数据库、同步初始化类型和同步拓扑](~~130744~~)。', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'DestinationEndpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '目标库的实例类型,取值:'."\n"
.'- **MySQL**:MySQL数据库(包括RDS MySQL和自建MySQL)。'."\n"
.'- **PolarDB**:PolarDB集群(仅支持MySQL或兼容Oracle语法的引擎)。'."\n"
.'- **Redis**:Redis数据库。'."\n"
.'- **MaxCompute**:MaxCompute实例。'."\n"
."\n"
.'>- 默认取值为**MySQL**。'."\n"
.'- 关于支持的源库和目标库对应情况,请参见支持的[数据库、同步初始化类型和同步拓扑](~~130744~~)。', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'networkType',
'in' => 'query',
'schema' => ['description' => 'The network type for Data Transmission Service. Set the value to **Intranet** (Express Connect).', 'type' => 'string', 'required' => false, 'example' => 'Intranet', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'DBInstanceCount',
'in' => 'query',
'schema' => ['description' => 'The number of private custom ApsaraDB RDS instances attached to the source PolarDB-X instance. This parameter is required when **SourceEndpoint.InstanceType** is set to **DRDS**. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'docRequired' => false, 'maximum' => '10000', 'minimum' => '0', 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9056C8B0-5799-493A-9655-70F607B8****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'SynchronizationJobId' => ['description' => 'The instance ID of the data synchronization instance.', 'type' => 'string', 'example' => 'dtshvj11k25255****', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9056C8B0-5799-493A-9655-70F607B8****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"SynchronizationJobId\\": \\"dtshvj11k25255****\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Create a data synchronization job instance',
'summary' => 'Creates a data synchronization job instance. This is a legacy API operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DeleteConsumerChannel' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the DTS change tracking instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call [DescribeDtsJobs](~~209702~~) to query the instance ID.'."\n"
.'> You must specify one of the **DtsInstanceId** and **DtsJobId** parameters.', 'type' => 'string', 'required' => false, 'example' => 'dtsboss6pn1w73****', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.'."\n"
.'> You must specify one of the **DtsInstanceId** and **DtsJobId** parameters.', 'type' => 'string', 'required' => false, 'example' => 'boss6pn1w73****', 'title' => ''],
],
[
'name' => 'ConsumerGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the consumer group. You can call the [DescribeConsumerChannel](~~264169~~) operation to query the consumer group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsktbb6jdn2******', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F9E00ABE-2AD9-40A9-8C3C-D817E648****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"F9E00ABE-2AD9-40A9-8C3C-D817E648****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Delete a consumer group of a change tracking task',
'summary' => 'Deletes a consumer group of a change tracking task (new version).',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => '',
'ramAction' => [
'action' => 'dts:DeleteConsumerChannel',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DeleteConsumerGroup' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the **DescribeSubscriptionInstances** operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsg2m10r1x15a****', 'title' => ''],
],
[
'name' => 'ConsumerGroupID',
'in' => 'query',
'schema' => ['description' => 'The ID of the consumer group. You can call the [DescribeConsumerGroup](~~122886~~) operation to query the consumer group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtssb911ydd192****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4D0ADAD5-DD97-41B6-B78F-D1961AB1****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4D0ADAD5-DD97-41B6-B78F-D1961AB1****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Delete a consumer group',
'summary' => 'Deletes a consumer group from a change tracking channel.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => '',
'ramAction' => [
'action' => 'dts:DeleteConsumerGroup',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DeleteDtsJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'abilityTreeCode' => '52224',
'abilityTreeNodes' => ['FEATUREdtsQYRBZN'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, synchronization, or change tracking task.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the data migration, synchronization, or subscribe instance.', 'type' => 'string', 'required' => false, 'example' => 'dtsl3m1213ye7l****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You can set this parameter to **Reverse** to release the reverse synchronization link only if the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data migration or synchronization instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing', 'title' => ''],
],
[
'name' => 'JobType',
'in' => 'query',
'schema' => ['description' => 'The node type of the DTS instance. Valid values:'."\n"
."\n"
.'- **MIGRATION**: data migration.'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **SUBSCRIBE**: change tracking.', 'type' => 'string', 'required' => false, 'example' => 'MIGRATION', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'A special business-specific field. You do not need to pass this parameter.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'A special business-specific field. You do not need to pass this parameter.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek26lwshij****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '01B6F25-21E7-4484-99D5-3EF2625C****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"01B6F25-21E7-4484-99D5-3EF2625C****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Release a DTS instance',
'summary' => 'Releases a data migration, synchronization, or change tracking instance.',
'description' => '> Subscription DTS instances cannot be released by calling this API operation. You can release them by unsubscribing. For more information, see [Release a DTS instance](~~289054~~).Subscription DTS instances cannot be released..',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DeleteDtsJobs' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'abilityTreeCode' => '52225',
'abilityTreeNodes' => ['FEATUREdtsQYRBZN'],
],
'parameters' => [
[
'name' => 'DtsJobIds',
'in' => 'query',
'schema' => ['description' => 'The IDs of the data migration, data synchronization, or change tracking tasks.'."\n"
.'> - You can specify up to 10 task IDs, separated by commas (,).'."\n"
.'- You can call [DescribeDtsJobs](~~209702~~) to query the DTS task IDs.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'l5o11f9029c****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'A special parameter for specific business scenarios. You do not need to configure this parameter.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'A special parameter for specific business scenarios. You do not need to configure this parameter.', 'type' => 'string', 'required' => false, 'example' => 'rg3m1213ye7l****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AD823BD3-1BA6-4117-A536-165CB280****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"AD823BD3-1BA6-4117-A536-165CB280****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Release DTS tasks in batches',
'summary' => 'Releases data migration, data synchronization, or change tracking tasks in batches by calling the DeleteDtsJobs operation.',
'description' => '> Subscription DTS instances cannot be released by calling API operations. You can release them by unsubscribing. For more information, see [Release a DTS instance](~~289054~~).Subscription DTS instances cannot be released..',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DeleteMigrationJob' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'delete'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsyiwe9b0gp2p****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F28A96B1-F897-4246-833B-310A3345****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F28A96B1-F897-4246-833B-310A3345****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Release a data migration instance',
'summary' => 'Releases a data migration instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteMigrationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DeleteSubscriptionInstance' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'delete'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the [DescribeSubscriptionInstances](~~49442~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsmxg11pfp231****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C306C198-7807-409D-930A-D6CE6C32****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C306C198-7807-409D-930A-D6CE6C32****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Release a change tracking instance',
'summary' => 'Releases the channel of a change tracking instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteSubscriptionInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DeleteSynchronizationJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'delete'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data synchronization instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the [DescribeSynchronizationJobs](~~49454~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtshn6107ve264****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C306C198-7807-409D-930A-D6CE6C32****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C306C198-7807-409D-930A-D6CE6C32****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Release a data synchronization instance',
'summary' => 'Releases a data synchronization instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeCheckJobs' => [
'summary' => 'Contains data validation tasks associated with data migration tasks and data synchronization tasks.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '143962',
'abilityTreeNodes' => ['FEATUREdtsEGTFKE'],
],
'parameters' => [
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page. Valid values: **30**, **50**, and **100**. Default value: **30**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '1', 'default' => '20', 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '0', 'default' => '0', 'example' => '1', 'title' => ''],
],
[
'name' => 'CheckType',
'in' => 'query',
'schema' => ['description' => 'The data validation method. Valid values:'."\n"
."\n"
.'- **1**: full data validation.'."\n"
.'- **2**: incremental data validation.'."\n"
.'- **3**: all.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query the ID.', 'type' => 'string', 'required' => false, 'example' => 'dtsz9p104ib23e972e', 'title' => ''],
],
[
'name' => 'JobName',
'in' => 'query',
'schema' => ['description' => 'The name of the data migration or data synchronization task.', 'type' => 'string', 'required' => false, 'example' => 'zwy_test', 'title' => ''],
],
[
'name' => 'CheckJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data validation task.', 'type' => 'string', 'required' => false, 'example' => 'z9p104ib23***', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FC1D920B-AB89-52A9-AA5F-AA724C4205E8', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** parameter. > If **ErrMessage** returns **The value of input parameter %s is not valid** and **DynamicMessage** returns **[1,2,3]**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'present environment is not support,so skip.', 'title' => ''],
'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of records that can be displayed on the current page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
'CheckJobs' => [
'description' => 'The information about the data validation tasks.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'DtsJobId' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'n08o6si4q338b1x', 'title' => ''],
'JobStepId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'as0e1ks426bq3z0', 'title' => ''],
'JobName' => ['description' => 'The name of the data validation task.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'Status' => ['description' => 'The validation result. Valid values: - **0**: passed. - **1**: failed.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'CheckType' => ['description' => 'The data validation method. Valid values:'."\n"
."\n"
.'- **1**: full data validation.'."\n"
.'- **2**: incremental data validation.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'InstanceClass' => ['description' => 'The instance specifications.', 'type' => 'string', 'example' => 'SMALL', 'title' => ''],
'CheckPoint' => ['description' => 'The checkpoint.', 'type' => 'integer', 'format' => 'int64', 'example' => '1111****', 'title' => ''],
'TotalCount' => ['description' => 'The total number of rows to be validated.', 'type' => 'integer', 'format' => 'int64', 'example' => '159', 'title' => ''],
'DiffCount' => ['description' => 'The number of rows with data inconsistency.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'DiffSum' => ['description' => 'The progress of initial synchronization, in percentage.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'FinishCount' => ['description' => 'The number of rows that have been validated in the table.', 'type' => 'integer', 'format' => 'int64', 'example' => '15094', 'title' => ''],
'GroupId' => ['description' => 'The DTS task ID. > In most cases, you do not need to specify this parameter.', 'type' => 'string', 'example' => 'c3d12dii27t632g', 'title' => ''],
'DtsInstanceID' => ['description' => 'The ID of the data migration, data synchronization, or change tracking instance.', 'type' => 'string', 'example' => 'dtsz8tc99sy2158b36', 'title' => ''],
'ChargeType' => ['description' => 'The billing method. Valid values:'."\n"
.'- **POSTPAY**: pay-as-you-go.'."\n"
.'- **PREPAY**: subscription.', 'type' => 'string', 'example' => 'POSTPAY', 'title' => ''],
'ParentJobType' => ['description' => 'This parameter will be deprecated.', 'type' => 'string', 'example' => '****', 'title' => ''],
'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"FC1D920B-AB89-52A9-AA5F-AA724C4205E8\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"DynamicCode\\": \\"403\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DynamicMessage\\": \\"present environment is not support,so skip.\\",\\n \\"PageNumber\\": 1,\\n \\"PageRecordCount\\": 20,\\n \\"TotalRecordCount\\": 100,\\n \\"CheckJobs\\": [\\n {\\n \\"DtsJobId\\": \\"n08o6si4q338b1x\\",\\n \\"JobStepId\\": \\"as0e1ks426bq3z0\\",\\n \\"JobName\\": \\"dtstest\\",\\n \\"Status\\": 0,\\n \\"CheckType\\": 1,\\n \\"InstanceClass\\": \\"SMALL\\",\\n \\"CheckPoint\\": 0,\\n \\"TotalCount\\": 159,\\n \\"DiffCount\\": 0,\\n \\"DiffSum\\": 1,\\n \\"FinishCount\\": 15094,\\n \\"GroupId\\": \\"c3d12dii27t632g\\",\\n \\"DtsInstanceID\\": \\"dtsz8tc99sy2158b36\\",\\n \\"ChargeType\\": \\"POSTPAY\\",\\n \\"ParentJobType\\": \\"****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n}","type":"json"}]',
'title' => 'List of all data validation tasks created by the current account',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeCheckJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeClusterOperateLogs' => [
'summary' => 'Queries the log information of a DTS cluster by calling the DescribeClusterOperateLogs operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'StartTime',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The start timestamp. If this parameter is not specified, data from the last seven days is returned by default. Unit: milliseconds (ms).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1650866955000'],
],
[
'name' => 'EndTime',
'in' => 'formData',
'schema' => ['description' => 'The end timestamp. Unit: milliseconds (ms).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1650866995000', 'title' => ''],
],
[
'name' => 'DedicatedClusterId',
'in' => 'formData',
'schema' => ['description' => 'The ID of the DTS dedicated cluster.', 'type' => 'string', 'required' => true, 'example' => 'dtsxxxxx', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'formData',
'schema' => ['description' => 'The number of log entries per page. Default value: **20**.', 'type' => 'integer', 'format' => 'int32', 'default' => '20', 'required' => false, 'example' => '20', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'formData',
'schema' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'default' => '0', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The ID of the data migration or data synchronization task.', 'type' => 'string', 'required' => false, 'example' => 'k2gm967v16f****'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'Ensures the idempotency of the request. Generate a parameter value from your client to ensure that the value is unique across different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'],
],
[
'name' => 'AccountId',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The ID of the Alibaba Cloud account.', 'type' => 'string', 'required' => false, 'example' => '12323344****'],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'DescribeClusterOperateLogsResponse',
'type' => 'object',
'properties' => [
'DataPoints' => [
'description' => 'The monitoring statistics information.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Id' => ['description' => 'The primary key of the log record table.', 'type' => 'string', 'example' => '237827', 'title' => ''],
'LogDatetime' => ['description' => 'The timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1642077211574', 'title' => ''],
'OperationName' => ['description' => 'The operation type.', 'type' => 'string', 'example' => 'modify-oversold-ratio', 'title' => ''],
'OperationUser' => ['description' => 'The operator.', 'type' => 'string', 'example' => 'null', 'title' => ''],
'OldValue' => ['description' => 'The old parameter value when the operation type is update.', 'type' => 'string', 'example' => '100', 'title' => ''],
'NewValue' => ['description' => 'The new parameter value when the operation type is update.', 'type' => 'string', 'example' => '105', 'title' => ''],
'Content' => ['description' => 'The additional remarks.', 'type' => 'string', 'example' => 'null', 'title' => ''],
'Success' => ['description' => 'The call result. Indicates whether the call was successful. A value of **1** indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'PageNumber' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'PageRecordCount' => ['title' => '', 'description' => 'The number of entries displayed on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
'TotalRecordCount' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '100'],
'Success' => ['title' => '', 'description' => 'The call result.', 'type' => 'boolean', 'example' => 'true'],
'Code' => ['title' => '', 'description' => 'The backend error code, which is incrementally numeric.', 'type' => 'string', 'example' => '500'],
'ErrCode' => ['title' => '', 'description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError'],
'ErrMessage' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.'],
'DynamicMessage' => ['title' => '', 'description' => 'The dynamic error message, which is used to replace the %s placeholder in the ErrMessage response parameter.', 'type' => 'string', 'example' => 'Type'],
'HttpStatusCode' => ['title' => '', 'description' => 'The HTTP status code corresponding to the exception.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
],
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidParameter', 'errorMessage' => 'The Value of Input Parameter %s is not valid.', 'description' => ''],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DataPoints\\": [\\n {\\n \\"Id\\": \\"237827\\",\\n \\"LogDatetime\\": 1642077211574,\\n \\"OperationName\\": \\"modify-oversold-ratio\\",\\n \\"OperationUser\\": \\"null\\",\\n \\"OldValue\\": \\"100\\",\\n \\"NewValue\\": \\"105\\",\\n \\"Content\\": \\"null\\",\\n \\"Success\\": 1\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageRecordCount\\": 20,\\n \\"TotalRecordCount\\": 100,\\n \\"Success\\": true,\\n \\"Code\\": \\"500\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\"\\n}","type":"json"}]',
'title' => 'Query cluster log information',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeClusterOperateLogs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeClusterUsedUtilization' => [
'summary' => 'Queries the current usage of a cluster by calling the DescribeClusterUsedUtilization operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'DedicatedClusterId',
'in' => 'formData',
'schema' => ['description' => 'The dedicated cluster ID if **MetricType** is set to **CLUSTER**. Otherwise, set this parameter to the **nodeid**.', 'type' => 'string', 'required' => true, 'example' => 'nodeid', 'title' => ''],
],
[
'name' => 'Env',
'in' => 'formData',
'schema' => ['description' => 'The environment. Default value: **ALIYUN**.', 'type' => 'string', 'default' => 'ALIYUN', 'required' => false, 'example' => 'ALIYUN', 'title' => ''],
],
[
'name' => 'MetricType',
'in' => 'formData',
'schema' => ['description' => 'Specifies whether to query a cluster or a node. Valid values:'."\n"
.'- **CLUSTER** (default): cluster.'."\n"
.'- **NODE**: node.', 'type' => 'string', 'default' => 'CLUSTER', 'required' => false, 'example' => 'NODE', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'formData',
'schema' => ['description' => 'The region ID of the instance.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The ID of the data migration or data synchronization task.', 'type' => 'string', 'required' => false, 'example' => 'k2gm967v16f****'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'Ensures the idempotency of the request. Generate a parameter value from your client to make sure that the value is unique among different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'],
],
[
'name' => 'AccountId',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****'],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'DescribeClusterUsedUtilizationResponse',
'type' => 'object',
'properties' => [
'DedicatedClusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'example' => 'dtscluster_h3fl1cs217sx952', 'title' => ''],
'CpuTotal' => ['description' => 'The CPU utilization of the cluster. Unit: %.', 'type' => 'number', 'format' => 'float', 'example' => '50', 'title' => ''],
'MemoryUsed' => ['description' => 'The memory usage. The value 0 is returned.', 'type' => 'number', 'format' => 'float', 'example' => '0', 'title' => ''],
'MemoryTotal' => ['description' => 'The total memory. The value 0 is returned.', 'type' => 'number', 'format' => 'float', 'example' => '0', 'title' => ''],
'DiskTotal' => ['description' => 'The total disk space of the cluster. Unit: GB.', 'type' => 'number', 'format' => 'float', 'example' => '1024', 'title' => ''],
'DiskUsed' => ['description' => 'The disk usage of the cluster. Unit: GB.', 'type' => 'number', 'format' => 'float', 'example' => '96', 'title' => ''],
'DuTotal' => ['description' => 'The total number of DUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
'DuUsed' => ['description' => 'The number of used DUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'TaskRunning' => ['description' => 'The number of running tasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''],
'Success' => ['title' => '', 'description' => 'Indicates whether the call was successful.', 'type' => 'boolean', 'example' => 'true'],
'Code' => ['title' => '', 'description' => 'The internal error code. The value is incremented.', 'type' => 'string', 'example' => '200'],
'ErrCode' => ['title' => '', 'description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError'],
'ErrMessage' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.'],
'DynamicMessage' => ['title' => '', 'description' => 'The dynamic error message. This parameter is used to replace the %s placeholder in the ErrMessage response parameter.', 'type' => 'string', 'example' => 'Type'],
'HttpStatusCode' => ['title' => '', 'description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'MemoryUsedPercentage' => ['description' => 'The memory usage percentage.', 'type' => 'number', 'format' => 'float', 'example' => '1.0', 'title' => ''],
],
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DedicatedClusterId\\": \\"dtscluster_h3fl1cs217sx952\\",\\n \\"CpuTotal\\": 50,\\n \\"MemoryUsed\\": 0,\\n \\"MemoryTotal\\": 0,\\n \\"DiskTotal\\": 1024,\\n \\"DiskUsed\\": 96,\\n \\"DuTotal\\": 30,\\n \\"DuUsed\\": 2,\\n \\"TaskRunning\\": 3,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"MemoryUsedPercentage\\": 1\\n}","type":"json"}]',
'title' => 'Query current cluster usage',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeClusterUsedUtilization',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeConnectionStatus' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'none'],
'parameters' => [
[
'name' => 'SourceEndpointArchitecture',
'in' => 'query',
'schema' => ['description' => 'This parameter is required only when **SourceEndpointEngineName** is set to **Oracle**. Valid values:'."\n"
."\n"
.'- **SID**: non-cluster architecture.'."\n"
.'- **RAC**: Real Application Cluster architecture.'."\n"
."\n\n"
.'> This parameter is optional.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'SID', 'title' => ''],
],
[
'name' => 'SourceEndpointInstanceType',
'in' => 'query',
'schema' => ['description' => 'The type of the source instance. Valid values:'."\n"
.'- **RDS**: ApsaraDB RDS instance.'."\n"
.'- **LocalInstance**: self-managed database with a public IP address.'."\n"
.'- **ECS**: self-managed database hosted on an ECS instance.'."\n"
.'- **Express**: self-managed database connected over Express Connect.'."\n"
.'- **dg**: self-managed database connected over Database Gateway.'."\n"
.'- **MongoDB**: ApsaraDB for MongoDB instance.'."\n"
.'- **POLARDB**: PolarDB for MySQL cluster.'."\n"
.'- **PolarDB_o**: PolarDB for PostgreSQL (Oracle-Compatible) cluster.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'SourceEndpointInstanceID',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the source instance.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1imrtn6fq7h****', 'title' => ''],
],
[
'name' => 'SourceEndpointEngineName',
'in' => 'query',
'schema' => ['description' => 'The database engine type of the source instance. Valid values: **MySQL**, **TiDB**, **SQLServer**, **PostgreSQL**, **Oracle**, **MongoDB**, and **Redis**.'."\n"
."\n"
.'> Default value: **MySQL**.', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'SourceEndpointRegion',
'in' => 'query',
'schema' => ['description' => 'The region in which the source instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SourceEndpointIP',
'in' => 'query',
'schema' => ['description' => 'The endpoint of the source database.'."\n"
.'> This parameter is available and required only when **SourceEndpointInstanceType** is set to **LocalInstance** or **Express**.', 'type' => 'string', 'required' => false, 'example' => '172.16.88.*** ', 'title' => ''],
],
[
'name' => 'SourceEndpointPort',
'in' => 'query',
'schema' => ['description' => 'The service port of the source database.'."\n"
.'> This parameter is available and required only when **SourceEndpointInstanceType** is set to **ECS**, **LocalInstance**, or **Express**.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'SourceEndpointOracleSID',
'in' => 'query',
'schema' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is available and required only when **SourceEndpointEngineName** is set to **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'required' => false, 'example' => 'testsid', 'title' => ''],
],
[
'name' => 'SourceEndpointDatabaseName',
'in' => 'query',
'schema' => ['description' => 'The name of the database to be migrated or the name of the authentication database.'."\n"
.'>- This parameter is available and required only when **SourceEndpointEngineName** is set to **PostgreSQL** or **MongoDB**, or when **SourceEndpointInstanceType** is set to **PolarDB_o**.'."\n"
.'- When **SourceEndpointEngineName** is set to **PostgreSQL** or **DRDS**, specify the name of the database to be migrated. When the value is **MongoDB**, specify the name of the authentication database for the database account.'."\n"
.'- When **SourceEndpointInstanceType** is set to **PolarDB_o**, specify the name of the database to be migrated.', 'type' => 'string', 'required' => false, 'example' => 'dtstestdata', 'title' => ''],
],
[
'name' => 'SourceEndpointUserName',
'in' => 'query',
'schema' => ['description' => 'The database account of the source database.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'SourceEndpointPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the source database account.', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'DestinationEndpointInstanceType',
'in' => 'query',
'schema' => ['description' => 'The type of the destination instance. Valid values:'."\n"
.'> - **ECS**: self-managed database hosted on an ECS instance.'."\n"
.'- **LocalInstance**: self-managed database with a public IP address.'."\n"
.'- **RDS**: ApsaraDB RDS instance.'."\n"
.'- **DRDS**: PolarDB-X instance.'."\n"
.'- **MongoDB**: ApsaraDB for MongoDB instance.'."\n"
.'- **Redis**: ApsaraDB for Redis instance.'."\n"
.'- **PetaData**: HybridDB for MySQL instance.'."\n"
.'- **POLARDB**: PolarDB for MySQL cluster.'."\n"
.'- **PolarDB_o**: PolarDB for PostgreSQL (Oracle-Compatible) cluster.'."\n"
.'- **AnalyticDB**: AnalyticDB for MySQL V3.0 or V2.0.'."\n"
.'- **Greenplum**: AnalyticDB for PostgreSQL.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'PolarDB_o', 'title' => ''],
],
[
'name' => 'DestinationEndpointInstanceID',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the destination instance.', 'type' => 'string', 'required' => false, 'example' => 'testsid', 'title' => ''],
],
[
'name' => 'DestinationEndpointEngineName',
'in' => 'query',
'schema' => ['description' => 'The database type of the destination database. Valid values: **MySQL**, **DRDS**, **SQLServer**, **PostgreSQL**, **PPAS**, **MongoDB**, and **Redis**.'."\n"
.'> This parameter is available and required only when **DestinationEndpointInstanceType** is set to **RDS**, **DRDS**, **ECS**, **LocalInstance**, or **Express**.', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'DestinationEndpointRegion',
'in' => 'query',
'schema' => ['description' => 'The region in which the destination instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DestinationEndpointIP',
'in' => 'query',
'schema' => ['description' => 'The endpoint of the destination database.'."\n"
.'> This parameter is available and required only when **DestinationEndpointInstanceType** is set to **LocalInstance** or **Express**.', 'type' => 'string', 'required' => false, 'example' => '172.16.88.*** ', 'title' => ''],
],
[
'name' => 'DestinationEndpointPort',
'in' => 'query',
'schema' => ['description' => 'The service port of the source database.'."\n"
.'> This parameter is available and required only when **SourceEndpointInstanceType** is set to **ECS**, **LocalInstance**, or **Express**.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'DestinationEndpointDatabaseName',
'in' => 'query',
'schema' => ['description' => 'The name of the database to be migrated to or the name of the authentication database.'."\n"
.'> - This parameter is available and required only when **DestinationEndpointEngineName** is set to **PostgreSQL**, **DRDS**, or **MongoDB**, or when **DestinationEndpointInstanceType** is set to **PolarDB_o**.'."\n"
.'- When **DestinationEndpointEngineName** is set to **PostgreSQL** or **DRDS**, specify the name of the database to be migrated. When the value is **MongoDB**, specify the name of the authentication database for the database account.'."\n"
.'- When **DestinationEndpointInstanceType** is set to **PolarDB_o**, specify the name of the database to be migrated.', 'type' => 'string', 'required' => false, 'example' => 'dtstestdata', 'title' => ''],
],
[
'name' => 'DestinationEndpointUserName',
'in' => 'query',
'schema' => ['description' => 'The database account of the destination database.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'DestinationEndpointPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the destination database account.', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'DestinationEndpointOracleSID',
'in' => 'query',
'schema' => ['description' => 'This parameter is required only when **DestinationEndpointEngineName** is set to **Oracle**. Valid values:'."\n"
."\n"
.'- **SID**: non-cluster architecture.'."\n"
.'- **RAC**: Real Application Cluster architecture.'."\n"
."\n\n"
.'> The type of this parameter is String, and this parameter is optional.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'SID', 'title' => ''],
],
[
'name' => 'DestinationEndpointArchitecture',
'in' => 'query',
'schema' => ['description' => 'This parameter is required only when **SourceEndpointEngineName** is set to **Oracle**. Valid values:'."\n"
.'- **SID**: non-cluster architecture.'."\n"
.'- **RAC**: Real Application Cluster architecture.'."\n"
."\n"
.'> The type of this parameter is String, and this parameter is optional.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'SID', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'SourceConnectionStatus' => ['description' => 'The connectivity test result of the source database.', 'type' => 'object', 'example' => '{ "connectDetail": [ { "testName": "Oracle JDBC Connect", "testSuccess": true }, { "testName": "Ping ", "testSuccess": false }, { "testName": "Telnet ", "testSuccess": true } ], "connectRes": true, "connectAdvice": "" }', 'title' => ''],
'DestinationConnectionStatus' => ['description' => 'The connectivity test result of the destination database.', 'type' => 'object', 'example' => '{ "connectDetail": [ { "testName": "PolarDB_o JDBC Connect", "testSuccess": true }, { "testName": "Ping ", "testSuccess": true }, { "testName": "Telnet ", "testSuccess": true } ], "connectRes": true, "connectAdvice": "" }', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0A47C784-70EF-4111-8677-369CAA00****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the call was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SourceConnectionStatus\\": {\\n \\"connectDetail\\": [\\n {\\n \\"testName\\": \\"Oracle JDBC Connect\\",\\n \\"testSuccess\\": true\\n },\\n {\\n \\"testName\\": \\"Ping \\",\\n \\"testSuccess\\": false\\n },\\n {\\n \\"testName\\": \\"Telnet \\",\\n \\"testSuccess\\": true\\n }\\n ],\\n \\"connectRes\\": true,\\n \\"connectAdvice\\": \\"\\"\\n },\\n \\"DestinationConnectionStatus\\": {\\n \\"connectDetail\\": [\\n {\\n \\"testName\\": \\"PolarDB_o JDBC Connect\\",\\n \\"testSuccess\\": true\\n },\\n {\\n \\"testName\\": \\"Ping \\",\\n \\"testSuccess\\": true\\n },\\n {\\n \\"testName\\": \\"Telnet \\",\\n \\"testSuccess\\": true\\n }\\n ],\\n \\"connectRes\\": true,\\n \\"connectAdvice\\": \\"\\"\\n },\\n \\"RequestId\\": \\"0A47C784-70EF-4111-8677-369CAA00****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Test connectivity of a data migration task',
'summary' => 'Tests the connectivity between the execution node of a data migration task and the source and destination databases.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'none',
'ramAction' => [
'action' => 'dts:DescribeConnectionStatus',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeConsumerChannel' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the DTS change tracking instance. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call [DescribeDtsJobs](~~209702~~) to query the instance ID.'."\n"
.'> You must specify one of the **DtsInstanceId** and **DtsJobId** parameters.', 'type' => 'string', 'required' => false, 'example' => 'dtsboss6pn1w******', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.'."\n"
.'> You must specify one of the **DtsInstanceId** and **DtsJobId** parameters.', 'type' => 'string', 'required' => false, 'example' => 'boss6pn1w******', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page. Valid values: **1** to **100**. Default value: **20**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'ParentChannelId',
'in' => 'query',
'schema' => ['description' => 'The parent task ChannelId of the distributed task.', 'type' => 'string', 'required' => false, 'example' => 'dtsan5114c52******', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek3dcgyq7pnqwa', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D66140B3-C747-42B6-8315-BAF6490E****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of consumer groups that can be displayed on one page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of consumer groups.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'ConsumerChannels' => [
'description' => 'The list of consumer groups.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ConsumerGroupUserName' => ['description' => 'The account of the consumer group.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'ConsumerGroupId' => ['description' => 'The consumer group ID.', 'type' => 'string', 'example' => 'dtsor2y66j4219****', 'title' => ''],
'MessageDelay' => ['description' => 'The message delay. This value is calculated as the timestamp of the latest data consumed by the downstream client minus the timestamp of the latest data in the change tracking task. The value is a UNIX timestamp. Unit: seconds.'."\n"
.'For example, if the latest data in the source database was generated at 10:00, the DTS change tracking task has read data up to 09:55, and the downstream client has consumed data up to 09:30, the message delay is the difference in UNIX timestamps between 09:55 and 09:30.'."\n"
."\n"
.'> If this parameter returns **-1**, no client is connected to the consumer group.', 'type' => 'integer', 'format' => 'int64', 'example' => '1500', 'title' => ''],
'ConsumerGroupName' => ['description' => 'The name of the consumer group.', 'type' => 'string', 'example' => '订阅组A', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint, which is the point in time when the client consumed the last message in the subscription channel. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format (UTC).', 'type' => 'string', 'example' => '2021-06-20T12:00:00Z', 'title' => ''],
'UnconsumedData' => ['description' => 'The total number of unconsumed messages, which is the sum of unconsumed subscription data and heartbeat messages.'."\n"
.'> If this parameter returns -1, no client is connected to the consumer group.', 'type' => 'integer', 'format' => 'int64', 'example' => '186600', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"D66140B3-C747-42B6-8315-BAF6490E****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"PageRecordCount\\": 20,\\n \\"Success\\": \\"true\\",\\n \\"TotalRecordCount\\": 1,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"PageNumber\\": 1,\\n \\"ConsumerChannels\\": [\\n {\\n \\"ConsumerGroupUserName\\": \\"dtstest\\",\\n \\"ConsumerGroupId\\": \\"dtsor2y66j4219****\\",\\n \\"MessageDelay\\": 1500,\\n \\"ConsumerGroupName\\": \\"订阅组A\\",\\n \\"ConsumptionCheckpoint\\": \\"2021-06-20T12:00:00Z\\",\\n \\"UnconsumedData\\": 186600\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query consumer group details of a change tracking task',
'summary' => 'Queries the consumer group information of a DTS change tracking task, such as the consumer group ID, name, account, and consumption latency.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeConsumerChannel',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeConsumerGroup' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page. Valid values: **30**, **50**, and **100**. Default value: **30**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '30', 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNum',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be an integer that is greater than **0** and does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the DescribeSubscriptionInstances operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtso5xx5t9u19e****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4204E899-8193-4D7D-A4FB-3A7F9063****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of consumer groups that can be displayed on one page.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of consumer groups.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'ConsumerChannels' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'DescribeConsumerChannel' => [
'description' => 'The list of consumer groups.',
'type' => 'array',
'items' => [
'description' => 'The list of consumer groups.',
'type' => 'object',
'properties' => [
'ConsumerGroupUserName' => ['description' => 'The account of the consumer group.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'ConsumerGroupID' => ['description' => 'The ID of the consumer group.', 'type' => 'string', 'example' => 'dtspis1110z232****', 'title' => ''],
'MessageDelay' => ['description' => 'The message delay time, which is calculated by using the following formula: Message delay time = Current time - Timestamp of the earliest unconsumed message in the change tracking channel. Unit: seconds.'."\n"
.'> If this parameter returns **-1**, no client is connected to the consumer group.', 'type' => 'integer', 'format' => 'int64', 'example' => '172714', 'title' => ''],
'ConsumerGroupName' => ['description' => 'The name of the consumer group.', 'type' => 'string', 'example' => 'consumergrouptest', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint, which is the point in time when the client consumed the last message in the change tracking channel. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format (UTC).', 'type' => 'string', 'example' => '2019-10-02T12:00:00Z', 'title' => ''],
'UnconsumedData' => ['description' => 'The total number of unconsumed messages, which is calculated by using the following formula: Total number of unconsumed messages = Number of unconsumed change tracking data records + Number of heartbeat messages.'."\n"
.'> If this parameter returns **-1**, no client is connected to the consumer group.', 'type' => 'integer', 'format' => 'int64', 'example' => '186600', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''],
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4204E899-8193-4D7D-A4FB-3A7F9063****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"PageRecordCount\\": 30,\\n \\"TotalRecordCount\\": 1,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"PageNumber\\": 1,\\n \\"ConsumerChannels\\": {\\n \\"DescribeConsumerChannel\\": [\\n {\\n \\"ConsumerGroupUserName\\": \\"dtstest\\",\\n \\"ConsumerGroupID\\": \\"dtspis1110z232****\\",\\n \\"MessageDelay\\": 172714,\\n \\"ConsumerGroupName\\": \\"consumergrouptest\\",\\n \\"ConsumptionCheckpoint\\": \\"2019-10-02T12:00:00Z\\",\\n \\"UnconsumedData\\": 186600\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query consumer group details in a change tracking instance',
'summary' => 'Queries the details of consumer groups in a change tracking instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeConsumerGroup',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeDTSIP' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS task instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SourceEndpointRegion',
'in' => 'query',
'schema' => ['description' => 'The region ID of the source instance. For more information, see [Supported regions](~~141033~~).'."\n"
.'> If the source instance is a self-managed database that has a public IP address, you can specify **ap-southeast-1** or the region ID that is geographically closest to the self-managed database.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DestinationEndpointRegion',
'in' => 'query',
'schema' => ['description' => 'The region ID of the destination instance. For more information, see [Supported regions](~~141033~~).'."\n"
.'> If the destination instance is a self-managed database that has a public IP address, you can specify **ap-southeast-1** or the region ID that is geographically closest to the self-managed database.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0C99C0BE-F312-40FA-ADFA-4DC1166B****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DynamicMessage' => ['description' => 'The IP addresses of the DTS service.', 'type' => 'string', 'example' => '10.151.12.0/24,47.102.181.0/24,47.101.109.0/24,120.55.129.0/24,11.115.103.0/24,47.102.234.0/24', 'title' => ''],
'DynamicCode' => ['description' => 'The internal error code of the service. This parameter will be deprecated.', 'type' => 'string', 'example' => '500', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0C99C0BE-F312-40FA-ADFA-4DC1166B****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DynamicMessage\\": \\"10.151.12.0/24,47.102.181.0/24,47.101.109.0/24,120.55.129.0/24,11.115.103.0/24,47.102.234.0/24\\",\\n \\"DynamicCode\\": \\"500\\"\\n}","type":"json"}]',
'title' => 'Retrieve DTS IP addresses to add to whitelists',
'summary' => 'Retrieves the DTS IP addresses that must be added to the whitelists of both the source and destination databases.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDTSIP',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeDataCheckReportUrl' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'CheckType',
'in' => 'query',
'schema' => ['description' => 'The data verification method. Currently, only the value **1** is supported, which indicates full verification.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''],
],
[
'name' => 'DbName',
'in' => 'query',
'schema' => ['description' => 'The name of the source database to be verified.', 'type' => 'string', 'required' => true, 'example' => 'dtsdb', 'title' => ''],
],
[
'name' => 'TbName',
'in' => 'query',
'schema' => ['description' => 'The name of the table in the source database to be verified.', 'type' => 'string', 'required' => true, 'example' => 'student', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the DTS task. You can call [DescribeDtsJobs](~~209702~~) to obtain the ID.', 'type' => 'string', 'required' => true, 'example' => 'f4612nr2182****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AF2DE23-B692-5B85-90B7-44B6F4D8****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The download URL of the verification report.', 'type' => 'string', 'example' => 'https://check-result-file-sh.oss-cn-shanghai.aliyuncs.com/dw612cru18e****/dtsdb/diff/student.diff.zip?Expires=****', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'DTS.Msg.FileExistValidFailError', 'errorMessage' => 'The file has not been generated, please try again later.', 'description' => 'The file has not been generated. Please try again later.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AF2DE23-B692-5B85-90B7-44B6F4D8****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"https://check-result-file-sh.oss-cn-shanghai.aliyuncs.com/dw612cru18e****/dtsdb/diff/student.diff.zip?Expires=****\\",\\n \\"HttpStatusCode\\": 200\\n}","type":"json"}]',
'title' => 'Query the download URL of a verification report',
'summary' => 'Obtains the download URL for the list data of inconsistent data.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDataCheckReportUrl',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeDataCheckTableDetails' => [
'summary' => 'Queries data consistency verification results at the table level.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREdtsMQWIQD', 'FEATUREdtsEGTFKE'],
],
'parameters' => [
[
'name' => 'Status',
'in' => 'query',
'schema' => ['description' => 'The status of the verification result. Valid values:'."\n"
.'- **-1** (default): all statuses.'."\n"
.'- **6**: tables with inconsistent data.', 'type' => 'string', 'required' => false, 'example' => '-1', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '1', 'default' => '20', 'example' => '10', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '0', 'default' => '0', 'example' => '1', 'title' => ''],
],
[
'name' => 'CheckType',
'in' => 'query',
'schema' => ['description' => 'The data validation method. Valid values:'."\n"
."\n"
.'- **1**: full data validation.'."\n"
.'- **2**: incremental data validation.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''],
],
[
'name' => 'TableName',
'in' => 'query',
'schema' => ['description' => 'The name of the table to be verified in the source database.', 'type' => 'string', 'required' => false, 'example' => 'student', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration or data synchronization task. You can call the [DescribeDtsJobs](~~209702~~) operation to query the task ID.', 'type' => 'string', 'required' => true, 'example' => 'xd4e4xb419q****', 'title' => ''],
],
[
'name' => 'SchemaName',
'in' => 'query',
'schema' => ['description' => 'The schema name of the object to be verified in the source database.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **Type**, the request parameter **Type** is invalid.', 'type' => 'string', 'example' => 'Type', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'TableDetails' => [
'description' => 'The details of the data consistency verification results for tables.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the verification result. Valid values:'."\n"
."\n"
.'- **0**: completed.'."\n"
.'- **2**: initializing.'."\n"
.'- **3**: running.'."\n"
.'- **5**: failed.', 'type' => 'string', 'example' => '0', 'title' => ''],
'Id' => ['description' => 'The auto-increment primary key that identifies a verification result record.', 'type' => 'integer', 'format' => 'int64', 'example' => '167401241974****', 'title' => ''],
'SourceDbName' => ['description' => 'The name of the source database.', 'type' => 'string', 'example' => 'testdb', 'title' => ''],
'TargetDbName' => ['description' => 'The name of the destination database.', 'type' => 'string', 'example' => 'testdb', 'title' => ''],
'SourceTbName' => ['description' => 'The name of the source table.', 'type' => 'string', 'example' => 'student', 'title' => ''],
'TargetTbName' => ['description' => 'The name of the destination table.', 'type' => 'string', 'example' => 'person', 'title' => ''],
'TotalCount' => ['description' => 'The total number of rows to be verified.', 'type' => 'integer', 'format' => 'int64', 'example' => '8', 'title' => ''],
'FinishCount' => ['description' => 'The number of rows that have been verified in the table.', 'type' => 'integer', 'format' => 'int64', 'example' => '7', 'title' => ''],
'DiffCount' => ['description' => 'The number of rows with data inconsistency.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'BootTime' => ['description' => 'The time when the verification was performed.', 'type' => 'string', 'example' => '2023-01-18 11:26:59', 'title' => ''],
'ErrorCode' => ['description' => 'The error code returned when the task fails. Valid values:'."\n"
."\n"
.'- **1**: the number of tables without primary key exceeds the limit.'."\n"
.'- **2**: the number of rows with data inconsistency exceeds 300.'."\n"
.'- **3**: the table to be queried does not exist.'."\n"
.'- **4**: the SQL statement used to query data contains a syntax error.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'TotalCount' => ['description' => 'The total number of tables to be verified.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'FinishedCount' => ['description' => 'The total number of rows that have been verified.', 'type' => 'integer', 'format' => 'int64', 'example' => '7', 'title' => ''],
'DiffTableCount' => ['description' => 'The number of tables with data inconsistency.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'FailedTableCount' => ['description' => 'The number of tables that failed the verification.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"PageNumber\\": 2,\\n \\"DynamicCode\\": \\"403\\",\\n \\"TableDetails\\": [\\n {\\n \\"Status\\": \\"0\\",\\n \\"Id\\": 0,\\n \\"SourceDbName\\": \\"testdb\\",\\n \\"TargetDbName\\": \\"testdb\\",\\n \\"SourceTbName\\": \\"student\\",\\n \\"TargetTbName\\": \\"person\\",\\n \\"TotalCount\\": 8,\\n \\"FinishCount\\": 7,\\n \\"DiffCount\\": 1,\\n \\"BootTime\\": \\"2023-01-18 11:26:59\\",\\n \\"ErrorCode\\": 1\\n }\\n ],\\n \\"TotalCount\\": 1,\\n \\"FinishedCount\\": 7,\\n \\"DiffTableCount\\": 1,\\n \\"FailedTableCount\\": 1\\n}","type":"json"}]',
'title' => 'Query data consistency verification results',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDataCheckTableDetails',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeDataCheckTableDiffDetails' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'CheckType',
'in' => 'query',
'schema' => ['description' => 'The data validation method. Valid values:'."\n"
."\n"
.'- **1**: full verification.'."\n"
.'- **2**: incremental verification.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'example' => '2', 'title' => ''],
],
[
'name' => 'DbName',
'in' => 'query',
'schema' => ['description' => 'The name of the database that contains the table with inconsistent data.', 'type' => 'string', 'required' => true, 'example' => 'db_dtstest', 'title' => ''],
],
[
'name' => 'TbName',
'in' => 'query',
'schema' => ['description' => 'The name of the table that contains inconsistent data.', 'type' => 'string', 'required' => true, 'example' => 'test_person', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration or data synchronization task. You can call the [DescribeDtsJobs](~~209702~~) operation to query the task ID.', 'type' => 'string', 'required' => true, 'example' => 'xd4e4xb419q****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InvalidParameter', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The value of the parameter tbName is invalid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** placeholder in the **ErrMessage** response element.'."\n"
."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **Type**, the request parameter **Type** that you specified is invalid.', 'type' => 'string', 'example' => 'Type', 'title' => ''],
'TbName' => ['description' => 'The name of the table in the source database that contains inconsistent data.', 'type' => 'string', 'example' => 'test_person', 'title' => ''],
'DbName' => ['description' => 'The name of the database in the source instance that contains the table with inconsistent data.', 'type' => 'string', 'example' => 'db_dtstest', 'title' => ''],
'DiffDetails' => [
'description' => 'The inconsistency details.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Id' => ['description' => 'The auto-increment primary key that identifies a verification result record.', 'type' => 'integer', 'format' => 'int64', 'example' => '13058****', 'title' => ''],
'GmtCreated' => ['description' => 'The time when the verification was performed.', 'type' => 'string', 'example' => '2023-04-23T10:36:05.000+00:00', 'title' => ''],
'Diff' => ['description' => 'The specific inconsistency details, which is a JSON string.'."\n"
."\n"
.'- column: the field name.'."\n"
.'- source: the value in the source database.'."\n"
.'- dest: the value in the destination database.'."\n"
.'- isPrimary: indicates whether the field is a primary key.', 'type' => 'string', 'example' => '[ { "column": "id", "source": "9511", "dest": "9511", "isPrimary": true }, { "column": "state", "source": "3", "dest": "2", "isPrimary": false }, { "column": "create_time", "source": "2023-04-11 14:07:17.0", "dest": "NULL", "isPrimary": false }, { "column": "update_time", "source": "2023-04-11 06:07:17.0", "dest": "2023-04-11 06:02:29.0", "isPrimary": false } ]', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'DiffCount' => ['description' => 'The number of rows with data inconsistency.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'dtsog8q1z3tc9t****"', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"HttpStatusCode\\": 200,\\n \\"ErrCode\\": \\"InvalidParameter\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The value of the parameter tbName is invalid.\\",\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"TbName\\": \\"test_person\\",\\n \\"DbName\\": \\"db_dtstest\\",\\n \\"DiffDetails\\": [\\n {\\n \\"Id\\": 0,\\n \\"GmtCreated\\": \\"2023-04-23T10:36:05.000+00:00\\",\\n \\"Diff\\": \\"[ { \\\\\\"column\\\\\\": \\\\\\"id\\\\\\", \\\\\\"source\\\\\\": \\\\\\"9511\\\\\\", \\\\\\"dest\\\\\\": \\\\\\"9511\\\\\\", \\\\\\"isPrimary\\\\\\": true }, { \\\\\\"column\\\\\\": \\\\\\"state\\\\\\", \\\\\\"source\\\\\\": \\\\\\"3\\\\\\", \\\\\\"dest\\\\\\": \\\\\\"2\\\\\\", \\\\\\"isPrimary\\\\\\": false }, { \\\\\\"column\\\\\\": \\\\\\"create_time\\\\\\", \\\\\\"source\\\\\\": \\\\\\"2023-04-11 14:07:17.0\\\\\\", \\\\\\"dest\\\\\\": \\\\\\"NULL\\\\\\", \\\\\\"isPrimary\\\\\\": false }, { \\\\\\"column\\\\\\": \\\\\\"update_time\\\\\\", \\\\\\"source\\\\\\": \\\\\\"2023-04-11 06:07:17.0\\\\\\", \\\\\\"dest\\\\\\": \\\\\\"2023-04-11 06:02:29.0\\\\\\", \\\\\\"isPrimary\\\\\\": false } ]\\"\\n }\\n ],\\n \\"DiffCount\\": 1,\\n \\"InstanceId\\": \\"dtsog8q1z3tc9t****\\\\\\"\\"\\n}","type":"json"}]',
'title' => 'Query verification task results',
'summary' => 'Lists data inconsistency results grouped by inconsistent data.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDataCheckTableDiffDetails',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeDedicatedCluster' => [
'summary' => 'Queries the details of a specified cluster by calling the DescribeDedicatedCluster operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'list'],
'parameters' => [
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The cluster ID.', 'type' => 'string', 'required' => true, 'example' => 'dtsCluster****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DedicatedClusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'example' => 'dtsCluster****', 'title' => ''],
'DedicatedClusterName' => ['description' => 'The cluster name.', 'type' => 'string', 'example' => 'daily_test', 'title' => ''],
'Du' => ['description' => 'The number of DUs.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''],
'OversoldDu' => ['description' => 'The number of oversold DUs.', 'type' => 'integer', 'format' => 'int64', 'example' => '60', 'title' => ''],
'UsedDu' => ['description' => 'The number of used DUs.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''],
'State' => ['description' => 'The cluster status. Valid values:'."\n"
."\n"
.'- **init**: initialization.'."\n"
.'- **schedule**: pending scheduling.'."\n"
.'- **running**: running.'."\n"
.'- **upgrade**: upgrading.'."\n"
.'- **downgrade**: downgrading.'."\n"
.'- **locked**: locked.'."\n"
.'- **releasing**: being released.'."\n"
.'- **released**: released.', 'type' => 'string', 'example' => 'inti', 'title' => ''],
'RegionId' => ['description' => 'The region in which the instance resides.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'NodeCount' => ['description' => 'The number of nodes in the cluster.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''],
'DuUtilization' => ['description' => 'The DU utilization percentage.', 'type' => 'integer', 'format' => 'int64', 'example' => '16', 'title' => ''],
'CpuUtilization' => ['description' => 'The CPU utilization percentage.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''],
'TotalCpuCore' => ['description' => 'The total number of CPU cores.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
'UsedCpuCore' => ['description' => 'The number of used CPU cores.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''],
'MemUtilization' => ['description' => 'The memory utilization.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
'TotalMemGBSize' => ['description' => 'The total memory size, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '256', 'title' => ''],
'UsedMemGBSize' => ['description' => 'The used memory size, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '128', 'title' => ''],
'DiskUtilization' => ['description' => 'The disk utilization.', 'type' => 'integer', 'format' => 'int64', 'example' => '50', 'title' => ''],
'TotalDiskGBSize' => ['description' => 'The total disk size, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '2048', 'title' => ''],
'UsedDiskGBSize' => ['description' => 'The used disk size, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '1024', 'title' => ''],
'GmtCreated' => ['description' => 'The creation time.', 'type' => 'integer', 'format' => 'int64', 'example' => '1642476144000', 'title' => ''],
'GmtFinished' => ['description' => 'The end time.', 'type' => 'integer', 'format' => 'int64', 'example' => '1645200000000', 'title' => ''],
'DtsInstanceID' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'dtsb8r****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DedicatedClusterId\\": \\"dtsCluster****\\",\\n \\"DedicatedClusterName\\": \\"daily_test\\",\\n \\"Du\\": 30,\\n \\"OversoldDu\\": 60,\\n \\"UsedDu\\": 5,\\n \\"State\\": \\"inti\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"NodeCount\\": 5,\\n \\"DuUtilization\\": 16,\\n \\"CpuUtilization\\": 30,\\n \\"TotalCpuCore\\": 100,\\n \\"UsedCpuCore\\": 30,\\n \\"MemUtilization\\": 20,\\n \\"TotalMemGBSize\\": 256,\\n \\"UsedMemGBSize\\": 128,\\n \\"DiskUtilization\\": 50,\\n \\"TotalDiskGBSize\\": 2048,\\n \\"UsedDiskGBSize\\": 1024,\\n \\"GmtCreated\\": 1642476144000,\\n \\"GmtFinished\\": 1645200000000,\\n \\"DtsInstanceID\\": \\"dtsb8r****\\"\\n}","type":"json"}]',
'title' => 'Query details of a specified cluster',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:DescribeDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeDedicatedClusterMonitorRule' => [
'summary' => 'Queries alert rules by calling the DescribeDedicatedClusterMonitorRule operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The cluster ID.', 'type' => 'string', 'required' => false, 'example' => 'dtsClustervcwn1oeyu5fx4yf', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID. This is a global parameter that does not need to be passed in for this operation.', 'type' => 'string', 'required' => false, 'example' => '资源组ID,全局参数,当前API无需传入。', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request is successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DedicatedClusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'example' => 'dtsClustervcwn1oeyu5fx4yf', 'title' => ''],
'NoticeSwitch' => ['description' => 'The alert switch. Valid values:'."\n"
."\n"
.'- **1**: enabled.'."\n"
.'- **0**: disabled.', 'type' => 'string', 'example' => '1', 'title' => ''],
'DuAlarmThreshold' => ['description' => 'The DU alert threshold, in percentage.', 'type' => 'string', 'example' => '46', 'title' => ''],
'CpuAlarmThreshold' => ['description' => 'The CPU alert threshold, in percentage.', 'type' => 'string', 'example' => '80', 'title' => ''],
'MemAlarmThreshold' => ['description' => 'The memory alert threshold, in percentage.', 'type' => 'string', 'example' => '80', 'title' => ''],
'DiskAlarmThreshold' => ['description' => 'The disk alert threshold, in percentage.', 'type' => 'string', 'example' => '80', 'title' => ''],
'Phones' => ['description' => 'The phone numbers that receive alerts. If there are multiple phone numbers, they are separated by commas (,).', 'type' => 'string', 'example' => '186****7653', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DedicatedClusterId\\": \\"dtsClustervcwn1oeyu5fx4yf\\",\\n \\"NoticeSwitch\\": \\"1\\",\\n \\"DuAlarmThreshold\\": \\"46\\",\\n \\"CpuAlarmThreshold\\": \\"80\\",\\n \\"MemAlarmThreshold\\": \\"80\\",\\n \\"DiskAlarmThreshold\\": \\"80\\",\\n \\"Phones\\": \\"186****7653\\"\\n}","type":"json"}]',
'title' => 'Query alert rules',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDedicatedClusterMonitorRule',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#AccountId}:instance/{#DtsInstanceId}'],
],
],
],
],
],
'DescribeDocParserJobResult' => [
'summary' => 'Retrieves the result of a document parsing task.',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '52309',
'abilityTreeNodes' => ['FEATUREdtsE4ZR2L'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The task ID (DtsJobId) returned when the document parsing task was created.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'dts-20250729-y0zz3t13h7d****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'RagInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the DTS RagFlow instance.', 'type' => 'string', 'required' => false, 'example' => 'dtsgbe12he619iy801', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C166D79D-436B-45F0-B5A5-25E1959F****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'FileUrl' => ['description' => 'The OSS download URL of the file.'."\n"
."\n"
.'> If the task type is zip, this field returns the download URL of the zip package. The URL is valid for 30 minutes.', 'type' => 'string', 'example' => 'https://oss-cn-hangzhou.aliyuncs.com/806a_209584525031252870_078f1180f27b4c069c0f271758aa****', 'title' => ''],
'OuterFileUrl' => ['description' => 'The public OSS download URL of the file.', 'type' => 'string', 'example' => 'https://oss-cn-hangzhou.aliyuncs.com/806a_209584525031252870_078f1180f27b4c069c0f271758aa****', 'title' => ''],
'ContentList' => [
'description' => 'The complete text parsing content.'."\n"
.'> If the task type is content, ContentList splits the original document by page. Each page has a separate Markdown text entry.',
'type' => 'array',
'items' => [
'description' => 'Each object contains the page number and the parsed Markdown text of the corresponding page.',
'type' => 'object',
'properties' => [
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'Content' => ['description' => 'The text content of the corresponding page, which is the complete Markdown text after parsing.', 'type' => 'string', 'example' => '* Demo * ** Demo title **', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'OperationDenied.NotPurchased', 'errorMessage' => 'The instance has not been purchased and the task cannot be started.', 'description' => 'Failed to start a task. Purchase a task first.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"C166D79D-436B-45F0-B5A5-25E1959F****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"FileUrl\\": \\"https://oss-cn-hangzhou.aliyuncs.com/806a_209584525031252870_078f1180f27b4c069c0f271758aa****\\",\\n \\"OuterFileUrl\\": \\"https://oss-cn-hangzhou.aliyuncs.com/806a_209584525031252870_078f1180f27b4c069c0f271758aa****\\",\\n \\"ContentList\\": [\\n {\\n \\"PageNumber\\": 1,\\n \\"Content\\": \\"* Demo * ** Demo title **\\"\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Retrieve the result of a document parsing task',
'description' => 'This operation has rate limits. Calls that exceed the limits are rejected.'."\n"
.'- The cumulative call threshold per region is 100 calls per second.'."\n"
.'- The call threshold per account per region is 5 calls per second.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDocParserJobResult',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeDocParserJobStatus' => [
'summary' => 'Queries the execution status of a document parsing task.',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '52309',
'abilityTreeNodes' => ['FEATUREdtsE4ZR2L'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The task ID (DtsJobId) returned when the document parsing task was created.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'dts-20250729-l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'RagInstanceId',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FDC111B1-ACBF-457D-9656-247FDEE9****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'Status' => ['description' => 'The status of the DTS document parsing task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Running**: document parsing in progress.'."\n"
.'- **Suspending**: pausing.'."\n"
.'- **Failed**: document parsing failed.'."\n"
.'- **Finished**: document parsing completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'OperationDenied.NotPurchased', 'errorMessage' => 'The instance has not been purchased and the task cannot be started.', 'description' => 'Failed to start a task. Purchase a task first.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"FDC111B1-ACBF-457D-9656-247FDEE9****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"Status\\": \\"Finished\\"\\n}","type":"json"}]',
'title' => 'Query the status of a document parsing task',
'description' => 'This operation has call frequency limits. Calls that exceed the limits are rejected.'."\n"
.'- The cumulative call threshold for a single region is 200 calls per second.'."\n"
.'- The call threshold for a single account in a single region is 20 calls per second.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDocParserJobStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeDtsEtlJobVersionInfo' => [
'summary' => 'Queries the details of an ETL task.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of entries per page in a paged query. Settings this parameter for paging. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '0', 'default' => '10', 'example' => '20', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number of the instance status list. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '0', 'default' => '0', 'example' => '1', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The DTS instance ID. You can call the [DescribeDtsJobs](~~209702~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'example' => 'dtsggk12iwya1a****', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ETL task ID. You can call the [DescribeDtsJobs](~~209702~~) operation to query the task ID.', 'type' => 'string', 'required' => false, 'example' => 'l5512es7w15****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the DTS instance. You can call the [DescribeRegions](~~25609~~) operation to query available regions.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '224DB9F7-3100-4899-AB9C-C938BCCB43E7', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. A value of false indicates a failure.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the specified ETL task ID is invalid and the corresponding task cannot be found.', 'type' => 'string', 'example' => 'InvalidJobId', 'title' => ''],
'PageNumber' => ['description' => 'The page number of the instance status list. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'PageRecordCount' => ['description' => 'The number of records on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the specified ETL task ID is invalid and the corresponding task cannot be found. The task may have been deleted.', 'type' => 'string', 'example' => 'The specified dts job id %s is not exists.', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code associated with this request.', 'type' => 'string', 'example' => '403', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message associated with this request.', 'type' => 'string', 'example' => 'present environment is not support,so skip', 'title' => ''],
'DtsEtlJobVersionInfos' => [
'description' => 'The array of ETL task information objects.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The log level. Valid values: ERROR, WARN, INFO, and DEBUG.', 'type' => 'string', 'example' => 'INFO', 'title' => ''],
'DtsJobName' => ['description' => 'The name of the ETL task.', 'type' => 'string', 'example' => 'test_sql', 'title' => ''],
'DtsJobId' => ['description' => 'The ETL task ID.', 'type' => 'string', 'example' => 'l5512es7w15****', 'title' => ''],
'Version' => ['description' => 'The version number of the ETL task.', 'type' => 'integer', 'format' => 'int32', 'example' => '9', 'title' => ''],
'DtsInstanceId' => ['description' => 'The DTS instance ID.', 'type' => 'string', 'example' => 'dtsg******gd', 'title' => ''],
'CreateTime' => ['description' => 'The timestamp when the ETL task was created.', 'type' => 'string', 'example' => '1637229315000', 'title' => ''],
'SafeCheckpoint' => ['description' => 'The safe checkpoint, which indicates the current position of the ETL task.', 'type' => 'string', 'example' => '1637230117000', 'title' => ''],
'Creator' => ['description' => 'The creator ID.', 'type' => 'string', 'example' => '10000000', 'title' => ''],
'ModifyTime' => ['description' => 'The modification timestamp.', 'type' => 'string', 'example' => '1637230117000', 'title' => ''],
'CreatorName' => ['description' => 'The username of the creator.', 'type' => 'string', 'example' => '***@****.com', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"224DB9F7-3100-4899-AB9C-C938BCCB43E7\\",\\n \\"Success\\": true,\\n \\"ErrCode\\": \\"InvalidJobId\\",\\n \\"PageNumber\\": 1,\\n \\"PageRecordCount\\": 20,\\n \\"TotalRecordCount\\": 200,\\n \\"ErrMessage\\": \\"The specified dts job id %s is not exists.\\",\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"DynamicMessage\\": \\"present environment is not support,so skip\\",\\n \\"DtsEtlJobVersionInfos\\": [\\n {\\n \\"Status\\": \\"INFO\\",\\n \\"DtsJobName\\": \\"test_sql\\",\\n \\"DtsJobId\\": \\"l5512es7w15****\\",\\n \\"Version\\": 9,\\n \\"DtsInstanceId\\": \\"dtsg******gd\\",\\n \\"CreateTime\\": \\"1637229315000\\",\\n \\"SafeCheckpoint\\": \\"1637230117000\\",\\n \\"Creator\\": \\"10000000\\",\\n \\"ModifyTime\\": \\"1637230117000\\",\\n \\"CreatorName\\": \\"***@****.com\\"\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query ETL task details',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDtsEtlJobVersionInfo',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeDtsJobDetail' => [
'summary' => 'Queries the details of a DTS task by calling DescribeDtsJobDetail.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '52246',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'ta7w132u12h****', 'title' => ''],
],
[
'name' => 'DtsInstanceID',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the data migration, data synchronization, or change tracking instance.', 'type' => 'string', 'required' => false, 'example' => 'dtsta7w132u12h****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - The default value is **Forward**.'."\n"
.'- The value **Reverse** takes effect only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SyncSubJobHistory',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'Specifies whether to return information about all synchronization subtasks. Default value: **false**, which returns only the subtask that is in progress or the most recently executed subtask.', 'type' => 'boolean', 'example' => 'false', 'required' => false],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => '是否无感集成(Zero-ETL)任务,取值:'."\n"
.'- **true**:是。'."\n"
.'- **false**:否。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the data migration or synchronization task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **Initializing**: running initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **synchronizing**: synchronizing.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Downgrade**: downgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'DtsJobName' => ['description' => 'The name of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'api_test', 'title' => ''],
'FinishTime' => ['description' => 'The time when the task was completed. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-06-16T10:34:17Z', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
'CreateTime' => ['description' => 'The time when the task was created. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z', 'title' => ''],
'PayType' => ['description' => 'The billing method of the instance. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'Reserved' => ['description' => 'The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'DatabaseCount' => ['description' => 'If the source instance is a PolarDB-X 1.0 instance, specify the number of ApsaraDB RDS for MySQL instances attached to it.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'DtsJobClass' => ['description' => '链路规格。'."\n"
.'> 关于各链路规格的说明及性能测试情况请参见[数据迁移链路规格说明](~~26606~~),[数据同步链路规格说明](~~26605~~)。', 'type' => 'string', 'example' => 'xlarge', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-26T14:03:21Z', 'title' => ''],
'AppName' => ['description' => 'Indicates whether the instance is a new change tracking instance. The value new indicates a new change tracking instance.'."\n"
.'> This parameter is returned only for new change tracking instances.', 'type' => 'string', 'example' => 'new', 'title' => ''],
'DestNetType' => ['description' => 'The network type of the consumer client. Valid values:'."\n"
."\n"
.'- **CLASSIC**: classic network.'."\n"
.'- **VPC**: virtual private cloud (VPC).', 'type' => 'string', 'example' => 'VPC', 'title' => ''],
'SubscribeTopic' => ['description' => 'The subscription topic.'."\n"
.'> This parameter is returned only when the change tracking instance is a new version and a consumer group has been created by calling the [CreateConsumerGroup](~~122863~~) operation.', 'type' => 'string', 'example' => 'cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2', 'title' => ''],
'DtsInstanceID' => ['description' => 'The instance ID of the data migration, data synchronization, or change tracking instance.', 'type' => 'string', 'example' => 'dtsi03e3zty16i****', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '29207299-7C41-493A-BA4F-2FAC5DE4****', 'title' => ''],
'Code' => ['description' => 'The error code. This parameter will be deprecated.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'Checkpoint' => ['description' => 'The start checkpoint of incremental data migration or the synchronization checkpoint. The value is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1616405159', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data migration or synchronization, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of the **PayType** parameter is **PrePaid**.', 'type' => 'string', 'example' => '2023-06-16T08:01:19Z', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'ConsumptionClient' => ['description' => 'The information about the downstream consumer client, which consists of an IP address and a random number generated by DTS.', 'type' => 'string', 'example' => '114.***.***.**:dts********', 'title' => ''],
'DbObject' => ['description' => 'The objects for data migration, synchronization, or change tracking. For more information, see [Objects of DTS tasks](~~209545~~).', 'type' => 'string', 'example' => '{\\"dtstestdata\\":{\\"all\\":true,\\"name\\":\\"dtstestdata\\",\\"state\\":\\"normal\\"}}', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** parameter.'."\n"
.'> For example, if the **ErrMessage** parameter returns **The Value of Input Parameter %s is not valid** and the **DynamicMessage** parameter returns **DtsJobId**, the specified value of the **DtsJobId** request parameter is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the downstream consumer for the change tracking task. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-23T07:30:31Z', 'title' => ''],
'EtlCalculator' => ['description' => 'The operator information of the ETL task.'."\n"
.'> This parameter is returned only when the task is an ETL task.', 'type' => 'string', 'example' => '{ "cells ": [{\\"shape\\":\\"edge\\",\\"attrs\\":{\\"line\\":{\\"stroke\\":\\"#b1b1b1\\",\\"strokeWidth\\":1,\\"targetMarker\\":{\\"name\\":\\"block\\",\\"args\\":{\\"size\\":\\"8\\"}},\\"strokeDasharray\\":\\"\\"}},\\"id\\":\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\",\\"source\\":{\\"cell\\":\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\",\\"port\\":\\"out1\\"},\\"target\\":{\\"cell\\":\\"b36770df-f48c-4d6b-9644-54c5e924****\\",\\"port\\":\\"in1\\"},\\"zIndex\\":7 }] }', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'BeginTimestamp' => ['description' => 'The start of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-15T08:25:34Z', 'title' => ''],
'GroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - The default value is **Forward**.'."\n"
.'- The value **Reverse** takes effect only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'DtsJobDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> This parameter is returned only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'DemoJob' => ['description' => 'Indicates whether the task is a subtask. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the source instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceID' => ['description' => '源实例ID。', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the source instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Region' => ['description' => 'The region of the source instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the source instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'CanModifyPassword' => ['description' => 'Indicates whether the password can be modified. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Region' => ['description' => 'The region of the destination instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.XX.XX', 'title' => ''],
'InstanceID' => ['description' => '目标实例ID。', 'type' => 'string', 'example' => 'rm-bp1imrtn6fq7h****', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'CanModifyPassword' => ['description' => 'Indicates whether the password can be modified. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'RoleName' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'AliyunUid' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
'title' => '',
'example' => '',
],
'MigrationMode' => [
'description' => 'The migration type or initial synchronization type.',
'type' => 'object',
'properties' => [
'DataExtractTransformLoad' => ['description' => 'Indicates whether data transformation is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'DataInitialization' => ['description' => 'Indicates whether full data migration or initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data migration or synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'StructureInitialization' => ['description' => 'Indicates whether schema migration or initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscriptionHost' => [
'description' => 'The endpoint of the change tracking task.',
'type' => 'object',
'properties' => [
'VpcHost' => ['description' => 'The VPC endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-vpc.aliyuncs.com:18003', 'title' => ''],
'PublicHost' => ['description' => 'The public endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
'PrivateHost' => ['description' => 'The private endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-internal.aliyuncs.com:18002', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscriptionDataType' => [
'description' => 'The type of the subscription data.',
'type' => 'object',
'properties' => [
'Dml' => ['description' => 'Indicates whether the subscription data includes DML statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Ddl' => ['description' => 'Indicates whether the subscription data includes DDL statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubDistributedJob' => [
'description' => 'The information about distributed subtasks. This parameter is null if the parent task is not a distributed task.'."\n"
.'> Currently, this field is returned only when the parent task is a synchronization task. Other task types are not supported.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'SubSyncJob' => [
'description' => 'The information about the synchronization subtask.',
'type' => 'array',
'items' => ['description' => 'The information about the synchronization subtask.', 'type' => 'any', 'example' => '****', 'title' => ''],
'title' => '',
'example' => '',
],
'DtsInstanceID' => ['description' => 'The DTS instance ID.', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****', 'title' => ''],
'DtsJobId' => ['description' => 'The DTS task ID.', 'type' => 'string', 'example' => 'm06j1g92124****', 'title' => ''],
'DtsJobName' => ['description' => 'The DTS instance name.', 'type' => 'string', 'example' => 'dtstest****', 'title' => ''],
'GroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'DatabaseCount' => ['description' => 'If the source instance is a PolarDB-X 1.0 instance, specify the number of ApsaraDB RDS for MySQL instances attached to it.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'DtsJobClass' => ['description' => 'The specification of the task link.', 'type' => 'string', 'example' => 'xlarge', 'title' => ''],
'DtsJobDirection' => ['title' => '', 'description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> This parameter is returned only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward'],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - The default value is **Forward**.'."\n"
.'- The value **Reverse** takes effect only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'PayType' => ['description' => 'The billing method. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of the **PayType** parameter is **PrePaid**.', 'type' => 'string', 'example' => '2023-06-16T08:01:19Z', 'title' => ''],
'CreateTime' => ['description' => 'The time when the task was created. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-01-12T08:34:11Z', 'title' => ''],
'FinishTime' => ['description' => 'The time when the task was completed. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-06-16T10:34:17Z', 'title' => ''],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'InstanceID' => ['description' => '源实例ID。', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****', 'title' => ''],
'Region' => ['description' => 'The region of the source instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '192.168.XX.XX', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'SslSolutionEnum' => ['title' => '', 'description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE'],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the source instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the source instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'InstanceID' => ['description' => '目标实例ID。', 'type' => 'string', 'example' => 'rm-bp1f9guj5rhzq****', 'title' => ''],
'Region' => ['description' => 'The region of the destination instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '192.168.XX.XX', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testid', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'SslSolutionEnum' => ['title' => '', 'description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE'],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the destination instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the destination instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DbObject' => ['description' => 'The objects for data migration, synchronization, or change tracking. For more information, see [Objects of DTS tasks](~~209545~~).', 'type' => 'string', 'example' => '{\\"dtstestdata\\":{\\"all\\":true,\\"name\\":\\"dtstestdata\\",\\"state\\":\\"normal\\"}}', 'title' => ''],
'MigrationMode' => [
'description' => 'The migration type or initial synchronization type.',
'type' => 'object',
'properties' => [
'StructureInitialization' => ['description' => 'Indicates whether schema migration or initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataInitialization' => ['description' => 'Indicates whether full data migration or initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data migration or synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataExtractTransformLoad' => ['description' => 'Indicates whether data transformation is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Status' => ['description' => 'The status of the data migration or synchronization task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **Initializing**: running initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **synchronizing**: synchronizing.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Downgrade**: downgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data migration or synchronization, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'TagList' => [
'description' => 'The tag collection.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Id' => ['title' => '', 'description' => 'The primary key.', 'type' => 'integer', 'format' => 'int64', 'example' => '2'],
'GmtCreate' => ['title' => '', 'description' => 'The creation time.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z'],
'GmtModified' => ['title' => '', 'description' => 'The modification time.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z'],
'ResourceId' => ['title' => '', 'description' => 'The instance ID of the data migration, synchronization, or change tracking task.', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****'],
'ResourceType' => ['title' => '', 'description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::DTS::INSTANCE'],
'RegionId' => ['title' => '', 'description' => 'The region of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou'],
'AliUid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '191448876515****'],
'TagKey' => ['title' => '', 'description' => 'The tag key.', 'type' => 'string', 'example' => 'key1'],
'TagValue' => ['title' => '', 'description' => 'The tag value.', 'type' => 'string', 'example' => 'value1'],
'TagCategory' => ['title' => '', 'description' => 'The tag category. Valid values:'."\n"
."\n"
.'- **System**: system-created tag.'."\n"
.'- **Custom**: user-added tag.'."\n"
."\n"
.'> If the value is empty, publicly visible tags are returned by default.', 'type' => 'string', 'example' => 'System'],
'SrcRegion' => ['title' => '', 'description' => 'The region of the task.'."\n"
."\n"
.'> This generally refers to the region of the destination instance.', 'type' => 'string', 'example' => 'cn-hangzhou'],
'Scope' => ['title' => '', 'description' => 'The visibility of the tag. Valid values:'."\n"
.'- **0**: public'."\n"
.'- **1**: private.', 'type' => 'string', 'example' => '0'],
'Creator' => ['title' => '', 'description' => 'The tag operator.', 'type' => 'integer', 'format' => 'int64', 'example' => '191448876515****'],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Checkpoint' => ['description' => 'The start checkpoint of incremental data migration or the synchronization checkpoint. The value is a UNIX timestamp in seconds.', 'type' => 'string', 'example' => '1616405159', 'title' => ''],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The precheck status. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Finished'],
'Percent' => ['description' => 'The overall precheck progress, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'CheckItem' => ['title' => '', 'description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC'],
'CheckItemDescription' => ['title' => '', 'description' => 'The description of the precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL'],
'CheckResult' => ['title' => '', 'description' => 'The precheck result. Valid values:'."\n"
.'- **Success**: passed.'."\n"
.'- **Failed**: failed.', 'type' => 'string', 'example' => 'Success'],
'FailedReason' => ['title' => '', 'description' => 'The error message returned when the precheck failed.'."\n"
."\n"
.'> This parameter is returned only when the value of the **CheckResult** parameter is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)'],
'RepairMethod' => ['title' => '', 'description' => 'The repair method when the precheck failed.'."\n"
.'> This parameter is returned only when the value of the **CheckResult** parameter is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2'],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of initial schema synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of tables for which initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataInitializationStatus' => [
'description' => 'The status of full data migration or initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of full data migration or initial full data synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when full data migration or initial full data synchronization failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '16'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data migration or synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of incremental data migration or synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: checking.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Catched'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of incremental data migration or synchronization.', 'type' => 'string', 'example' => '95'],
'Progress' => ['title' => '', 'description' => 'The number of data rows and the data volume that are incrementally synchronized or migrated to the destination table per second.', 'type' => 'string', 'example' => '0.00RPS/(0.000MB/s)'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataEtlStatus' => [
'description' => 'The status of the ETL task.'."\n"
."\n"
.'> This parameter is returned only after an ETL task is configured.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of the ETL task. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '16'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The performance information of the migration or synchronization link.',
'type' => 'object',
'properties' => [
'Rps' => ['title' => '', 'description' => 'The number of SQL statements that are migrated or synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, and UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100'],
'Flow' => ['title' => '', 'description' => 'The data flow rate of migration or synchronization per second, in MB/s.', 'type' => 'string', 'example' => '1'],
],
'title' => '',
'example' => '',
],
'ReverseJob' => [
'description' => 'The execution details of the reverse synchronization task.'."\n"
."\n"
.'> This parameter is returned only when the task is a data synchronization task with a two-way synchronization topology.',
'type' => 'object',
'properties' => [
'DtsInstanceID' => ['description' => 'The DTS instance ID.', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****', 'title' => ''],
'DtsJobId' => ['description' => 'The DTS task ID.', 'type' => 'string', 'example' => 'm06j1g92124****', 'title' => ''],
'DtsJobName' => ['description' => 'The DTS instance name.', 'type' => 'string', 'example' => 'dtstest****', 'title' => ''],
'GroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'DatabaseCount' => ['description' => 'If the source instance is a PolarDB-X 1.0 instance, specify the number of ApsaraDB RDS for MySQL instances attached to it.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'DtsJobClass' => ['description' => 'The specification of the task link.', 'type' => 'string', 'example' => 'xlarge', 'title' => ''],
'DtsJobDirection' => ['title' => '', 'description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> This parameter is returned only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward'],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - The default value is **Forward**.'."\n"
.'- The value **Reverse** takes effect only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'PayType' => ['description' => 'The billing method. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of the **PayType** parameter is **PrePaid**.', 'type' => 'string', 'example' => '2023-06-16T08:01:19Z', 'title' => ''],
'CreateTime' => ['description' => 'The time when the task was created. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-01-12T08:34:11Z', 'title' => ''],
'FinishTime' => ['description' => 'The time when the task was completed. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-06-16T10:34:17Z', 'title' => ''],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'InstanceID' => ['description' => 'The instance ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp2f3huj5rhzq****', 'title' => ''],
'Region' => ['description' => 'The region of the source instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '192.168.XX.XX', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'SslSolutionEnum' => ['title' => '', 'description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE'],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the source instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the source instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'InstanceID' => ['description' => 'The instance ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp1f9guj5rhzq****', 'title' => ''],
'Region' => ['description' => 'The region of the destination instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '192.168.XX.XX', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'SslSolutionEnum' => ['title' => '', 'description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE'],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the destination instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the destination instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DbObject' => ['description' => 'The objects for data migration, synchronization, or change tracking. For more information, see [Objects of DTS tasks](~~209545~~).', 'type' => 'string', 'example' => '{\\"dtstestdata\\":{\\"all\\":true,\\"name\\":\\"dtstestdata\\",\\"state\\":\\"normal\\"}}', 'title' => ''],
'MigrationMode' => [
'description' => 'The migration type or initial synchronization type.',
'type' => 'object',
'properties' => [
'StructureInitialization' => ['description' => 'Indicates whether schema migration or initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataInitialization' => ['description' => 'Indicates whether full data migration or initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data migration or synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataExtractTransformLoad' => ['description' => 'Indicates whether data transformation is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Status' => ['description' => 'The status of the data migration or synchronization task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **Initializing**: running initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **synchronizing**: synchronizing.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Downgrade**: downgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data migration or synchronization, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'TagList' => [
'description' => 'The tag collection.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Id' => ['title' => '', 'description' => 'The primary key.', 'type' => 'integer', 'format' => 'int64', 'example' => '2'],
'GmtCreate' => ['title' => '', 'description' => 'The creation time.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z'],
'GmtModified' => ['title' => '', 'description' => 'The modification time.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z'],
'ResourceId' => ['title' => '', 'description' => 'The instance ID of the data migration, synchronization, or change tracking task.', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****'],
'ResourceType' => ['title' => '', 'description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::DTS::INSTANCE'],
'RegionId' => ['title' => '', 'description' => 'The region ID of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou'],
'AliUid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '191448876515****'],
'TagKey' => ['title' => '', 'description' => 'The tag key.', 'type' => 'string', 'example' => 'key1'],
'TagValue' => ['title' => '', 'description' => 'The tag value.', 'type' => 'string', 'example' => 'value1'],
'TagCategory' => ['title' => '', 'description' => 'The tag category. Valid values:'."\n"
."\n"
.'- **System**: system-created tag.'."\n"
.'- **Custom**: user-added tag.'."\n"
."\n"
.'> If the value is empty, publicly visible tags are returned by default.', 'type' => 'string', 'example' => 'System'],
'SrcRegion' => ['title' => '', 'description' => 'The region of the task.'."\n"
."\n"
.'> This generally refers to the region of the destination instance.', 'type' => 'string', 'example' => 'cn-hangzhou'],
'Scope' => ['title' => '', 'description' => 'The visibility of the tag. Valid values:'."\n"
.'- **0**: public'."\n"
.'- **1**: private.', 'type' => 'string', 'example' => '0'],
'Creator' => ['title' => '', 'description' => 'The tag operator.', 'type' => 'integer', 'format' => 'int64', 'example' => '191448876515****'],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Checkpoint' => ['description' => 'The start checkpoint of incremental data migration or the synchronization checkpoint. The value is a UNIX timestamp in seconds.', 'type' => 'string', 'example' => '1616405159', 'title' => ''],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The precheck status. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Finished'],
'Percent' => ['description' => 'The overall precheck progress, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'description' => 'The execution details of each precheck item.',
'type' => 'object',
'properties' => [
'CheckItem' => ['title' => '', 'description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC'],
'CheckItemDescription' => ['title' => '', 'description' => 'The description of the precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL'],
'CheckResult' => ['title' => '', 'description' => 'The check result. Valid values:'."\n"
.'- **Success**: passed.'."\n"
.'- **Failed**: failed.', 'type' => 'string', 'example' => 'Success'],
'FailedReason' => ['title' => '', 'description' => 'The error message returned when the precheck failed.'."\n"
."\n"
.'> This parameter is returned only when the value of the **CheckResult** parameter is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)'],
'RepairMethod' => ['title' => '', 'description' => 'The repair method when the precheck failed.'."\n"
.'> This parameter is returned only when the value of the **CheckResult** parameter is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2'],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of initial schema synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of tables for which initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataInitializationStatus' => [
'description' => 'The status of full data migration or initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of full data migration or initial full data synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when full data migration or initial full data synchronization failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '16'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data migration or synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of incremental data migration or synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: checking.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Catched'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of incremental data migration or synchronization.', 'type' => 'string', 'example' => '95'],
'Progress' => ['title' => '', 'description' => 'The number of data rows and the data volume that are incrementally synchronized or migrated to the destination table per second.', 'type' => 'string', 'example' => '0.00RPS/(0.000MB/s)'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataEtlStatus' => [
'description' => 'The status of the ETL task.'."\n"
."\n"
.'> This parameter is returned only after an ETL task is configured.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of the ETL task. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '16'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The performance information of the migration or synchronization link.',
'type' => 'object',
'properties' => [
'Rps' => ['title' => '', 'description' => 'The number of SQL statements that are migrated or synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, and UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100'],
'Flow' => ['title' => '', 'description' => 'The data flow rate of migration or synchronization per second, in MB/s.', 'type' => 'string', 'example' => '1'],
],
'title' => '',
'example' => '',
],
'ReverseJob' => ['description' => 'The execution details of the reverse synchronization task.'."\n"
."\n"
.'> This parameter is returned only when the task is a data synchronization task with a two-way synchronization topology.', 'type' => 'any', 'example' => '****', 'title' => ''],
'Reserved' => ['description' => 'The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'SubscriptionHost' => [
'description' => 'The endpoint of the change tracking task.',
'type' => 'object',
'properties' => [
'PublicHost' => ['description' => 'The public endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
'PrivateHost' => ['description' => 'The private endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-internal.aliyuncs.com:18002', 'title' => ''],
'VpcHost' => ['description' => 'The VPC endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscribeTopic' => ['description' => 'The subscription topic.'."\n"
.'> This parameter is returned only when the change tracking instance is a new version and a consumer group has been created by calling the [CreateConsumerGroup](~~122863~~) operation.', 'type' => 'string', 'example' => 'cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the downstream consumer for the change tracking task. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-23T07:30:31Z', 'title' => ''],
'BeginTimestamp' => ['description' => 'The start of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-15T08:25:34Z', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-26T14:03:21Z', 'title' => ''],
'ConsumptionClient' => ['description' => 'The information about the downstream consumer client, which consists of an IP address and a random number generated by DTS.', 'type' => 'string', 'example' => '114.***.***.**:dts********', 'title' => ''],
'DestNetType' => ['description' => 'The network type of the consumer client. Valid values:'."\n"
."\n"
.'- **CLASSIC**: classic network.'."\n"
.'- **VPC**: virtual private cloud (VPC).', 'type' => 'string', 'example' => 'VPC', 'title' => ''],
'SubscriptionDataType' => [
'description' => 'The type of the subscription data.',
'type' => 'object',
'properties' => [
'Ddl' => ['description' => 'Indicates whether the subscription data includes DDL statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Dml' => ['description' => 'Indicates whether the subscription data includes DML statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'AppName' => ['description' => 'Indicates whether the instance is a new change tracking instance. The value new indicates a new change tracking instance.'."\n"
."\n"
.'> This parameter is returned only for new change tracking instances.', 'type' => 'string', 'example' => 'new', 'title' => ''],
'EtlCalculator' => ['description' => 'The operator information of the ETL task.'."\n"
."\n"
.'> This parameter is returned only when the task is an ETL task.', 'type' => 'string', 'example' => '{ "cells ": [{\\"shape\\":\\"edge\\",\\"attrs\\":{\\"line\\":{\\"stroke\\":\\"#b1b1b1\\",\\"strokeWidth\\":1,\\"targetMarker\\":{\\"name\\":\\"block\\",\\"args\\":{\\"size\\":\\"8\\"}},\\"strokeDasharray\\":\\"\\"}},\\"id\\":\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\",\\"source\\":{\\"cell\\":\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\",\\"port\\":\\"out1\\"},\\"target\\":{\\"cell\\":\\"b36770df-f48c-4d6b-9644-54c5e924****\\",\\"port\\":\\"in1\\"},\\"zIndex\\":7 }] }', 'title' => ''],
'RetryState' => [
'description' => 'DTS is retrying because the task encountered an error.',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => 'ta7w132u12h****'],
'MaxRetryTime' => ['title' => '', 'description' => 'The maximum retry time, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '7200'],
'RetryTime' => ['title' => '', 'description' => 'The retry time that has elapsed, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '3600'],
'RetryCount' => ['title' => '', 'description' => 'The number of retries that have been performed.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'],
'Retrying' => ['title' => '', 'description' => 'Indicates whether a retry is in progress. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
'Module' => ['title' => '', 'description' => 'The instance progress.', 'type' => 'string', 'example' => '03'],
'RetryTarget' => ['title' => '', 'description' => 'The retry target. Valid values:'."\n"
."\n"
.'- **srcDB**: source database.'."\n"
.'- **destDB**: destination database.'."\n"
.'- **inner_module**: internal DTS module.', 'type' => 'string', 'example' => 'srcDB'],
'ErrMsg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ'],
],
'title' => '',
'example' => '',
],
'OriginType' => ['title' => '', 'description' => 'The task source. Valid values:'."\n"
.'- **PTS task**'."\n"
.'- **DMS task**'."\n"
.'- **DTS task**', 'type' => 'string', 'example' => 'DTS任务'],
'JobType' => ['title' => '', 'description' => 'The task type of the DTS instance. Valid values:'."\n"
."\n"
.'- **online**: data migration.'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **SUBSCRIBE**: change tracking.', 'type' => 'string', 'example' => 'SYNC'],
'IsDemoJob' => ['description' => 'Indicates whether the task is a subtask. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'TaskType' => ['description' => 'The task type.', 'type' => 'string', 'example' => 'rds', 'title' => ''],
'MinDu' => ['description' => 'The minimum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''],
'MaxDu' => ['description' => 'The maximum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'example' => '16', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Reserved' => ['description' => 'The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'SubscriptionHost' => [
'description' => 'The endpoint of the change tracking task.',
'type' => 'object',
'properties' => [
'PublicHost' => ['description' => 'The public endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
'PrivateHost' => ['description' => 'The private endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-internal.aliyuncs.com:18002', 'title' => ''],
'VpcHost' => ['description' => 'The VPC endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscribeTopic' => ['description' => 'The subscription topic.'."\n"
.'> This parameter is returned only when the change tracking instance is a new version and a consumer group has been created by calling the [CreateConsumerGroup](~~122863~~) operation.', 'type' => 'string', 'example' => 'cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the downstream consumer for the change tracking task. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-23T07:30:31Z', 'title' => ''],
'BeginTimestamp' => ['description' => 'The start of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-15T08:25:34Z', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-26T14:03:21Z', 'title' => ''],
'ConsumptionClient' => ['description' => 'The information about the downstream consumer client, which consists of an IP address and a random number generated by DTS.', 'type' => 'string', 'example' => '114.***.***.**:dts********', 'title' => ''],
'DestNetType' => ['description' => 'The network type of the consumer client. Valid values:'."\n"
."\n"
.'- **CLASSIC**: classic network.'."\n"
.'- **VPC**: virtual private cloud (VPC).', 'type' => 'string', 'example' => 'VPC', 'title' => ''],
'SubscriptionDataType' => [
'description' => 'The type of the subscription data.',
'type' => 'object',
'properties' => [
'Ddl' => ['description' => 'Indicates whether the subscription data includes DDL statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Dml' => ['description' => 'Indicates whether the subscription data includes DML statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'AppName' => ['description' => 'Indicates whether the instance is a new change tracking instance. The value new indicates a new change tracking instance.'."\n"
."\n"
.'> This parameter is returned only for new change tracking instances.', 'type' => 'string', 'example' => 'new', 'title' => ''],
'EtlCalculator' => ['description' => 'The operator information of the ETL task.'."\n"
.'> This parameter is returned only when the task is an ETL task.', 'type' => 'string', 'example' => '{ "cells ": [{\\"shape\\":\\"edge\\",\\"attrs\\":{\\"line\\":{\\"stroke\\":\\"#b1b1b1\\",\\"strokeWidth\\":1,\\"targetMarker\\":{\\"name\\":\\"block\\",\\"args\\":{\\"size\\":\\"8\\"}},\\"strokeDasharray\\":\\"\\"}},\\"id\\":\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\",\\"source\\":{\\"cell\\":\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\",\\"port\\":\\"out1\\"},\\"target\\":{\\"cell\\":\\"b36770df-f48c-4d6b-9644-54c5e924****\\",\\"port\\":\\"in1\\"},\\"zIndex\\":7 }] }', 'title' => ''],
'RetryState' => [
'description' => 'DTS is retrying because the task encountered an error.',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => 'ta7w132u12h****'],
'MaxRetryTime' => ['title' => '', 'description' => 'The maximum retry time, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '7200'],
'RetryTime' => ['title' => '', 'description' => 'The retry time that has elapsed, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '3600'],
'RetryCount' => ['title' => '', 'description' => 'The number of retries that have been performed.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'],
'Retrying' => ['title' => '', 'description' => 'Indicates whether a retry is in progress. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
'Module' => ['title' => '', 'description' => 'The instance progress.', 'type' => 'string', 'example' => '03'],
'RetryTarget' => ['title' => '', 'description' => 'The retry target. Valid values:'."\n"
."\n"
.'- **srcDB**: source database.'."\n"
.'- **destDB**: destination database.'."\n"
.'- **inner_module**: internal DTS module.', 'type' => 'string', 'example' => 'srcDB'],
'ErrMsg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ'],
],
'title' => '',
'example' => '',
],
'OriginType' => ['title' => '', 'description' => 'The task source. Valid values:'."\n"
.'- **PTS task**'."\n"
.'- **DMS task**'."\n"
.'- **DTS task**', 'type' => 'string', 'example' => 'DTS任务'],
'JobType' => ['title' => '', 'description' => 'The task type of the DTS instance. Valid values:'."\n"
."\n"
.'- **online**: data migration.'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **SUBSCRIBE**: change tracking.', 'type' => 'string', 'example' => 'SYNC'],
'IsDemoJob' => ['description' => 'Indicates whether the task is a subtask. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'TaskType' => ['description' => 'The task type.', 'type' => 'string', 'example' => 'rds', 'title' => ''],
'MinDu' => ['description' => 'The minimum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''],
'MaxDu' => ['description' => 'The maximum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'example' => '16', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'SubSyncJob' => [
'description' => 'The information about the synchronization subtask.',
'type' => 'array',
'items' => [
'description' => 'The information about the synchronization subtask.',
'type' => 'object',
'properties' => [
'SubSyncJob' => [
'description' => 'The information about the synchronization subtask.',
'type' => 'array',
'items' => ['description' => 'The information about the synchronization subtask.', 'type' => 'any', 'example' => '****', 'title' => ''],
'title' => '',
'example' => '',
],
'DtsInstanceID' => ['description' => 'The DTS instance ID.', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****', 'title' => ''],
'DtsJobId' => ['description' => 'The DTS task ID.', 'type' => 'string', 'example' => 'm06j1g92124****', 'title' => ''],
'DtsJobName' => ['description' => 'The DTS instance name.', 'type' => 'string', 'example' => 'dtstest****', 'title' => ''],
'GroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'DatabaseCount' => ['description' => 'If the source instance is a PolarDB-X 1.0 instance, specify the number of ApsaraDB RDS for MySQL instances attached to it.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'DtsJobClass' => ['description' => 'The specification of the task link.', 'type' => 'string', 'example' => 'xlarge', 'title' => ''],
'DtsJobDirection' => ['title' => '', 'description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> This parameter is returned only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward'],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - The default value is **Forward**.'."\n"
.'- The value **Reverse** takes effect only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'PayType' => ['description' => 'The billing method. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of the **PayType** parameter is **PrePaid**.', 'type' => 'string', 'example' => '2023-06-16T08:01:19Z', 'title' => ''],
'CreateTime' => ['description' => 'The time when the task was created. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-01-12T08:34:11Z', 'title' => ''],
'FinishTime' => ['description' => 'The time when the task was completed. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-06-16T10:34:17Z', 'title' => ''],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'InstanceID' => ['description' => 'The instance ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp2f3huj5rhzq****', 'title' => ''],
'Region' => ['description' => 'The region of the source instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '192.168.XX.XX', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'SslSolutionEnum' => ['title' => '', 'description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE'],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the source instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the source instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'InstanceID' => ['description' => 'The instance ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp1f9guj5rhzq****', 'title' => ''],
'Region' => ['description' => 'The region of the destination instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '192.168.XX.XX', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'SslSolutionEnum' => ['title' => '', 'description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE'],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the destination instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the destination instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DbObject' => ['description' => 'The objects for data migration, synchronization, or change tracking. For more information, see [Objects of DTS tasks](~~209545~~).', 'type' => 'string', 'example' => '{\\"dtstestdata\\":{\\"all\\":true,\\"name\\":\\"dtstestdata\\",\\"state\\":\\"normal\\"}}', 'title' => ''],
'MigrationMode' => [
'description' => 'The migration type or initial synchronization type.',
'type' => 'object',
'properties' => [
'StructureInitialization' => ['description' => 'Indicates whether schema migration or initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataInitialization' => ['description' => 'Indicates whether full data migration or initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data migration or synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataExtractTransformLoad' => ['description' => 'Indicates whether data transformation is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Status' => ['description' => 'The status of the data migration or synchronization task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **Initializing**: running initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **synchronizing**: synchronizing.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Downgrade**: downgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data migration or synchronization, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'TagList' => [
'description' => 'The tag collection.',
'type' => 'array',
'items' => [
'description' => 'The tag collection.',
'type' => 'object',
'properties' => [
'Id' => ['title' => '', 'description' => 'The primary key.', 'type' => 'integer', 'format' => 'int64', 'example' => '2'],
'GmtCreate' => ['title' => '', 'description' => 'The creation time.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z'],
'GmtModified' => ['title' => '', 'description' => 'The modification time.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z'],
'ResourceId' => ['title' => '', 'description' => 'The instance ID of the data migration, synchronization, or change tracking task.', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****'],
'ResourceType' => ['title' => '', 'description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::DTS::INSTANCE'],
'RegionId' => ['title' => '', 'description' => 'The region ID of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou'],
'AliUid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '191448876515****'],
'TagKey' => ['title' => '', 'description' => 'The tag key.', 'type' => 'string', 'example' => 'key1'],
'TagValue' => ['title' => '', 'description' => 'The tag value.', 'type' => 'string', 'example' => 'value1'],
'TagCategory' => ['title' => '', 'description' => 'The tag category. Valid values:'."\n"
."\n"
.'- **System**: system-created tag.'."\n"
.'- **Custom**: user-added tag.'."\n"
."\n"
.'> If the value is empty, publicly visible tags are returned by default.', 'type' => 'string', 'example' => 'System'],
'SrcRegion' => ['title' => '', 'description' => 'The region of the task.'."\n"
."\n"
.'> This generally refers to the region of the destination instance.', 'type' => 'string', 'example' => 'cn-hangzhou'],
'Scope' => ['title' => '', 'description' => 'The visibility of the tag. Valid values:'."\n"
.'- **0**: public'."\n"
.'- **1**: private.', 'type' => 'string', 'example' => '0'],
'Creator' => ['title' => '', 'description' => 'The tag operator.', 'type' => 'integer', 'format' => 'int64', 'example' => '191448876515****'],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Checkpoint' => ['description' => 'The start checkpoint of incremental data migration or the synchronization checkpoint. The value is a UNIX timestamp in seconds.', 'type' => 'string', 'example' => '1616405159', 'title' => ''],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The precheck status. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Finished'],
'Percent' => ['description' => 'The overall precheck progress, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'CheckItem' => ['title' => '', 'description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC'],
'CheckItemDescription' => ['title' => '', 'description' => 'The description of the precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL'],
'CheckResult' => ['title' => '', 'description' => 'The check result. Valid values:'."\n"
.'- **Success**: passed.'."\n"
.'- **Failed**: failed.', 'type' => 'string', 'example' => 'Success'],
'FailedReason' => ['title' => '', 'description' => 'The error message returned when the precheck failed.'."\n"
."\n"
.'> This parameter is returned only when the value of the **CheckResult** parameter is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)'],
'RepairMethod' => ['title' => '', 'description' => 'The repair method when the precheck failed.'."\n"
.'> This parameter is returned only when the value of the **CheckResult** parameter is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2'],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of initial schema synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of tables for which initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataInitializationStatus' => [
'description' => 'The status of full data migration or initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of full data migration or initial full data synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when full data migration or initial full data synchronization failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '16'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data migration or synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of incremental data migration or synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: checking.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Catched'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of incremental data migration or synchronization.', 'type' => 'string', 'example' => '95'],
'Progress' => ['title' => '', 'description' => 'The number of data rows and the data volume that are incrementally synchronized or migrated to the destination table per second.', 'type' => 'string', 'example' => '0.00RPS/(0.000MB/s)'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataEtlStatus' => [
'description' => 'The status of the ETL task.'."\n"
."\n"
.'> This parameter is returned only after an ETL task is configured.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of the ETL task. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '16'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The performance information of the migration or synchronization link.',
'type' => 'object',
'properties' => [
'Rps' => ['title' => '', 'description' => 'The number of SQL statements that are migrated or synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, and UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100'],
'Flow' => ['title' => '', 'description' => 'The data flow rate of migration or synchronization per second, in MB/s.', 'type' => 'string', 'example' => '1'],
],
'title' => '',
'example' => '',
],
'ReverseJob' => [
'description' => 'The execution details of the reverse synchronization task.'."\n"
."\n"
.'> This parameter is returned only when the task is a data synchronization task with a two-way synchronization topology.',
'type' => 'object',
'properties' => [
'DtsInstanceID' => ['description' => 'The DTS instance ID.', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****', 'title' => ''],
'DtsJobId' => ['description' => 'The DTS task ID.', 'type' => 'string', 'example' => 'm06j1g92124****', 'title' => ''],
'DtsJobName' => ['description' => 'The DTS instance name.', 'type' => 'string', 'example' => 'dtstest****', 'title' => ''],
'GroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'DatabaseCount' => ['description' => 'If the source instance is a PolarDB-X 1.0 instance, specify the number of ApsaraDB RDS for MySQL instances attached to it.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'DtsJobClass' => ['description' => 'The specification of the task link.', 'type' => 'string', 'example' => 'xlarge', 'title' => ''],
'DtsJobDirection' => ['title' => '', 'description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> This parameter is returned only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward'],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - The default value is **Forward**.'."\n"
.'- The value **Reverse** takes effect only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'PayType' => ['description' => 'The billing method. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of the **PayType** parameter is **PrePaid**.', 'type' => 'string', 'example' => '2023-06-16T08:01:19Z', 'title' => ''],
'CreateTime' => ['description' => 'The time when the task was created. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-01-12T08:34:11Z', 'title' => ''],
'FinishTime' => ['description' => 'The time when the task was completed. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-06-16T10:34:17Z', 'title' => ''],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'InstanceID' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-bp2f3huj5rhzq****', 'title' => ''],
'Region' => ['description' => 'The region of the source instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '192.168.XX.XX', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'SslSolutionEnum' => ['title' => '', 'description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE'],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the source instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the source instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'InstanceID' => ['description' => 'The instance ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp1f9guj5rhzq****', 'title' => ''],
'Region' => ['description' => 'The region of the destination instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '192.168.XX,XX', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'SslSolutionEnum' => ['title' => '', 'description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE'],
'RoleName' => ['description' => 'The name of the RAM role configured for the Alibaba Cloud account to which the destination instance belongs.', 'type' => 'string', 'example' => 'ram-for-dts', 'title' => ''],
'AliyunUid' => ['description' => 'The Alibaba Cloud account ID to which the destination instance belongs.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DbObject' => ['description' => 'The objects for data migration, synchronization, or change tracking. For more information, see [Objects of DTS tasks](~~209545~~).', 'type' => 'string', 'example' => '{\\"dtstestdata\\":{\\"all\\":true,\\"name\\":\\"dtstestdata\\",\\"state\\":\\"normal\\"}}', 'title' => ''],
'MigrationMode' => [
'description' => 'The migration type or initial synchronization type.',
'type' => 'object',
'properties' => [
'StructureInitialization' => ['description' => 'Indicates whether schema migration or initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataInitialization' => ['description' => 'Indicates whether full data migration or initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data migration or synchronization is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataExtractTransformLoad' => ['description' => 'Indicates whether data transformation is performed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Status' => ['description' => 'The status of the data migration or synchronization task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **Initializing**: running initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **synchronizing**: synchronizing.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Downgrade**: downgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data migration or synchronization, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'TagList' => [
'description' => 'The tag collection.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Id' => ['title' => '', 'description' => 'The primary key.', 'type' => 'integer', 'format' => 'int64', 'example' => '2'],
'GmtCreate' => ['title' => '', 'description' => 'The creation time.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z'],
'GmtModified' => ['title' => '', 'description' => 'The modification time.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z'],
'ResourceId' => ['title' => '', 'description' => 'The instance ID of the data migration, synchronization, or change tracking task.', 'type' => 'string', 'example' => 'dtsnjuc14kp12u****'],
'ResourceType' => ['title' => '', 'description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::DTS::INSTANCE'],
'RegionId' => ['title' => '', 'description' => 'The region ID of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou'],
'AliUid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '191448876515****'],
'TagKey' => ['title' => '', 'description' => 'The tag key.', 'type' => 'string', 'example' => 'key1'],
'TagValue' => ['title' => '', 'description' => 'The tag value.', 'type' => 'string', 'example' => 'value1'],
'TagCategory' => ['title' => '', 'description' => 'The tag category. Valid values:'."\n"
."\n"
.'- **System**: system-created tag.'."\n"
.'- **Custom**: user-added tag.'."\n"
."\n"
.'> If the value is empty, publicly visible tags are returned by default.', 'type' => 'string', 'example' => 'System'],
'SrcRegion' => ['title' => '', 'description' => 'The region of the task.'."\n"
."\n"
.'> This generally refers to the region of the destination instance.', 'type' => 'string', 'example' => 'cn-hangzhou'],
'Scope' => ['title' => '', 'description' => 'The visibility of the tag. Valid values:'."\n"
.'- **0**: public'."\n"
.'- **1**: private.', 'type' => 'string', 'example' => '0'],
'Creator' => ['title' => '', 'description' => 'The tag operator.', 'type' => 'integer', 'format' => 'int64', 'example' => '191448876515****'],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Checkpoint' => ['description' => 'The start checkpoint of incremental data migration or the synchronization checkpoint. The value is a UNIX timestamp in seconds.', 'type' => 'string', 'example' => '1616405159', 'title' => ''],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The precheck status. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Finished**: finished.', 'type' => 'string', 'example' => 'Finished'],
'Percent' => ['description' => 'The overall precheck progress, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'CheckItem' => ['title' => '', 'description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC'],
'CheckItemDescription' => ['title' => '', 'description' => 'The description of the precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL'],
'CheckResult' => ['title' => '', 'description' => 'The check result. Valid values:'."\n"
.'- **Success**: passed.'."\n"
.'- **Failed**: failed.', 'type' => 'string', 'example' => 'Success'],
'FailedReason' => ['title' => '', 'description' => 'The error message returned when the precheck failed.'."\n"
."\n"
.'> This parameter is returned only when the value of the **CheckResult** parameter is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)'],
'RepairMethod' => ['title' => '', 'description' => 'The repair method when the precheck failed.'."\n"
.'> This parameter is returned only when the value of the **CheckResult** parameter is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2'],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of initial schema synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of tables for which initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataInitializationStatus' => [
'description' => 'The status of full data migration or initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of full data migration or initial full data synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when full data migration or initial full data synchronization failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '16'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data migration or synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of incremental data migration or synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: checking.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of incremental data migration or synchronization.', 'type' => 'string', 'example' => '95'],
'Progress' => ['title' => '', 'description' => 'The number of data rows and the data volume that are incrementally synchronized or migrated to the destination table per second.', 'type' => 'string', 'example' => '0.00RPS/(0.000MB/s)'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether a prompt to upgrade the specification is displayed. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'DataEtlStatus' => [
'description' => 'The status of the ETL task.'."\n"
."\n"
.'> This parameter is returned only after an ETL task is configured.',
'type' => 'object',
'properties' => [
'Status' => ['title' => '', 'description' => 'The status of the ETL task. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Finished'],
'ErrorMessage' => ['description' => 'The error message returned when the task failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by ****', 'title' => ''],
'Percent' => ['title' => '', 'description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100'],
'Progress' => ['title' => '', 'description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '16'],
'NeedUpgrade' => ['title' => '', 'description' => 'Indicates whether the instance specification needs to be upgraded. Valid values:'."\n"
."\n"
.'- **true**: required.'."\n"
.'- **false**: not required.', 'type' => 'boolean', 'example' => 'true'],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The performance information of the migration or synchronization link.',
'type' => 'object',
'properties' => [
'Rps' => ['title' => '', 'description' => 'The number of SQL statements that are migrated or synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, and UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100'],
'Flow' => ['title' => '', 'description' => 'The data flow rate of migration or synchronization per second, in MB/s.', 'type' => 'string', 'example' => '1'],
],
'title' => '',
'example' => '',
],
'ReverseJob' => ['description' => 'The execution details of the reverse synchronization task.'."\n"
."\n"
.'> This parameter is returned only when the task is a data synchronization task with a two-way synchronization topology.', 'type' => 'any', 'example' => '****', 'title' => ''],
'Reserved' => ['description' => 'The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'SubscriptionHost' => [
'description' => 'The endpoint of the change tracking task.',
'type' => 'object',
'properties' => [
'PublicHost' => ['description' => 'The public endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
'PrivateHost' => ['description' => 'The private endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-internal.aliyuncs.com:18002', 'title' => ''],
'VpcHost' => ['description' => 'The VPC endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscribeTopic' => ['description' => 'The subscription topic.'."\n"
.'> This parameter is returned only when the change tracking instance is a new version and a consumer group has been created by calling the [CreateConsumerGroup](~~122863~~) operation.', 'type' => 'string', 'example' => 'cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the downstream consumer for the change tracking task. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-23T07:30:31Z', 'title' => ''],
'BeginTimestamp' => ['description' => 'The start of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-15T08:25:34Z', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-26T14:03:21Z', 'title' => ''],
'ConsumptionClient' => ['description' => 'The information about the downstream consumer client, which consists of an IP address and a random number generated by DTS.', 'type' => 'string', 'example' => '114.***.***.**:dts********', 'title' => ''],
'DestNetType' => ['description' => 'The network type of the consumer client. Valid values:'."\n"
."\n"
.'- **CLASSIC**: classic network.'."\n"
.'- **VPC**: virtual private cloud (VPC).', 'type' => 'string', 'example' => 'VPC', 'title' => ''],
'SubscriptionDataType' => [
'description' => 'The type of the subscription data.',
'type' => 'object',
'properties' => [
'Ddl' => ['description' => 'Indicates whether the subscription data includes DDL statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Dml' => ['description' => 'Indicates whether the subscription data includes DML statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'AppName' => ['description' => 'Indicates whether the instance is a new change tracking instance. The value new indicates a new change tracking instance.'."\n"
."\n"
.'> This parameter is returned only for new change tracking instances.', 'type' => 'string', 'example' => 'new', 'title' => ''],
'EtlCalculator' => ['description' => 'The operator information of the ETL task.'."\n"
.'> This parameter is returned only when the task is an ETL task.', 'type' => 'string', 'example' => '{ "cells ": [{\\"shape\\":\\"edge\\",\\"attrs\\":{\\"line\\":{\\"stroke\\":\\"#b1b1b1\\",\\"strokeWidth\\":1,\\"targetMarker\\":{\\"name\\":\\"block\\",\\"args\\":{\\"size\\":\\"8\\"}},\\"strokeDasharray\\":\\"\\"}},\\"id\\":\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\",\\"source\\":{\\"cell\\":\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\",\\"port\\":\\"out1\\"},\\"target\\":{\\"cell\\":\\"b36770df-f48c-4d6b-9644-54c5e924****\\",\\"port\\":\\"in1\\"},\\"zIndex\\":7 }] }', 'title' => ''],
'RetryState' => [
'description' => 'DTS is retrying because the task encountered an error.',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => 'ta7w132u12h****'],
'MaxRetryTime' => ['title' => '', 'description' => 'The maximum retry time, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '7200'],
'RetryTime' => ['title' => '', 'description' => 'The retry time that has elapsed, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '3600'],
'RetryCount' => ['title' => '', 'description' => 'The number of retries that have been performed.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'],
'Retrying' => ['title' => '', 'description' => 'Indicates whether a retry is in progress. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
'Module' => ['title' => '', 'description' => 'The instance progress.', 'type' => 'string', 'example' => '03'],
'RetryTarget' => ['title' => '', 'description' => 'The retry target. Valid values:'."\n"
."\n"
.'- **srcDB**: source database.'."\n"
.'- **destDB**: destination database.'."\n"
.'- **inner_module**: internal DTS module.', 'type' => 'string', 'example' => 'srcDB'],
'ErrMsg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ'],
],
'title' => '',
'example' => '',
],
'OriginType' => ['title' => '', 'description' => 'The task source. Valid values:'."\n"
.'- **PTS task**'."\n"
.'- **DMS task**'."\n"
.'- **DTS task**', 'type' => 'string', 'example' => 'DTS任务'],
'JobType' => ['title' => '', 'description' => 'The task type of the DTS instance. Valid values:'."\n"
."\n"
.'- **online**: data migration.'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **SUBSCRIBE**: change tracking.', 'type' => 'string', 'example' => 'SYNC'],
'IsDemoJob' => ['description' => 'Indicates whether the task is a subtask. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'TaskType' => ['description' => 'The task type.', 'type' => 'string', 'example' => 'rds', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Reserved' => ['description' => 'The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'SubscriptionHost' => [
'description' => 'The endpoint of the change tracking task.',
'type' => 'object',
'properties' => [
'PublicHost' => ['description' => 'The public endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
'PrivateHost' => ['description' => 'The private endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-internal.aliyuncs.com:18002', 'title' => ''],
'VpcHost' => ['description' => 'The VPC endpoint of the change tracking task, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscribeTopic' => ['description' => 'The subscription topic.'."\n"
.'> This parameter is returned only when the change tracking instance is a new version and a consumer group has been created by calling the [CreateConsumerGroup](~~122863~~) operation.', 'type' => 'string', 'example' => 'cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the downstream consumer for the change tracking task. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-23T07:30:31Z', 'title' => ''],
'BeginTimestamp' => ['description' => 'The start of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-15T08:25:34Z', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range of data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-26T14:03:21Z', 'title' => ''],
'ConsumptionClient' => ['description' => 'The information about the downstream consumer client, which consists of an IP address and a random number generated by DTS.', 'type' => 'string', 'example' => '114.***.***.**:dts********', 'title' => ''],
'DestNetType' => ['description' => 'The network type of the consumer client. Valid values:'."\n"
."\n"
.'- **CLASSIC**: classic network.'."\n"
.'- **VPC**: virtual private cloud (VPC).', 'type' => 'string', 'example' => 'VPC', 'title' => ''],
'SubscriptionDataType' => [
'description' => 'The type of the subscription data.',
'type' => 'object',
'properties' => [
'Ddl' => ['description' => 'Indicates whether the subscription data includes DDL statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Dml' => ['description' => 'Indicates whether the subscription data includes DML statements. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'AppName' => ['description' => 'Indicates whether the instance is a new change tracking instance. The value new indicates a new change tracking instance.'."\n"
."\n"
.'> This parameter is returned only for new change tracking instances.', 'type' => 'string', 'example' => 'new', 'title' => ''],
'EtlCalculator' => ['description' => 'The operator information of the ETL task.'."\n"
.'> This parameter is returned only when the task is an ETL task.', 'type' => 'string', 'example' => '{ "cells ": [{\\"shape\\":\\"edge\\",\\"attrs\\":{\\"line\\":{\\"stroke\\":\\"#b1b1b1\\",\\"strokeWidth\\":1,\\"targetMarker\\":{\\"name\\":\\"block\\",\\"args\\":{\\"size\\":\\"8\\"}},\\"strokeDasharray\\":\\"\\"}},\\"id\\":\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\",\\"source\\":{\\"cell\\":\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\",\\"port\\":\\"out1\\"},\\"target\\":{\\"cell\\":\\"b36770df-f48c-4d6b-9644-54c5e924****\\",\\"port\\":\\"in1\\"},\\"zIndex\\":7 }] }', 'title' => ''],
'RetryState' => [
'description' => 'DTS is retrying because the task encountered an error.',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => 'ta7w132u12h****'],
'MaxRetryTime' => ['title' => '', 'description' => 'The maximum retry time, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '7200'],
'RetryTime' => ['title' => '', 'description' => 'The retry time that has elapsed, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '3600'],
'RetryCount' => ['title' => '', 'description' => 'The number of retries that have been performed.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'],
'Retrying' => ['title' => '', 'description' => 'Indicates whether a retry is in progress. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true'],
'Module' => ['title' => '', 'description' => 'The instance progress.', 'type' => 'string', 'example' => '03'],
'RetryTarget' => ['title' => '', 'description' => 'The retry target. Valid values:'."\n"
."\n"
.'- **srcDB**: source database.'."\n"
.'- **destDB**: destination database.'."\n"
.'- **inner_module**: internal DTS module.', 'type' => 'string', 'example' => 'srcDB'],
'ErrMsg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ'],
],
'title' => '',
'example' => '',
],
'OriginType' => ['title' => '', 'description' => 'The task source. Valid values:'."\n"
.'- **PTS task**'."\n"
.'- **DMS task**'."\n"
.'- **DTS task**', 'type' => 'string', 'example' => 'DTS任务'],
'JobType' => ['title' => '', 'description' => 'The task type of the DTS instance. Valid values:'."\n"
."\n"
.'- **online**: data migration.'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **SUBSCRIBE**: change tracking.', 'type' => 'string', 'example' => 'SYNC'],
'IsDemoJob' => ['description' => 'Indicates whether the task is a subtask. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'TaskType' => ['description' => 'The task type.', 'type' => 'string', 'example' => 'rds', 'title' => ''],
'MinDu' => ['description' => 'The minimum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''],
'MaxDu' => ['description' => 'The maximum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'example' => '16', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'JobType' => ['description' => 'The type of the task. Valid values:'."\n"
.'- **sync**: synchronization task.'."\n"
.'- **subSync**: subtask generated by modifying synchronization objects.'."\n"
."\n"
.'> This parameter is typically used together with **TaskType**.', 'type' => 'string', 'example' => 'sync', 'title' => ''],
'TaskType' => ['description' => 'The business type of the task.'."\n"
.'> This parameter is typically used together with **JobType**.', 'type' => 'string', 'example' => 'Distributed_xxx', 'title' => ''],
'DedicatedClusterId' => ['description' => 'The ID of the dedicated cluster.', 'type' => 'string', 'example' => 'dtsxxxxx', 'title' => ''],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data migration or synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data migration or synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: checking.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Catched', 'title' => ''],
'NeedUpgrade' => ['description' => 'Indicates whether the instance specification needs to be upgraded. Valid values:'."\n"
."\n"
.'- **true**: required.'."\n"
.'- **false**: not required.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data migration or synchronization, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'Progress' => ['description' => 'The number of data rows and the data volume that are incrementally synchronized or migrated to the destination table per second.', 'type' => 'string', 'example' => '0.00RPS/(0.000MB/s)', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data migration or synchronization failed.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
],
'title' => '',
'example' => '',
],
'BootTime' => ['description' => 'The time when the specific item was started. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-30T03:36:11.000', 'title' => ''],
'Binlog' => ['description' => 'The binlog information.', 'type' => 'string', 'example' => '****', 'title' => ''],
'BinlogSite' => ['description' => 'The current position.', 'type' => 'string', 'example' => '156629109****', 'title' => ''],
'BinlogTime' => ['description' => 'The position range.', 'type' => 'string', 'example' => '****', 'title' => ''],
'LastUpdateTime' => ['description' => 'The timestamp of the last update.', 'type' => 'string', 'example' => '156629109****', 'title' => ''],
'RetryState' => [
'description' => 'DTS is retrying because the task encountered an error.',
'type' => 'object',
'properties' => [
'RetryCount' => ['description' => 'The number of retries that have been performed.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''],
'MaxRetryTime' => ['description' => 'The maximum retry time, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '7200', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the retry failed.', 'type' => 'string', 'example' => 'Unexpected error', 'title' => ''],
'RetryTarget' => ['description' => 'The retry target. Valid values:'."\n"
."\n"
.'- **srcDB**: source database.'."\n"
.'- **destDB**: destination database.'."\n"
.'- **inner_module**: internal DTS module.', 'type' => 'string', 'example' => 'srcDB', 'title' => ''],
'RetryTime' => ['description' => 'The retry time that has elapsed, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '3600', 'title' => ''],
'Module' => ['description' => 'The instance progress.', 'type' => 'string', 'example' => '03', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'bi6e22ay243****', 'title' => ''],
'Retrying' => ['description' => 'Indicates whether the task is being retried. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'ResourceGroupDisplayName' => ['description' => 'The name of the resource group.', 'type' => 'string', 'example' => 'default resource group', 'title' => ''],
'DtsBisLabel' => ['description' => 'The environment label of the DTS instance. Valid values:'."\n"
."\n"
.'- **normal**: **Normal**'."\n"
.'- **online**: **Online**.', 'type' => 'string', 'example' => 'normal', 'title' => ''],
'DataDeliveryChannelInfo' => [
'description' => 'The data delivery channel information.',
'type' => 'object',
'properties' => [
'PublicDproxyUrl' => ['description' => 'The public endpoint of the delivery channel.', 'type' => 'string', 'example' => 'dts-****.aliyuncs.com:18***', 'title' => ''],
'VpcDproxyUrl' => ['description' => 'The VPC endpoint of the delivery channel.', 'type' => 'string', 'example' => 'dts-****.aliyuncs.com:18***', 'title' => ''],
'Topic' => ['description' => 'The destination topic for delivery.', 'type' => 'string', 'example' => 'cn_hangzhou_******_data_delivery_version2', 'title' => ''],
'Region' => ['description' => 'The region of the delivery channel.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'PartitionNum' => ['title' => '', 'description' => 'The number of partitions of the delivery topic.', 'type' => 'integer', 'format' => 'int32', 'example' => '3'],
],
'title' => '',
'example' => '',
],
'MinDu' => ['description' => 'The minimum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''],
'MaxDu' => ['description' => 'The maximum number of DUs.'."\n"
."\n"
.'> This parameter is supported only for serverless instances.', 'type' => 'number', 'format' => 'double', 'example' => '16', 'title' => ''],
'InitCheckpoint' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'InsightModule' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''],
'ApprovalProcessUrl' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'ApprovalProcessStatus' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'title' => 'Query DTS task details',
'description' => 'This operation has rate limits. Calls that exceed the limits are rejected.'."\n"
.'- The cumulative threshold for a single region is 160 calls per second.'."\n"
.'- The threshold for a single account in a single region is 40 calls per second.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDtsJobDetail',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Migrating\\",\\n \\"DtsJobName\\": \\"api_test\\",\\n \\"FinishTime\\": \\"2023-06-16T10:34:17Z\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"CreateTime\\": \\"2022-03-16T08:01:19Z\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"DatabaseCount\\": 2,\\n \\"DtsJobClass\\": \\"xlarge\\",\\n \\"EndTimestamp\\": \\"2022-03-26T14:03:21Z\\",\\n \\"AppName\\": \\"new\\",\\n \\"DestNetType\\": \\"VPC\\",\\n \\"SubscribeTopic\\": \\"cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2\\",\\n \\"DtsInstanceID\\": \\"dtsi03e3zty16i****\\",\\n \\"RequestId\\": \\"29207299-7C41-493A-BA4F-2FAC5DE4****\\",\\n \\"Code\\": 200,\\n \\"Checkpoint\\": 1616405159,\\n \\"Delay\\": 0,\\n \\"ExpireTime\\": \\"2023-06-16T08:01:19Z\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"ConsumptionClient\\": \\"114.***.***.**:dts********\\",\\n \\"DbObject\\": \\"{\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"all\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"state\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"normal\\\\\\\\\\\\\\"}}\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"ConsumptionCheckpoint\\": \\"2022-03-23T07:30:31Z\\",\\n \\"EtlCalculator\\": \\"{ \\\\t\\\\\\"cells \\\\\\": [{\\\\\\\\\\\\\\"shape\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"edge\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"attrs\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"line\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"stroke\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"#b1b1b1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"strokeWidth\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"targetMarker\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"block\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"args\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"strokeDasharray\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"source\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"out1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"target\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"b36770df-f48c-4d6b-9644-54c5e924****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"in1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"zIndex\\\\\\\\\\\\\\":7 \\\\t}] }\\",\\n \\"HttpStatusCode\\": 200,\\n \\"BeginTimestamp\\": \\"2022-03-15T08:25:34Z\\",\\n \\"GroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"SynchronizationDirection\\": \\"Forward\\",\\n \\"DtsJobDirection\\": \\"Forward\\",\\n \\"DemoJob\\": false,\\n \\"SourceEndpoint\\": {\\n \\"OracleSID\\": \\"testsid\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"Ip\\": \\"172.16.88.***\\",\\n \\"InstanceID\\": \\"rm-bp1162kryivb8****\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"Port\\": \\"3306\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"AliyunUid\\": \\"140692647406****\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"CanModifyPassword\\": false\\n },\\n \\"DestinationEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"Ip\\": \\"172.16.XX.XX\\",\\n \\"InstanceID\\": \\"rm-bp1imrtn6fq7h****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"CanModifyPassword\\": false,\\n \\"RoleName\\": \\"\\",\\n \\"AliyunUid\\": \\"\\"\\n },\\n \\"MigrationMode\\": {\\n \\"DataExtractTransformLoad\\": false,\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"StructureInitialization\\": true\\n },\\n \\"SubscriptionHost\\": {\\n \\"VpcHost\\": \\"dts-cn-****-vpc.aliyuncs.com:18003\\",\\n \\"PublicHost\\": \\"dts-cn-****.aliyuncs.com:18001\\",\\n \\"PrivateHost\\": \\"dts-cn-****-internal.aliyuncs.com:18002\\"\\n },\\n \\"SubscriptionDataType\\": {\\n \\"Dml\\": true,\\n \\"Ddl\\": true\\n },\\n \\"SubDistributedJob\\": [\\n {\\n \\"SubSyncJob\\": [\\n \\"****\\"\\n ],\\n \\"DtsInstanceID\\": \\"dtsnjuc14kp12u****\\",\\n \\"DtsJobId\\": \\"m06j1g92124****\\",\\n \\"DtsJobName\\": \\"dtstest****\\",\\n \\"GroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"DatabaseCount\\": 2,\\n \\"DtsJobClass\\": \\"xlarge\\",\\n \\"DtsJobDirection\\": \\"Forward\\",\\n \\"SynchronizationDirection\\": \\"Forward\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"ExpireTime\\": \\"2023-06-16T08:01:19Z\\",\\n \\"CreateTime\\": \\"2023-01-12T08:34:11Z\\",\\n \\"FinishTime\\": \\"2023-06-16T10:34:17Z\\",\\n \\"SourceEndpoint\\": {\\n \\"InstanceID\\": \\"dtsnjuc14kp12u****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Ip\\": \\"192.168.XX.XX\\",\\n \\"Port\\": \\"3306\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"AliyunUid\\": \\"140692647406****\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"InstanceID\\": \\"rm-bp1f9guj5rhzq****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Ip\\": \\"192.168.XX.XX\\",\\n \\"Port\\": \\"3306\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"OracleSID\\": \\"testid\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"AliyunUid\\": \\"140692647406****\\"\\n },\\n \\"DbObject\\": \\"{\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"all\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"state\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"normal\\\\\\\\\\\\\\"}}\\",\\n \\"MigrationMode\\": {\\n \\"StructureInitialization\\": true,\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"DataExtractTransformLoad\\": false\\n },\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Delay\\": 0,\\n \\"TagList\\": [\\n {\\n \\"Id\\": 2,\\n \\"GmtCreate\\": \\"2022-03-16T08:01:19Z\\",\\n \\"GmtModified\\": \\"2022-03-16T08:01:19Z\\",\\n \\"ResourceId\\": \\"dtsnjuc14kp12u****\\",\\n \\"ResourceType\\": \\"ALIYUN::DTS::INSTANCE\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AliUid\\": 0,\\n \\"TagKey\\": \\"key1\\",\\n \\"TagValue\\": \\"value1\\",\\n \\"TagCategory\\": \\"System\\",\\n \\"SrcRegion\\": \\"cn-hangzhou\\",\\n \\"Scope\\": \\"0\\",\\n \\"Creator\\": 0\\n }\\n ],\\n \\"Checkpoint\\": \\"1616405159\\",\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Detail\\": [\\n {\\n \\"CheckItem\\": \\"CHECK_CONN_SRC\\",\\n \\"CheckItemDescription\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"CheckResult\\": \\"Success\\",\\n \\"FailedReason\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\"\\n }\\n ]\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"1\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"16\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Catched\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"95\\",\\n \\"Progress\\": \\"0.00RPS/(0.000MB/s)\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataEtlStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"16\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"Performance\\": {\\n \\"Rps\\": \\"100\\",\\n \\"Flow\\": \\"1\\"\\n },\\n \\"ReverseJob\\": {\\n \\"DtsInstanceID\\": \\"dtsnjuc14kp12u****\\",\\n \\"DtsJobId\\": \\"m06j1g92124****\\",\\n \\"DtsJobName\\": \\"dtstest****\\",\\n \\"GroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"DatabaseCount\\": 2,\\n \\"DtsJobClass\\": \\"xlarge\\",\\n \\"DtsJobDirection\\": \\"Forward\\",\\n \\"SynchronizationDirection\\": \\"Forward\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"ExpireTime\\": \\"2023-06-16T08:01:19Z\\",\\n \\"CreateTime\\": \\"2023-01-12T08:34:11Z\\",\\n \\"FinishTime\\": \\"2023-06-16T10:34:17Z\\",\\n \\"SourceEndpoint\\": {\\n \\"InstanceID\\": \\"rm-bp2f3huj5rhzq****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Ip\\": \\"192.168.XX.XX\\",\\n \\"Port\\": \\"3306\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"AliyunUid\\": \\"140692647406****\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"InstanceID\\": \\"rm-bp1f9guj5rhzq****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Ip\\": \\"192.168.XX.XX\\",\\n \\"Port\\": \\"3306\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"AliyunUid\\": \\"140692647406****\\"\\n },\\n \\"DbObject\\": \\"{\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"all\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"state\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"normal\\\\\\\\\\\\\\"}}\\",\\n \\"MigrationMode\\": {\\n \\"StructureInitialization\\": true,\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"DataExtractTransformLoad\\": false\\n },\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Delay\\": 0,\\n \\"TagList\\": [\\n {\\n \\"Id\\": 2,\\n \\"GmtCreate\\": \\"2022-03-16T08:01:19Z\\",\\n \\"GmtModified\\": \\"2022-03-16T08:01:19Z\\",\\n \\"ResourceId\\": \\"dtsnjuc14kp12u****\\",\\n \\"ResourceType\\": \\"ALIYUN::DTS::INSTANCE\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AliUid\\": 0,\\n \\"TagKey\\": \\"key1\\",\\n \\"TagValue\\": \\"value1\\",\\n \\"TagCategory\\": \\"System\\",\\n \\"SrcRegion\\": \\"cn-hangzhou\\",\\n \\"Scope\\": \\"0\\",\\n \\"Creator\\": 0\\n }\\n ],\\n \\"Checkpoint\\": \\"1616405159\\",\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Detail\\": [\\n {\\n \\"CheckItem\\": \\"CHECK_CONN_SRC\\",\\n \\"CheckItemDescription\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"CheckResult\\": \\"Success\\",\\n \\"FailedReason\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\"\\n }\\n ]\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"1\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"16\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Catched\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"95\\",\\n \\"Progress\\": \\"0.00RPS/(0.000MB/s)\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataEtlStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"16\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"Performance\\": {\\n \\"Rps\\": \\"100\\",\\n \\"Flow\\": \\"1\\"\\n },\\n \\"ReverseJob\\": \\"****\\",\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"SubscriptionHost\\": {\\n \\"PublicHost\\": \\"dts-cn-****.aliyuncs.com:18001\\",\\n \\"PrivateHost\\": \\"dts-cn-****-internal.aliyuncs.com:18002\\",\\n \\"VpcHost\\": \\"dts-cn-****.aliyuncs.com:18001\\"\\n },\\n \\"SubscribeTopic\\": \\"cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2\\",\\n \\"ConsumptionCheckpoint\\": \\"2022-03-23T07:30:31Z\\",\\n \\"BeginTimestamp\\": \\"2022-03-15T08:25:34Z\\",\\n \\"EndTimestamp\\": \\"2022-03-26T14:03:21Z\\",\\n \\"ConsumptionClient\\": \\"114.***.***.**:dts********\\",\\n \\"DestNetType\\": \\"VPC\\",\\n \\"SubscriptionDataType\\": {\\n \\"Ddl\\": true,\\n \\"Dml\\": true\\n },\\n \\"AppName\\": \\"new\\",\\n \\"EtlCalculator\\": \\"{ \\\\\\"cells \\\\\\": [{\\\\\\\\\\\\\\"shape\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"edge\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"attrs\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"line\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"stroke\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"#b1b1b1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"strokeWidth\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"targetMarker\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"block\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"args\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"strokeDasharray\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"source\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"out1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"target\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"b36770df-f48c-4d6b-9644-54c5e924****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"in1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"zIndex\\\\\\\\\\\\\\":7 }] }\\",\\n \\"RetryState\\": {\\n \\"JobId\\": \\"ta7w132u12h****\\",\\n \\"MaxRetryTime\\": 7200,\\n \\"RetryTime\\": 3600,\\n \\"RetryCount\\": 5,\\n \\"Retrying\\": true,\\n \\"Module\\": \\"03\\",\\n \\"RetryTarget\\": \\"srcDB\\",\\n \\"ErrMsg\\": \\"CHECK__ERROR_SAME_OBJ\\"\\n },\\n \\"OriginType\\": \\"DTS任务\\",\\n \\"JobType\\": \\"SYNC\\",\\n \\"IsDemoJob\\": false,\\n \\"TaskType\\": \\"rds\\",\\n \\"MinDu\\": 1,\\n \\"MaxDu\\": 16\\n },\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"SubscriptionHost\\": {\\n \\"PublicHost\\": \\"dts-cn-****.aliyuncs.com:18001\\",\\n \\"PrivateHost\\": \\"dts-cn-****-internal.aliyuncs.com:18002\\",\\n \\"VpcHost\\": \\"dts-cn-****.aliyuncs.com:18001\\"\\n },\\n \\"SubscribeTopic\\": \\"cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2\\",\\n \\"ConsumptionCheckpoint\\": \\"2022-03-23T07:30:31Z\\",\\n \\"BeginTimestamp\\": \\"2022-03-15T08:25:34Z\\",\\n \\"EndTimestamp\\": \\"2022-03-26T14:03:21Z\\",\\n \\"ConsumptionClient\\": \\"114.***.***.**:dts********\\",\\n \\"DestNetType\\": \\"VPC\\",\\n \\"SubscriptionDataType\\": {\\n \\"Ddl\\": true,\\n \\"Dml\\": true\\n },\\n \\"AppName\\": \\"new\\",\\n \\"EtlCalculator\\": \\"{ \\\\\\"cells \\\\\\": [{\\\\\\\\\\\\\\"shape\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"edge\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"attrs\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"line\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"stroke\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"#b1b1b1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"strokeWidth\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"targetMarker\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"block\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"args\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"strokeDasharray\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"source\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"out1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"target\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"b36770df-f48c-4d6b-9644-54c5e924****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"in1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"zIndex\\\\\\\\\\\\\\":7 }] }\\",\\n \\"RetryState\\": {\\n \\"JobId\\": \\"ta7w132u12h****\\",\\n \\"MaxRetryTime\\": 7200,\\n \\"RetryTime\\": 3600,\\n \\"RetryCount\\": 5,\\n \\"Retrying\\": true,\\n \\"Module\\": \\"03\\",\\n \\"RetryTarget\\": \\"srcDB\\",\\n \\"ErrMsg\\": \\"CHECK__ERROR_SAME_OBJ\\"\\n },\\n \\"OriginType\\": \\"DTS任务\\",\\n \\"JobType\\": \\"SYNC\\",\\n \\"IsDemoJob\\": false,\\n \\"TaskType\\": \\"rds\\",\\n \\"MinDu\\": 1,\\n \\"MaxDu\\": 16\\n }\\n ],\\n \\"SubSyncJob\\": [\\n {\\n \\"SubSyncJob\\": [\\n \\"****\\"\\n ],\\n \\"DtsInstanceID\\": \\"dtsnjuc14kp12u****\\",\\n \\"DtsJobId\\": \\"m06j1g92124****\\",\\n \\"DtsJobName\\": \\"dtstest****\\",\\n \\"GroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"DatabaseCount\\": 2,\\n \\"DtsJobClass\\": \\"xlarge\\",\\n \\"DtsJobDirection\\": \\"Forward\\",\\n \\"SynchronizationDirection\\": \\"Forward\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"ExpireTime\\": \\"2023-06-16T08:01:19Z\\",\\n \\"CreateTime\\": \\"2023-01-12T08:34:11Z\\",\\n \\"FinishTime\\": \\"2023-06-16T10:34:17Z\\",\\n \\"SourceEndpoint\\": {\\n \\"InstanceID\\": \\"rm-bp2f3huj5rhzq****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Ip\\": \\"192.168.XX.XX\\",\\n \\"Port\\": \\"3306\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"AliyunUid\\": \\"140692647406****\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"InstanceID\\": \\"rm-bp1f9guj5rhzq****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Ip\\": \\"192.168.XX.XX\\",\\n \\"Port\\": \\"3306\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"AliyunUid\\": \\"140692647406****\\"\\n },\\n \\"DbObject\\": \\"{\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"all\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"state\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"normal\\\\\\\\\\\\\\"}}\\",\\n \\"MigrationMode\\": {\\n \\"StructureInitialization\\": true,\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"DataExtractTransformLoad\\": false\\n },\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Delay\\": 0,\\n \\"TagList\\": [\\n {\\n \\"Id\\": 2,\\n \\"GmtCreate\\": \\"2022-03-16T08:01:19Z\\",\\n \\"GmtModified\\": \\"2022-03-16T08:01:19Z\\",\\n \\"ResourceId\\": \\"dtsnjuc14kp12u****\\",\\n \\"ResourceType\\": \\"ALIYUN::DTS::INSTANCE\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AliUid\\": 0,\\n \\"TagKey\\": \\"key1\\",\\n \\"TagValue\\": \\"value1\\",\\n \\"TagCategory\\": \\"System\\",\\n \\"SrcRegion\\": \\"cn-hangzhou\\",\\n \\"Scope\\": \\"0\\",\\n \\"Creator\\": 0\\n }\\n ],\\n \\"Checkpoint\\": \\"1616405159\\",\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Detail\\": [\\n {\\n \\"CheckItem\\": \\"CHECK_CONN_SRC\\",\\n \\"CheckItemDescription\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"CheckResult\\": \\"Success\\",\\n \\"FailedReason\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\"\\n }\\n ]\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"1\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"16\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Catched\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"95\\",\\n \\"Progress\\": \\"0.00RPS/(0.000MB/s)\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataEtlStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"16\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"Performance\\": {\\n \\"Rps\\": \\"100\\",\\n \\"Flow\\": \\"1\\"\\n },\\n \\"ReverseJob\\": {\\n \\"DtsInstanceID\\": \\"dtsnjuc14kp12u****\\",\\n \\"DtsJobId\\": \\"m06j1g92124****\\",\\n \\"DtsJobName\\": \\"dtstest****\\",\\n \\"GroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"DatabaseCount\\": 2,\\n \\"DtsJobClass\\": \\"xlarge\\",\\n \\"DtsJobDirection\\": \\"Forward\\",\\n \\"SynchronizationDirection\\": \\"Forward\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"ExpireTime\\": \\"2023-06-16T08:01:19Z\\",\\n \\"CreateTime\\": \\"2023-01-12T08:34:11Z\\",\\n \\"FinishTime\\": \\"2023-06-16T10:34:17Z\\",\\n \\"SourceEndpoint\\": {\\n \\"InstanceID\\": \\"rm-bp2f3huj5rhzq****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Ip\\": \\"192.168.XX.XX\\",\\n \\"Port\\": \\"3306\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"AliyunUid\\": \\"140692647406****\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"InstanceID\\": \\"rm-bp1f9guj5rhzq****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"EngineName\\": \\"MySQL\\",\\n \\"Ip\\": \\"192.168.XX,XX\\",\\n \\"Port\\": \\"3306\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"RoleName\\": \\"ram-for-dts\\",\\n \\"AliyunUid\\": \\"140692647406****\\"\\n },\\n \\"DbObject\\": \\"{\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"all\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"state\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"normal\\\\\\\\\\\\\\"}}\\",\\n \\"MigrationMode\\": {\\n \\"StructureInitialization\\": true,\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"DataExtractTransformLoad\\": false\\n },\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Delay\\": 0,\\n \\"TagList\\": [\\n {\\n \\"Id\\": 2,\\n \\"GmtCreate\\": \\"2022-03-16T08:01:19Z\\",\\n \\"GmtModified\\": \\"2022-03-16T08:01:19Z\\",\\n \\"ResourceId\\": \\"dtsnjuc14kp12u****\\",\\n \\"ResourceType\\": \\"ALIYUN::DTS::INSTANCE\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AliUid\\": 0,\\n \\"TagKey\\": \\"key1\\",\\n \\"TagValue\\": \\"value1\\",\\n \\"TagCategory\\": \\"System\\",\\n \\"SrcRegion\\": \\"cn-hangzhou\\",\\n \\"Scope\\": \\"0\\",\\n \\"Creator\\": 0\\n }\\n ],\\n \\"Checkpoint\\": \\"1616405159\\",\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Detail\\": [\\n {\\n \\"CheckItem\\": \\"CHECK_CONN_SRC\\",\\n \\"CheckItemDescription\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"CheckResult\\": \\"Success\\",\\n \\"FailedReason\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\"\\n }\\n ]\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"1\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"16\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"95\\",\\n \\"Progress\\": \\"0.00RPS/(0.000MB/s)\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"DataEtlStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by ****\\",\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"16\\",\\n \\"NeedUpgrade\\": true\\n },\\n \\"Performance\\": {\\n \\"Rps\\": \\"100\\",\\n \\"Flow\\": \\"1\\"\\n },\\n \\"ReverseJob\\": \\"****\\",\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"SubscriptionHost\\": {\\n \\"PublicHost\\": \\"dts-cn-****.aliyuncs.com:18001\\",\\n \\"PrivateHost\\": \\"dts-cn-****-internal.aliyuncs.com:18002\\",\\n \\"VpcHost\\": \\"dts-cn-****.aliyuncs.com:18001\\"\\n },\\n \\"SubscribeTopic\\": \\"cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2\\",\\n \\"ConsumptionCheckpoint\\": \\"2022-03-23T07:30:31Z\\",\\n \\"BeginTimestamp\\": \\"2022-03-15T08:25:34Z\\",\\n \\"EndTimestamp\\": \\"2022-03-26T14:03:21Z\\",\\n \\"ConsumptionClient\\": \\"114.***.***.**:dts********\\",\\n \\"DestNetType\\": \\"VPC\\",\\n \\"SubscriptionDataType\\": {\\n \\"Ddl\\": true,\\n \\"Dml\\": true\\n },\\n \\"AppName\\": \\"new\\",\\n \\"EtlCalculator\\": \\"{ \\\\\\"cells \\\\\\": [{\\\\\\\\\\\\\\"shape\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"edge\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"attrs\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"line\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"stroke\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"#b1b1b1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"strokeWidth\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"targetMarker\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"block\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"args\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"strokeDasharray\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"source\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"out1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"target\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"b36770df-f48c-4d6b-9644-54c5e924****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"in1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"zIndex\\\\\\\\\\\\\\":7 }] }\\",\\n \\"RetryState\\": {\\n \\"JobId\\": \\"ta7w132u12h****\\",\\n \\"MaxRetryTime\\": 7200,\\n \\"RetryTime\\": 3600,\\n \\"RetryCount\\": 5,\\n \\"Retrying\\": true,\\n \\"Module\\": \\"03\\",\\n \\"RetryTarget\\": \\"srcDB\\",\\n \\"ErrMsg\\": \\"CHECK__ERROR_SAME_OBJ\\"\\n },\\n \\"OriginType\\": \\"DTS任务\\",\\n \\"JobType\\": \\"SYNC\\",\\n \\"IsDemoJob\\": false,\\n \\"TaskType\\": \\"rds\\"\\n },\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"SubscriptionHost\\": {\\n \\"PublicHost\\": \\"dts-cn-****.aliyuncs.com:18001\\",\\n \\"PrivateHost\\": \\"dts-cn-****-internal.aliyuncs.com:18002\\",\\n \\"VpcHost\\": \\"dts-cn-****.aliyuncs.com:18001\\"\\n },\\n \\"SubscribeTopic\\": \\"cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2\\",\\n \\"ConsumptionCheckpoint\\": \\"2022-03-23T07:30:31Z\\",\\n \\"BeginTimestamp\\": \\"2022-03-15T08:25:34Z\\",\\n \\"EndTimestamp\\": \\"2022-03-26T14:03:21Z\\",\\n \\"ConsumptionClient\\": \\"114.***.***.**:dts********\\",\\n \\"DestNetType\\": \\"VPC\\",\\n \\"SubscriptionDataType\\": {\\n \\"Ddl\\": true,\\n \\"Dml\\": true\\n },\\n \\"AppName\\": \\"new\\",\\n \\"EtlCalculator\\": \\"{ \\\\\\"cells \\\\\\": [{\\\\\\\\\\\\\\"shape\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"edge\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"attrs\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"line\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"stroke\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"#b1b1b1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"strokeWidth\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"targetMarker\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"block\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"args\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"strokeDasharray\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\"}},\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cd1ec473-f9b9-4e9b-a742-ac23f442****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"source\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8b261182-bfab-4803-ad8e-6bb08e3e****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"out1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"target\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"b36770df-f48c-4d6b-9644-54c5e924****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"in1\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"zIndex\\\\\\\\\\\\\\":7 }] }\\",\\n \\"RetryState\\": {\\n \\"JobId\\": \\"ta7w132u12h****\\",\\n \\"MaxRetryTime\\": 7200,\\n \\"RetryTime\\": 3600,\\n \\"RetryCount\\": 5,\\n \\"Retrying\\": true,\\n \\"Module\\": \\"03\\",\\n \\"RetryTarget\\": \\"srcDB\\",\\n \\"ErrMsg\\": \\"CHECK__ERROR_SAME_OBJ\\"\\n },\\n \\"OriginType\\": \\"DTS任务\\",\\n \\"JobType\\": \\"SYNC\\",\\n \\"IsDemoJob\\": false,\\n \\"TaskType\\": \\"rds\\",\\n \\"MinDu\\": 1,\\n \\"MaxDu\\": 16\\n }\\n ],\\n \\"JobType\\": \\"sync\\",\\n \\"TaskType\\": \\"Distributed_xxx\\",\\n \\"DedicatedClusterId\\": \\"dtsxxxxx\\",\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Catched\\",\\n \\"NeedUpgrade\\": true,\\n \\"Percent\\": \\"95\\",\\n \\"Progress\\": \\"0.00RPS/(0.000MB/s)\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\"\\n },\\n \\"BootTime\\": \\"2022-03-30T03:36:11.000\\",\\n \\"Binlog\\": \\"****\\",\\n \\"BinlogSite\\": \\"156629109****\\",\\n \\"BinlogTime\\": \\"****\\",\\n \\"LastUpdateTime\\": \\"156629109****\\",\\n \\"RetryState\\": {\\n \\"RetryCount\\": 5,\\n \\"MaxRetryTime\\": 7200,\\n \\"ErrMessage\\": \\"Unexpected error\\",\\n \\"RetryTarget\\": \\"srcDB\\",\\n \\"RetryTime\\": 3600,\\n \\"Module\\": \\"03\\",\\n \\"JobId\\": \\"bi6e22ay243****\\",\\n \\"Retrying\\": false\\n },\\n \\"ResourceGroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"ResourceGroupDisplayName\\": \\"default resource group\\",\\n \\"DtsBisLabel\\": \\"normal\\",\\n \\"DataDeliveryChannelInfo\\": {\\n \\"PublicDproxyUrl\\": \\"dts-****.aliyuncs.com:18***\\",\\n \\"VpcDproxyUrl\\": \\"dts-****.aliyuncs.com:18***\\",\\n \\"Topic\\": \\"cn_hangzhou_******_data_delivery_version2\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"PartitionNum\\": 3\\n },\\n \\"MinDu\\": 1,\\n \\"MaxDu\\": 16,\\n \\"InitCheckpoint\\": \\"\\",\\n \\"InsightModule\\": false,\\n \\"ApprovalProcessUrl\\": \\"\\",\\n \\"ApprovalProcessStatus\\": 0\\n}","type":"json"}]',
],
'DescribeDtsJobs' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '52248',
'abilityTreeNodes' => ['FEATUREdtsNB7C6E'],
],
'parameters' => [
[
'name' => 'Type',
'in' => 'query',
'schema' => ['description' => 'The conditional query parameter. Valid values:'."\n"
."\n"
.'- **instance**: queries by DTS instance ID.'."\n"
.'- **name**: queries by DTS instance name. Fuzzy match is supported.'."\n"
.'- **srcRds**: queries by the ID of the source instance (ApsaraDB RDS).'."\n"
.'- **rds**: queries by the ID of the destination instance (ApsaraDB RDS).'."\n"
."\n"
.'> Specify the **Params** parameter to provide the specific content of the query condition.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''],
],
[
'name' => 'Params',
'in' => 'query',
'schema' => ['description' => 'The specific content of the query condition.'."\n"
.'> Specify **Type** in advance to define the query condition.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'dtspk3f13r731m****', 'title' => ''],
],
[
'name' => 'Region',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'Status',
'in' => 'query',
'schema' => ['description' => 'The instance status of the DTS instance. Valid values:'."\n"
."\n"
.'Data migration task statuses:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.'."\n"
."\n"
.'Data synchronization task statuses:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Initializing**: performing initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **Synchronizing**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.'."\n"
."\n"
.'Change tracking task statuses:'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **Starting**: starting.'."\n"
.'- **Normal**: normal.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Abnormal**: abnormal.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.', 'type' => 'string', 'required' => false, 'example' => 'Migrating', 'title' => ''],
],
[
'name' => 'OrderDirection',
'in' => 'query',
'schema' => ['description' => 'The sort order of instances. Valid values:'."\n"
."\n"
.'- **ASC**: ascending order. This is the default value.'."\n"
.'- **DESC**: descending order.', 'type' => 'string', 'required' => false, 'example' => 'ASC', 'title' => ''],
],
[
'name' => 'OrderColumn',
'in' => 'query',
'schema' => ['description' => 'The sort criterion when the response contains multiple DTS instances. Valid values:'."\n"
."\n"
.'- **CreateTime**: sorts by task creation time.'."\n"
.'- **FinishTime**: sorts by task completion time.'."\n"
.'- **duLimit** (dedicated cluster tasks): sorts by the upper limit of DU usage for DTS tasks. This value is supported only for dedicated clusters.'."\n"
."\n"
.'> You can also specify **OrderDirection** to set the sort order to ascending or descending.', 'type' => 'string', 'required' => false, 'example' => 'CreateTime', 'title' => ''],
],
[
'name' => 'Tags',
'in' => 'query',
'schema' => ['description' => 'The tag-based search condition in JSON format.'."\n"
.'> You can call the **ListTagResources** operation to query tag keys and values.', 'type' => 'string', 'required' => false, 'example' => '[ { \\"key\\": \\"testK\\", \\"value\\": \\"testV\\" } ]', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page. Valid values: **10**, **20**, and **30**. Default value: **20**. Maximum value: **30**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '1', 'default' => '20', 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '0', 'default' => '0', 'example' => '1', 'title' => ''],
],
[
'name' => 'JobType',
'in' => 'query',
'schema' => ['description' => 'The task type of the DTS instance. Valid values:'."\n"
.'- **MIGRATION**: data migration (default).'."\n"
.'- **SYNC**: data synchronization.'."\n"
.'- **SUBSCRIBE**: change tracking.', 'type' => 'string', 'required' => false, 'example' => 'MIGRATION', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => [
'description' => 'Deprecated parameter.',
'type' => 'string',
'required' => false,
'enum' => [
'cn-hangzhou', 'cn-shanghai', 'cn-beijing', 'cn-guangzhou', 'cn-shenzhen', 'cn-chengdu', 'cn-heyuan', 'cn-hongkong', 'cn-qingdao', 'cn-zhangbei', 'cn-zhangjiakou', 'us-east-1', 'us-west-1', 'cn-hangzhou-finance', 'cn-shanghai-finance', 'cn-shanghai-finance-1', 'cn-shenzhen-finance', 'cn-shenzhen-finance-1', 'cn-beijing-finance-1', 'cn-huhehaote',
'cn-north-2-gov-1', 'eu-central-1', 'eu-west-1', 'me-central-1', 'me-east-1', 'ap-northeast-1', 'ap-northeast-2', 'ap-southeast-1', 'ap-southeast-3', 'ap-southeast-5', 'ap-southeast-6', 'ap-southeast-7', 'cn-wulanchabu', 'cn-zhengzhou-jva', 'cn-wuhan-lr', 'cn-shanghai-cloudspe', 'na-south-1', 'us-southeast-1',
],
'example' => '无',
'title' => '',
],
],
[
'name' => 'GroupId',
'in' => 'query',
'schema' => ['description' => 'The DTS task ID.'."\n"
.'> In most cases, you do not need to set this parameter.', 'type' => 'string', 'required' => false, 'example' => 'pk13r731m****', 'title' => ''],
],
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The ID of the DTS dedicated cluster.', 'type' => 'string', 'required' => false, 'example' => 'dtscluster_atyl3b5214uk***', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.'."\n"
."\n"
.'> Separate multiple task IDs with commas (,). Make sure that the **JobType** parameter is set as expected.', 'type' => 'string', 'required' => false, 'example' => 'qa110wq5r93hb49', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking instance.'."\n"
.'> Separate multiple instance IDs with commas (,). Make sure that the **JobType** parameter is set as expected.', 'type' => 'string', 'required' => false, 'example' => 'dtsi03e3zty16i****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'WithoutDbList',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to exclude task objects from the response (not return the **DbObject** parameter). Valid values:'."\n"
."\n"
.'- **true**: excludes **DbObject** from the response.'."\n"
.'- **false**: includes **DbObject** in the response, which can improve the response speed.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DtsBisLabel',
'in' => 'query',
'schema' => ['description' => 'The environment label of the DTS instance. Valid values:'."\n"
.'- **normal**: normal'."\n"
.'- **online**: online', 'type' => 'string', 'required' => false, 'example' => 'normal', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (Zero-ETL) node. Valid values:'."\n"
."\n"
.'- **false**: No.'."\n"
.'- **true**: Yes.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'InstanceType',
'in' => 'query',
'schema' => ['description' => 'The type of the source or destination database instance.', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the source or destination database instance that corresponds to the **InstanceType** request parameter.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1966yuut4w3****', 'title' => ''],
],
[
'name' => 'DestProductType',
'in' => 'query',
'schema' => ['description' => 'The type of the source database instance.', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'SrcProductType',
'in' => 'query',
'schema' => ['description' => 'The type of the destination database instance.', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of records that can be displayed on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of DTS instances that meet the specified conditions.', 'type' => 'integer', 'format' => 'int32', 'example' => '15', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **Type**, the request parameter **Type** is invalid.', 'type' => 'string', 'example' => 'Type', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'DtsJobList' => [
'description' => 'The task list and execution details of each task.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The instance status of the DTS instance. Valid values:'."\n"
."\n"
.'Data migration task statuses:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.'."\n"
."\n"
.'Data synchronization task statuses:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Initializing**: performing initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **Synchronizing**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **ModifyFailed**: failed to modify synchronization objects.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.'."\n"
."\n"
.'Change tracking task statuses:'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **Starting**: starting.'."\n"
.'- **Normal**: normal.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Abnormal**: abnormal.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'OriginType' => ['description' => 'The task source:'."\n"
."\n"
.'- **PTS task**'."\n"
.'- **DMS task**'."\n"
.'- **DTS task**', 'type' => 'string', 'example' => 'DTS任务', 'title' => ''],
'DtsJobName' => ['description' => 'The name of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'RDS间迁移', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data migration or synchronization.'."\n"
.'> For data migration tasks, the unit is milliseconds. For data synchronization tasks, the unit is seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of **PayType** is **PrePaid**.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
'CreateTime' => ['description' => 'The task creation time in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-16T08:01:19Z', 'title' => ''],
'PayType' => ['description' => 'The billing method of the instance. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'Reserved' => ['description' => 'The reserved parameter of DTS in JSON format. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'ConsumptionClient' => ['description' => 'The downstream consumer client information, which consists of an IP address and a random number generated by DTS.', 'type' => 'string', 'example' => '114...:dts******', 'title' => ''],
'DbObject' => ['description' => 'The objects for data migration, data synchronization, or change tracking. For more information, see [Objects for data migration, data synchronization, or change tracking](~~209545~~).', 'type' => 'string', 'example' => '{"dtstestdata": { "name": "dtstestdata", "all": true }}', 'title' => ''],
'DtsJobClass' => ['description' => 'The specification of the data transmission link.'."\n"
.'> For more information about link specifications and performance test results, see [Specifications of data migration links](~~26606~~) and [Specifications of data synchronization links](~~26605~~).', 'type' => 'string', 'example' => 'large', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the downstream consumer for the change tracking instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-23T07:30:31Z', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range for data stored in the change tracking instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-26T14:03:21Z', 'title' => ''],
'AppName' => ['description' => 'Indicates whether the instance uses the new version of change tracking. The value **new** indicates the new version.'."\n"
.'> This parameter is returned only for new-version change tracking instances.', 'type' => 'string', 'example' => 'new', 'title' => ''],
'BeginTimestamp' => ['description' => 'The beginning of the timestamp range for data stored in the change tracking instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-15T08:25:34Z ', 'title' => ''],
'DtsInstanceID' => ['description' => 'The ID of the data migration, data synchronization, or change tracking instance.', 'type' => 'string', 'example' => 'dtsi03e3zty16i****', 'title' => ''],
'DtsJobDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> This parameter is returned only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'Checkpoint' => ['description' => 'The start checkpoint of incremental data migration or the synchronization checkpoint, in the format of a Unix timestamp. Unit: seconds.', 'type' => 'string', 'example' => '1616899019', 'title' => ''],
'TagList' => [
'description' => 'The tag collection.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'testvalue', 'title' => ''],
'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'testkey', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'DataInitializationStatus' => [
'description' => 'The status of full data migration or initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of full data migration or initial full data synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating or initializing.'."\n"
.'- **Failed**: migration or initialization failed.'."\n"
.'- **Finished**: migration or initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when full data migration or initial full data synchronization fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '44755', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data migration or synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data migration or synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating or synchronizing.'."\n"
.'- **Failed**: migration or synchronization failed.'."\n"
.'- **Finished**: migration or synchronization completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Catched', 'title' => ''],
'NeedUpgrade' => ['description' => 'Indicates whether the instance specification needs to be upgraded. Valid values:'."\n"
."\n"
.'- **true**: The specification needs to be upgraded.'."\n"
.'- **false**: The specification does not need to be upgraded.'."\n"
."\n"
.'> To upgrade the instance specification, call [TransferInstanceClass](~~281093~~).', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data migration or synchronization, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been migrated or synchronized during incremental data migration or synchronization.', 'type' => 'string', 'example' => '0/0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data migration or synchronization fails.', 'type' => 'string', 'example' => '任务失败太久无法恢复 ', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataEtlStatus' => [
'description' => 'The status of the ETL task.'."\n"
.'> This parameter set is returned only after an ETL task is configured.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the ETL task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: running.'."\n"
.'- **Failed**: execution failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of the ETL task, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the ETL task fails.', 'type' => 'string', 'example' => '任务失败太久无法恢复 ', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been processed by the ETL task.', 'type' => 'string', 'example' => '0/0', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'Region' => ['description' => 'The region in which the destination instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceID' => ['description' => 'The instance ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp1imrtn6fq7h****', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'MigrationMode' => [
'description' => 'The migration type or synchronization initialization type.',
'type' => 'object',
'properties' => [
'DataInitialization' => ['description' => 'Indicates whether full data migration or initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data migration or synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'StructureInitialization' => ['description' => 'Indicates whether schema migration or initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'FullDataCheck' => ['description' => 'Indicates whether full data validation is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'IncDataCheck' => ['description' => 'Indicates whether incremental data validation is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'StructureDataCheck' => ['description' => 'Indicates whether schema verification is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'TimeWindowCheck' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The performance information of the data migration or synchronization link.',
'type' => 'object',
'properties' => [
'Rps' => ['description' => 'The number of SQL statements migrated or synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Flow' => ['description' => 'The volume of data migrated or synchronized per second. Unit: MB/s.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck status. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: running a precheck.'."\n"
.'- **Failed**: precheck failed.'."\n"
.'- **Finished**: precheck completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The overall progress of the precheck, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the precheck fails.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ.', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'CheckResult' => ['description' => 'The check result. Valid values:'."\n"
.'- **Success**: The check item passed.'."\n"
.'- **Failed**: The check item did not pass.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'CheckItemDescription' => ['description' => 'The description of the precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL', 'title' => ''],
'CheckItem' => ['description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the precheck does not pass.'."\n"
.'> This parameter is returned only when the value of **CheckResult** is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2', 'title' => ''],
'FailedReason' => ['description' => 'The error message returned when the precheck does not pass.'."\n"
.'> This parameter is returned only when the value of **CheckResult** is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'ReverseJob' => [
'description' => 'The execution details of the reverse synchronization task.'."\n"
.'> This parameter set is returned only when the task is a data synchronization task with a two-way synchronization topology.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the reverse synchronization task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Initializing**: performing initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **Synchronizing**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **ModifyFailed**: failed to modify synchronization objects.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.', 'type' => 'string', 'example' => 'Synchronizing', 'title' => ''],
'DtsJobName' => ['description' => 'The name of the synchronization task.', 'type' => 'string', 'example' => 'RDS间迁移', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data synchronization. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the synchronization task.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of **PayType** is **PrePaid**.', 'type' => 'string', 'example' => '2023-03-16T08:01:19Z', 'title' => ''],
'CreateTime' => ['description' => 'The task creation time in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z', 'title' => ''],
'PayType' => ['description' => 'The billing method of the instance. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''],
'Reserved' => ['description' => 'The reserved parameter of DTS in JSON format. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'DbObject' => ['description' => 'The schema definition of the synchronization objects in JSON format, which supports certain regular expressions. For more information and examples, see the description of migration, synchronization, or change tracking object configuration.', 'type' => 'string', 'example' => '{"dtstestdata": { "name": "dtstestdata", "all": true }}', 'title' => ''],
'DtsJobClass' => ['description' => 'The specification of the data transmission link.'."\n"
.'> For more information about link specifications and performance test results, see [Specifications of data synchronization links](~~26605~~).', 'type' => 'string', 'example' => 'large', 'title' => ''],
'DtsInstanceID' => ['description' => 'The instance ID of the data synchronization instance.', 'type' => 'string', 'example' => 'dtsi03e3zty16i****', 'title' => ''],
'DtsJobDirection' => ['description' => 'The synchronization direction. The value is fixed as **Reverse**.', 'type' => 'string', 'example' => 'Reverse', 'title' => ''],
'Checkpoint' => ['description' => 'The synchronization checkpoint of incremental data synchronization, in the format of a Unix timestamp. Unit: seconds.', 'type' => 'string', 'example' => '1616980369', 'title' => ''],
'DataInitializationStatus' => [
'description' => 'The status of initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of initial full data synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: initializing.'."\n"
.'- **Failed**: initialization failed.'."\n"
.'- **Finished**: initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial full data synchronization fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been synchronized during initial full data synchronization.', 'type' => 'string', 'example' => '43071', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data synchronization.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'NeedUpgrade' => ['description' => 'Indicates whether the instance specification needs to be upgraded. Valid values:'."\n"
."\n"
.'- **true**: The specification needs to be upgraded.'."\n"
.'- **false**: The specification does not need to be upgraded.'."\n"
."\n"
.'> To upgrade the instance specification, call [TransferInstanceClass](~~281093~~).', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been migrated or synchronized during incremental data migration or synchronization.', 'type' => 'string', 'example' => '20001', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data synchronization fails.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'Region' => ['description' => 'The region in which the destination instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the synchronization objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'MigrationMode' => [
'description' => 'The synchronization initialization type.',
'type' => 'object',
'properties' => [
'DataInitialization' => ['description' => 'Indicates whether initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'StructureInitialization' => ['description' => 'Indicates whether initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'FullDataCheck' => ['description' => 'Indicates whether full data verification is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'IncDataCheck' => ['description' => 'Indicates whether incremental data verification is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'StructureDataCheck' => ['description' => 'Indicates whether schema verification is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'TimeWindowCheck' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The performance information of the synchronization link.',
'type' => 'object',
'properties' => [
'Rps' => ['description' => 'The number of SQL statements synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Flow' => ['description' => 'The volume of data synchronized per second. Unit: MB/s.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck status. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: running a precheck.'."\n"
.'- **Failed**: precheck failed.'."\n"
.'- **Finished**: precheck completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The overall progress of the precheck, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the precheck fails.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ.', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'CheckResult' => ['description' => 'The check result. Valid values:'."\n"
.'- **Success**: The check item passed.'."\n"
.'- **Failed**: The check item did not pass.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'CheckItemDescription' => ['description' => 'The description of the precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL', 'title' => ''],
'CheckItem' => ['description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the precheck does not pass.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2', 'title' => ''],
'FailedReason' => ['description' => 'The error message returned when the precheck does not pass.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when **EngineName** of the source instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'Region' => ['description' => 'The region in which the source instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp1imrtn6fq7h****', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.'."\n"
.'[_single.resp.200.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of initial schema synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: initializing.'."\n"
.'- **Failed**: initialization failed.'."\n"
.'- **Finished**: initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial schema synchronization fails.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'Progress' => ['description' => 'The number of tables for which initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DuUsage' => ['description' => 'The DTS dedicated cluster resources that have been used. Unit: DU.', 'type' => 'integer', 'format' => 'int64', 'example' => '15', 'title' => ''],
'CpuUsage' => ['description' => 'The current CPU utilization of the instance. Unit: %.', 'type' => 'string', 'example' => '90', 'title' => ''],
'MemUsage' => ['description' => 'The memory that has been used. Unit: MB.', 'type' => 'string', 'example' => '500', 'title' => ''],
'DedicatedClusterId' => ['description' => 'The ID of the DTS dedicated cluster.', 'type' => 'string', 'example' => 'dtscluster_dpwl3**********', 'title' => ''],
'ErrorDetails' => [
'description' => 'The error details.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ErrorCode' => ['description' => 'The error code.', 'type' => 'string', 'example' => 'DTS-31009', 'title' => ''],
'HelpUrl' => ['description' => 'The URL of the help documentation.', 'type' => 'string', 'example' => 'https://**.ali**.com/**', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'EtlSafeCheckpoint' => ['description' => 'The safe checkpoint of the ETL task.', 'type' => 'string', 'example' => '1610540493', 'title' => ''],
'MinDu' => ['description' => 'The minimum number of DUs for the serverless instance.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''],
'MaxDu' => ['description' => 'The maximum number of DUs for the serverless instance.', 'type' => 'number', 'format' => 'double', 'example' => '16', 'title' => ''],
'FullDataCheckStatus' => [
'description' => 'The status information of full data verification.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the full data verification task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Checking**: verifying.'."\n"
.'- **Failed**: verification failed.'."\n"
.'- **Finished**: verification completed.'."\n"
.'- **Inconsistency**: the task completed but inconsistent data exists.', 'type' => 'string', 'example' => 'Checking', 'title' => ''],
'Percent' => ['description' => 'The progress of the full data verification task, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The progress of the full data verification task.', 'type' => 'string', 'example' => '1 rows/s (row: 5/5, table: 1/1)', 'title' => ''],
'CanSwitch' => ['description' => 'Indicates whether migration switchover can be performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.'."\n"
."\n"
.'> This parameter is used by the one-click upgrade feature of PolarDB.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'IncDataCheckStatus' => [
'description' => 'The status information of incremental data verification.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the incremental data verification task. Valid values:'."\n"
.'- **Catched**: no latency.'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Checking**: verifying.'."\n"
.'- **Failed**: verification failed.'."\n"
.'- **Inconsistency**: the task completed but inconsistent data exists.', 'type' => 'string', 'example' => 'Checking', 'title' => ''],
'Percent' => ['description' => 'The progress of the incremental data verification task, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The progress of the incremental data verification task.', 'type' => 'string', 'example' => '1 rows/s (row: 5/5, table: 1/1)', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureDataCheckStatus' => [
'description' => 'The status information of schema verification.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the schema verification task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Checking**: verifying.'."\n"
.'- **Failed**: verification failed.'."\n"
.'- **Finished**: verification completed.'."\n"
.'- **Inconsistency**: the task completed but inconsistent data exists.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of the schema verification task, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => '****', 'title' => ''],
'Progress' => ['description' => 'The number of objects for which schema verification has been completed.', 'type' => 'string', 'example' => '5', 'title' => ''],
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when **EngineName** of the source instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'Region' => ['description' => 'The region in which the source instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.'."\n"
.'[_single.resp.200.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of schema migration or initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of schema migration or initial schema synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating or initializing.'."\n"
.'- **Failed**: migration or initialization failed.'."\n"
.'- **Finished**: migration or initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of schema migration or initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when schema migration or initial schema synchronization fails.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'Progress' => ['description' => 'The number of tables for which schema migration or initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'RetryState' => [
'description' => 'The retry state. DTS is retrying because the task encountered an exception.',
'type' => 'object',
'properties' => [
'RetryCount' => ['description' => 'The number of retries that have been performed.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''],
'MaxRetryTime' => ['description' => 'The maximum retry duration. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '7200', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the retry fails.', 'type' => 'string', 'example' => 'Unexpected error', 'title' => ''],
'RetryTarget' => ['description' => 'The retry target. Valid values:'."\n"
."\n"
.'- **srcDB**: the source database.'."\n"
.'- **destDB**: the destination database.'."\n"
.'- **inner_module**: a DTS internal module.', 'type' => 'string', 'example' => 'srcDB', 'title' => ''],
'RetryTime' => ['description' => 'The time that has been spent on retries. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '3600', 'title' => ''],
'Module' => ['description' => 'The instance progress.', 'type' => 'string', 'example' => '03', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'bi6e22ay243****', 'title' => ''],
'Retrying' => ['description' => 'Indicates whether the task is being retried. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'MigrationErrHelpDocId' => ['description' => 'The ID of the help documentation for the error code.', 'type' => 'string', 'example' => '462133', 'title' => ''],
'MigrationErrHelpDocKey' => ['description' => 'The key of the help documentation for the error code.', 'type' => 'string', 'example' => 'DTS-RETRY-ERR-0046', 'title' => ''],
'MigrationErrCode' => ['description' => 'The error code.', 'type' => 'string', 'example' => 'dts.retry.err.0046', 'title' => ''],
'MigrationErrType' => ['description' => 'The type of the error code.', 'type' => 'string', 'example' => 'ForeignKey', 'title' => ''],
'MigrationErrMsg' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'dts.retry.err.0046.msg', 'title' => ''],
'MigrationErrWorkaround' => ['description' => 'The workaround for the error.', 'type' => 'string', 'example' => 'dts.retry.err.0046.workaround', 'title' => ''],
],
'title' => '',
'example' => '',
],
'JobType' => ['title' => '', 'description' => 'The type of the DTS task. Valid values:'."\n"
.'- **online**: data migration.'."\n"
.'- **sync**: data synchronization.'."\n"
.'- **subscribe**: change tracking.', 'type' => 'string', 'example' => 'online'],
'DuUsage' => ['description' => 'The DTS dedicated cluster resources that have been used. Unit: DU.', 'type' => 'integer', 'format' => 'int64', 'example' => '15', 'title' => ''],
'CpuUsage' => ['description' => 'The current CPU utilization of the instance. Unit: %.', 'type' => 'string', 'example' => '1', 'title' => ''],
'MemUsage' => ['description' => 'The memory that has been used. Unit: MB.', 'type' => 'string', 'example' => '500', 'title' => ''],
'DedicatedClusterId' => ['description' => 'The ID of the DTS dedicated cluster.', 'type' => 'string', 'example' => 'dtscluster_ft7y3**********', 'title' => ''],
'ErrorDetails' => [
'description' => 'The error details.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ErrorCode' => ['description' => 'The error code.', 'type' => 'string', 'example' => 'DTS-31009', 'title' => ''],
'HelpUrl' => ['description' => 'The URL of the help documentation.', 'type' => 'string', 'example' => 'https://**.ali**.com/**', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'DataCloudStatus' => [
'description' => 'The task progress status of physical migration to the cloud.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the task. For more information, see the description of the **Status** request parameter in this operation.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'NeedUpgrade' => ['description' => 'Indicates whether the instance specification needs to be upgraded. Valid values:'."\n"
."\n"
.'- **true**: The specification needs to be upgraded.'."\n"
.'- **false**: The specification does not need to be upgraded.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'Percent' => ['description' => 'The task progress, in percentage.', 'type' => 'string', 'example' => '85', 'title' => ''],
'Progress' => ['description' => 'The number of tables that have been migrated.', 'type' => 'string', 'example' => '1', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'framework: DTS-31009: In process of processing data ****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'ResourceGroupDisplayName' => ['description' => 'The name of the resource group.', 'type' => 'string', 'example' => 'default resource group', 'title' => ''],
'MigrationErrMsg' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'dts.retry.err.0046.msg', 'title' => ''],
'MigrationErrHelpDocId' => ['description' => 'The ID of the help documentation for the error code.', 'type' => 'string', 'example' => '462133', 'title' => ''],
'MigrationErrWorkaround' => ['description' => 'The workaround for the error.', 'type' => 'string', 'example' => 'dts.retry.err.0046.workaround', 'title' => ''],
'MigrationErrCode' => ['description' => 'The error code.', 'type' => 'string', 'example' => 'dts.retry.err.0046', 'title' => ''],
'MigrationErrHelpDocKey' => ['description' => 'The key of the help documentation for the error code.', 'type' => 'string', 'example' => 'DTS-RETRY-ERR-0046', 'title' => ''],
'MigrationErrType' => ['description' => 'The type of the error code.', 'type' => 'string', 'example' => 'ForeignKey', 'title' => ''],
'EtlSafeCheckpoint' => ['description' => 'The safe checkpoint of the ETL task.', 'type' => 'string', 'example' => '1610540493', 'title' => ''],
'FullDataCheckStatus' => [
'description' => 'The status information of full data verification.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the full data verification task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Checking**: verifying.'."\n"
.'- **Failed**: verification failed.'."\n"
.'- **Finished**: verification completed.', 'type' => 'string', 'example' => 'Checking', 'title' => ''],
'Percent' => ['description' => 'The progress of the full data verification task, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The progress of the full data verification task.', 'type' => 'string', 'example' => '1 rows/s (row: 5/5, table: 1/1)', 'title' => ''],
'CanSwitch' => ['description' => 'Indicates whether migration switchover can be performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.'."\n"
."\n"
.'> This parameter is used by the one-click upgrade feature of PolarDB.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'IncDataCheckStatus' => [
'description' => 'The status information of incremental data verification.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the incremental data verification task. Valid values:'."\n"
.'- **Catched**: no latency.'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Checking**: verifying.'."\n"
.'- **Failed**: verification failed.', 'type' => 'string', 'example' => 'Checking', 'title' => ''],
'Percent' => ['description' => 'The progress of the incremental data verification task, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The progress of the incremental data verification task.', 'type' => 'string', 'example' => '1 rows/s (row: 5/5, table: 1/1)', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DtsBisLabel' => ['description' => 'The environment label of the DTS instance. Valid values:'."\n"
."\n"
.'- **normal**: normal'."\n"
.'- **online**: online', 'type' => 'string', 'example' => 'normal', 'title' => ''],
'MinDu' => ['description' => 'The minimum number of DUs for the serverless instance.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''],
'MaxDu' => ['description' => 'The maximum number of DUs for the serverless instance.', 'type' => 'number', 'format' => 'double', 'example' => '16', 'title' => ''],
'DuRealUsage' => ['description' => 'The DU usage of the dedicated cluster task.', 'type' => 'string', 'example' => '12.0%', 'title' => ''],
'StructureDataCheckStatus' => [
'description' => 'The status information of schema verification.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the schema verification task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Checking**: verifying.'."\n"
.'- **Failed**: verification failed.'."\n"
.'- **Finished**: verification completed.'."\n"
.'- **Inconsistency**: the task completed but inconsistent data exists.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of the schema verification task, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => '****', 'title' => ''],
'Progress' => ['description' => 'The number of objects for which schema verification has been completed.', 'type' => 'string', 'example' => '5', 'title' => ''],
],
'title' => '',
'example' => '',
],
'InsightModule' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''],
'TimeWindowDataCheckStatus' => [
'type' => 'object',
'properties' => [
'Status' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'Percent' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'ErrorMessage' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'Progress' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'EtlDemoList' => [
'description' => 'The task list and execution details of each task.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The instance status of the DTS instance. Valid values:'."\n"
."\n"
.'Data migration task statuses:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.'."\n"
."\n"
.'Data synchronization task statuses:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Initializing**: performing initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **Synchronizing**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **ModifyFailed**: failed to modify synchronization objects.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.'."\n"
."\n"
.'Change tracking task statuses:'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **Starting**: starting.'."\n"
.'- **Normal**: normal.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Abnormal**: abnormal.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'OriginType' => ['description' => 'The task source:'."\n"
."\n"
.'- **PTS task**'."\n"
.'- **DMS task**'."\n"
.'- **DTS task**', 'type' => 'string', 'example' => 'DTS任务', 'title' => ''],
'DtsJobName' => ['description' => 'The name of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'RDS间迁移', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data migration or synchronization.'."\n"
.'> For data migration tasks, the unit is milliseconds. For data synchronization tasks, the unit is seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of **PayType** is **PrePaid**.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
'CreateTime' => ['description' => 'The task creation time in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-16T08:01:19Z', 'title' => ''],
'PayType' => ['description' => 'The billing method of the instance. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'Reserved' => ['description' => 'The reserved parameter of DTS in JSON format. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'ConsumptionClient' => ['description' => 'The downstream consumer client information, which consists of an IP address and a random number generated by DTS.', 'type' => 'string', 'example' => '114...:dts******', 'title' => ''],
'DbObject' => ['description' => 'The objects for data migration, data synchronization, or change tracking. For more information, see [Objects for data migration, data synchronization, or change tracking](~~209545~~).', 'type' => 'string', 'example' => '{"dtstestdata": { "name": "dtstestdata", "all": true }}', 'title' => ''],
'DtsJobClass' => ['description' => 'The specification of the data transmission link.'."\n"
.'> For more information about link specifications and performance test results, see [Specifications of data migration links](~~26606~~) and [Specifications of data synchronization links](~~26605~~).', 'type' => 'string', 'example' => 'large', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the downstream consumer for the change tracking instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-23T07:30:31Z', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range for data stored in the change tracking instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-26T14:03:21Z', 'title' => ''],
'AppName' => ['description' => 'Indicates whether the instance uses the new version of change tracking. The value **new** indicates the new version.'."\n"
.'> This parameter is returned only for new-version change tracking instances.', 'type' => 'string', 'example' => 'new', 'title' => ''],
'BeginTimestamp' => ['description' => 'The beginning of the timestamp range for data stored in the change tracking instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-15T08:25:34Z', 'title' => ''],
'DtsInstanceID' => ['description' => 'The ID of the data migration, data synchronization, or change tracking instance.', 'type' => 'string', 'example' => 'dtsi03e3zty16i****', 'title' => ''],
'DtsJobDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> This parameter is returned only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'Checkpoint' => ['description' => 'The start checkpoint of incremental data migration or the synchronization checkpoint, in the format of a Unix timestamp. Unit: seconds.', 'type' => 'string', 'example' => '1616899019', 'title' => ''],
'TagList' => [
'description' => 'The tag collection.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'testvalue', 'title' => ''],
'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'testkey', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'DataInitializationStatus' => [
'description' => 'The status of full data migration or initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of full data migration or initial full data synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating or initializing.'."\n"
.'- **Failed**: migration or initialization failed.'."\n"
.'- **Finished**: migration or initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of full data migration or initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when full data migration or initial full data synchronization fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been migrated or initialized during full data migration or initial full data synchronization.', 'type' => 'string', 'example' => '44755', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data migration or synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data migration or synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating or synchronizing.'."\n"
.'- **Failed**: migration or synchronization failed.'."\n"
.'- **Finished**: migration or synchronization completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Catched', 'title' => ''],
'NeedUpgrade' => ['description' => 'Indicates whether the instance specification needs to be upgraded. Valid values:'."\n"
."\n"
.'- **true**: The specification needs to be upgraded.'."\n"
.'- **false**: The specification does not need to be upgraded.'."\n"
."\n"
.'> To upgrade the instance specification, call [TransferInstanceClass](~~281093~~).', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data migration or synchronization, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been migrated or synchronized during incremental data migration or synchronization.', 'type' => 'string', 'example' => '0/0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data migration or synchronization fails.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataEtlStatus' => [
'description' => 'The status of the ETL task.'."\n"
.'> This parameter set is returned only after an ETL task is configured.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the ETL task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: running.'."\n"
.'- **Failed**: execution failed.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of the ETL task, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the ETL task fails.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been processed by the ETL task.', 'type' => 'string', 'example' => '0/0', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'Region' => ['description' => 'The region in which the destination instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp1imrtn6fq7h****', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'MigrationMode' => [
'description' => 'The migration type or synchronization initialization type.',
'type' => 'object',
'properties' => [
'DataInitialization' => ['description' => 'Indicates whether full data migration or initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data migration or synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'StructureInitialization' => ['description' => 'Indicates whether schema migration or initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The performance information of the data migration or synchronization link.',
'type' => 'object',
'properties' => [
'Rps' => ['description' => 'The number of SQL statements migrated or synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Flow' => ['description' => 'The volume of data migrated or synchronized per second. Unit: MB/s.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck status. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: running a precheck.'."\n"
.'- **Failed**: precheck failed.'."\n"
.'- **Finished**: precheck completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The overall progress of the precheck, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the precheck fails.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ.', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'CheckResult' => ['description' => 'The check result. Valid values:'."\n"
.'- **Success**: The check item passed.'."\n"
.'- **Failed**: The check item did not pass.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'CheckItemDescription' => ['description' => 'The description of the precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL', 'title' => ''],
'CheckItem' => ['description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the precheck does not pass.'."\n"
.'> This parameter is returned only when the value of **CheckResult** is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2', 'title' => ''],
'FailedReason' => ['description' => 'The error message returned when the precheck does not pass.'."\n"
.'> This parameter is returned only when the value of **CheckResult** is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'ReverseJob' => [
'description' => 'The execution details of the reverse synchronization task.'."\n"
.'> This parameter set is returned only when the task is a data synchronization task with a two-way synchronization topology.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the reverse synchronization task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **PreCheckPass**: precheck passed.'."\n"
.'- **NotConfigured**: not configured.'."\n"
.'- **Initializing**: performing initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **Synchronizing**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **ModifyFailed**: failed to modify synchronization objects.'."\n"
.'- **Finished**: completed.'."\n"
.'- **Retrying**: retrying.'."\n"
.'- **Upgrade**: upgrading.'."\n"
.'- **Locked**: locked.'."\n"
.'- **Downgrade**: downgrading.', 'type' => 'string', 'example' => 'Synchronizing', 'title' => ''],
'DtsJobName' => ['description' => 'The name of the synchronization task.', 'type' => 'string', 'example' => 'RDS间迁移', 'title' => ''],
'Delay' => ['description' => 'The latency of incremental data synchronization. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task fails.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the synchronization task.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the instance in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of **PayType** is **PrePaid**.', 'type' => 'string', 'example' => '2022-03-16T08:01:19Z', 'title' => ''],
'CreateTime' => ['description' => 'The task creation time in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-16T08:01:19Z', 'title' => ''],
'PayType' => ['description' => 'The billing method of the instance. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''],
'Reserved' => ['description' => 'The reserved parameter of DTS in JSON format. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. For more information, see [MigrationReserved parameter description](~~176470~~).', 'type' => 'string', 'example' => '{\\"srcHostPorts\\":\\"\\",\\"whitelist.dms.online.ddl.enable\\":false,\\"filterDDL\\":false,\\"sqlparser.dms.original.ddl\\":true,\\"srcOracleType\\":\\"sid\\",\\"maxRetryTime\\":43200,\\"destSSL\\":\\"0\\",\\"destOracleType\\":\\"sid\\",\\"srcSSL\\":\\"0\\",\\"dbListCaseChangeMode\\":\\"default\\",\\"SourceEngineVersion\\":\\"8.0.18\\",\\"srcNetType\\":\\"VPC\\",\\"destNetType\\":\\"VPC\\",\\"srcVpcNetMappingInst\\":\\"172.16.1**.**:10803\\",\\"destVpcNetMappingInst\\":\\"172.16.1**.**:11077\\",\\"useJobTask\\":\\"1\\"}', 'title' => ''],
'DbObject' => ['description' => 'The schema definition of the synchronization objects in JSON format, which supports certain regular expressions. For more information and examples, see [Objects for data migration, data synchronization, or change tracking](~~209545~~).', 'type' => 'string', 'example' => '{"dtstestdata": { "name": "dtstestdata", "all": true }} ', 'title' => ''],
'DtsJobClass' => ['description' => 'The specification of the data transmission link.'."\n"
.'> For more information about link specifications and performance test results, see [Specifications of data synchronization links](~~26605~~).', 'type' => 'string', 'example' => 'large', 'title' => ''],
'DtsInstanceID' => ['description' => 'The ID of the data synchronization instance.', 'type' => 'string', 'example' => 'dtsi03e3zty16i****', 'title' => ''],
'DtsJobDirection' => ['description' => 'The synchronization direction. The value is fixed as **Reverse**.', 'type' => 'string', 'example' => 'Reverse', 'title' => ''],
'Checkpoint' => ['description' => 'The synchronization checkpoint of incremental data synchronization, in the format of a Unix timestamp. Unit: seconds.', 'type' => 'string', 'example' => '1616980369', 'title' => ''],
'DataInitializationStatus' => [
'description' => 'The status of initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of initial full data synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: initializing.'."\n"
.'- **Failed**: initialization failed.'."\n"
.'- **Finished**: initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial full data synchronization fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: "" ', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been synchronized during initial full data synchronization.', 'type' => 'string', 'example' => '43071', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data synchronization.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'NeedUpgrade' => ['description' => 'Indicates whether the instance specification needs to be upgraded. Valid values:'."\n"
."\n"
.'- **true**: The specification needs to be upgraded.'."\n"
.'- **false**: The specification does not need to be upgraded.'."\n"
."\n"
.'> To upgrade the instance specification, call [TransferInstanceClass](~~281093~~).', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been migrated or synchronized during incremental data migration or synchronization.', 'type' => 'string', 'example' => '20001', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data synchronization fails.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when **EngineName** of the destination instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'Region' => ['description' => 'The region in which the destination instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the synchronization objects belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.88.*** ', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'MigrationMode' => [
'description' => 'The migration type or synchronization initialization type.',
'type' => 'object',
'properties' => [
'DataInitialization' => ['description' => 'Indicates whether full data migration or initial full data synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether incremental data migration or synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'StructureInitialization' => ['description' => 'Indicates whether schema migration or initial schema synchronization is performed. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The performance information of the data migration or synchronization link.',
'type' => 'object',
'properties' => [
'Rps' => ['description' => 'The number of SQL statements migrated or synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Flow' => ['description' => 'The volume of data migrated or synchronized per second. Unit: MB/s.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck status. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Checking**: running a precheck.'."\n"
.'- **Failed**: precheck failed.'."\n"
.'- **Finished**: precheck completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The overall progress of the precheck, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the precheck fails.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'CheckResult' => ['description' => 'The check result. Valid values:'."\n"
.'- **Success**: The check item passed.'."\n"
.'- **Failed**: The check item did not pass.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'CheckItemDescription' => ['description' => 'The description of the precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL', 'title' => ''],
'CheckItem' => ['description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the precheck does not pass.'."\n"
.'> This parameter is returned only when the value of **CheckResult** is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2', 'title' => ''],
'FailedReason' => ['description' => 'The error message returned when the precheck does not pass.'."\n"
.'> This parameter is returned only when the value of **CheckResult** is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.XXX.XX\' (using password: YES)', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when **EngineName** of the source instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'Region' => ['description' => 'The region in which the source instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.XX.XX', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp1imrtn6fq7h****', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.'."\n"
.'[_single.resp.200.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of initial schema synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: initializing.'."\n"
.'- **Failed**: initialization failed.'."\n"
.'- **Finished**: initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial schema synchronization fails.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'Progress' => ['description' => 'The number of tables for which initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'EtlSafeCheckpoint' => ['description' => 'The safe checkpoint of the ETL task.', 'type' => 'string', 'example' => '161054****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'SslSolutionEnum' => ['description' => 'Indicates whether an SSL connection is used. Valid values:'."\n"
."\n"
.'- **DISABLE**: SSL is not used.'."\n"
.'- **ENABLE_WITH_CERTIFICATE**: SSL is used with a CA certificate uploaded.'."\n"
.'- **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL is used to connect to AWS MongoDB Atlas.'."\n"
.'- **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to connect to Kafka.', 'type' => 'string', 'example' => 'DISABLE', 'title' => ''],
'OracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when **EngineName** of the source instance is **Oracle** and the Oracle database is a non-RAC instance.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'Region' => ['description' => 'The region in which the source instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the migration objects belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Ip' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database engine of the source instance.'."\n"
.'[_single.resp.200.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of schema migration or initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of schema migration or initial schema synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating or initializing.'."\n"
.'- **Failed**: migration or initialization failed.'."\n"
.'- **Finished**: migration or initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of schema migration or initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when schema migration or initial schema synchronization fails.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'Progress' => ['description' => 'The number of tables for which schema migration or initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'RetryState' => [
'description' => 'The retry state. DTS is retrying because the task encountered an exception.',
'type' => 'object',
'properties' => [
'RetryCount' => ['description' => 'The number of retries that have been performed.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''],
'MaxRetryTime' => ['description' => 'The maximum retry duration. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '7200', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the retry fails.', 'type' => 'string', 'example' => 'Unexpected error', 'title' => ''],
'RetryTarget' => ['description' => 'The retry target. Valid values:'."\n"
."\n"
.'- **srcDB**: the source database.'."\n"
.'- **destDB**: the destination database.'."\n"
.'- **inner_module**: a DTS internal module.', 'type' => 'string', 'example' => 'srcDB', 'title' => ''],
'RetryTime' => ['description' => 'The time that has been spent on retries. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '3600', 'title' => ''],
'Module' => ['description' => 'The instance progress.', 'type' => 'string', 'example' => '03', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'bi6e22ay243****', 'title' => ''],
'Retrying' => ['description' => 'Indicates whether the task is being retried. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
],
'title' => '',
'example' => '',
],
'JobType' => ['title' => '', 'description' => 'The type of the DTS task. Valid values:'."\n"
.'- **online**: data migration.'."\n"
.'- **sync**: data synchronization.'."\n"
.'- **subscribe**: change tracking.', 'type' => 'string', 'example' => 'online'],
'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'ResourceGroupDisplayName' => ['description' => 'The name of the resource group.', 'type' => 'string', 'example' => 'default resource group', 'title' => ''],
'EtlSafeCheckpoint' => ['description' => 'The safe checkpoint of the ETL task.', 'type' => 'string', 'example' => '161054****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'title' => 'Query DTS task list and execution details',
'summary' => 'Queries the list of DTS tasks and the execution details of each task.',
'description' => 'This operation has rate limits. Calls that exceed the limits are rejected.'."\n"
.'- The cumulative threshold for calls in a single region is 200 calls per second.'."\n"
.'- The threshold for calls by a single account in a single region is 20 calls per second.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"PageRecordCount\\": 20,\\n \\"TotalRecordCount\\": 15,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"PageNumber\\": 2,\\n \\"DynamicCode\\": \\"403\\",\\n \\"DtsJobList\\": [\\n {\\n \\"Status\\": \\"Migrating\\",\\n \\"OriginType\\": \\"DTS任务\\",\\n \\"DtsJobName\\": \\"RDS间迁移\\",\\n \\"Delay\\": 0,\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"ExpireTime\\": \\"2022-03-16T08:01:19Z\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"CreateTime\\": \\"2021-03-16T08:01:19Z\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"ConsumptionClient\\": \\"114...:dts******\\",\\n \\"DbObject\\": \\"{\\\\\\"dtstestdata\\\\\\": { \\\\\\"name\\\\\\": \\\\\\"dtstestdata\\\\\\", \\\\\\"all\\\\\\": true }}\\",\\n \\"DtsJobClass\\": \\"large\\",\\n \\"ConsumptionCheckpoint\\": \\"2021-03-23T07:30:31Z\\",\\n \\"EndTimestamp\\": \\"2021-03-26T14:03:21Z\\",\\n \\"AppName\\": \\"new\\",\\n \\"BeginTimestamp\\": \\"2021-03-15T08:25:34Z\\\\t\\",\\n \\"DtsInstanceID\\": \\"dtsi03e3zty16i****\\",\\n \\"DtsJobDirection\\": \\"Forward\\",\\n \\"Checkpoint\\": \\"1616899019\\",\\n \\"TagList\\": [\\n {\\n \\"TagValue\\": \\"testvalue\\",\\n \\"TagKey\\": \\"testkey\\"\\n }\\n ],\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"44755\\"\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Catched\\",\\n \\"NeedUpgrade\\": true,\\n \\"Percent\\": \\"95\\",\\n \\"Progress\\": \\"0/0\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\\\t\\"\\n },\\n \\"DataEtlStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"95\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\\\t\\",\\n \\"Progress\\": \\"0/0\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Ip\\": \\"172.16.88.***\\",\\n \\"InstanceID\\": \\"rm-bp1imrtn6fq7h****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"MigrationMode\\": {\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"StructureInitialization\\": true,\\n \\"FullDataCheck\\": true,\\n \\"IncDataCheck\\": true,\\n \\"StructureDataCheck\\": true,\\n \\"TimeWindowCheck\\": false\\n },\\n \\"Performance\\": {\\n \\"Rps\\": \\"100\\",\\n \\"Flow\\": \\"1\\"\\n },\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"CHECK__ERROR_SAME_OBJ.\\",\\n \\"Detail\\": [\\n {\\n \\"CheckResult\\": \\"Success\\",\\n \\"CheckItemDescription\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"CheckItem\\": \\"CHECK_CONN_SRC\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\",\\n \\"FailedReason\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\"\\n }\\n ]\\n },\\n \\"ReverseJob\\": {\\n \\"Status\\": \\"Synchronizing\\",\\n \\"DtsJobName\\": \\"RDS间迁移\\",\\n \\"Delay\\": 0,\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"ExpireTime\\": \\"2023-03-16T08:01:19Z\\",\\n \\"CreateTime\\": \\"2022-03-16T08:01:19Z\\",\\n \\"PayType\\": \\"PostPaid\\",\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"DbObject\\": \\"{\\\\\\"dtstestdata\\\\\\": { \\\\\\"name\\\\\\": \\\\\\"dtstestdata\\\\\\", \\\\\\"all\\\\\\": true }}\\",\\n \\"DtsJobClass\\": \\"large\\",\\n \\"DtsInstanceID\\": \\"dtsi03e3zty16i****\\",\\n \\"DtsJobDirection\\": \\"Reverse\\",\\n \\"Checkpoint\\": \\"1616980369\\",\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"43071\\"\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Migrating\\",\\n \\"NeedUpgrade\\": true,\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"20001\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Ip\\": \\"172.16.88.***\\",\\n \\"InstanceID\\": \\"rm-bp1162kryivb8****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"MigrationMode\\": {\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"StructureInitialization\\": true,\\n \\"FullDataCheck\\": true,\\n \\"IncDataCheck\\": true,\\n \\"StructureDataCheck\\": true,\\n \\"TimeWindowCheck\\": false\\n },\\n \\"Performance\\": {\\n \\"Rps\\": \\"100\\",\\n \\"Flow\\": \\"1\\"\\n },\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"CHECK__ERROR_SAME_OBJ.\\",\\n \\"Detail\\": [\\n {\\n \\"CheckResult\\": \\"Success\\",\\n \\"CheckItemDescription\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"CheckItem\\": \\"CHECK_CONN_SRC\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\",\\n \\"FailedReason\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\"\\n }\\n ]\\n },\\n \\"SourceEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Ip\\": \\"172.16.88.***\\",\\n \\"InstanceID\\": \\"rm-bp1imrtn6fq7h****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"Progress\\": \\"1\\"\\n },\\n \\"DuUsage\\": 15,\\n \\"CpuUsage\\": \\"90\\",\\n \\"MemUsage\\": \\"500\\",\\n \\"DedicatedClusterId\\": \\"dtscluster_dpwl3**********\\",\\n \\"ErrorDetails\\": [\\n {\\n \\"ErrorCode\\": \\"DTS-31009\\",\\n \\"HelpUrl\\": \\"https://**.ali**.com/**\\"\\n }\\n ],\\n \\"EtlSafeCheckpoint\\": \\"1610540493\\",\\n \\"MinDu\\": 1,\\n \\"MaxDu\\": 16,\\n \\"FullDataCheckStatus\\": {\\n \\"Status\\": \\"Checking\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"1 rows/s (row: 5/5, table: 1/1)\\",\\n \\"CanSwitch\\": false\\n },\\n \\"IncDataCheckStatus\\": {\\n \\"Status\\": \\"Checking\\",\\n \\"Percent\\": \\"95\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"1 rows/s (row: 5/5, table: 1/1)\\"\\n },\\n \\"StructureDataCheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"****\\",\\n \\"Progress\\": \\"5\\"\\n }\\n },\\n \\"SourceEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Ip\\": \\"172.16.88.***\\",\\n \\"InstanceID\\": \\"rm-bp1162kryivb8****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"Progress\\": \\"1\\"\\n },\\n \\"RetryState\\": {\\n \\"RetryCount\\": 5,\\n \\"MaxRetryTime\\": 7200,\\n \\"ErrMessage\\": \\"Unexpected error\\",\\n \\"RetryTarget\\": \\"srcDB\\",\\n \\"RetryTime\\": 3600,\\n \\"Module\\": \\"03\\",\\n \\"JobId\\": \\"bi6e22ay243****\\",\\n \\"Retrying\\": false,\\n \\"MigrationErrHelpDocId\\": \\"462133\\",\\n \\"MigrationErrHelpDocKey\\": \\"DTS-RETRY-ERR-0046\\",\\n \\"MigrationErrCode\\": \\"dts.retry.err.0046\\",\\n \\"MigrationErrType\\": \\"ForeignKey\\",\\n \\"MigrationErrMsg\\": \\"dts.retry.err.0046.msg\\",\\n \\"MigrationErrWorkaround\\": \\"dts.retry.err.0046.workaround\\"\\n },\\n \\"JobType\\": \\"online\\",\\n \\"DuUsage\\": 15,\\n \\"CpuUsage\\": \\"1\\",\\n \\"MemUsage\\": \\"500\\",\\n \\"DedicatedClusterId\\": \\"dtscluster_ft7y3**********\\",\\n \\"ErrorDetails\\": [\\n {\\n \\"ErrorCode\\": \\"DTS-31009\\",\\n \\"HelpUrl\\": \\"https://**.ali**.com/**\\"\\n }\\n ],\\n \\"DataCloudStatus\\": {\\n \\"Status\\": \\"Migrating\\",\\n \\"NeedUpgrade\\": false,\\n \\"Percent\\": \\"85\\",\\n \\"Progress\\": \\"1\\",\\n \\"ErrorMessage\\": \\"framework: DTS-31009: In process of processing data ****\\"\\n },\\n \\"ResourceGroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"ResourceGroupDisplayName\\": \\"default resource group\\",\\n \\"MigrationErrMsg\\": \\"dts.retry.err.0046.msg\\",\\n \\"MigrationErrHelpDocId\\": \\"462133\\",\\n \\"MigrationErrWorkaround\\": \\"dts.retry.err.0046.workaround\\",\\n \\"MigrationErrCode\\": \\"dts.retry.err.0046\\",\\n \\"MigrationErrHelpDocKey\\": \\"DTS-RETRY-ERR-0046\\",\\n \\"MigrationErrType\\": \\"ForeignKey\\",\\n \\"EtlSafeCheckpoint\\": \\"1610540493\\",\\n \\"FullDataCheckStatus\\": {\\n \\"Status\\": \\"Checking\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"1 rows/s (row: 5/5, table: 1/1)\\",\\n \\"CanSwitch\\": false\\n },\\n \\"IncDataCheckStatus\\": {\\n \\"Status\\": \\"Checking\\",\\n \\"Percent\\": \\"95\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"1 rows/s (row: 5/5, table: 1/1)\\"\\n },\\n \\"DtsBisLabel\\": \\"normal\\",\\n \\"MinDu\\": 1,\\n \\"MaxDu\\": 16,\\n \\"DuRealUsage\\": \\"12.0%\\",\\n \\"StructureDataCheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"****\\",\\n \\"Progress\\": \\"5\\"\\n },\\n \\"InsightModule\\": false,\\n \\"TimeWindowDataCheckStatus\\": {\\n \\"Status\\": \\"\\",\\n \\"Percent\\": \\"\\",\\n \\"ErrorMessage\\": \\"\\",\\n \\"Progress\\": \\"\\"\\n }\\n }\\n ],\\n \\"EtlDemoList\\": [\\n {\\n \\"Status\\": \\"Migrating\\",\\n \\"OriginType\\": \\"DTS任务\\",\\n \\"DtsJobName\\": \\"RDS间迁移\\",\\n \\"Delay\\": 0,\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"ExpireTime\\": \\"2022-03-16T08:01:19Z\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"CreateTime\\": \\"2021-03-16T08:01:19Z\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"ConsumptionClient\\": \\"114...:dts******\\",\\n \\"DbObject\\": \\"{\\\\\\"dtstestdata\\\\\\": { \\\\\\"name\\\\\\": \\\\\\"dtstestdata\\\\\\", \\\\\\"all\\\\\\": true }}\\",\\n \\"DtsJobClass\\": \\"large\\",\\n \\"ConsumptionCheckpoint\\": \\"2021-03-23T07:30:31Z\\",\\n \\"EndTimestamp\\": \\"2021-03-26T14:03:21Z\\",\\n \\"AppName\\": \\"new\\",\\n \\"BeginTimestamp\\": \\"2021-03-15T08:25:34Z\\",\\n \\"DtsInstanceID\\": \\"dtsi03e3zty16i****\\",\\n \\"DtsJobDirection\\": \\"Forward\\",\\n \\"Checkpoint\\": \\"1616899019\\",\\n \\"TagList\\": [\\n {\\n \\"TagValue\\": \\"testvalue\\",\\n \\"TagKey\\": \\"testkey\\"\\n }\\n ],\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"44755\\"\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Catched\\",\\n \\"NeedUpgrade\\": true,\\n \\"Percent\\": \\"95\\",\\n \\"Progress\\": \\"0/0\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\"\\n },\\n \\"DataEtlStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"95\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\",\\n \\"Progress\\": \\"0/0\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Ip\\": \\"172.16.88.***\\",\\n \\"InstanceID\\": \\"rm-bp1imrtn6fq7h****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"MigrationMode\\": {\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"StructureInitialization\\": true\\n },\\n \\"Performance\\": {\\n \\"Rps\\": \\"100\\",\\n \\"Flow\\": \\"1\\"\\n },\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"CHECK__ERROR_SAME_OBJ.\\",\\n \\"Detail\\": [\\n {\\n \\"CheckResult\\": \\"Success\\",\\n \\"CheckItemDescription\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"CheckItem\\": \\"CHECK_CONN_SRC\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\",\\n \\"FailedReason\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\"\\n }\\n ]\\n },\\n \\"ReverseJob\\": {\\n \\"Status\\": \\"Synchronizing\\",\\n \\"DtsJobName\\": \\"RDS间迁移\\",\\n \\"Delay\\": 0,\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"ExpireTime\\": \\"2022-03-16T08:01:19Z\\",\\n \\"CreateTime\\": \\"2021-03-16T08:01:19Z\\",\\n \\"PayType\\": \\"PostPaid\\",\\n \\"Reserved\\": \\"{\\\\\\\\\\\\\\"srcHostPorts\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"whitelist.dms.online.ddl.enable\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"filterDDL\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"sqlparser.dms.original.ddl\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"srcOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"maxRetryTime\\\\\\\\\\\\\\":43200,\\\\\\\\\\\\\\"destSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destOracleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcSSL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dbListCaseChangeMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"default\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"SourceEngineVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"8.0.18\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destNetType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"VPC\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"srcVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:10803\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"destVpcNetMappingInst\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"172.16.1**.**:11077\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useJobTask\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\",\\n \\"DbObject\\": \\"{\\\\\\"dtstestdata\\\\\\": { \\\\\\"name\\\\\\": \\\\\\"dtstestdata\\\\\\", \\\\\\"all\\\\\\": true }}\\\\t\\",\\n \\"DtsJobClass\\": \\"large\\",\\n \\"DtsInstanceID\\": \\"dtsi03e3zty16i****\\",\\n \\"DtsJobDirection\\": \\"Reverse\\",\\n \\"Checkpoint\\": \\"1616980369\\",\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\\\t\\",\\n \\"Progress\\": \\"43071\\"\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Migrating\\",\\n \\"NeedUpgrade\\": true,\\n \\"Percent\\": \\"100\\",\\n \\"Progress\\": \\"20001\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Ip\\": \\"172.16.88.***\\\\t\\",\\n \\"InstanceID\\": \\"rm-bp1162kryivb8****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"MigrationMode\\": {\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"StructureInitialization\\": true\\n },\\n \\"Performance\\": {\\n \\"Rps\\": \\"100\\",\\n \\"Flow\\": \\"1\\"\\n },\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"CHECK__ERROR_SAME_OBJ\\",\\n \\"Detail\\": [\\n {\\n \\"CheckResult\\": \\"Success\\",\\n \\"CheckItemDescription\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"CheckItem\\": \\"CHECK_CONN_SRC\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\",\\n \\"FailedReason\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.XXX.XX\' (using password: YES)\\"\\n }\\n ]\\n },\\n \\"SourceEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Ip\\": \\"172.16.XX.XX\\",\\n \\"InstanceID\\": \\"rm-bp1imrtn6fq7h****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"Progress\\": \\"1\\"\\n },\\n \\"EtlSafeCheckpoint\\": \\"161054****\\"\\n },\\n \\"SourceEndpoint\\": {\\n \\"SslSolutionEnum\\": \\"DISABLE\\",\\n \\"OracleSID\\": \\"testsid\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"Ip\\": \\"172.16.88.***\\",\\n \\"InstanceID\\": \\"rm-bp1162kryivb8****\\",\\n \\"Port\\": \\"3306\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"Progress\\": \\"1\\"\\n },\\n \\"RetryState\\": {\\n \\"RetryCount\\": 5,\\n \\"MaxRetryTime\\": 7200,\\n \\"ErrMessage\\": \\"Unexpected error\\",\\n \\"RetryTarget\\": \\"srcDB\\",\\n \\"RetryTime\\": 3600,\\n \\"Module\\": \\"03\\",\\n \\"JobId\\": \\"bi6e22ay243****\\",\\n \\"Retrying\\": false\\n },\\n \\"JobType\\": \\"online\\",\\n \\"ResourceGroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"ResourceGroupDisplayName\\": \\"default resource group\\",\\n \\"EtlSafeCheckpoint\\": \\"161054****\\"\\n }\\n ]\\n}","type":"json"}]',
],
'DescribeDtsServiceLog' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '52249',
'abilityTreeNodes' => ['FEATUREdtsDW6WLD'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration or synchronization task.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'c1yr56py103****', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of log entries per page. Valid values: **20**, **50**, **100**, **500**, and **1000**. Default value: **20**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['description' => 'The start time of the log information.'."\n"
."\n"
.'> - To query the log information of a DTS subtask within a specific time range, call [DescribePreCheckStatus](~~209718~~) to query the execution time of the DTS subtask.'."\n"
.'- The start time is a 13-digit UNIX timestamp in milliseconds. You can use a search engine to find a UNIX timestamp converter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1620896327000', 'title' => ''],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['description' => 'The end time of the log information. You can call [DescribePreCheckStatus](~~209718~~) to query the end time.'."\n"
.'> - To query the log information of a DTS subtask within a specific time range, call [DescribePreCheckStatus](~~209718~~) to query the execution time of the DTS subtask.'."\n"
.'- The time is a 13-digit UNIX timestamp in milliseconds. You can use a search engine to find a UNIX timestamp converter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1620897227000', 'title' => ''],
],
[
'name' => 'Status',
'in' => 'query',
'schema' => ['description' => 'The log level of the log information. Separate multiple values with commas (,). Valid values:'."\n"
."\n"
.'- **NORMAL**: Normal.'."\n"
.'- **WARN**: Warning.'."\n"
.'- **ERROR**: Error.', 'type' => 'string', 'required' => false, 'example' => 'NORMAL,WARN,ERROR', 'title' => ''],
],
[
'name' => 'SubJobType',
'in' => 'query',
'schema' => ['description' => 'The type of the DTS task subnode. Valid values:'."\n"
."\n\n"
.'- **DATA_LOAD**: full data migration or initial full data synchronization.'."\n"
.'- **ONLINE_WRITER**: incremental data migration.'."\n"
.'- **SYNC_WRITER**: incremental data synchronization.', 'type' => 'string', 'required' => false, 'example' => 'SYNC_WRITER', 'title' => ''],
],
[
'name' => 'Keyword',
'in' => 'query',
'schema' => ['description' => 'The keyword used to filter query results.'."\n"
.'> Fuzzy match is used and the keyword is case-sensitive.', 'type' => 'string', 'required' => false, 'example' => 'state = IDLE', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (Zero-ETL) node. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F87DF250-952C-47FE-8A02-69414FAA****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'PageRecordCount' => ['description' => 'The number of log entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of log entries that meet the specified conditions.', 'type' => 'integer', 'format' => 'int64', 'example' => '35', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** parameter.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'ServiceLogContexts' => [
'description' => 'The task logs details of the node.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Context' => ['description' => 'The specific log information.', 'type' => 'string', 'example' => 'Statistics: generator = 369173; collector = 470109; replicator = 2470; ping = 2/2/2; execute = 29/29/29; rt = 29/29/29; state = IDLE; queries = -1; exceptions = {connects = 0, replicates = 0}; infos = {}', 'title' => ''],
'Time' => ['description' => 'The time when the log was collected, in the yyyy-MM-ddTHH:mm:ssZ format (UTC).', 'type' => 'string', 'example' => '2021-05-13T09:13:39.443+00:00', 'title' => ''],
'State' => ['description' => 'The status of the log entry.', 'type' => 'string', 'example' => 'NORMAL', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"F87DF250-952C-47FE-8A02-69414FAA****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"PageRecordCount\\": 20,\\n \\"TotalRecordCount\\": 35,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"PageNumber\\": 1,\\n \\"DynamicCode\\": \\"403\\",\\n \\"ServiceLogContexts\\": [\\n {\\n \\"Context\\": \\"Statistics: generator = 369173; collector = 470109; replicator = 2470; ping = 2/2/2; execute = 29/29/29; rt = 29/29/29; state = IDLE; queries = -1; exceptions = {connects = 0, replicates = 0}; infos = {}\\",\\n \\"Time\\": \\"2021-05-13T09:13:39.443+00:00\\",\\n \\"State\\": \\"NORMAL\\"\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query task logs',
'summary' => 'Queries the log information of a data migration or synchronization task.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDtsServiceLog',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeEndpointSwitchStatus' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'TaskId',
'in' => 'query',
'schema' => ['description' => 'The task ID. This value is returned after you successfully call the [SwitchSynchronizationEndpoint](~~201858~~) operation.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '11****', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The ClientToken parameter supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The execution status of the task. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Initializing**: initializing.'."\n"
.'- **Switching**: switching.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: succeeded.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'ErrorMessage' => ['description' => 'This parameter is discontinued.', 'type' => 'string', 'example' => '400', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0DD6B201-604B-4CAB-B6A8-4B2953B5****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"400\\",\\n \\"RequestId\\": \\"0DD6B201-604B-4CAB-B6A8-4B2953B5****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Modify database connection information',
'summary' => 'Queries the execution status of a task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeEndpointSwitchStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeEtlJobLogs' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'list'],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the ETL task. You can call the [DescribeDtsJobs](~~209702~~) operation to query the task ID.', 'type' => 'string', 'required' => true, 'example' => 'vd*********2ls', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the DTS instance. You can call the [DescribeRegions](~~25609~~) operation to query the list of Alibaba Cloud regions.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '224DB9F7-3100-4899-AB9C-C938BCCB43E7', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the specified ETL task ID is invalid and the corresponding task cannot be found.', 'type' => 'string', 'example' => 'InvalidJobId', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. A value of false indicates a failure.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the specified ETL task ID is invalid and the corresponding task cannot be found. The task may have been deleted.', 'type' => 'string', 'example' => 'The specified dts job id %s is not exists.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message associated with this request.', 'type' => 'string', 'example' => 'present environment is not support,so skip.', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code associated with this request.', 'type' => 'string', 'example' => '403', 'title' => ''],
'EtlRunningLogs' => [
'description' => 'The array of ETL task running log objects.',
'type' => 'array',
'items' => [
'description' => 'The array of ETL task running log objects.',
'type' => 'object',
'properties' => [
'EtlId' => ['description' => 'The ID of the ETL task.', 'type' => 'string', 'example' => 'u**********5', 'title' => ''],
'UserId' => ['description' => 'The user ID.', 'type' => 'string', 'example' => '123123******12131', 'title' => ''],
'ContentKey' => ['description' => 'The status, which indicates the name of the module that generated the log, such as the transformation module of the ETL task.', 'type' => 'string', 'example' => 'DTS-ETL', 'title' => ''],
'Content' => ['description' => 'The description of the ETL task running status.', 'type' => 'string', 'example' => 'Starting DTS-ETL...', 'title' => ''],
'Status' => ['description' => 'The log level. Valid values: ERROR, WARN, INFO, and DEBUG.', 'type' => 'string', 'example' => 'INFO', 'title' => ''],
'LogDatetime' => ['description' => 'The timestamp when the log was generated.', 'type' => 'string', 'example' => '1637306503000', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"224DB9F7-3100-4899-AB9C-C938BCCB43E7\\",\\n \\"ErrCode\\": \\"InvalidJobId\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The specified dts job id %s is not exists.\\",\\n \\"DynamicMessage\\": \\"present environment is not support,so skip.\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"EtlRunningLogs\\": [\\n {\\n \\"EtlId\\": \\"u**********5\\",\\n \\"UserId\\": \\"123123******12131\\",\\n \\"ContentKey\\": \\"DTS-ETL\\",\\n \\"Content\\": \\"Starting DTS-ETL...\\",\\n \\"Status\\": \\"INFO\\",\\n \\"LogDatetime\\": \\"1637306503000\\"\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query ETL task logs',
'summary' => 'Queries the running logs of an ETL task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:DescribeEtlJobLogs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeFullProcessList' => [
'summary' => 'Queries the running details of a full data migration task.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '156988',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the migration, synchronization, or change tracking task.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i03e3zty16i****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a zero-ETL seamless integration node. Valid values:'."\n"
.'- **true**: The node is a zero-ETL seamless integration node.'."\n"
.'- **false**: The node is not a zero-ETL seamless integration node.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C166D79D-436B-45F0-B5A5-25E1959F****', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the migration, synchronization, or change tracking task.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', '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' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'ConfigList' => ['description' => 'This parameter does not return a value. The following parameters describe the rate limiting configurations:'."\n"
."\n"
.'- **dts.datamove.blaster.qps.max**: the rate of queries per second to the source database.'."\n"
.'- **dts.datamove.source.rps.max**: the number of rows per second for full data synchronization or migration (RPS).'."\n"
.'- **dts.datamove.source.bps.max**: the amount of data per second for full data synchronization or migration, in bytes per second.'."\n"
."\n"
.'> - When **JobCode** is set to **03**, you must set **EnableLimit** to **true** for the three parameters to take effect.'."\n"
.'- When **JobCode** is set to **04** or **07**, you only need to configure **dts.datamove.source.rps.max** and **dts.datamove.source.bps.max**.'."\n"
.'- A value of **-1** indicates that rate limiting is disabled.', 'type' => 'object', 'example' => '{'."\n"
.' "dts.datamove.source.rps.max": 5000,'."\n"
.' "dts.datamove.source.bps.max": 10485760'."\n"
.'}', 'title' => ''],
'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'FullProcessList' => [
'description' => 'The details of the Alibaba Cloud Global Accelerator (GA) instance list.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ProcessType' => ['description' => 'The process type. Valid values:'."\n"
.'- **1**: trusted'."\n"
.'- **2**: suspicious'."\n"
.'- **3**: malicious.', 'type' => 'string', 'example' => '1', 'title' => ''],
'ProcessName' => ['description' => 'The process name.', 'type' => 'string', 'example' => 'universer', 'title' => ''],
'RunningSQL' => ['description' => 'The SQL statement that is being executed.', 'type' => 'string', 'example' => 'test', 'title' => ''],
'Exception' => ['description' => 'The exception status of the task. Valid values: - **notstarted**: not started. - **checking**: being checked. - **failed**: failed. - **finished**: completed.', 'type' => 'string', 'example' => 'notstarted', 'title' => ''],
'TaskID' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'TaskD4E5F6', 'title' => ''],
'Detail' => ['description' => 'The details.', 'type' => 'string', 'example' => '{}', 'title' => ''],
'State' => ['description' => 'The status of the log information.', 'type' => 'string', 'example' => 'running', 'title' => ''],
'Time' => ['description' => 'The time when the log was collected, in the yyyy-MM-ddTHH:mm:ssZ format (UTC).', 'type' => 'integer', 'format' => 'int64', 'example' => '1729650129452', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"C166D79D-436B-45F0-B5A5-25E1959F****\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"ConfigList\\": {\\n \\"dts.datamove.source.rps.max\\": 5000,\\n \\"dts.datamove.source.bps.max\\": 10485760\\n },\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"FullProcessList\\": [\\n {\\n \\"ProcessType\\": \\"1\\",\\n \\"ProcessName\\": \\"universer\\",\\n \\"RunningSQL\\": \\"test\\",\\n \\"Exception\\": \\"notstarted\\",\\n \\"TaskID\\": \\"TaskD4E5F6\\",\\n \\"Detail\\": \\"{}\\",\\n \\"State\\": \\"running\\",\\n \\"Time\\": 1729650129452\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Describe full process list',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeFullProcessList',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeGadInstances' => [
'summary' => 'Queries a list of Global Active Database (GAD) instances.',
'methods' => ['post', 'get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '231735',
'abilityTreeNodes' => ['FEATUREdts05OBVW'],
],
'parameters' => [
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to query instances in a specific region. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'InstanceName',
'in' => 'query',
'schema' => ['description' => 'The name of the active geo-redundancy instance group.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of entries per page. Valid values: **1** to **100**. Default value: **20**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'MasterDbInstanceId',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'SlaveDbInstanceId',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'DbEngineTypes',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C166D79D-436B-45F0-B5A5-25E1959F****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code.', 'type' => 'string', 'example' => '403', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** placeholder in the **ErrMessage** parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **Type**, the request parameter **Type** is invalid.', 'type' => 'string', 'example' => 'present environment is not support,so skip.', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of entries that can be displayed on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of instances returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'Instances' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'Instances' => [
'description' => 'The instance details.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'InstanceRegion' => ['description' => 'The region in which the instance resides.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceId' => ['description' => 'The ID of the active geo-redundancy instance group.', 'type' => 'string', 'example' => 'rg-a76s8afa****', 'title' => ''],
'InstanceName' => ['description' => 'The name of the active geo-redundancy instance group.', 'type' => 'string', 'example' => 'test', 'title' => ''],
'DbEngineType' => ['description' => 'The database engine type.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
'Status' => ['description' => 'The running status.', 'type' => 'string', 'example' => 'running', 'title' => ''],
'MasterDbInstanceId' => ['description' => 'The instance ID of the primary instance.', 'type' => 'string', 'example' => 'rm-sadfasfa****', 'title' => ''],
'MasterDbInstanceName' => ['description' => 'The name of the primary instance.', 'type' => 'string', 'example' => 'test', 'title' => ''],
'MasterDbInstanceRegion' => ['description' => 'The region of the primary instance.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'MasterDbInstanceZoneId' => ['description' => 'The zone of the primary instance.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DbInstanceCount' => ['description' => 'The number of instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'CreateTime' => ['description' => 'The time when the instance was created.', 'type' => 'integer', 'format' => 'int64', 'example' => '2024-05-29 23:55:58', 'title' => ''],
'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-aekzq276dmnaxqa', 'title' => ''],
'InstanceType' => ['description' => 'The GAD instance type.', 'type' => 'string', 'example' => 'DR', 'title' => ''],
'MasterEngineArchType' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"C166D79D-436B-45F0-B5A5-25E1959F****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Success\\": \\"true\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"DynamicMessage\\": \\"present environment is not support,so skip.\\",\\n \\"PageRecordCount\\": 30,\\n \\"TotalRecordCount\\": 22,\\n \\"PageNumber\\": 1,\\n \\"Instances\\": {\\n \\"Instances\\": [\\n {\\n \\"InstanceRegion\\": \\"cn-hangzhou\\",\\n \\"InstanceId\\": \\"rg-a76s8afa****\\",\\n \\"InstanceName\\": \\"test\\",\\n \\"DbEngineType\\": \\"MySQL\\",\\n \\"Status\\": \\"running\\",\\n \\"MasterDbInstanceId\\": \\"rm-sadfasfa****\\",\\n \\"MasterDbInstanceName\\": \\"test\\",\\n \\"MasterDbInstanceRegion\\": \\"cn-hangzhou\\",\\n \\"MasterDbInstanceZoneId\\": \\"cn-hangzhou\\",\\n \\"DbInstanceCount\\": 2,\\n \\"CreateTime\\": 0,\\n \\"ResourceGroupId\\": \\"rg-aekzq276dmnaxqa\\",\\n \\"InstanceType\\": \\"DR\\",\\n \\"MasterEngineArchType\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query active geo-redundancy instance groups',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:DescribeGadInstances',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeInitializationStatus' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data synchronization instance resides. For more information, see [Supported regions](~~141033~~).'."\n", 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the [DescribeSynchronizationJobs](~~49454~~) operation to query the instance ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsi76118o3w92****', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of entries per page. Valid values: **1** to **100**. Default value: **30**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '300', 'minimum' => '1', 'default' => '30', 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNum',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be greater than **0** and cannot exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter. This parameter will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '150DECD9-13FF-4929-A5DE-855BE9CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the request failed.'."\n", 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the request failed.'."\n", 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DataInitializationDetails' => [
'description' => 'The details of full data initialization.',
'type' => 'array',
'items' => [
'description' => 'The details of full data initialization.',
'type' => 'object',
'properties' => [
'SourceOwnerDBName' => ['description' => 'The name of the database to which the objects to be synchronized belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Status' => ['description' => 'The status of full data initialization. Valid values:'."\n"
.'- **NotStarted**: Not started.'."\n"
.'- **Migrating**: In progress.'."\n"
.'- **Failed**: Failed.'."\n"
.'- **Finished**: Completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'UsedTime' => ['description' => 'The time consumed by full data initialization.', 'type' => 'string', 'example' => '0.0', 'title' => ''],
'TableName' => ['description' => 'The table name of the synchronization object.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when full data initialization failed.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'FinishRowNum' => ['description' => 'The number of rows that have been synchronized.'."\n"
.'> This parameter indicates the total number of rows that are actually synchronized. The value of the **TotalRowNum** parameter is obtained from the system table of the source database before synchronization starts. Due to time differences during synchronization, the two values may differ.', 'type' => 'string', 'example' => '9993', 'title' => ''],
'DestinationOwnerDBName' => ['description' => 'The name of the database to which the objects to be synchronized belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'TotalRowNum' => ['description' => 'The total number of rows to be synchronized.'."\n"
.'> The value of this parameter is obtained from the system table of the source database before synchronization starts. The **FinishRowNum** parameter indicates the total number of rows that are actually synchronized. Due to time differences during synchronization, the two values may differ.', 'type' => 'string', 'example' => '9981', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'DataSynchronizationDetails' => [
'description' => 'The details of incremental data synchronization.'."\n"
.'> This parameter set and the included response parameters will be discontinued.',
'type' => 'array',
'items' => [
'description' => 'The details of incremental data synchronization.'."\n"
.'> This parameter set and the included response parameters will be discontinued.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data synchronization. Valid values:'."\n"
.'- **NotStarted**: Not started.'."\n"
.'- **Migrating**: In progress.'."\n"
.'- **Failed**: Failed.'."\n"
.'- **Finished**: Completed.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'SourceOwnerDBName' => ['description' => 'The name of the database to which the objects to be synchronized belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'TableName' => ['description' => 'The table name of the synchronization object.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data synchronization failed.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
'DestinationOwnerDBName' => ['description' => 'The name of the database to which the objects to be synchronized belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'StructureInitializationDetails' => [
'description' => 'The details of schema initialization.',
'type' => 'array',
'items' => [
'description' => 'The details of schema initialization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of schema initialization. Valid values:'."\n"
.'- **NotStarted**: Not started.'."\n"
.'- **Migrating**: In progress.'."\n"
.'- **Failed**: Failed.'."\n"
.'- **Finished**: Completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'SourceOwnerDBName' => ['description' => 'The name of the database to which the objects to be synchronized belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'ObjectDefinition' => ['description' => 'The syntax definition of the synchronization object.'."\n", 'type' => 'string', 'example' => 'CREATE TABLE `dtstestdata`.`customer` (\\n`customer_id` int(10) unsigned auto_increment COMMENT \'\' NOT NULL , \\n`customer_title` varchar(100) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\n`customer_company1216` varchar(40) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\n`submission_date1216` date COMMENT \'\' NULL \\n, PRIMARY KEY (`customer_id`)) engine=InnoDB AUTO_INCREMENT=200001 DEFAULT CHARSET=`utf8` DEFAULT COLLATE `utf8_general_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\n', 'title' => ''],
'ObjectType' => ['description' => 'The type of the synchronization object. Valid values:'."\n"
.'**Table**, **Constraint**, **Index**, **View**, **Materialize View**, **Type**, **Synonym**, **Trigger**, **Function**, **Procedure**, **Package**, **Default**, **Rule**, **PlanGuide**, and **Sequence**.'."\n"
."\n", 'type' => 'string', 'example' => 'Table', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when schema initialization failed.'."\n", 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: Table \'customer\' already exists', 'title' => ''],
'DestinationOwnerDBName' => ['description' => 'The name of the database to which the objects to be synchronized belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'ObjectName' => ['description' => 'The name of the synchronization object.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
'Constraints' => [
'description' => 'The constraints of the synchronization object, such as indexes and foreign keys.'."\n"
.'> This parameter is returned only when **ObjectType** is set to **Table** and the synchronization object has constraints.',
'type' => 'array',
'items' => [
'description' => 'The constraints of the synchronization object, such as indexes and foreign keys.'."\n"
.'> This parameter is returned only when **ObjectType** is set to **Table** and the synchronization object has constraints.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of constraint creation. Valid values:'."\n"
.'- **NotStarted**: Not started.'."\n"
.'- **Migrating**: In progress.'."\n"
.'- **Failed**: Failed.'."\n"
.'- **Finished**: Completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'SourceOwnerDBName' => ['description' => 'The name of the database to which the objects to be synchronized belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'ObjectDefinition' => ['description' => 'The syntax definition for creating the constraint.'."\n", 'type' => 'string', 'example' => 'CREATE SEQUENCE "public"."collections_id_seq" MINVALUE 1 MAXVALUE 9223372036854775807 START 249 INCREMENT BY 1 ; ', 'title' => ''],
'ObjectType' => ['description' => 'The type of the synchronization object. The value is fixed as **Table**.', 'type' => 'string', 'example' => 'Table', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when constraint creation failed.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist', 'title' => ''],
'DestinationOwnerDBName' => ['description' => 'The name of the database to which the objects to be synchronized belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'ObjectName' => ['description' => 'The name of the synchronization object.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"150DECD9-13FF-4929-A5DE-855BE9CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DataInitializationDetails\\": [\\n {\\n \\"SourceOwnerDBName\\": \\"dtstestdata\\",\\n \\"Status\\": \\"Finished\\",\\n \\"UsedTime\\": \\"0.0\\",\\n \\"TableName\\": \\"customer\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"FinishRowNum\\": \\"9993\\",\\n \\"DestinationOwnerDBName\\": \\"dtstestdata\\",\\n \\"TotalRowNum\\": \\"9981\\"\\n }\\n ],\\n \\"DataSynchronizationDetails\\": [\\n {\\n \\"Status\\": \\"Migrating\\",\\n \\"SourceOwnerDBName\\": \\"dtstestdata\\",\\n \\"TableName\\": \\"customer\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\",\\n \\"DestinationOwnerDBName\\": \\"dtstestdata\\"\\n }\\n ],\\n \\"StructureInitializationDetails\\": [\\n {\\n \\"Status\\": \\"Finished\\",\\n \\"SourceOwnerDBName\\": \\"dtstestdata\\",\\n \\"ObjectDefinition\\": \\"CREATE TABLE `dtstestdata`.`customer` (\\\\\\\\n`customer_id` int(10) unsigned auto_increment COMMENT \'\' NOT NULL , \\\\\\\\n`customer_title` varchar(100) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\\\\\\\n`customer_company1216` varchar(40) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\\\\\\\n`submission_date1216` date COMMENT \'\' NULL \\\\\\\\n, PRIMARY KEY (`customer_id`)) engine=InnoDB AUTO_INCREMENT=200001 DEFAULT CHARSET=`utf8` DEFAULT COLLATE `utf8_general_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\\\\\\\n\\",\\n \\"ObjectType\\": \\"Table\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: Table \'customer\' already exists\\",\\n \\"DestinationOwnerDBName\\": \\"dtstestdata\\",\\n \\"ObjectName\\": \\"customer\\",\\n \\"Constraints\\": [\\n {\\n \\"Status\\": \\"Finished\\",\\n \\"SourceOwnerDBName\\": \\"dtstestdata\\",\\n \\"ObjectDefinition\\": \\"CREATE SEQUENCE \\\\\\"public\\\\\\".\\\\\\"collections_id_seq\\\\\\" MINVALUE 1 MAXVALUE 9223372036854775807 START 249 INCREMENT BY 1 ; \\",\\n \\"ObjectType\\": \\"Table\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist\\",\\n \\"DestinationOwnerDBName\\": \\"dtstestdata\\",\\n \\"ObjectName\\": \\"customer\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query Initialization Status',
'summary' => 'Queries the initialization status. This is an earlier version of the operation.',
'changeSet' => [],
'ramActions' => [],
],
'DescribeJobMonitorRule' => [
'summary' => 'Queries the alert rules of a DTS task by calling DescribeJobMonitorRule.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREdtsJ32CAF'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task. You can call [DescribeDtsJobs](~~209702~~) to obtain the task ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ta7w132u12h****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-shenzhen', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzydi675xfea', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0CA14388-DD89-4A7B-8CDD-884A10CE****', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'example' => 'ta7w132u12h****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => '403', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid. ', 'title' => ''],
'Code' => ['description' => 'The error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'MonitorRules' => [
'description' => 'The monitoring rule information of the DTS task.',
'type' => 'array',
'items' => [
'description' => 'The monitoring rule information of the DTS task.',
'type' => 'object',
'properties' => [
'Type' => ['description' => 'The type of the monitoring rule. Valid values:'."\n"
.'- **delay**: latency alert.'."\n"
.'- **error**: anomaly alert.'."\n"
.'- **full_timeout**: alert for the runtime of the full data module.'."\n"
.'- **warn**: notification alert (the task succeeded but the result did not meet expectations).', 'type' => 'string', 'example' => 'delay', 'title' => ''],
'DelayRuleTime' => ['description' => 'The threshold that triggers a latency alert. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '60', 'title' => ''],
'State' => ['description' => 'Indicates whether the monitoring rule is enabled. Valid values:'."\n"
."\n"
.'- **Y**: enabled.'."\n"
.'- **N**: disabled.', 'type' => 'string', 'example' => 'Y', 'title' => ''],
'Phone' => ['description' => 'The phone numbers of the contacts to be notified when an alert is triggered. Multiple phone numbers are separated by commas (,).', 'type' => 'string', 'example' => '1361234****,1371234****', 'title' => ''],
'JobType' => ['description' => 'The task type of the DTS instance. Valid values:'."\n"
.'- **normal**: data migration or data synchronization task.'."\n"
.'- **full_check**: associated full data validation task.'."\n"
.'- **etl_check**: associated incremental data validation task.', 'type' => 'string', 'example' => 'normal', 'title' => ''],
'Period' => ['description' => 'The statistical period of the incremental data validation task. Unit: minutes.'."\n"
."\n"
.'> Valid values: 1, 5, 10, and 30 minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''],
'Times' => ['description' => 'The number of periods for the incremental data validation task.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'NoticeValue' => ['description' => 'The alert threshold.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'bi6e22ay243****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Topics' => [
'description' => 'The Kafka topics.',
'type' => 'array',
'items' => ['description' => 'The Kafka topic used when data is synchronized or migrated to Kafka.', 'type' => 'string', 'example' => '[\'topic_zyjg_prd\']', 'title' => ''],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"0CA14388-DD89-4A7B-8CDD-884A10CE****\\",\\n \\"DtsJobId\\": \\"ta7w132u12h****\\",\\n \\"ErrCode\\": \\"403\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\\\t\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"MonitorRules\\": [\\n {\\n \\"Type\\": \\"delay\\",\\n \\"DelayRuleTime\\": 60,\\n \\"State\\": \\"Y\\",\\n \\"Phone\\": \\"1361234****,1371234****\\",\\n \\"JobType\\": \\"normal\\",\\n \\"Period\\": 5,\\n \\"Times\\": 2,\\n \\"NoticeValue\\": 2,\\n \\"JobId\\": \\"bi6e22ay243****\\"\\n }\\n ],\\n \\"Topics\\": [\\n \\"[\'topic_zyjg_prd\']\\"\\n ]\\n}","type":"json"}]',
'title' => 'Query alert rules of a DTS task',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeJobMonitorRule',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeMetricList' => [
'summary' => 'Queries cluster monitoring information by calling the DescribeMetricList operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'list'],
'parameters' => [
[
'name' => 'MetricType',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'Specifies whether to query a cluster or a node. Valid values:'."\n"
.'- **CLUSTER**: cluster.'."\n"
.'- **NODE**: node.', 'type' => 'string', 'default' => 'NODE', 'required' => false, 'example' => 'NODE'],
],
[
'name' => 'MetricName',
'in' => 'formData',
'schema' => ['description' => '- **InternetOut**: outbound Internet traffic, in bytes.'."\n"
.'- **diskusage_utilization**: disk usage.'."\n"
.'- **IntranetInRate**: inbound internal network traffic, in bytes.'."\n"
.'- **InternetIn**: inbound Internet traffic, in bytes.'."\n"
.'- **cpu_total**: CPU utilization.'."\n"
.'- **memory_usedutilization**: memory utilization.'."\n"
.'- **IntranetOutRate**: outbound internal network traffic, in bytes.', 'type' => 'string', 'required' => true, 'example' => 'cpu_total', 'title' => ''],
],
[
'name' => 'Period',
'in' => 'formData',
'schema' => ['description' => 'The observation interval in seconds. The minimum interval is 15 seconds.', 'type' => 'integer', 'format' => 'int64', 'default' => '15', 'required' => false, 'example' => '15', 'title' => ''],
],
[
'name' => 'Param',
'in' => 'formData',
'schema' => ['description' => 'The observation value. If **MetricType** is set to **NODE**, the value is **nodeid**.', 'type' => 'string', 'required' => true, 'example' => 'nodeid', 'title' => ''],
],
[
'name' => 'StartTime',
'in' => 'formData',
'schema' => ['description' => 'The start timestamp, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642476144000', 'title' => ''],
],
[
'name' => 'EndTime',
'in' => 'formData',
'schema' => ['description' => 'The end timestamp, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642476194000', 'title' => ''],
],
[
'name' => 'Env',
'in' => 'formData',
'schema' => ['description' => 'Default value: **ALIYUN**.', 'type' => 'string', 'default' => 'ALIYUN', 'required' => false, 'example' => 'ALIYUN', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The ID of the data migration or data synchronization task.', 'type' => 'string', 'required' => false, 'example' => 'k2gm967v16f****'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'Ensures the idempotency of the request. Generate a parameter value from your client to make sure that the value is unique among different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'],
],
[
'name' => 'AccountId',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The ID of the Alibaba Cloud account.', 'type' => 'string', 'required' => false, 'example' => '12323344****'],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'DescribeMetricListResponse',
'type' => 'object',
'properties' => [
'MetricType' => ['title' => '', 'description' => 'Specifies whether to query a cluster or a node. Valid values:'."\n"
.'- **CLUSTER**: cluster.'."\n"
.'- **NODE**: node.', 'type' => 'string', 'example' => 'CLUSTER'],
'Param' => ['description' => 'The observation value.'."\n"
."\n"
.'- If **MetricType** is set to **NODE**, the value is **nodeid**.'."\n"
.'- If **MetricType** is set to **CLUSTER**, the value is the ID of the dedicated cluster, which can be obtained by calling the ListDedicatedCluster operation.', 'type' => 'string', 'example' => 'ecs-jhjnjjn', 'title' => ''],
'MetricName' => ['description' => '- **InternetOut**: outbound Internet traffic, in bytes.'."\n"
.'- **diskusage_utilization**: disk usage.'."\n"
.'- **IntranetInRate**: inbound internal network traffic, in bytes.'."\n"
.'- **InternetIn**: inbound Internet traffic, in bytes.'."\n"
.'- **cpu_total**: CPU utilization.'."\n"
.'- **memory_usedutilization**: memory utilization.'."\n"
.'- **IntranetOutRate**: outbound internal network traffic, in bytes.', 'type' => 'string', 'example' => 'cpu_total', 'title' => ''],
'Period' => ['description' => 'The observation interval in seconds. The minimum interval is 15 seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '15', 'title' => ''],
'DataPoints' => [
'description' => 'The monitoring statistics information.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Timestamp' => ['description' => 'The record timestamp, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1650872310000', 'title' => ''],
'Statistics' => ['description' => 'The statistical value.', 'type' => 'number', 'format' => 'float', 'example' => '15.25', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Success' => ['title' => '', 'description' => 'Indicates whether the call was successful.', 'type' => 'boolean', 'example' => 'true'],
'Code' => ['title' => '', 'description' => 'The backend error code, which is an incrementing number.', 'type' => 'string', 'example' => '403'],
'ErrCode' => ['title' => '', 'description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError'],
'ErrMessage' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.'],
'DynamicMessage' => ['title' => '', 'description' => 'The dynamic error message, which is used to replace the %s placeholder in the **ErrMessage** error message.', 'type' => 'string', 'example' => 'Type'],
'HttpStatusCode' => ['title' => '', 'description' => 'The HTTP status code corresponding to the exception.', 'type' => 'integer', 'format' => 'int32', 'example' => '403'],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
],
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"MetricType\\": \\"CLUSTER\\",\\n \\"Param\\": \\"ecs-jhjnjjn\\",\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"Period\\": 15,\\n \\"DataPoints\\": [\\n {\\n \\"Timestamp\\": 1650872310000,\\n \\"Statistics\\": 15.25\\n }\\n ],\\n \\"Success\\": true,\\n \\"Code\\": \\"403\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"HttpStatusCode\\": 403,\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\"\\n}","type":"json"}]',
'title' => 'Query cluster monitoring information',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:DescribeMetricList',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeMigrationJobAlert' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data migration instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration instance. You can call the DescribeMigrationJobs operation to query the ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtslb9113qq11n****', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The value can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'ETnLKlblzczshOTUbOCz****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'CFB89C51-6F03-519C-A921-AAE28D50AEFB', 'title' => ''],
'MigrationJobName' => ['description' => 'The name of the data migration task.', 'type' => 'string', 'example' => 'zwy-test5', 'title' => ''],
'ErrorAlertStatus' => ['description' => 'Indicates whether error status monitoring is enabled. Valid values:'."\n"
."\n"
.'- **enable**: Enabled.'."\n"
.'- **disable**: Disabled.', 'type' => 'string', 'example' => 'enable', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrorAlertPhone' => ['description' => 'The mobile phone number of the contact for error alerts.', 'type' => 'string', 'example' => '1361234****,1371234****', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DelayAlertStatus' => ['description' => 'Indicates whether latency status monitoring is enabled. Valid values:'."\n"
."\n"
.'- **enable**: Enabled.'."\n"
.'- **disable**: Disabled.', 'type' => 'string', 'example' => 'enable', 'title' => ''],
'DelayAlertPhone' => ['description' => 'The mobile phone number of the contact for latency alerts.', 'type' => 'string', 'example' => '1361234****,1371234****'."\n", 'title' => ''],
'MigrationJobId' => ['description' => 'The ID of the data migration instance.', 'type' => 'string', 'example' => 'dtslb9113qq11n****', 'title' => ''],
'DelayOverSeconds' => ['description' => 'The threshold that triggers a latency alert. Unit: seconds.', 'type' => 'string', 'example' => '0', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CFB89C51-6F03-519C-A921-AAE28D50AEFB\\",\\n \\"MigrationJobName\\": \\"zwy-test5\\",\\n \\"ErrorAlertStatus\\": \\"enable\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrorAlertPhone\\": \\"1361234****,1371234****\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DelayAlertStatus\\": \\"enable\\",\\n \\"DelayAlertPhone\\": \\"1361234****,1371234****\\\\n\\",\\n \\"MigrationJobId\\": \\"dtslb9113qq11n****\\",\\n \\"DelayOverSeconds\\": \\"0\\"\\n}","type":"json"}]',
'title' => 'Query monitoring and alerts of a data migration task',
'summary' => 'Queries the monitoring and alert settings of a data migration task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeMigrationJobAlert',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeMigrationJobDetail' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data migration instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page. Valid values: **30**, **50**, and **100**. Default value: **30**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '30', 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNum',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be an integer greater than **0** and must not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsta7w132u12h****', 'title' => ''],
],
[
'name' => 'MigrationMode.StructureInitialization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to query the details of schema migration. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.'."\n"
.'> Default value: **false**.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'MigrationMode.DataInitialization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to query the details of full data migration. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.'."\n"
.'> Default value: **false**.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'MigrationMode.DataSynchronization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to query the details of incremental data migration. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.'."\n"
.'> Default value: **false**.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. Generate a value from your client to ensure that the value is unique among different requests. The value of **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AE3CD0B-4148-426F-A90E-952467CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of migration instances that can be displayed on one page.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'DataInitializationDetailList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'DataInitializationDetail' => [
'description' => 'The execution details of full data migration.',
'type' => 'array',
'items' => [
'description' => 'The execution details of full data migration.',
'type' => 'object',
'properties' => [
'SourceOwnerDBName' => ['description' => 'The name of the database to which the migration object belongs in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'Status' => ['description' => 'The status of full data migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'TableName' => ['description' => 'The table name of the migration object.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned if full data migration failed.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'FinishRowNum' => ['description' => 'The number of records that have been migrated.', 'type' => 'string', 'example' => '200001', 'title' => ''],
'MigrationTime' => ['description' => 'The time consumed by full data migration.', 'type' => 'string', 'example' => '0.0', 'title' => ''],
'DestinationOwnerDBName' => ['description' => 'The name of the database to which the migration object belongs in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'TotalRowNum' => ['description' => 'The total number of records to be migrated.', 'type' => 'string', 'example' => '201477', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'DataSynchronizationDetailList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'DataSynchronizationDetail' => [
'description' => 'The execution details of incremental data migration.',
'type' => 'array',
'items' => [
'description' => 'The execution details of incremental data migration.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'SourceOwnerDBName' => ['description' => 'The name of the database to which the migration object belongs in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'TableName' => ['description' => 'The table name of the migration object.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned if incremental data migration failed.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
'DestinationOwnerDBName' => ['description' => 'The name of the database to which the migration object belongs in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'StructureInitializationDetailList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'StructureInitializationDetail' => [
'description' => 'The execution details of schema migration.',
'type' => 'array',
'items' => [
'description' => 'The execution details of schema migration.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of schema migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'SourceOwnerDBName' => ['description' => 'The name of the database to which the migration object belongs in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'ObjectDefinition' => ['description' => 'The syntax definition of the migration object schema.', 'type' => 'string', 'example' => 'CREATE TABLE `dtstestdata`.`customer` (\\n`runoob_id` int(10) unsigned auto_increment COMMENT \'\' NOT NULL , \\n`runoob_title` varchar(100) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\n`runoob_author1216` varchar(40) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\n`submission_date1216` date COMMENT \'\' NULL \\n, PRIMARY KEY (`runoob_id`)) engine=InnoDB AUTO_INCREMENT=200001 DEFAULT CHARSET=`utf8` DEFAULT COLLATE `utf8_general_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\n', 'title' => ''],
'ObjectType' => ['description' => 'The object type of the migration object. Valid values: **Table** (table), **Constraint** (constraint), **Index** (index), **View** (view), **Materialize View** (materialized view), **Type** (custom type), **Synonym** (synonym), **Trigger** (trigger), **Function** (function), **Procedure** (stored procedure), **Package** (package), **Default** (default value), **Rule** (rule), **PlanGuide** (execute plan), and **Sequence** (sequence).', 'type' => 'string', 'example' => 'Table', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned if schema migration failed.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: DTS-1020042 Execute sql error sql: ERROR: column \\"id\\" named in key does not exist', 'title' => ''],
'DestinationOwnerDBName' => ['description' => 'The name of the database to which the migration object belongs in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'ObjectName' => ['description' => 'The name of the migration object.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
'ConstraintList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'StructureInitializationDetail' => [
'description' => 'The constraints of the migration object, such as indexes and foreign keys.'."\n"
.'> This parameter is returned only when **ObjectType** is set to **Table** and the migration object has constraints.',
'type' => 'array',
'items' => [
'description' => 'The constraints of the migration object, such as indexes and foreign keys.'."\n"
.'> This parameter is returned only when **ObjectType** is set to **Table** and the migration object has constraints.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The creation status of the constraint. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: being created.'."\n"
.'- **Failed**: creation failed.'."\n"
.'- **Finished**: creation completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'SourceOwnerDBName' => ['description' => 'The name of the database to which the migration object belongs in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'ObjectDefinition' => ['description' => 'The syntax definition for creating the constraint.', 'type' => 'string', 'example' => 'CREATE SEQUENCE "public"."collections_id_seq" MINVALUE 1 MAXVALUE 9223372036854775807 START 249 INCREMENT BY 1 ; ', 'title' => ''],
'ObjectType' => ['description' => 'The type of the migration object. The value is fixed as **Table**.', 'type' => 'string', 'example' => 'Table', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned if constraint creation failed.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'DestinationOwnerDBName' => ['description' => 'The name of the database to which the migration object belongs in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'ObjectName' => ['description' => 'The name of the migration object.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AE3CD0B-4148-426F-A90E-952467CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"PageRecordCount\\": 30,\\n \\"Success\\": \\"true\\",\\n \\"TotalRecordCount\\": 1,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"PageNumber\\": 1,\\n \\"DataInitializationDetailList\\": {\\n \\"DataInitializationDetail\\": [\\n {\\n \\"SourceOwnerDBName\\": \\"dtstestdata\\",\\n \\"Status\\": \\"Finished\\",\\n \\"TableName\\": \\"customer\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"FinishRowNum\\": \\"200001\\",\\n \\"MigrationTime\\": \\"0.0\\",\\n \\"DestinationOwnerDBName\\": \\"dtstestdata\\",\\n \\"TotalRowNum\\": \\"201477\\"\\n }\\n ]\\n },\\n \\"DataSynchronizationDetailList\\": {\\n \\"DataSynchronizationDetail\\": [\\n {\\n \\"Status\\": \\"Migrating\\",\\n \\"SourceOwnerDBName\\": \\"dtstestdata\\",\\n \\"TableName\\": \\"customer\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\",\\n \\"DestinationOwnerDBName\\": \\"dtstestdata\\"\\n }\\n ]\\n },\\n \\"StructureInitializationDetailList\\": {\\n \\"StructureInitializationDetail\\": [\\n {\\n \\"Status\\": \\"Finished\\",\\n \\"SourceOwnerDBName\\": \\"dtstestdata\\",\\n \\"ObjectDefinition\\": \\"CREATE TABLE `dtstestdata`.`customer` (\\\\\\\\n`runoob_id` int(10) unsigned auto_increment COMMENT \'\' NOT NULL , \\\\\\\\n`runoob_title` varchar(100) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\\\\\\\n`runoob_author1216` varchar(40) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\\\\\\\n`submission_date1216` date COMMENT \'\' NULL \\\\\\\\n, PRIMARY KEY (`runoob_id`)) engine=InnoDB AUTO_INCREMENT=200001 DEFAULT CHARSET=`utf8` DEFAULT COLLATE `utf8_general_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\\\\\\\n\\",\\n \\"ObjectType\\": \\"Table\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: DTS-1020042 Execute sql error sql: ERROR: column \\\\\\\\\\\\\\"id\\\\\\\\\\\\\\" named in key does not exist\\",\\n \\"DestinationOwnerDBName\\": \\"dtstestdata\\",\\n \\"ObjectName\\": \\"customer\\",\\n \\"ConstraintList\\": {\\n \\"StructureInitializationDetail\\": [\\n {\\n \\"Status\\": \\"Finished\\",\\n \\"SourceOwnerDBName\\": \\"dtstestdata\\",\\n \\"ObjectDefinition\\": \\"CREATE SEQUENCE \\\\\\"public\\\\\\".\\\\\\"collections_id_seq\\\\\\" MINVALUE 1 MAXVALUE 9223372036854775807 START 249 INCREMENT BY 1 ; \\",\\n \\"ObjectType\\": \\"Table\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"DestinationOwnerDBName\\": \\"dtstestdata\\",\\n \\"ObjectName\\": \\"customer\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Data migration task execution details',
'summary' => 'Queries the execution details of a data migration task. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeMigrationJobDetail',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeMigrationJobStatus' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data migration instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsxxxxxxxx', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The **ClientToken** parameter can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'ETnLKlblzczshOTUbOCzxxxxxxxxxx', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A032E3B4-929B-48E9-97B9-37587CBF****', 'title' => ''],
'MigrationJobName' => ['description' => 'The name of the data migration instance.', 'type' => 'string', 'example' => 'MySQL迁移', 'title' => ''],
'MigrationJobStatus' => ['description' => 'The status of the data migration task. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running the precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **MigrationFailed**: migration failed.'."\n"
.'- **Finished**: migration completed.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'PayType' => ['description' => 'The billing method of the data migration task. The return value is fixed as **PostPaid** (pay-as-you-go).', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'MigrationObject' => ['description' => 'The migration objects.', 'type' => 'string', 'example' => '[{\\"DBName\\":\\"dtstestdata\\",\\"TableIncludes\\":[{\\"TableName\\":\\"customer\\"}]}]', 'title' => ''],
'MigrationJobId' => ['description' => 'The instance ID of the data migration instance.', 'type' => 'string', 'example' => 'dtsxxxxxxxx', 'title' => ''],
'TaskId' => ['description' => 'The ID of the data migration task.', 'type' => 'string', 'example' => 'z2v12jfo309****', 'title' => ''],
'MigrationJobClass' => ['description' => 'The specification of the data migration instance. Valid values: **small**, **medium**, **large**, **xlarge**, and **2xlarge**. For more information, see [Specifications of data migration instances](~~26606~~).', 'type' => 'string', 'example' => '2xlarge', 'title' => ''],
'DataInitializationStatus' => [
'description' => 'The execution status of full data migration.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of full data migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Failed**: migration failed.'."\n"
.'- **Finished**: migration completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of full data migration, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when full data migration failed.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been migrated during initial full data synchronization.', 'type' => 'string', 'example' => '200001', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The execution status of incremental data migration.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Failed**: migration failed.'."\n"
.'- **Finished**: migration completed.'."\n"
.'- **Catched**: no latency.', 'type' => 'string', 'example' => 'Catched', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data migration, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'Delay' => ['description' => 'The migration latency of incremental data migration, in seconds.', 'type' => 'string', 'example' => '0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data migration failed.', 'type' => 'string', 'example' => '任务失败太久 无法恢复', 'title' => ''],
'Checkpoint' => ['description' => 'The timestamp of the latest incremental data that has been migrated. The value is a UNIX timestamp, in seconds.', 'type' => 'string', 'example' => '1571040679', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'DatabaseName' => ['description' => 'The name of the database to which the objects to be migrated belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bpxxxxxxxx', 'title' => ''],
'IP' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'oracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the database type of the destination instance is **Oracle**.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'EngineName' => ['description' => 'The database type of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'MigrationMode' => [
'description' => 'The migration types.',
'type' => 'object',
'properties' => [
'dataInitialization' => ['description' => 'Indicates whether full data migration is performed. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'dataSynchronization' => ['description' => 'Indicates whether incremental data migration is performed. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => '**false**。', 'title' => ''],
'structureInitialization' => ['description' => 'Indicates whether schema migration is performed. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'example' => '**false**。', 'title' => ''],
],
'title' => '',
'example' => '',
],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck status. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Checking**: running the precheck.'."\n"
.'- **Failed**: precheck failed.'."\n"
.'- **Finished**: precheck completed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'Percent' => ['description' => 'The overall progress of the precheck, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Detail' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'CheckItem' => [
'description' => 'The result of each precheck item.',
'type' => 'array',
'items' => [
'description' => 'The result of each precheck item.',
'type' => 'object',
'properties' => [
'CheckStatus' => ['description' => 'The check result. Valid values:'."\n"
."\n"
.'- **Success**: the check item passed.'."\n"
.'- **Failed**: the check item failed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the precheck failed.'."\n"
.'> This parameter is returned only when the value of **CheckStatus** is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)', 'title' => ''],
'ItemName' => ['description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'RepairMethod' => ['description' => 'The method to fix the precheck failure.'."\n"
.'> This parameter is returned only when the value of **CheckStatus** is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'DatabaseName' => ['description' => 'The name of the database to which the objects to be migrated belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdatabase', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp1i99e8l7913****', 'title' => ''],
'IP' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance. Valid values:'."\n"
."\n"
.'- **RDS**: ApsaraDB RDS instance.'."\n"
.'- **ECS**: self-managed database hosted on ECS.'."\n"
.'- **LocalInstance**: self-managed database with a public IP address.'."\n"
.'- **Express**: self-managed database connected over Express Connect, VPN Gateway, or Smart Access Gateway.'."\n"
.'- **MongoDB**: ApsaraDB for MongoDB instance.'."\n"
.'- **POLARDB**: PolarDB for MySQL cluster (this value is applicable only to the China site).', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'oracleSID' => ['description' => 'The SID of the Oracle database.'."\n"
.'> This parameter is returned only when the database type of the source instance is Oracle.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'EngineName' => ['description' => 'The database type of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The execution status of schema migration.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of schema migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: migrating.'."\n"
.'- **Failed**: migration failed.'."\n"
.'- **Finished**: migration completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of schema migration, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when schema migration failed.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'Progress' => ['description' => 'The number of tables for which schema migration has been completed.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A032E3B4-929B-48E9-97B9-37587CBF****\\",\\n \\"MigrationJobName\\": \\"MySQL迁移\\",\\n \\"MigrationJobStatus\\": \\"Migrating\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"PayType\\": \\"PostPaid\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"MigrationObject\\": \\"[{\\\\\\\\\\\\\\"DBName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"TableIncludes\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"TableName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"customer\\\\\\\\\\\\\\"}]}]\\",\\n \\"MigrationJobId\\": \\"dtsxxxxxxxx\\",\\n \\"TaskId\\": \\"z2v12jfo309****\\",\\n \\"MigrationJobClass\\": \\"2xlarge\\",\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"200001\\"\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Catched\\",\\n \\"Percent\\": \\"95\\",\\n \\"Delay\\": \\"0\\",\\n \\"ErrorMessage\\": \\"任务失败太久 无法恢复\\",\\n \\"Checkpoint\\": \\"1571040679\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"InstanceId\\": \\"rm-bpxxxxxxxx\\",\\n \\"IP\\": \\"172.16.88.***\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"Port\\": \\"3306\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"oracleSID\\": \\"testsid\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"MigrationMode\\": {\\n \\"dataInitialization\\": true,\\n \\"dataSynchronization\\": true,\\n \\"structureInitialization\\": true\\n },\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Success\\",\\n \\"Percent\\": \\"100\\",\\n \\"Detail\\": {\\n \\"CheckItem\\": [\\n {\\n \\"CheckStatus\\": \\"Success\\",\\n \\"ErrorMessage\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\",\\n \\"ItemName\\": \\"CHECK_CONN_SRC\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\"\\n }\\n ]\\n }\\n },\\n \\"SourceEndpoint\\": {\\n \\"DatabaseName\\": \\"dtstestdatabase\\",\\n \\"InstanceId\\": \\"rm-bp1i99e8l7913****\\",\\n \\"IP\\": \\"172.16.88.***\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"Port\\": \\"3306\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"oracleSID\\": \\"testsid\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"Progress\\": \\"1\\"\\n }\\n}","type":"json"}]',
'title' => 'Query the status of a data migration task',
'summary' => 'Queries the status of a data migration task. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeMigrationJobStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeMigrationJobs' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data migration instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of data migration instances to display per page. Valid values: **10**, **20**, and **30**. Default value: **30**. Maximum value: **30**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '30', 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNum',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be greater than **0** and must not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'MigrationJobName',
'in' => 'query',
'schema' => ['description' => 'The name of the migration instance.'."\n"
.'> Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'MySQL迁移', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter. This parameter will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'Tag',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The tags of the data migration instance, used as filter conditions. When this parameter is not empty, only instance tasks that have the specified tags are returned.',
'type' => 'array',
'items' => [
'description' => 'The tag information of the data migration instance.',
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The tag key. You can call the [ListTagResources](~~191187~~) operation to query tag keys.'."\n"
."\n"
.'> - N specifies the serial number of the tag key. For example, Tag.1.Key specifies the key of the first tag, and Tag.2.Key specifies the key of the second tag. You can specify 1 to 20 tag keys at a time.'."\n"
.'- This parameter cannot be set to an empty string.', 'type' => 'string', 'required' => true, 'example' => 'testkey1', 'title' => ''],
'Value' => ['description' => 'The tag value. You can call the [ListTagResources](~~191187~~) operation to query tag values.'."\n"
.'>- N specifies the serial number of the tag value. For example, Tag.1.Value specifies the value of the first tag, and Tag.2.Value specifies the value of the second tag. You can specify 1 to 20 tag values at a time.'."\n"
.'- An empty string is allowed.', 'type' => 'string', 'required' => false, 'example' => 'testvalue1', 'title' => ''],
],
'required' => false,
'title' => '',
'example' => '',
],
'required' => false,
'maxItems' => 11,
'title' => '',
'example' => '',
],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0ED4846D-ED60-435D-88C0-7EC0CE4D****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of records that can be displayed on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of data migration instances that meet the specified conditions under the Alibaba Cloud account.', 'type' => 'integer', 'format' => 'int64', 'example' => '300', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'MigrationJobs' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'MigrationJob' => [
'description' => 'The list of data migration instances and details of each migration instance.',
'type' => 'array',
'items' => [
'description' => 'The list of data migration instances and details of each migration instance.',
'type' => 'object',
'properties' => [
'MigrationJobName' => ['description' => 'The name of the data migration instance.', 'type' => 'string', 'example' => 'MySQL迁移', 'title' => ''],
'MigrationJobStatus' => ['description' => 'The status of the migration instance. Valid values:'."\n"
.'- **NotStarted**: The task is not started.'."\n"
.'- **Prechecking**: The task is being prechecked.'."\n"
.'- **PrecheckFailed**: The precheck failed.'."\n"
.'- **Migrating**: The task is being migrated.'."\n"
.'- **Suspending**: The task is suspended.'."\n"
.'- **MigrationFailed**: The migration failed.'."\n"
.'- **Finished**: The migration is complete.', 'type' => 'string', 'example' => 'Migrating', 'title' => ''],
'PayType' => ['description' => 'The billing method of the migration instance. The return value is fixed as **PostPaid** (pay-as-you-go).', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''],
'MigrationJobClass' => ['description' => 'The specification of the data migration instance. Valid values: **small**, **medium**, **large**, **xlarge**, and **2xlarge**. For more information, see [Specification description of data migration links](~~26606~~).', 'type' => 'string', 'example' => '2xlarge', 'title' => ''],
'InstanceCreateTime' => ['description' => 'The time when the migration instance was created, in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-22T09:02:13Z', 'title' => ''],
'MigrationJobID' => ['description' => 'The ID of the data migration instance.', 'type' => 'string', 'example' => 'dtson2z28evm33****', 'title' => ''],
'JobCreateTime' => ['description' => 'The time when the synchronization task was created, in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-22T08:53:55Z', 'title' => ''],
'MigrationObject' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'SynchronousObject' => [
'description' => 'The migration objects.',
'type' => 'array',
'items' => [
'description' => 'The migration objects.',
'type' => 'object',
'properties' => [
'DatabaseName' => ['description' => 'The name of the database to which the objects to be migrated belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'WholeDatabase' => ['description' => 'Indicates whether to migrate the entire database. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'string', 'example' => 'false', 'title' => ''],
'TableList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'Table' => [
'description' => 'The table names of the migration objects.',
'type' => 'array',
'items' => ['description' => 'The table names of the migration objects.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'Tags' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'Tag' => [
'description' => 'The collection of tags.',
'type' => 'array',
'items' => [
'description' => 'The collection of tags.',
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'testkey1', 'title' => ''],
'Value' => ['description' => 'The tag value corresponding to the tag key.', 'type' => 'string', 'example' => 'testvalue1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'DataInitialization' => [
'description' => 'The information about full data migration.',
'type' => 'object',
'properties' => [
'Percent' => ['description' => 'The progress of full data migration, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'status' => ['description' => 'The status of full data migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: The migration is not started.'."\n"
.'- **Migrating**: The migration is in progress.'."\n"
.'- **Failed**: The migration failed.'."\n"
.'- **Finished**: The migration is complete.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned if full data migration failed.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The number of records that have completed full data initialization.', 'type' => 'string', 'example' => '200001', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronization' => [
'description' => 'The information about incremental data migration.',
'type' => 'object',
'properties' => [
'Delay' => ['description' => 'The latency of incremental data migration, in seconds.', 'type' => 'string', 'example' => '0', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data migration, in percentage.', 'type' => 'string', 'example' => '95', 'title' => ''],
'status' => ['description' => 'The status of incremental data migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: The migration is not started.'."\n"
.'- **Migrating**: The migration is in progress.'."\n"
.'- **Failed**: The migration failed.'."\n"
.'- **Finished**: The migration is complete.'."\n"
.'- **Catched**: No latency.', 'type' => 'string', 'example' => 'Catched', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned if incremental data migration failed.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'OracleSID' => ['description' => 'This parameter is returned only when the database type of the destination instance is **Oracle**.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the objects to be migrated belong in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp1zc3iyqe3qw****', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'IP' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database type of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'MigrationMode' => [
'description' => 'The migration types.',
'type' => 'object',
'properties' => [
'DataInitialization' => ['description' => 'Indicates whether to migrate full data. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DataSynchronization' => ['description' => 'Indicates whether to migrate incremental data. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'StructureInitialization' => ['description' => 'Indicates whether to perform schema migration. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Precheck' => [
'description' => 'The information about the precheck.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck result. Valid values:'."\n"
."\n"
.'- **Success**: The precheck passed.'."\n"
.'- **Failed**: The precheck failed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'Percent' => ['description' => 'The overall progress of the precheck, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'OracleSID' => ['description' => 'This parameter is returned only when the database type of the source instance is **Oracle**.', 'type' => 'string', 'example' => 'testsid', 'title' => ''],
'DatabaseName' => ['description' => 'The name of the database to which the objects to be migrated belong in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'InstanceID' => ['description' => 'The ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp1i99e8l7913****', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'IP' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database type of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureInitialization' => [
'description' => 'The information about schema migration.',
'type' => 'object',
'properties' => [
'Percent' => ['description' => 'The progress of schema migration, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'status' => ['description' => 'The status of schema migration. Valid values:'."\n"
."\n"
.'- **NotStarted**: The migration is not started.'."\n"
.'- **Migrating**: The migration is in progress.'."\n"
.'- **Failed**: The migration failed.'."\n"
.'- **Finished**: The migration is complete.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned if schema migration failed.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'Progress' => ['description' => 'The number of tables that have completed schema migration.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''],
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0ED4846D-ED60-435D-88C0-7EC0CE4D****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"PageRecordCount\\": 30,\\n \\"Success\\": \\"true\\",\\n \\"TotalRecordCount\\": 300,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"PageNumber\\": 1,\\n \\"MigrationJobs\\": {\\n \\"MigrationJob\\": [\\n {\\n \\"MigrationJobName\\": \\"MySQL迁移\\",\\n \\"MigrationJobStatus\\": \\"Migrating\\",\\n \\"PayType\\": \\"PostPaid\\",\\n \\"MigrationJobClass\\": \\"2xlarge\\",\\n \\"InstanceCreateTime\\": \\"2021-06-22T09:02:13Z\\",\\n \\"MigrationJobID\\": \\"dtson2z28evm33****\\",\\n \\"JobCreateTime\\": \\"2021-06-22T08:53:55Z\\",\\n \\"MigrationObject\\": {\\n \\"SynchronousObject\\": [\\n {\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"WholeDatabase\\": \\"false\\",\\n \\"TableList\\": {\\n \\"Table\\": [\\n \\"customer\\"\\n ]\\n }\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"testkey1\\",\\n \\"Value\\": \\"testvalue1\\"\\n }\\n ]\\n },\\n \\"DataInitialization\\": {\\n \\"Percent\\": \\"100\\",\\n \\"status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"200001\\"\\n },\\n \\"DataSynchronization\\": {\\n \\"Delay\\": \\"0\\",\\n \\"Percent\\": \\"95\\",\\n \\"status\\": \\"Catched\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"OracleSID\\": \\"testsid\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"InstanceID\\": \\"rm-bp1zc3iyqe3qw****\\",\\n \\"Port\\": \\"3306\\",\\n \\"IP\\": \\"172.16.88.***\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"MigrationMode\\": {\\n \\"DataInitialization\\": true,\\n \\"DataSynchronization\\": true,\\n \\"StructureInitialization\\": true\\n },\\n \\"Precheck\\": {\\n \\"Status\\": \\"Success\\",\\n \\"Percent\\": \\"100\\"\\n },\\n \\"SourceEndpoint\\": {\\n \\"OracleSID\\": \\"testsid\\",\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"InstanceID\\": \\"rm-bp1i99e8l7913****\\",\\n \\"Port\\": \\"3306\\",\\n \\"IP\\": \\"172.16.88.***\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"StructureInitialization\\": {\\n \\"Percent\\": \\"100\\",\\n \\"status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"Progress\\": \\"1\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query the list of migration instances and details of each instance',
'summary' => 'Queries the list of data migration instances and details of each migration instance.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeMigrationJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribePreCheckCreateGadOrderResult' => [
'summary' => 'Queries the task result of a precheck for creating a Global Active Database (GAD) order node.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '232362',
'abilityTreeNodes' => ['FEATUREdts05OBVW'],
],
'parameters' => [
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the GAD instance group.', 'type' => 'string', 'required' => false, 'example' => 'gad-bp162d4tp0500****', 'title' => ''],
],
[
'name' => 'TaskId',
'in' => 'query',
'schema' => ['description' => 'The ID of the precheck task.', 'type' => 'string', 'required' => false, 'example' => 'k71r16fj13g****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '92E1E99D-5224-4AD3-8C94-23A3516B****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'present environment is not support,so skip.', 'title' => ''],
'RegionId' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID of the GAD instance group.', 'type' => 'string', 'example' => 'gad-bp1i99e8l7913****', 'title' => ''],
'TaskId' => ['description' => 'The ID of the precheck task.', 'type' => 'string', 'example' => '11****', 'title' => ''],
'PreCheckResult' => ['description' => 'The overall precheck result.', 'type' => 'boolean', 'example' => 'True', 'title' => ''],
'PreCheckItems' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'PreCheckItems' => [
'description' => 'The precheck details.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Code' => ['description' => 'The code of the check item.', 'type' => 'string', 'example' => 'CHECK_MASTER_DB_STATUS', 'title' => ''],
'Status' => ['description' => 'The status of the check item. Valid values:'."\n"
.'- Creating: being created.'."\n"
.'- Running: running.'."\n"
.'- Success: the check passed.'."\n"
.'- Failed: the check failed.', 'type' => 'string', 'example' => 'Running', 'title' => ''],
'Message' => ['description' => 'The description of the check item.', 'type' => 'string', 'example' => 'test', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"92E1E99D-5224-4AD3-8C94-23A3516B****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Success\\": \\"true\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"DynamicMessage\\": \\"present environment is not support,so skip.\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceId\\": \\"gad-bp1i99e8l7913****\\",\\n \\"TaskId\\": \\"11****\\",\\n \\"PreCheckResult\\": true,\\n \\"PreCheckItems\\": {\\n \\"PreCheckItems\\": [\\n {\\n \\"Code\\": \\"CHECK_MASTER_DB_STATUS\\",\\n \\"Status\\": \\"Running\\",\\n \\"Message\\": \\"test\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query precheck result',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribePreCheckCreateGadOrderResult',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribePreCheckStatus' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '52265',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i03e3zty16i****', 'title' => ''],
],
[
'name' => 'PageNo',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page. Default value: **20**.', 'type' => 'string', 'required' => false, 'example' => '30', 'title' => ''],
],
[
'name' => 'JobCode',
'in' => 'query',
'schema' => ['description' => 'The task code. Specify this parameter to query a specific subtask type of the DTS task. Valid values:'."\n"
."\n"
.'- **01**: precheck.'."\n"
.'- **02**: schema migration or initial schema synchronization.'."\n"
.'- **03**: full data migration or initial full data synchronization.'."\n"
.'- **04**: incremental data migration or incremental data synchronization.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '01', 'title' => ''],
],
[
'name' => 'StructType',
'in' => 'query',
'schema' => ['description' => 'The type of schema definition. Valid values:'."\n"
."\n"
.'- **before**: schema migration or initial schema synchronization.'."\n"
.'- **after**: DDL operations during incremental data migration or incremental data synchronization.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'before', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'StructPhase',
'in' => 'query',
'schema' => ['description' => 'The filter. Filters tables, views, and functions in schema migration.', 'type' => 'string', 'required' => false, 'example' => 'View', 'title' => ''],
],
[
'name' => 'Name',
'in' => 'query',
'schema' => ['description' => 'The filter. Performs a fuzzy match on table names.', 'type' => 'string', 'required' => false, 'example' => 'dewuprop', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (Zero-ETL) node. Valid values:'."\n"
."\n"
.'- **false**: No.'."\n"
.'- **true**: Yes.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'State' => ['description' => 'The execution status of the subtask. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Suspending**: suspended.'."\n"
.'- **Checking**: being checked.'."\n"
.'- **Migrating**: being migrated.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Catched**: incremental data migration or synchronization in progress.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of records that can be displayed on the current page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
'Total' => ['description' => 'The total number of subtasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C096FA97-B6BA-4575-899D-61E12B59****', 'title' => ''],
'JobName' => ['description' => 'The name of the queried subtask.', 'type' => 'string', 'example' => '预检查', 'title' => ''],
'JobId' => ['description' => 'The ID of the data migration or data synchronization task.', 'type' => 'string', 'example' => ' b4my3zg929a****', 'title' => ''],
'ErrorItem' => ['description' => 'The number of specific items that caused the subtask to fail.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'ErrorAnalysisItem' => ['description' => 'The number of items that failed the assessment.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
'Code' => ['description' => 'The task code that represents the queried subtask. Valid values:'."\n"
."\n"
.'- **01**: precheck.'."\n"
.'- **02**: schema migration or initial schema synchronization.'."\n"
.'- **03**: full data migration or initial full data synchronization.'."\n"
.'- **04**: incremental data migration or incremental data synchronization.', 'type' => 'string', 'example' => '01', 'title' => ''],
'PageNumber' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'JobProgress' => [
'description' => 'The list of specific items of the subtask and their execution progress.',
'type' => 'array',
'items' => [
'description' => 'The list of specific items of the subtask and their execution progress.',
'type' => 'object',
'properties' => [
'Skip' => ['description' => 'Indicates whether you have set to skip this specific item after it failed. Valid values:'."\n"
.'* **true**: Yes.'."\n"
.'* **false**: No.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'FinishTime' => ['description' => 'The time when the specific item was completed. The time is displayed in the yyyy-MM-ddTHH:mm:ssZZ format in UTC.', 'type' => 'string', 'example' => '2022-03-16T08:01:34.000+00:00', 'title' => ''],
'IgnoreFlag' => ['description' => 'Indicates whether the specific item is directly ignored and the next item is processed. Valid values:'."\n"
."\n"
.'- **N**: No.'."\n"
.'- **Y**: Yes.', 'type' => 'string', 'example' => 'N', 'title' => ''],
'DelaySeconds' => ['description' => 'The synchronization latency of incremental data migration or incremental data synchronization.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'DdlSql' => ['description' => 'The DDL operation that was executed.', 'type' => 'string', 'example' => 'CREATE TABLE `dtstestdata`.`order` (\\n`orderid` int(11) COMMENT \'\' NOT NULL , \\n`username` char(32) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NULL , \\n`ordertime` datetime COMMENT \'\' NULL , \\n`commodity` varchar(32) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NULL , \\n`phonenumber` int(11) COMMENT \'\' NULL , \\n`address` text CHARSET `utf8mb4` COLLATE `utf8mb4_general_ci` COMMENT \'\' NULL \\n, PRIMARY KEY (`orderid`)) engine=InnoDB DEFAULT CHARSET=`gbk` DEFAULT COLLATE `gbk_chinese_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\n', 'title' => ''],
'State' => ['description' => 'The execution progress status of the specific item. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Checking**: being checked.'."\n"
.'- **Migrating**: being migrated.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Warning**: warning.'."\n"
.'- **Success**: completed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'BootTime' => ['description' => 'The time when the specific item was started. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format in UTC.', 'type' => 'string', 'example' => '2022-03-16T08:01:31.000+00:00', 'title' => ''],
'Item' => ['description' => 'The short name of the specific item.', 'type' => 'string', 'example' => 'CHECK_CONN_DEST', 'title' => ''],
'Sub' => ['description' => 'The progress of sub-items of the specific item.'."\n"
.'> If [] is returned, no sub-items exist.', 'type' => 'string', 'example' => '[]', 'title' => ''],
'Total' => ['description' => 'The total number of specific items in the subtask.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'TargetNames' => ['description' => 'The name of the object to be migrated or synchronized.', 'type' => 'string', 'example' => 'order', 'title' => ''],
'CanSkip' => ['description' => 'Indicates whether DTS supports skipping the specific item after it fails.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Names' => ['description' => 'The name of the specific item.', 'type' => 'string', 'example' => 'CHECK_CONN_DEST_DETAIL', 'title' => ''],
'ErrDetail' => ['description' => 'The error details when the specific item encounters an error.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ_DETAIL', 'title' => ''],
'DiffRow' => ['description' => 'This parameter will be deprecated.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'JobId' => ['description' => 'The subtask ID.', 'type' => 'string', 'example' => 'fj1c33ro168****', 'title' => ''],
'SourceSchema' => ['description' => 'The name of the database to which the migration object belongs in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'DestSchema' => ['description' => 'The name of the database to which the migration object belongs in the destination instance.', 'type' => 'string', 'example' => 'dtstestdata_new', 'title' => ''],
'ParentObj' => ['description' => 'This parameter will be deprecated.', 'type' => 'string', 'example' => 'demo', 'title' => ''],
'ErrMsg' => ['description' => 'The error message when the specific item encounters an error.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ', 'title' => ''],
'OrderNum' => ['description' => 'The item number.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the specific item does not pass.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ_REPAIR', 'title' => ''],
'Id' => ['description' => 'The ID of the record in the metastore.', 'type' => 'string', 'example' => '5632', 'title' => ''],
'Logs' => [
'description' => 'The execution logs of the specific error.',
'type' => 'array',
'items' => [
'description' => 'The execution logs of the specific error.',
'type' => 'object',
'properties' => [
'ErrData' => ['description' => 'The error information.', 'type' => 'string', 'example' => 'CREATE TABLE `dtstestdata`.`customer` (\\n`runoob_id` int(10) unsigned auto_increment COMMENT \'\' NOT NULL , \\n`runoob_title` varchar(100) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\n`runoob_author1216` varchar(40) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\n`submission_date1216` date COMMENT \'\' NULL \\n, PRIMARY KEY (`runoob_id`)) engine=InnoDB AUTO_INCREMENT=200001 DEFAULT CHARSET=`utf8` DEFAULT COLLATE `utf8_general_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\n', 'title' => ''],
'ErrMsg' => ['description' => 'The error message returned by DTS when the specific item encounters an error.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: Table \'customer\' already exists', 'title' => ''],
'LogLevel' => ['description' => 'The log level.', 'type' => 'string', 'example' => 'ERROR', 'title' => ''],
'ErrType' => ['description' => 'The error type.', 'type' => 'string', 'example' => 'ForeignKey', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Current' => ['description' => 'The number of subtasks that are currently running.', 'type' => 'string', 'example' => '0', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'AnalysisJobProgress' => [
'description' => 'The list of assessment tasks.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Skip' => ['description' => 'Indicates whether you have set to skip this assessment item after it failed. Valid values:'."\n"
.'* **true**: Yes.'."\n"
.'* **false**: No.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'FinishTime' => ['description' => 'The time when the assessment task was completed. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format in UTC.', 'type' => 'string', 'example' => '2022-03-16T08:01:31.000+00:00', 'title' => ''],
'IgnoreFlag' => ['description' => 'Indicates whether the specific item is directly ignored and the next item is processed. Valid values:'."\n"
."\n"
.'- **N**: No.'."\n"
.'- **Y**: Yes.', 'type' => 'string', 'example' => 'N', 'title' => ''],
'DelaySeconds' => ['description' => 'The task latency.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'DdlSql' => ['description' => 'The DDL operation that was executed.', 'type' => 'string', 'example' => 'CREATE TABLE ****', 'title' => ''],
'State' => ['description' => 'The result of the assessment item. Valid values:'."\n"
.'- **Failed**: failed.'."\n"
.'- **Success**: completed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'BootTime' => ['description' => 'The time when the specific item was started. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format in UTC.', 'type' => 'string', 'example' => '2022-03-16T08:01:31.000+00:00', 'title' => ''],
'Item' => ['description' => 'The name of the assessment item.', 'type' => 'string', 'example' => 'ANALYSIS_MYSQL_4_ITEM', 'title' => ''],
'Sub' => ['description' => 'The progress of sub-items of the specific item.'."\n"
.'> If [] is returned, no sub-items exist.', 'type' => 'string', 'example' => '[]', 'title' => ''],
'Total' => ['description' => 'The total number of specific items in the subtask.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'TargetNames' => ['description' => 'The name of the target object.', 'type' => 'string', 'example' => 'testTable', 'title' => ''],
'CanSkip' => ['description' => 'Indicates whether the sub-item can be skipped.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Names' => ['description' => 'The name of the assessment item.', 'type' => 'string', 'example' => 'ANALYSIS_MYSQL_4_DETAIL', 'title' => ''],
'ErrDetail' => ['description' => 'The error details when the item encounters an error.', 'type' => 'string', 'example' => 'ANALYSIS_MYSQL', 'title' => ''],
'DiffRow' => ['description' => 'This parameter will be deprecated.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'JobId' => ['description' => 'The ID of the assessment task.', 'type' => 'string', 'example' => '11234234xc', 'title' => ''],
'SourceSchema' => ['description' => 'The name of the database to which the migration object belongs in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'DestSchema' => ['description' => 'The name of the database to which the migration object belongs in the destination instance.', 'type' => 'string', 'example' => 'dest', 'title' => ''],
'ParentObj' => ['description' => 'This parameter will be deprecated.', 'type' => 'string', 'example' => 'demo', 'title' => ''],
'ErrMsg' => ['description' => 'The specific error message.', 'type' => 'string', 'example' => 'ANALYSIS_', 'title' => ''],
'OrderNum' => ['description' => 'The number of the assessment item.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method for the assessment item.', 'type' => 'string', 'example' => 'ANALYSIS_', 'title' => ''],
'Id' => ['description' => 'The ID of the assessment item in the database.', 'type' => 'string', 'example' => '123123', 'title' => ''],
'Logs' => [
'description' => 'The sub-assessment items.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ErrData' => ['description' => 'The error information.', 'type' => 'string', 'example' => '请修改该对象', 'title' => ''],
'ErrMsg' => ['description' => 'The error message returned by DTS when the specific item encounters an error.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: Table \'customer\' already exists', 'title' => ''],
'LogLevel' => ['description' => 'The log level.', 'type' => 'string', 'example' => 'ERROR', 'title' => ''],
'ErrType' => ['description' => 'The error type.', 'type' => 'string', 'example' => 'ForeignKey', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Current' => ['description' => 'The number of subtasks that are currently running.', 'type' => 'string', 'example' => '0', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'SubDistributedJobStatus' => [
'description' => 'The details of distributed subtasks.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'JobName' => ['description' => 'The name of the distributed subtask associated with the task.', 'type' => 'string', 'example' => 'dts.step.struct.load', 'title' => ''],
'State' => ['description' => 'The execution status of the subtask. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Suspending**: suspended.'."\n"
.'- **Checking**: being checked.'."\n"
.'- **Migrating**: being migrated.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Catched**: incremental data migration or synchronization in progress.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'n0gm1682j6563np', 'title' => ''],
'ErrorItem' => ['description' => 'The number of tasks that are currently failing.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'Code' => ['description' => 'The task code that represents the queried subtask type. Valid values:'."\n"
."\n"
.'- **01**: precheck.'."\n"
.'- **02**: schema migration or initial schema synchronization.'."\n"
.'- **03**: full data migration or initial full data synchronization.'."\n"
.'- **04**: incremental data migration or incremental data synchronization.', 'type' => 'string', 'example' => '02', 'title' => ''],
'Total' => ['description' => 'The total number of returned data entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''],
'JobProgress' => [
'description' => 'The list of specific items of the subtask and their execution progress.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Skip' => ['description' => 'Indicates whether the item has been skipped. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'FinishTime' => ['description' => 'The completion time. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format in UTC.', 'type' => 'string', 'example' => '2022-03-31T03:36:11.000+00:00', 'title' => ''],
'IgnoreFlag' => ['description' => 'Indicates whether the specific item is directly ignored and the next item is processed. Valid values:'."\n"
."\n"
.'- **N**: No.'."\n"
.'- **Y**: Yes.', 'type' => 'string', 'example' => 'N', 'title' => ''],
'DelaySeconds' => ['description' => 'The synchronization latency of incremental data migration or incremental data synchronization.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'DdlSql' => ['description' => 'The DDL operation that was executed.', 'type' => 'string', 'example' => 'None', 'title' => ''],
'State' => ['description' => 'The execution status of the subtask. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Suspending**: suspended.'."\n"
.'- **Checking**: being checked.'."\n"
.'- **Migrating**: being migrated.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Catched**: incremental data migration or synchronization in progress.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'BootTime' => ['description' => 'The time when the specific item was started. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format in UTC.', 'type' => 'string', 'example' => '2022-03-30T03:36:11.000+00:00', 'title' => ''],
'Item' => ['description' => 'The name of the specific item.', 'type' => 'string', 'example' => 'login_common_time', 'title' => ''],
'Sub' => ['description' => 'The progress of sub-items of the specific item.'."\n"
.'> If [] is returned, no sub-items exist.', 'type' => 'string', 'example' => '[]', 'title' => ''],
'Total' => ['description' => 'The total number of items.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''],
'TargetNames' => ['description' => 'The name of the target object.', 'type' => 'string', 'example' => 'order', 'title' => ''],
'CanSkip' => ['description' => 'Indicates whether DTS supports skipping the item after it fails. Valid values:'."\n"
.'* **true**: Yes.'."\n"
.'* **false**: No.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'Names' => ['description' => 'The name of the specific item.', 'type' => 'string', 'example' => 'metricRuleTargets-20180308houe', 'title' => ''],
'ErrDetail' => ['description' => 'The error details when the specific item encounters an error.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ_DETAIL', 'title' => ''],
'DiffRow' => ['description' => 'This parameter will be deprecated.', 'type' => 'integer', 'format' => 'int64', 'example' => 'None', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'l3m1213ye7l****', 'title' => ''],
'SourceSchema' => ['description' => 'The name of the database to which the migration object belongs in the source instance.', 'type' => 'string', 'example' => 'databasetest', 'title' => ''],
'DestSchema' => ['description' => 'The name of the database to which the migration object belongs in the destination instance.', 'type' => 'string', 'example' => 'databasetest', 'title' => ''],
'ParentObj' => ['description' => 'This parameter will be deprecated.', 'type' => 'string', 'example' => 'None', 'title' => ''],
'ErrMsg' => ['description' => 'The error message when the specific item encounters an error.', 'type' => 'string', 'example' => 'ODPS project does not exist odps.`huijin', 'title' => ''],
'OrderNum' => ['description' => 'The item number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the precheck does not pass.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ_REPAIR '."\n", 'title' => ''],
'Id' => ['description' => 'The ID of the record in the metastore.', 'type' => 'string', 'example' => '3890****', 'title' => ''],
'Logs' => [
'description' => 'The execution logs of the error.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ErrData' => ['description' => 'The error record.', 'type' => 'string', 'example' => 'CREATE TABLE `dtstestdata`.`customer` (\\n`runoob_id` int(10) unsigned auto_increment COMMENT \'\' NOT NULL , \\n`runoob_title` varchar(100) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\n`runoob_author1216` varchar(40) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\n`submission_date1216` date COMMENT \'\' NULL \\n, PRIMARY KEY (`runoob_id`)) engine=InnoDB AUTO_INCREMENT=200001 DEFAULT CHARSET=`utf8` DEFAULT COLLATE `utf8_general_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\n', 'title' => ''],
'ErrMsg' => ['description' => 'The specific error message.', 'type' => 'string', 'example' => 'get metric list fail', 'title' => ''],
'LogLevel' => ['description' => 'The log level.', 'type' => 'string', 'example' => 'INFO', 'title' => ''],
'ErrType' => ['description' => 'The error type.', 'type' => 'string', 'example' => 'ForeignKey', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Current' => ['description' => 'The number of subtasks that are currently running.', 'type' => 'string', 'example' => '0', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'FullNetCheckJobStatus' => [
'description' => 'The full CIDR block check results.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'JobName' => ['description' => 'The task name.', 'type' => 'string', 'example' => 'dts.step.fullnetcheck', 'title' => ''],
'State' => ['description' => 'The check result. Valid values:'."\n"
.'- **Failed**: failed.'."\n"
.'- **Success**: completed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'l3m1213ye7l****', 'title' => ''],
'ErrorItem' => ['description' => 'The number of items that failed the precheck.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'Code' => ['description' => 'The task code. **01** indicates precheck.', 'type' => 'string', 'example' => '01', 'title' => ''],
'Total' => ['description' => 'The total number of items.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''],
'HostRegion' => ['description' => 'The region ID of the node where the instance runs.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'SrcRegion' => ['description' => 'The region ID of the source CIDR block.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'DestRegion' => ['description' => 'The region ID of the destination CIDR block.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'SrcRegionCidr' => ['description' => 'The source CIDR block.', 'type' => 'string', 'example' => '100.104.XX.XXX/XX', 'title' => ''],
'DestRegionCidr' => ['description' => 'The destination CIDR block.', 'type' => 'string', 'example' => '100.104.XX.XXX/XX', 'title' => ''],
'SourceEndpointType' => ['description' => 'The connection method of the source instance. Valid values:'."\n"
.'- **ALIYUN**: **cloud instance**.'."\n"
.'- **OTHER**: **public IP address**.'."\n"
.'- **ECS**: **self-managed database on ECS**.'."\n"
.'- **EXPRESS**: **Express Connect/VPN Gateway/Smart Access Gateway**.'."\n"
.'- **CEN**: **Cloud Enterprise Network (CEN)**.'."\n"
.'- **DG**: **Database Gateway (DG)**.', 'type' => 'string', 'example' => 'CEN', 'title' => ''],
'DestinationEndpointType' => ['description' => 'The connection method of the destination instance. Valid values:'."\n"
.'- **ALIYUN**: **cloud instance**.'."\n"
.'- **OTHER**: **public IP address**.'."\n"
.'- **ECS**: **self-managed database on ECS**.'."\n"
.'- **EXPRESS**: **Express Connect/VPN Gateway/Smart Access Gateway**.'."\n"
.'- **CEN**: **Cloud Enterprise Network (CEN)**.'."\n"
.'- **DG**: **Database Gateway (DG)**.', 'type' => 'string', 'example' => 'CEN', 'title' => ''],
'JobProgress' => [
'description' => 'The list of specific items of the task and their execution progress.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Skip' => ['description' => 'Indicates whether you have set to skip this specific item after it failed. Valid values:'."\n"
.'* **true**: Yes.'."\n"
.'* **false**: No.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'FinishTime' => ['description' => 'The time when the task was completed. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format in UTC.', 'type' => 'string', 'example' => '2022-03-31T03:36:11.000+00:00', 'title' => ''],
'IgnoreFlag' => ['description' => 'Indicates whether the specific item is directly ignored and the next item is processed. Valid values:'."\n"
."\n"
.'- **N**: No.'."\n"
.'- **Y**: Yes.', 'type' => 'string', 'example' => 'N', 'title' => ''],
'DelaySeconds' => ['description' => 'The task latency.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'DdlSql' => ['description' => 'The DDL operation that was executed.', 'type' => 'string', 'example' => 'CREATE TABLE ****', 'title' => ''],
'State' => ['description' => 'The check result. Valid values:'."\n"
.'- **Failed**: failed.'."\n"
.'- **Success**: completed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'BootTime' => ['description' => 'The time when the specific item was started. The time is displayed in the yyyy-MM-ddTHH:mm:ssZ format in UTC.', 'type' => 'string', 'example' => '2022-03-30T03:36:11.000+00:00', 'title' => ''],
'Item' => ['description' => 'The name of the specific item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'Sub' => ['description' => 'The progress of sub-items of the specific item.'."\n"
.'> If [] is returned, no sub-items exist.', 'type' => 'string', 'example' => '[]', 'title' => ''],
'Total' => ['description' => 'The total number of items.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''],
'TargetNames' => ['description' => 'The name of the target object.', 'type' => 'string', 'example' => 'order', 'title' => ''],
'CanSkip' => ['description' => 'Indicates whether DTS supports skipping the item after it fails. Valid values:'."\n"
.'* **true**: Yes.'."\n"
.'* **false**: No.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
'Names' => ['description' => 'The name of the specific item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC_DETAIL', 'title' => ''],
'ErrDetail' => ['description' => 'The error details when the specific item encounters an error.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ_DETAIL', 'title' => ''],
'DiffRow' => ['description' => 'This parameter will be deprecated.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'JobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'l3m1213ye7l****', 'title' => ''],
'SourceSchema' => ['description' => 'The name of the database to which the migration object belongs in the source instance.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'DestSchema' => ['description' => 'The name of the database to which the migration object belongs in the destination instance.', 'type' => 'string', 'example' => 'dest', 'title' => ''],
'ParentObj' => ['description' => 'This parameter will be deprecated.', 'type' => 'string', 'example' => 'demo', 'title' => ''],
'ErrMsg' => ['description' => 'The error message when the specific item encounters an error.', 'type' => 'string', 'example' => 'ODPS project does not exist odps.`huijin', 'title' => ''],
'OrderNum' => ['description' => 'The item number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the precheck does not pass.', 'type' => 'string', 'example' => 'CHECK__ERROR_SAME_OBJ_REPAIR', 'title' => ''],
'Id' => ['description' => 'The ID of the record in the metastore.', 'type' => 'string', 'example' => '922305811766881****', 'title' => ''],
'Logs' => [
'description' => 'The execution logs of the error.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ErrData' => ['description' => 'The error record.', 'type' => 'string', 'example' => 'CREATE TABLE `dtstestdata`.`customer` ****', 'title' => ''],
'ErrMsg' => ['description' => 'The specific error message.', 'type' => 'string', 'example' => 'get metric list fail', 'title' => ''],
'LogLevel' => ['description' => 'The log level.', 'type' => 'string', 'example' => 'INFO', 'title' => ''],
'ErrType' => ['description' => 'The error type.', 'type' => 'string', 'example' => 'ForeignKey', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'Current' => ['description' => 'The number of tasks that are currently running.', 'type' => 'string', 'example' => '0', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'NetworkDiagnosisResult' => [
'description' => 'The network diagnosis result.',
'type' => 'object',
'properties' => [
'ModelVersion' => ['description' => 'The version of the diagnosis model.', 'type' => 'string', 'example' => 'network-v0.2', 'title' => ''],
'Diagnosis' => [
'description' => 'The network diagnostic report.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'EndpointType' => ['description' => 'The endpoint type. Valid values:'."\n"
.'- **source**: source endpoint.'."\n"
.'- **destination**: destination endpoint.'."\n"
.'- **unknown**: unknown.', 'type' => 'string', 'example' => 'source', 'title' => ''],
'Code' => ['description' => 'The diagnosis code.', 'type' => 'string', 'example' => 'dts.kunlun.diagnosis.network.express_doc', 'title' => ''],
'CnDocUrl' => ['description' => 'The documentation URL for the China region.', 'type' => 'string', 'example' => 'https://***.ali***.com/document_detail/470447.html', 'title' => ''],
'InternationalDocUrl' => ['description' => 'The documentation URL for regions outside China.', 'type' => 'string', 'example' => 'https://www.ali***.com/help/en/data-transmission-service/latest/how-to-solve-an-error-when-accessing-a-database-instance-to-dts-using-vpn', 'title' => ''],
'Result' => ['description' => 'The reserved field for the diagnosis result. This field is empty by default.', 'type' => 'string', 'example' => 'none', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"State\\": \\"Finished\\",\\n \\"Success\\": true,\\n \\"PageRecordCount\\": 20,\\n \\"Total\\": 0,\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"C096FA97-B6BA-4575-899D-61E12B59****\\",\\n \\"JobName\\": \\"预检查\\",\\n \\"JobId\\": \\" b4my3zg929a****\\",\\n \\"ErrorItem\\": 0,\\n \\"ErrorAnalysisItem\\": 0,\\n \\"TotalRecordCount\\": 100,\\n \\"Code\\": \\"01\\",\\n \\"PageNumber\\": 1,\\n \\"JobProgress\\": [\\n {\\n \\"Skip\\": false,\\n \\"FinishTime\\": \\"2022-03-16T08:01:34.000+00:00\\",\\n \\"IgnoreFlag\\": \\"N\\",\\n \\"DelaySeconds\\": 0,\\n \\"DdlSql\\": \\"CREATE TABLE `dtstestdata`.`order` (\\\\\\\\n`orderid` int(11) COMMENT \'\' NOT NULL , \\\\\\\\n`username` char(32) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NULL , \\\\\\\\n`ordertime` datetime COMMENT \'\' NULL , \\\\\\\\n`commodity` varchar(32) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NULL , \\\\\\\\n`phonenumber` int(11) COMMENT \'\' NULL , \\\\\\\\n`address` text CHARSET `utf8mb4` COLLATE `utf8mb4_general_ci` COMMENT \'\' NULL \\\\\\\\n, PRIMARY KEY (`orderid`)) engine=InnoDB DEFAULT CHARSET=`gbk` DEFAULT COLLATE `gbk_chinese_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\\\\\\\n\\",\\n \\"State\\": \\"Success\\",\\n \\"BootTime\\": \\"2022-03-16T08:01:31.000+00:00\\",\\n \\"Item\\": \\"CHECK_CONN_DEST\\",\\n \\"Sub\\": \\"[]\\",\\n \\"Total\\": 1,\\n \\"TargetNames\\": \\"order\\",\\n \\"CanSkip\\": true,\\n \\"Names\\": \\"CHECK_CONN_DEST_DETAIL\\",\\n \\"ErrDetail\\": \\"CHECK__ERROR_SAME_OBJ_DETAIL\\",\\n \\"DiffRow\\": 1,\\n \\"JobId\\": \\"fj1c33ro168****\\",\\n \\"SourceSchema\\": \\"dtstestdata\\",\\n \\"DestSchema\\": \\"dtstestdata_new\\",\\n \\"ParentObj\\": \\"demo\\",\\n \\"ErrMsg\\": \\"CHECK__ERROR_SAME_OBJ\\",\\n \\"OrderNum\\": 10,\\n \\"RepairMethod\\": \\"CHECK__ERROR_SAME_OBJ_REPAIR\\",\\n \\"Id\\": \\"5632\\",\\n \\"Logs\\": [\\n {\\n \\"ErrData\\": \\"CREATE TABLE `dtstestdata`.`customer` (\\\\\\\\n`runoob_id` int(10) unsigned auto_increment COMMENT \'\' NOT NULL , \\\\\\\\n`runoob_title` varchar(100) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\\\\\\\n`runoob_author1216` varchar(40) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\\\\\\\n`submission_date1216` date COMMENT \'\' NULL \\\\\\\\n, PRIMARY KEY (`runoob_id`)) engine=InnoDB AUTO_INCREMENT=200001 DEFAULT CHARSET=`utf8` DEFAULT COLLATE `utf8_general_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\\\\\\\n\\",\\n \\"ErrMsg\\": \\"DTS-1020042 Execute sql error sql: Table \'customer\' already exists\\",\\n \\"LogLevel\\": \\"ERROR\\",\\n \\"ErrType\\": \\"ForeignKey\\"\\n }\\n ],\\n \\"Current\\": \\"0\\"\\n }\\n ],\\n \\"AnalysisJobProgress\\": [\\n {\\n \\"Skip\\": false,\\n \\"FinishTime\\": \\"2022-03-16T08:01:31.000+00:00\\",\\n \\"IgnoreFlag\\": \\"N\\",\\n \\"DelaySeconds\\": 0,\\n \\"DdlSql\\": \\"CREATE TABLE ****\\",\\n \\"State\\": \\"Success\\",\\n \\"BootTime\\": \\"2022-03-16T08:01:31.000+00:00\\",\\n \\"Item\\": \\"ANALYSIS_MYSQL_4_ITEM\\",\\n \\"Sub\\": \\"[]\\",\\n \\"Total\\": 1,\\n \\"TargetNames\\": \\"testTable\\",\\n \\"CanSkip\\": true,\\n \\"Names\\": \\"ANALYSIS_MYSQL_4_DETAIL\\",\\n \\"ErrDetail\\": \\"ANALYSIS_MYSQL\\",\\n \\"DiffRow\\": 1,\\n \\"JobId\\": \\"11234234xc\\",\\n \\"SourceSchema\\": \\"dtstestdata\\",\\n \\"DestSchema\\": \\"dest\\",\\n \\"ParentObj\\": \\"demo\\",\\n \\"ErrMsg\\": \\"ANALYSIS_\\",\\n \\"OrderNum\\": 10,\\n \\"RepairMethod\\": \\"ANALYSIS_\\",\\n \\"Id\\": \\"123123\\",\\n \\"Logs\\": [\\n {\\n \\"ErrData\\": \\"请修改该对象\\",\\n \\"ErrMsg\\": \\"DTS-1020042 Execute sql error sql: Table \'customer\' already exists\\",\\n \\"LogLevel\\": \\"ERROR\\",\\n \\"ErrType\\": \\"ForeignKey\\"\\n }\\n ],\\n \\"Current\\": \\"0\\"\\n }\\n ],\\n \\"SubDistributedJobStatus\\": [\\n {\\n \\"JobName\\": \\"dts.step.struct.load\\",\\n \\"State\\": \\"Finished\\",\\n \\"JobId\\": \\"n0gm1682j6563np\\",\\n \\"ErrorItem\\": 0,\\n \\"Code\\": \\"02\\",\\n \\"Total\\": 11,\\n \\"JobProgress\\": [\\n {\\n \\"Skip\\": true,\\n \\"FinishTime\\": \\"2022-03-31T03:36:11.000+00:00\\",\\n \\"IgnoreFlag\\": \\"N\\",\\n \\"DelaySeconds\\": 0,\\n \\"DdlSql\\": \\"None\\",\\n \\"State\\": \\"Finished\\",\\n \\"BootTime\\": \\"2022-03-30T03:36:11.000+00:00\\",\\n \\"Item\\": \\"login_common_time\\",\\n \\"Sub\\": \\"[]\\",\\n \\"Total\\": 11,\\n \\"TargetNames\\": \\"order\\",\\n \\"CanSkip\\": false,\\n \\"Names\\": \\"metricRuleTargets-20180308houe\\",\\n \\"ErrDetail\\": \\"CHECK__ERROR_SAME_OBJ_DETAIL\\",\\n \\"DiffRow\\": 0,\\n \\"JobId\\": \\"l3m1213ye7l****\\",\\n \\"SourceSchema\\": \\"databasetest\\",\\n \\"DestSchema\\": \\"databasetest\\",\\n \\"ParentObj\\": \\"None\\",\\n \\"ErrMsg\\": \\"ODPS project does not exist odps.`huijin\\",\\n \\"OrderNum\\": 1,\\n \\"RepairMethod\\": \\"CHECK__ERROR_SAME_OBJ_REPAIR\\\\t\\\\n\\",\\n \\"Id\\": \\"3890****\\",\\n \\"Logs\\": [\\n {\\n \\"ErrData\\": \\"CREATE TABLE `dtstestdata`.`customer` (\\\\\\\\n`runoob_id` int(10) unsigned auto_increment COMMENT \'\' NOT NULL , \\\\\\\\n`runoob_title` varchar(100) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\\\\\\\n`runoob_author1216` varchar(40) CHARSET `utf8` COLLATE `utf8_general_ci` COMMENT \'\' NOT NULL , \\\\\\\\n`submission_date1216` date COMMENT \'\' NULL \\\\\\\\n, PRIMARY KEY (`runoob_id`)) engine=InnoDB AUTO_INCREMENT=200001 DEFAULT CHARSET=`utf8` DEFAULT COLLATE `utf8_general_ci` ROW_FORMAT= Dynamic comment = \'\' ;\\\\\\\\n\\",\\n \\"ErrMsg\\": \\"get metric list fail\\",\\n \\"LogLevel\\": \\"INFO\\",\\n \\"ErrType\\": \\"ForeignKey\\"\\n }\\n ],\\n \\"Current\\": \\"0\\"\\n }\\n ]\\n }\\n ],\\n \\"FullNetCheckJobStatus\\": [\\n {\\n \\"JobName\\": \\"dts.step.fullnetcheck\\",\\n \\"State\\": \\"Success\\",\\n \\"JobId\\": \\"l3m1213ye7l****\\",\\n \\"ErrorItem\\": 0,\\n \\"Code\\": \\"01\\",\\n \\"Total\\": 11,\\n \\"HostRegion\\": \\"cn-hangzhou\\",\\n \\"SrcRegion\\": \\"cn-hangzhou\\",\\n \\"DestRegion\\": \\"cn-hangzhou\\",\\n \\"SrcRegionCidr\\": \\"100.104.XX.XXX/XX\\",\\n \\"DestRegionCidr\\": \\"100.104.XX.XXX/XX\\",\\n \\"SourceEndpointType\\": \\"CEN\\",\\n \\"DestinationEndpointType\\": \\"CEN\\",\\n \\"JobProgress\\": [\\n {\\n \\"Skip\\": false,\\n \\"FinishTime\\": \\"2022-03-31T03:36:11.000+00:00\\",\\n \\"IgnoreFlag\\": \\"N\\",\\n \\"DelaySeconds\\": 0,\\n \\"DdlSql\\": \\"CREATE TABLE ****\\",\\n \\"State\\": \\"Success\\",\\n \\"BootTime\\": \\"2022-03-30T03:36:11.000+00:00\\",\\n \\"Item\\": \\"CHECK_CONN_SRC\\",\\n \\"Sub\\": \\"[]\\",\\n \\"Total\\": 11,\\n \\"TargetNames\\": \\"order\\",\\n \\"CanSkip\\": false,\\n \\"Names\\": \\"CHECK_CONN_SRC_DETAIL\\",\\n \\"ErrDetail\\": \\"CHECK__ERROR_SAME_OBJ_DETAIL\\",\\n \\"DiffRow\\": 1,\\n \\"JobId\\": \\"l3m1213ye7l****\\",\\n \\"SourceSchema\\": \\"dtstestdata\\",\\n \\"DestSchema\\": \\"dest\\",\\n \\"ParentObj\\": \\"demo\\",\\n \\"ErrMsg\\": \\"ODPS project does not exist odps.`huijin\\",\\n \\"OrderNum\\": 1,\\n \\"RepairMethod\\": \\"CHECK__ERROR_SAME_OBJ_REPAIR\\",\\n \\"Id\\": \\"922305811766881****\\",\\n \\"Logs\\": [\\n {\\n \\"ErrData\\": \\"CREATE TABLE `dtstestdata`.`customer` ****\\",\\n \\"ErrMsg\\": \\"get metric list fail\\",\\n \\"LogLevel\\": \\"INFO\\",\\n \\"ErrType\\": \\"ForeignKey\\"\\n }\\n ],\\n \\"Current\\": \\"0\\"\\n }\\n ]\\n }\\n ],\\n \\"NetworkDiagnosisResult\\": {\\n \\"ModelVersion\\": \\"network-v0.2\\",\\n \\"Diagnosis\\": [\\n {\\n \\"EndpointType\\": \\"source\\",\\n \\"Code\\": \\"dts.kunlun.diagnosis.network.express_doc\\",\\n \\"CnDocUrl\\": \\"https://***.ali***.com/document_detail/470447.html\\",\\n \\"InternationalDocUrl\\": \\"https://www.ali***.com/help/en/data-transmission-service/latest/how-to-solve-an-error-when-accessing-a-database-instance-to-dts-using-vpn\\",\\n \\"Result\\": \\"none\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query DTS subtask execution status',
'summary' => 'Queries the execution details of subtasks of a DTS task, including precheck, schema migration or synchronization, full data migration or synchronization, and incremental data migration or synchronization.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribePreCheckStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeSubscriptionInstanceAlert' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the DescribeSubscriptionInstances operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsl8zl9ek6292****', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The value can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'ETnLKlblzczshOTUbOCz****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '210ec2e116055198849072222d****', 'title' => ''],
'ErrorAlertStatus' => ['description' => 'Indicates whether error alerting is enabled. Valid values:'."\n"
."\n"
.'- **enable**: Enabled.'."\n"
.'- **disable**: Disabled.', 'type' => 'string', 'example' => 'enable', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrorAlertPhone' => ['description' => 'The mobile phone number of the contact for error alerts.', 'type' => 'string', 'example' => '13555*****', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DelayAlertStatus' => ['description' => 'Indicates whether latency alerting is enabled. Valid values:'."\n"
."\n"
.'- **enable**: Enabled.'."\n"
.'- **disable**: Disabled.', 'type' => 'string', 'example' => 'enable', 'title' => ''],
'SubscriptionInstanceName' => ['description' => 'The name of the change tracking instance.', 'type' => 'string', 'example' => 'test', 'title' => ''],
'DelayAlertPhone' => ['description' => 'The mobile phone number of the contact for latency alerts.', 'type' => 'string', 'example' => '13465****', 'title' => ''],
'SubscriptionInstanceID' => ['description' => 'The change tracking instance ID.', 'type' => 'string', 'example' => 'dtsl8zl9ek6292****', 'title' => ''],
'DelayOverSeconds' => ['description' => 'The threshold for triggering latency alerts. Unit: seconds. The value must be an integer. A value of 10 seconds is recommended.', 'type' => 'string', 'example' => '10', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"210ec2e116055198849072222d****\\",\\n \\"ErrorAlertStatus\\": \\"enable\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrorAlertPhone\\": \\"13555*****\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DelayAlertStatus\\": \\"enable\\",\\n \\"SubscriptionInstanceName\\": \\"test\\",\\n \\"DelayAlertPhone\\": \\"13465****\\",\\n \\"SubscriptionInstanceID\\": \\"dtsl8zl9ek6292****\\",\\n \\"DelayOverSeconds\\": \\"10\\"\\n}","type":"json"}]',
'title' => 'Query monitoring and alerting settings of a change tracking instance',
'summary' => 'Queries the monitoring and alerting settings of a change tracking instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSubscriptionInstanceAlert',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeSubscriptionInstanceStatus' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the [DescribeSubscriptionInstances](~~49442~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsy0zz3t13h7d****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the change tracking instance. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Starting**: starting.'."\n"
.'- **Normal**: running normally.'."\n"
.'- **Abnormal**: abnormal.', 'type' => 'string', 'example' => 'Normal', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the change tracking task is abnormal.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'PayType' => ['description' => 'The billing method of the change tracking instance. Valid values:'."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'ConsumptionClient' => ['description' => 'The information about the downstream consumption client, which consists of an IP address and a random number generated by DTS.', 'type' => 'string', 'example' => '114.***.***.**:dts********', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-23T07:30:31Z', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range for data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-26T14:03:21Z', 'title' => ''],
'BeginTimestamp' => ['description' => 'The beginning of the timestamp range for data stored in the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-03-15T08:25:34Z', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'E0845D0A-6D36-4EEB-BE26-CF191E1A****', 'title' => ''],
'SubscribeTopic' => ['description' => 'The subscription topic.'."\n"
.'> This parameter is returned only when the change tracking instance is of the new version and a consumer group is created by calling the [CreateConsumerGroup](~~122863~~) operation.', 'type' => 'string', 'example' => 'cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2', 'title' => ''],
'SubscriptionInstanceName' => ['description' => 'The name of the change tracking instance.', 'type' => 'string', 'example' => 'api测试', 'title' => ''],
'SubscriptionInstanceID' => ['description' => 'The ID of the change tracking instance.', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
'TaskId' => ['description' => 'The ID of the change tracking task.', 'type' => 'string', 'example' => 'y0zz3t13h7d****', 'title' => ''],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'InstanceType' => ['description' => 'The instance type of the source database.'."\n"
.'> This parameter is returned only when the change tracking instance is of the new version.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'InstanceID' => ['description' => 'The instance ID of the source database.', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscriptionDataType' => [
'description' => 'The type of the subscribed data.',
'type' => 'object',
'properties' => [
'DML' => ['description' => 'Indicates whether the subscribed data includes DML statements. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DDL' => ['description' => 'Indicates whether the subscribed data includes DDL statements. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscriptionHost' => [
'description' => 'The endpoint of the change tracking instance.',
'type' => 'object',
'properties' => [
'VPCHost' => ['description' => 'The VPC endpoint of the change tracking instance, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-vpc.aliyuncs.com:18003', 'title' => ''],
'PublicHost' => ['description' => 'The public endpoint of the subscribe instance, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
'PrivateHost' => ['description' => 'The private endpoint of the change tracking instance, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-internal.aliyuncs.com:18002', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscriptionObject' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'SynchronousObject' => [
'description' => 'The subscription objects.',
'type' => 'array',
'items' => [
'description' => 'The subscription objects.',
'type' => 'object',
'properties' => [
'DatabaseName' => ['description' => 'The name of the database to which the subscription object belongs.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'WholeDatabase' => ['description' => 'Indicates whether the entire database is subscribed. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'string', 'example' => 'false', 'title' => ''],
'TableList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'Table' => [
'description' => 'The table name of the subscription object.',
'type' => 'array',
'items' => ['description' => 'The table name of the subscription object.', 'type' => 'string', 'example' => 'test1', 'title' => ''],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Normal\\",\\n \\"ErrorMessage\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"ConsumptionClient\\": \\"114.***.***.**:dts********\\",\\n \\"ConsumptionCheckpoint\\": \\"2021-03-23T07:30:31Z\\",\\n \\"EndTimestamp\\": \\"2021-03-26T14:03:21Z\\",\\n \\"BeginTimestamp\\": \\"2021-03-15T08:25:34Z\\",\\n \\"RequestId\\": \\"E0845D0A-6D36-4EEB-BE26-CF191E1A****\\",\\n \\"SubscribeTopic\\": \\"cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2\\",\\n \\"SubscriptionInstanceName\\": \\"api测试\\",\\n \\"SubscriptionInstanceID\\": \\"rm-bp1162kryivb8****\\",\\n \\"TaskId\\": \\"y0zz3t13h7d****\\",\\n \\"SourceEndpoint\\": {\\n \\"InstanceType\\": \\"RDS\\",\\n \\"InstanceID\\": \\"rm-bp1162kryivb8****\\"\\n },\\n \\"SubscriptionDataType\\": {\\n \\"DML\\": true,\\n \\"DDL\\": true\\n },\\n \\"SubscriptionHost\\": {\\n \\"VPCHost\\": \\"dts-cn-****-vpc.aliyuncs.com:18003\\",\\n \\"PublicHost\\": \\"dts-cn-****.aliyuncs.com:18001\\",\\n \\"PrivateHost\\": \\"dts-cn-****-internal.aliyuncs.com:18002\\"\\n },\\n \\"SubscriptionObject\\": {\\n \\"SynchronousObject\\": [\\n {\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"WholeDatabase\\": \\"false\\",\\n \\"TableList\\": {\\n \\"Table\\": [\\n \\"test1\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query change tracking channel instance status details',
'summary' => 'Queries the instance status details of a change tracking channel. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSubscriptionInstanceStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeSubscriptionInstances' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~49442~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page. Valid values: **30**, **50**, and **100**. Default value: **30**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '30', 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNum',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be an integer greater than **0** and cannot exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceName',
'in' => 'query',
'schema' => ['description' => 'The name of the change tracking instance.'."\n"
.'> If you specify this parameter, DTS returns the change tracking instances that contain the specified name in the response.', 'type' => 'string', 'required' => false, 'example' => 'MySQL订阅', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'Tag',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The tags of the data migration instance. These tags are used as filter conditions. If this parameter is specified, only instances that have the specified tags are returned.',
'type' => 'array',
'items' => [
'description' => 'The tags of the data migration instance. These tags are used as filter conditions. If this parameter is specified, only instances that have the specified tags are returned.',
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The key of the tag.'."\n"
.'> - N specifies the sequence number of the tag key. For example, Tag.1.Key specifies the key of the first tag, and Tag.2.Key specifies the key of the second tag. You can query 1 to 20 tag keys at a time.'."\n"
.'- Empty strings are not allowed.', 'type' => 'string', 'required' => true, 'example' => 'testkey1', 'title' => ''],
'Value' => ['description' => 'The value of the tag.'."\n"
.'>- N specifies the sequence number of the tag value. For example, Tag.1.Value specifies the value of the first tag, and Tag.2.Value specifies the value of the second tag. You can query 1 to 20 tag values at a time.'."\n"
.'- Empty strings are allowed.', 'type' => 'string', 'required' => false, 'example' => 'testvalue1', 'title' => ''],
],
'required' => false,
'title' => '',
'example' => '',
],
'required' => false,
'maxItems' => 11,
'title' => '',
'example' => '',
],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FC3BAAF2-74E3-4471-8EB5-96202D6A****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of records that can be displayed on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of change tracking instances that meet the specified conditions under the Alibaba Cloud account.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'SubscriptionInstances' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'SubscriptionInstance' => [
'description' => 'The list of change tracking instances and the details of each instance.',
'type' => 'array',
'items' => [
'description' => 'The list of change tracking instances and the details of each instance.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the change tracking instance. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Starting**: starting.'."\n"
.'- **Normal**: running normally.'."\n"
.'- **Abnormal**: running abnormally.', 'type' => 'string', 'example' => 'Normal', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message for the change tracking exception.', 'type' => 'string', 'example' => 'xxxxxxxx', 'title' => ''],
'PayType' => ['description' => 'The billing method of the change tracking instance. Valid values:'."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'ConsumptionClient' => ['description' => 'The IP address and random identifier of the downstream client. The IP address is the IP address of the downstream client, and the random identifier is a random ID generated by DTS.', 'type' => 'string', 'example' => '114.***.***.**:dts********', 'title' => ''],
'ConsumptionCheckpoint' => ['description' => 'The consumption checkpoint of the downstream client for the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-21T09:30:31Z', 'title' => ''],
'EndTimestamp' => ['description' => 'The end of the timestamp range for data stored by the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-21T10:17:21Z', 'title' => ''],
'InstanceCreateTime' => ['description' => 'The time when the change tracking instance was created. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-21T02:48:20Z', 'title' => ''],
'BeginTimestamp' => ['description' => 'The start of the timestamp range for data stored by the change tracking instance. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-21T08:25:43Z', 'title' => ''],
'SubscribeTopic' => ['description' => 'The subscription topic.'."\n"
.'> This parameter is returned only when the change tracking instance is of the new version and a consumer group has been created by calling the [CreateConsumerGroup](~~122863~~) operation.', 'type' => 'string', 'example' => 'cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2', 'title' => ''],
'SubscriptionInstanceName' => ['description' => 'The name of the change tracking instance.', 'type' => 'string', 'example' => 'mysql订阅', 'title' => ''],
'SubscriptionInstanceID' => ['description' => 'The change tracking instance ID.', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
'JobCreateTime' => ['description' => 'The time when the change tracking task was created. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-21T02:48:20Z', 'title' => ''],
'SubscriptionObject' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'SynchronousObject' => [
'description' => 'The subscription objects.',
'type' => 'array',
'items' => [
'description' => 'The subscription objects.',
'type' => 'object',
'properties' => [
'DatabaseName' => ['description' => 'The name of the database to which the subscription object belongs.', 'type' => 'string', 'example' => 'dtstestdata', 'title' => ''],
'WholeDatabase' => ['description' => 'Indicates whether the entire database is subscribed. Valid values:'."\n"
."\n"
.'- **true**: The entire database is subscribed.'."\n"
.'- **false**: The entire database is not subscribed.', 'type' => 'string', 'example' => 'false', 'title' => ''],
'TableList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'Table' => [
'description' => 'The table names of the subscription objects.',
'type' => 'array',
'items' => ['description' => 'The table names of the subscription objects.', 'type' => 'string', 'example' => 'test1', 'title' => ''],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'Tags' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'Tag' => [
'description' => 'The tag collection.',
'type' => 'array',
'items' => [
'description' => 'The tag collection.',
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'testkey1', 'title' => ''],
'Value' => ['description' => 'The tag value that corresponds to the tag key.', 'type' => 'string', 'example' => 'testvalue1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'InstanceType' => ['description' => 'The type of the source instance.'."\n"
.'> This parameter is returned only when the change tracking instance is of the new version.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'InstanceID' => ['description' => 'The source instance ID.', 'type' => 'string', 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscriptionDataType' => [
'description' => 'The type of the subscribed data.',
'type' => 'object',
'properties' => [
'DML' => ['description' => 'Indicates whether the subscribed data includes DML statements. Valid values:'."\n"
."\n"
.'- **true**: DML statements are included.'."\n"
.'- **false**: DML statements are not included.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'DDL' => ['description' => 'Indicates whether the subscribed data includes DDL statements. Valid values:'."\n"
."\n"
.'- **true**: DDL statements are included.'."\n"
.'- **false**: DDL statements are not included.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SubscriptionHost' => [
'description' => 'The endpoint of the change tracking instance.',
'type' => 'object',
'properties' => [
'VPCHost' => ['description' => 'The VPC endpoint of the change tracking instance, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-vpc.aliyuncs.com:18003', 'title' => ''],
'PublicHost' => ['description' => 'The public endpoint of the change tracking instance, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****.aliyuncs.com:18001', 'title' => ''],
'PrivateHost' => ['description' => 'The internal endpoint of the change tracking instance, in the format of `address:port`.', 'type' => 'string', 'example' => 'dts-cn-****-internal.aliyuncs.com:18002', 'title' => ''],
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FC3BAAF2-74E3-4471-8EB5-96202D6A****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"PageRecordCount\\": 30,\\n \\"Success\\": \\"true\\",\\n \\"TotalRecordCount\\": 1,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"PageNumber\\": 1,\\n \\"SubscriptionInstances\\": {\\n \\"SubscriptionInstance\\": [\\n {\\n \\"Status\\": \\"Normal\\",\\n \\"ErrorMessage\\": \\"xxxxxxxx\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"ConsumptionClient\\": \\"114.***.***.**:dts********\\",\\n \\"ConsumptionCheckpoint\\": \\"2021-06-21T09:30:31Z\\",\\n \\"EndTimestamp\\": \\"2021-06-21T10:17:21Z\\",\\n \\"InstanceCreateTime\\": \\"2021-06-21T02:48:20Z\\",\\n \\"BeginTimestamp\\": \\"2021-06-21T08:25:43Z\\",\\n \\"SubscribeTopic\\": \\"cn_hangzhou_rm_bp1162kryivb8****_dtstest_version2\\",\\n \\"SubscriptionInstanceName\\": \\"mysql订阅\\",\\n \\"SubscriptionInstanceID\\": \\"rm-bp1162kryivb8****\\",\\n \\"JobCreateTime\\": \\"2021-06-21T02:48:20Z\\",\\n \\"SubscriptionObject\\": {\\n \\"SynchronousObject\\": [\\n {\\n \\"DatabaseName\\": \\"dtstestdata\\",\\n \\"WholeDatabase\\": \\"false\\",\\n \\"TableList\\": {\\n \\"Table\\": [\\n \\"test1\\"\\n ]\\n }\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"testkey1\\",\\n \\"Value\\": \\"testvalue1\\"\\n }\\n ]\\n },\\n \\"SourceEndpoint\\": {\\n \\"InstanceType\\": \\"RDS\\",\\n \\"InstanceID\\": \\"rm-bp1162kryivb8****\\"\\n },\\n \\"SubscriptionDataType\\": {\\n \\"DML\\": true,\\n \\"DDL\\": true\\n },\\n \\"SubscriptionHost\\": {\\n \\"VPCHost\\": \\"dts-cn-****-vpc.aliyuncs.com:18003\\",\\n \\"PublicHost\\": \\"dts-cn-****.aliyuncs.com:18001\\",\\n \\"PrivateHost\\": \\"dts-cn-****-internal.aliyuncs.com:18002\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query change tracking instances and their details',
'summary' => 'Queries the list of change tracking instances and the details of each instance.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSubscriptionInstances',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeSubscriptionMeta' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'Sid',
'in' => 'query',
'schema' => ['description' => 'The consumer group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'z38m91gg2******', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the distributed change tracking task.'."\n"
."\n"
.'> This parameter is required.', 'type' => 'string', 'required' => false, 'example' => 'dtsbr4m9luv2******', 'title' => ''],
],
[
'name' => 'SubMigrationJobIds',
'in' => 'query',
'style' => 'json',
'schema' => ['description' => 'The IDs of all change tracking subtasks in the distributed change tracking task. Separate multiple IDs with commas (,).'."\n"
.'> You must specify at least one of this parameter and **Topics**. We recommend that you specify this parameter.', 'type' => 'object', 'required' => false, 'example' => '["zsls58agp6f****"]', 'title' => ''],
],
[
'name' => 'Topics',
'in' => 'query',
'style' => 'json',
'schema' => ['description' => 'All topics of the distributed change tracking task. Separate multiple topics with commas (,).'."\n"
.'> You must specify at least one of this parameter and **SubMigrationJobIds**. We recommend that you specify **SubMigrationJobIds**.', 'type' => 'object', 'required' => false, 'example' => '["rm_bp15jj3qi1p8f****"]', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the change tracking instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C12E7A51-09A4-5796-94BE-08B6DA******', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'SubscriptionMetaList' => [
'description' => 'The data information about the change tracking subtasks.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Sid' => ['description' => 'The consumer group ID of the subtask.', 'type' => 'string', 'example' => 'z38m91gg2******', 'title' => ''],
'Checkpoint' => ['description' => 'The consumption checkpoint of the subtask, which is the timestamp of the first data record consumed by the client. The value is a UNIX timestamp. Unit: seconds.'."\n"
.'> You can use a search engine to find a UNIX timestamp converter.', 'type' => 'integer', 'format' => 'int64', 'example' => '1610524452', 'title' => ''],
'DProxyUrl' => ['description' => 'The network address and port number of the change tracking channel.', 'type' => 'string', 'example' => 'dts-cn-hangzhou.aliyuncs.com:18001', 'title' => ''],
'DBList' => ['description' => 'The objects of the subtask. For more information, see [Objects of DTS tasks](~~209545~~).', 'type' => 'string', 'example' => '{\\"dtstestdata\\":{\\"name\\":\\"dtstestdata\\",\\"all\\":false,\\"Table\\":{\\"order\\":{\\"name\\":\\"order\\",\\"all\\":true}}}}', 'title' => ''],
'Topic' => ['description' => 'The topic of the subtask.', 'type' => 'string', 'example' => 'cn_hangzhou_rm_bp1n0x0x5tz******_dtstestdata_version2', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"C12E7A51-09A4-5796-94BE-08B6DA******\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"SubscriptionMetaList\\": [\\n {\\n \\"Sid\\": \\"z38m91gg2******\\",\\n \\"Checkpoint\\": 1610524452,\\n \\"DProxyUrl\\": \\"dts-cn-hangzhou.aliyuncs.com:18001\\",\\n \\"DBList\\": \\"{\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"dtstestdata\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"all\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"Table\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"order\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"order\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"all\\\\\\\\\\\\\\":true}}}}\\",\\n \\"Topic\\": \\"cn_hangzhou_rm_bp1n0x0x5tz******_dtstestdata_version2\\"\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query subtask information of a polarDB-X 1.0 distributed change tracking task',
'summary' => 'Queries the information about subtasks of a PolarDB-X 1.0 distributed change tracking task.',
'description' => ''."\n"
."\n"
.'- Because a PolarDB-X 1.0 change tracking task is a distributed change tracking task, each ApsaraDB RDS for MySQL instance associated with the task corresponds to a change tracking subtask. You can call this operation to query the information about change tracking subtasks.'."\n"
.'- You can call the [DescribeDtsJobs](~~209702~~) operation to query the instance ID, consumer group ID, and other information about a PolarDB-X 1.0 change tracking task.'."\n"
."\n"
.''."\n"
."\n"
.''."\n"
."\n"
.'- Because a DRDS change tracking task is a distributed change tracking task, each ApsaraDB RDS for MySQL instance associated with the task corresponds to a change tracking subtask. You can call this operation to query the information about change tracking subtasks.'."\n"
.'- You can call the [DescribeDtsJobs](~~209702~~) operation to query the instance ID, consumer group ID, and other information about a DRDS change tracking task.'."\n"
."\n"
.'.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSubscriptionMeta',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeSynchronizationJobAlert' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the subscription channel resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data synchronization instance. You can call the **DescribeSynchronizationJobs** operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'kxz1170c10p****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> Default value: **Forward**.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The value can contain a maximum of 64 ASCII characters and cannot contain non-ASCII characters.', 'type' => 'string', 'required' => false, 'example' => 'ETnLKlblzczshOTUbOCz****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'SynchronizationJobName' => ['description' => 'The name of the data synchronization task.', 'type' => 'string', 'example' => 'Polar MySQL_TO_RDS MySQL', 'title' => ''],
'ErrorAlertStatus' => ['description' => 'Indicates whether error status monitoring is enabled. Valid values:'."\n"
."\n"
.'- **enable**: enabled.'."\n"
.'- **disable**: disabled.', 'type' => 'string', 'example' => 'enable', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrorAlertPhone' => ['description' => 'The mobile phone number of the contact for error alerts.', 'type' => 'string', 'example' => '1361234****,1371234****', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DelayAlertStatus' => ['description' => 'Indicates whether latency monitoring is enabled. Valid values:'."\n"
."\n"
.'- **enable**: enabled.'."\n"
.'- **disable**: disabled.', 'type' => 'string', 'example' => 'enable', 'title' => ''],
'DelayAlertPhone' => ['description' => 'The mobile phone number of the contact for latency alerts.', 'type' => 'string', 'example' => '1361234****,1371234****', 'title' => ''],
'DelayOverSeconds' => ['description' => 'The threshold that triggers a latency alert. Unit: seconds.', 'type' => 'string', 'example' => '10', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '210ec20e16055205968635339d****', 'title' => ''],
'SynchronizationJobId' => ['description' => 'The instance ID of the data synchronization instance.', 'type' => 'string', 'example' => 'kxz1170c10p****', 'title' => ''],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> Default value: **Forward**.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SynchronizationJobName\\": \\"Polar MySQL_TO_RDS MySQL\\",\\n \\"ErrorAlertStatus\\": \\"enable\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrorAlertPhone\\": \\"1361234****,1371234****\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DelayAlertStatus\\": \\"enable\\",\\n \\"DelayAlertPhone\\": \\"1361234****,1371234****\\",\\n \\"DelayOverSeconds\\": \\"10\\",\\n \\"RequestId\\": \\"210ec20e16055205968635339d****\\",\\n \\"SynchronizationJobId\\": \\"kxz1170c10p****\\",\\n \\"SynchronizationDirection\\": \\"Forward\\"\\n}","type":"json"}]',
'title' => 'Query monitoring and alerting settings of a synchronization task',
'summary' => 'Queries the monitoring and alerting settings of a synchronization task.',
'changeSet' => [],
'ramActions' => [],
],
'DescribeSynchronizationJobReplicatorCompare' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the [DescribeSynchronizationJobs](~~49454~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsexjk1alb116****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You need to specify this parameter only if the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. Generate a value from your client to ensure uniqueness across different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'SynchronizationReplicatorCompareEnable' => ['description' => 'The full image switch. Valid values:'."\n"
."\n"
.'- **true**: enabled.'."\n"
.'- **false**: disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'E6EB407F-C59F-4682-A682-A00FA6A2****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SynchronizationReplicatorCompareEnable\\": true,\\n \\"RequestId\\": \\"E6EB407F-C59F-4682-A682-A00FA6A2****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Retrieve current image matching switch configuration',
'summary' => 'Retrieves the current image matching switch configuration. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSynchronizationJobReplicatorCompare',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeSynchronizationJobStatus' => [
'summary' => 'Queries the running status of a data synchronization task. This is a legacy API operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREdtsDW6WLD'],
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => [
'description' => 'The region ID of the data synchronization instance. For more information, see [Supported regions](~~141033~~).',
'type' => 'string',
'required' => false,
'enum' => [
'cn-hangzhou', 'cn-shanghai', 'cn-beijing', 'cn-guangzhou', 'cn-shenzhen', 'cn-chengdu', 'cn-heyuan', 'cn-hongkong', 'cn-qingdao', 'cn-zhangbei', 'cn-zhangjiakou', 'us-east-1', 'us-west-1', 'cn-hangzhou-finance', 'cn-shanghai-finance', 'cn-shanghai-finance-1', 'cn-shenzhen-finance', 'cn-shenzhen-finance-1', 'cn-beijing-finance-1', 'cn-huhehaote',
'cn-north-2-gov-1', 'eu-central-1', 'eu-west-1', 'me-central-1', 'me-east-1', 'ap-northeast-1', 'ap-northeast-2', 'ap-southeast-1', 'ap-southeast-3', 'ap-southeast-5', 'ap-southeast-6', 'ap-southeast-7', 'cn-wulanchabu', 'cn-zhengzhou-jva', 'cn-wuhan-lr',
],
'example' => 'cn-hangzhou',
'title' => '',
],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the [DescribeSynchronizationJobs](~~49454~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsexjk1alb116****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> Default value: **Forward**. The value **Reverse** takes effect only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'SynchronizationJobName' => ['description' => 'The name of the synchronization instance.', 'type' => 'string', 'example' => 'MySQL同步', 'title' => ''],
'Status' => ['description' => 'The status of the synchronization instance. Valid values:'."\n"
."\n"
.'- **notStarted**: not started.'."\n"
.'- **prechecking**: running a precheck.'."\n"
.'- **precheckFailed**: precheck failed.'."\n"
.'- **initializating**: performing initial synchronization.'."\n"
.'- **initializeFailed**: initial synchronization failed.'."\n"
.'- **synchronizing**: synchronizing.'."\n"
.'- **failed**: synchronization failed.'."\n"
.'- **suspending**: paused.'."\n"
.'- **modifying**: modifying synchronization objects.'."\n"
.'- **finished**: completed.', 'type' => 'string', 'example' => 'synchronizing', 'title' => ''],
'DataInitialization' => ['description' => 'Indicates whether initial full data synchronization was performed. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Delay' => ['description' => 'The synchronization latency, in seconds.', 'type' => 'string', 'example' => '0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when data synchronization failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the synchronization instance, in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of the **PayType** parameter is **PrePaid**.', 'type' => 'string', 'example' => '2021-03-07T16:00:00Z', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'StructureInitialization' => ['description' => 'Indicates whether initial schema synchronization was performed. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'PayType' => ['description' => 'The billing method of the synchronization instance. Valid values:'."\n"
."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'SynchronizationJobClass' => ['description' => 'The specification of the synchronization link.', 'type' => 'string', 'example' => 'large', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'DACDF659-AFC6-4DC8-ADB8-4569419A4****', 'title' => ''],
'SynchronizationJobId' => ['description' => 'The instance ID of the data synchronization instance.', 'type' => 'string', 'example' => 'dtsexjk1alb116****', 'title' => ''],
'DelayMillis' => ['description' => 'The synchronization latency, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '506', 'title' => ''],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'TaskId' => ['description' => 'The ID of the data synchronization task.', 'type' => 'string', 'example' => 'exjk1alb116****', 'title' => ''],
'Checkpoint' => ['description' => 'The timestamp of the latest synchronized data, in UNIX timestamp format.'."\n"
."\n"
.'> You can use a search engine to find a UNIX timestamp converter.', 'type' => 'string', 'example' => '1610616144', 'title' => ''],
'DataInitializationStatus' => [
'description' => 'The status of initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of initial full data synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial full data synchronization failed.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been synchronized during initial full data synchronization.', 'type' => 'string', 'example' => '200001', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data synchronization. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: synchronizing.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Delay' => ['description' => 'The synchronization latency of incremental data synchronization, in seconds.', 'type' => 'string', 'example' => '0', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data synchronization failed.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
'DelayMillis' => ['description' => 'The synchronization latency of incremental data synchronization, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '856', 'title' => ''],
'Checkpoint' => ['description' => 'The timestamp of the latest synchronized data, in UNIX timestamp format.', 'type' => 'string', 'example' => '1610709865', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'InstanceId' => ['description' => 'The instance ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp162d4tp0500****', 'title' => ''],
'IP' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database type of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The overview of the synchronization link.',
'type' => 'object',
'properties' => [
'RPS' => ['description' => 'The number of SQL statements synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100', 'title' => ''],
'FLOW' => ['description' => 'The data flow rate of synchronization per second, in MB/s.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck result. Valid values:'."\n"
.'- **Success**: passed.'."\n"
.'- **Failed**: failed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'Percent' => ['description' => 'The overall progress of the precheck, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Detail' => [
'description' => 'The details of each precheck item.',
'type' => 'array',
'items' => [
'description' => 'The details of each precheck item.',
'type' => 'object',
'properties' => [
'CheckStatus' => ['description' => 'The check result. Valid values:'."\n"
.'- **Success**: passed.'."\n"
.'- **Failed**: failed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the precheck failed.'."\n"
.'> This parameter is returned only when the value of the **CheckStatus** parameter is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)', 'title' => ''],
'ItemName' => ['description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the precheck failed.'."\n"
.'> This parameter is returned only when the value of the **CheckStatus** parameter is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'InstanceId' => ['description' => 'The instance ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp1i99e8l7913****', 'title' => ''],
'IP' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database type of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of initial schema synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial schema synchronization encountered an exception.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'Progress' => ['description' => 'The number of tables that have completed initial schema synchronization.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'SynchronizationObjects' => [
'description' => 'The synchronization objects.',
'type' => 'array',
'items' => [
'description' => 'The synchronization objects.',
'type' => 'object',
'properties' => [
'NewSchemaName' => ['description' => 'The name mapped to the database to be synchronized in the destination database.', 'type' => 'string', 'example' => 'newdtstestdatabase', 'title' => ''],
'SchemaName' => ['description' => 'The name of the database to be synchronized.', 'type' => 'string', 'example' => 'dtstestdatabase', 'title' => ''],
'TableExcludes' => [
'description' => 'The tables excluded from the database to be synchronized. These tables will not be synchronized.',
'type' => 'array',
'items' => [
'description' => 'The tables excluded from the database to be synchronized. These tables will not be synchronized.',
'type' => 'object',
'properties' => [
'TableName' => ['description' => 'The name of the excluded table.', 'type' => 'string', 'example' => 'order', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'TableIncludes' => [
'description' => 'The tables to be synchronized.',
'type' => 'array',
'items' => [
'description' => 'The tables to be synchronized.',
'type' => 'object',
'properties' => [
'TableName' => ['description' => 'The name of the table to be synchronized.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SynchronizationJobName\\": \\"MySQL同步\\",\\n \\"Status\\": \\"synchronizing\\",\\n \\"DataInitialization\\": \\"true\\",\\n \\"Delay\\": \\"0\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"ExpireTime\\": \\"2021-03-07T16:00:00Z\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"StructureInitialization\\": \\"true\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"SynchronizationJobClass\\": \\"large\\",\\n \\"RequestId\\": \\"DACDF659-AFC6-4DC8-ADB8-4569419A4****\\",\\n \\"SynchronizationJobId\\": \\"dtsexjk1alb116****\\",\\n \\"DelayMillis\\": 506,\\n \\"SynchronizationDirection\\": \\"Forward\\",\\n \\"TaskId\\": \\"exjk1alb116****\\",\\n \\"Checkpoint\\": \\"1610616144\\",\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"200001\\"\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Delay\\": \\"0\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\",\\n \\"DelayMillis\\": 856,\\n \\"Checkpoint\\": \\"1610709865\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"InstanceId\\": \\"rm-bp162d4tp0500****\\",\\n \\"IP\\": \\"172.16.88.***\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"Port\\": \\"3306\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"Performance\\": {\\n \\"RPS\\": \\"100\\",\\n \\"FLOW\\": \\"1\\"\\n },\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Success\\",\\n \\"Percent\\": \\"100\\",\\n \\"Detail\\": [\\n {\\n \\"CheckStatus\\": \\"Success\\",\\n \\"ErrorMessage\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\",\\n \\"ItemName\\": \\"CHECK_CONN_SRC\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\"\\n }\\n ]\\n },\\n \\"SourceEndpoint\\": {\\n \\"InstanceId\\": \\"rm-bp1i99e8l7913****\\",\\n \\"IP\\": \\"172.16.88.***\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"Port\\": \\"3306\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"Progress\\": \\"1\\"\\n },\\n \\"SynchronizationObjects\\": [\\n {\\n \\"NewSchemaName\\": \\"newdtstestdatabase\\",\\n \\"SchemaName\\": \\"dtstestdatabase\\",\\n \\"TableExcludes\\": [\\n {\\n \\"TableName\\": \\"order\\"\\n }\\n ],\\n \\"TableIncludes\\": [\\n {\\n \\"TableName\\": \\"customer\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query the running status of a synchronization task',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSynchronizationJobStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeSynchronizationJobStatusList' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobIdListJsonStr',
'in' => 'query',
'schema' => ['description' => 'Instance IDs of data synchronization instances, in JSON array format. You can call the [DescribeSynchronizationJobs](~~49454~~) operation to query instance IDs.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '["dtsexjk1alb116****","dtskfq1149w254****"]', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. Generate a value from your client to ensure that the value is unique among different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1413460B-138A-48D1-836C-B24EDDC1****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'PageRecordCount' => ['description' => 'The number of synchronization instances displayed on one page.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of synchronization instances that were queried.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'SynchronizationJobListStatusList' => [
'description' => 'The status list of synchronization jobs.',
'type' => 'array',
'items' => [
'description' => 'The status list of synchronization jobs.',
'type' => 'object',
'properties' => [
'SynchronizationJobId' => ['description' => 'The instance ID of the data synchronization instance.', 'type' => 'string', 'example' => 'dtsexjk1alb116****', 'title' => ''],
'SynchronizationDirectionInfoList' => [
'description' => 'The list of synchronization direction details.',
'type' => 'array',
'items' => [
'description' => 'The list of synchronization direction details.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The synchronization status of the synchronization instance in this direction. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running a precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Initializing**: performing initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **Synchronizing**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'InitializeFailed', 'title' => ''],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'Checkpoint' => ['description' => 'The timestamp of the latest synchronized data, in UNIX timestamp format.'."\n"
."\n"
.'> You can use a search engine to find a UNIX timestamp converter.', 'type' => 'string', 'example' => '1610524452', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1413460B-138A-48D1-836C-B24EDDC1****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"PageRecordCount\\": 2,\\n \\"Success\\": \\"true\\",\\n \\"TotalRecordCount\\": 2,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"PageNumber\\": 1,\\n \\"SynchronizationJobListStatusList\\": [\\n {\\n \\"SynchronizationJobId\\": \\"dtsexjk1alb116****\\",\\n \\"SynchronizationDirectionInfoList\\": [\\n {\\n \\"Status\\": \\"InitializeFailed\\",\\n \\"SynchronizationDirection\\": \\"Forward\\",\\n \\"Checkpoint\\": \\"1610524452\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query synchronization job status list',
'summary' => 'Queries the status list of synchronization jobs. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSynchronizationJobStatusList',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'DescribeSynchronizationJobs' => [
'summary' => 'Queries a list of data synchronization instances and the details of each instance by calling DescribeSynchronizationJobs.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREdtsDW6WLD'],
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the data synchronization instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of records per page. Valid values: **10**, **20**, and **30**. Default value: **30**. Maximum value: **30**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '30', 'example' => '30', 'title' => ''],
],
[
'name' => 'PageNum',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be an integer greater than **0** and must not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'SynchronizationJobName',
'in' => 'query',
'schema' => ['description' => 'The name of the synchronization instance.'."\n"
.'> Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'MySQL同步', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The **ClientToken** parameter can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'Tag',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The tags of the data synchronization instance. The tags are used as filter conditions. If you specify this parameter, only instances that have the specified tags are returned.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The tag key. You can query tag keys by calling the [ListTagResources](~~191187~~) operation.'."\n"
.'> - N specifies the sequence number of the tag key. For example, Tag.1.Key specifies the key of the first tag, and Tag.2.Key specifies the key of the second tag. You can specify 1 to 20 tag keys at a time.'."\n"
.'- This parameter cannot be set to an empty string.', 'type' => 'string', 'required' => true, 'example' => 'testkey1', 'title' => ''],
'Value' => ['description' => 'The tag value. You can query tag values by calling the [ListTagResources](~~191187~~) operation.'."\n"
.'>- N specifies the sequence number of the tag value. For example, Tag.1.Value specifies the value of the first tag, and Tag.2.Value specifies the value of the second tag. You can specify 1 to 20 tag values at a time.'."\n"
.'- This parameter can be set to an empty string.', 'type' => 'string', 'required' => false, 'example' => 'testvalue1 ', 'title' => ''],
],
'required' => false,
'description' => '',
'title' => '',
'example' => '',
],
'required' => false,
'maxItems' => 11,
'title' => '',
'example' => '',
],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '92E1E99D-5224-4AD3-8C94-23A3516B****', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of records that can be displayed on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of data synchronization instances that meet the specified conditions under the Alibaba Cloud account.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
'SynchronizationInstances' => [
'description' => 'The list of data synchronization instances and the details of each instance.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'DataInitialization' => ['description' => 'Indicates whether initial full data synchronization is performed. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Status' => ['description' => 'The status of the synchronization instance. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running the precheck.'."\n"
.'- **PrecheckFailed**: precheck failed.'."\n"
.'- **Initializating**: performing initial synchronization.'."\n"
.'- **InitializeFailed**: initial synchronization failed.'."\n"
.'- **Synchronizing**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Suspending**: paused.'."\n"
.'- **Modifying**: modifying synchronization objects.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'synchronizing', 'title' => ''],
'SynchronizationJobName' => ['description' => 'The name of the synchronization instance.', 'type' => 'string', 'example' => 'MySQL同步', 'title' => ''],
'Delay' => ['description' => 'The synchronization latency, in seconds.', 'type' => 'string', 'example' => '0', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when data synchronization fails.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'ExpireTime' => ['description' => 'The expiration time of the synchronization instance, in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).'."\n"
.'> This parameter is returned only when the value of the **PayType** parameter is **PrePaid**.', 'type' => 'string', 'example' => '2021-07-07T16:00:00Z', 'title' => ''],
'CreateTime' => ['description' => 'The time when the synchronization task was created, in the format of yyyy-MM-dd HH:mm:ss.0 (UTC+8).', 'type' => 'string', 'example' => '2021-06-28 17:34:53.0', 'title' => ''],
'PayType' => ['description' => 'The billing method of the synchronization instance. Valid values:'."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''],
'StructureInitialization' => ['description' => 'Indicates whether initial schema synchronization is performed. Valid values:'."\n"
."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'SynchronizationJobClass' => ['description' => 'The specification of the synchronization link.', 'type' => 'string', 'example' => 'large', 'title' => ''],
'InstanceCreateTime' => ['description' => 'The time when the synchronization instance was created, in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-28T09:36:32Z', 'title' => ''],
'SynchronizationJobId' => ['description' => 'The instance ID of the data synchronization instance.', 'type' => 'string', 'example' => 'dtsexjk1alb116****', 'title' => ''],
'SynchronizationDirection' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.', 'type' => 'string', 'example' => 'Forward', 'title' => ''],
'JobCreateTime' => ['description' => 'The time when the synchronization task was created, in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2021-06-28T09:34:53Z', 'title' => ''],
'Tags' => [
'description' => 'The tag collection.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'testkey1', 'title' => ''],
'Value' => ['description' => 'The tag value that corresponds to the tag key.', 'type' => 'string', 'example' => 'testvalue1', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'SynchronizationObjects' => [
'description' => 'The synchronization objects.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'NewSchemaName' => ['description' => 'The name of the database to which the objects are mapped in the destination database.', 'type' => 'string', 'example' => 'newdtstestdatabase', 'title' => ''],
'SchemaName' => ['description' => 'The name of the database to be synchronized.', 'type' => 'string', 'example' => 'dtstestdatabase', 'title' => ''],
'TableExcludes' => [
'description' => 'The tables that are excluded from the database to be synchronized. These tables are not synchronized.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'TableName' => ['description' => 'The name of the excluded table.', 'type' => 'string', 'example' => 'order', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'TableIncludes' => [
'description' => 'The tables to be synchronized.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'TableName' => ['description' => 'The name of the table to be synchronized.', 'type' => 'string', 'example' => 'customer', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'DataInitializationStatus' => [
'description' => 'The status of initial full data synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of initial full data synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial full data synchronization fails.', 'type' => 'string', 'example' => 'java.lang.NumberFormatException: For input string: ""', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been synchronized during initial full data synchronization.', 'type' => 'string', 'example' => '200001', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The status of incremental data synchronization.'."\n"
.'> This parameter set and its contained parameters have been discontinued.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of incremental data synchronization.'."\n"
.'> This parameter has been discontinued.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Delay' => ['description' => 'The synchronization latency of incremental data synchronization.'."\n"
.'> This parameter has been discontinued.', 'type' => 'string', 'example' => '0', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data synchronization.'."\n"
.'> This parameter has been discontinued.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data synchronization fails.'."\n"
.'> This parameter has been discontinued.', 'type' => 'string', 'example' => '任务失败太久无法恢复', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DestinationEndpoint' => [
'description' => 'The connection information of the destination instance.',
'type' => 'object',
'properties' => [
'InstanceId' => ['description' => 'The instance ID of the destination instance.', 'type' => 'string', 'example' => 'rm-bp162d4tp0500****', 'title' => ''],
'IP' => ['description' => 'The endpoint of the destination instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceType' => ['description' => 'The type of the destination instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'Port' => ['description' => 'The database service port of the destination instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'UserName' => ['description' => 'The database account of the destination instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database type of the destination instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'Performance' => [
'description' => 'The overview information of the synchronization link.',
'type' => 'object',
'properties' => [
'RPS' => ['description' => 'The number of SQL statements synchronized per second, including BEGIN, COMMIT, DML statements (INSERT, DELETE, and UPDATE), and DDL statements.', 'type' => 'string', 'example' => '100', 'title' => ''],
'FLOW' => ['description' => 'The volume of data synchronized per second, in MB/s.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck result. Valid values:'."\n"
.'- **Success**: passed.'."\n"
.'- **Failed**: failed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'Percent' => ['description' => 'The overall progress of the precheck, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'CheckStatus' => ['description' => 'The check result. Valid values:'."\n"
.'- **Success**: passed.'."\n"
.'- **Failed**: failed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the precheck fails.'."\n"
.'> This parameter is returned only when the value of the **CheckStatus** parameter is **Failed**.', 'type' => 'string', 'example' => 'Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)', 'title' => ''],
'ItemName' => ['description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'RepairMethod' => ['description' => 'The repair method when the precheck fails.'."\n"
.'> This parameter is returned only when the value of the **CheckStatus** parameter is **Failed**.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'SourceEndpoint' => [
'description' => 'The connection information of the source instance.',
'type' => 'object',
'properties' => [
'InstanceId' => ['description' => 'The instance ID of the source instance.', 'type' => 'string', 'example' => 'rm-bp1i99e8l7913****', 'title' => ''],
'IP' => ['description' => 'The endpoint of the source instance.', 'type' => 'string', 'example' => '172.16.88.***', 'title' => ''],
'InstanceType' => ['description' => 'The type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
'Port' => ['description' => 'The database service port of the source instance.', 'type' => 'string', 'example' => '3306', 'title' => ''],
'UserName' => ['description' => 'The database account of the source instance.', 'type' => 'string', 'example' => 'dtstest', 'title' => ''],
'EngineName' => ['description' => 'The database type of the source instance.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The status of initial schema synchronization.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of initial schema synchronization. Valid values:'."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Migrating**: in progress.'."\n"
.'- **Failed**: failed.'."\n"
.'- **Finished**: completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial schema synchronization fails.', 'type' => 'string', 'example' => 'DTS-1020042 Execute sql error sql: ERROR: type "geometry" does not exist;', 'title' => ''],
'Progress' => ['description' => 'The number of tables for which initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'title' => 'Query data synchronization instances and their details',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSynchronizationJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"92E1E99D-5224-4AD3-8C94-23A3516B****\\",\\n \\"PageRecordCount\\": 30,\\n \\"TotalRecordCount\\": 100,\\n \\"SynchronizationInstances\\": [\\n {\\n \\"DataInitialization\\": \\"true\\",\\n \\"Status\\": \\"synchronizing\\",\\n \\"SynchronizationJobName\\": \\"MySQL同步\\",\\n \\"Delay\\": \\"0\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"ExpireTime\\": \\"2021-07-07T16:00:00Z\\",\\n \\"CreateTime\\": \\"2021-06-28 17:34:53.0\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"StructureInitialization\\": \\"true\\",\\n \\"SynchronizationJobClass\\": \\"large\\",\\n \\"InstanceCreateTime\\": \\"2021-06-28T09:36:32Z\\",\\n \\"SynchronizationJobId\\": \\"dtsexjk1alb116****\\",\\n \\"SynchronizationDirection\\": \\"Forward\\",\\n \\"JobCreateTime\\": \\"2021-06-28T09:34:53Z\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"testkey1\\",\\n \\"Value\\": \\"testvalue1\\"\\n }\\n ],\\n \\"SynchronizationObjects\\": [\\n {\\n \\"NewSchemaName\\": \\"newdtstestdatabase\\",\\n \\"SchemaName\\": \\"dtstestdatabase\\",\\n \\"TableExcludes\\": [\\n {\\n \\"TableName\\": \\"order\\"\\n }\\n ],\\n \\"TableIncludes\\": [\\n {\\n \\"TableName\\": \\"customer\\"\\n }\\n ]\\n }\\n ],\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"java.lang.NumberFormatException: For input string: \\\\\\"\\\\\\"\\",\\n \\"Progress\\": \\"200001\\"\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Delay\\": \\"0\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"任务失败太久无法恢复\\"\\n },\\n \\"DestinationEndpoint\\": {\\n \\"InstanceId\\": \\"rm-bp162d4tp0500****\\",\\n \\"IP\\": \\"172.16.88.***\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"Port\\": \\"3306\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"Performance\\": {\\n \\"RPS\\": \\"100\\",\\n \\"FLOW\\": \\"1\\"\\n },\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Success\\",\\n \\"Percent\\": \\"100\\",\\n \\"Detail\\": [\\n {\\n \\"CheckStatus\\": \\"Success\\",\\n \\"ErrorMessage\\": \\"Original error: Access denied for user \'dtstest\'@\'100.104.***.**\' (using password: YES)\\",\\n \\"ItemName\\": \\"CHECK_CONN_SRC\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\"\\n }\\n ]\\n },\\n \\"SourceEndpoint\\": {\\n \\"InstanceId\\": \\"rm-bp1i99e8l7913****\\",\\n \\"IP\\": \\"172.16.88.***\\",\\n \\"InstanceType\\": \\"RDS\\",\\n \\"Port\\": \\"3306\\",\\n \\"UserName\\": \\"dtstest\\",\\n \\"EngineName\\": \\"MySQL\\"\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-1020042 Execute sql error sql: ERROR: type \\\\\\"geometry\\\\\\" does not exist;\\",\\n \\"Progress\\": \\"1\\"\\n }\\n }\\n ]\\n}","type":"json"}]',
],
'DescribeSynchronizationObjectModifyStatus' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data synchronization instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'TaskId',
'in' => 'query',
'schema' => ['description' => 'The task ID, which is returned when you call the [ModifySynchronizationObject](~~49451~~) operation to modify synchronization objects.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'k71r16fj13g****', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the synchronization object change. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running the precheck.'."\n"
.'- **PrecheckFailed**: the precheck failed.'."\n"
.'- **Migrating**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Finished**: synchronization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the task to modify synchronization objects failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B38C644B-4395-4F6F-86E3-592F26BE****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DataInitializationStatus' => [
'description' => 'The initial full data synchronization status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the synchronization object change. Valid values: -**notstarted**: not started. -**migrating**: synchronizing. -**failed**: synchronization failed. -**finaciallocked**: financial lock.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial full data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial full data synchronization failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'Progress' => ['description' => 'The number of records that have been synchronized during initial full data synchronization.', 'type' => 'string', 'example' => '39754', 'title' => ''],
],
'title' => '',
'example' => '',
],
'DataSynchronizationStatus' => [
'description' => 'The incremental data synchronization status.'."\n"
.'> This parameter set and its response parameters will be discontinued.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status of the synchronization object change. Valid values:'."\n"
."\n"
.'- **NotStarted**: not started.'."\n"
.'- **Prechecking**: running the precheck.'."\n"
.'- **PrecheckFailed**: the precheck failed.'."\n"
.'- **Migrating**: synchronizing.'."\n"
.'- **Failed**: synchronization failed.'."\n"
.'- **Finished**: synchronization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Delay' => ['description' => 'The synchronization latency of incremental data synchronization, in seconds.', 'type' => 'string', 'example' => '0', 'title' => ''],
'Percent' => ['description' => 'The progress of incremental data synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when incremental data synchronization failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
],
'title' => '',
'example' => '',
],
'PrecheckStatus' => [
'description' => 'The precheck status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The precheck status.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The precheck progress, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'Detail' => [
'description' => 'The execution details of each precheck item.',
'type' => 'array',
'items' => [
'description' => 'The execution details of each precheck item.',
'type' => 'object',
'properties' => [
'CheckStatus' => ['description' => 'The check result. Valid values:'."\n"
."\n"
.'- Success: The precheck item was passed.'."\n"
.'- Failed: The precheck item was not passed.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when the precheck item was not passed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'ItemName' => ['description' => 'The precheck item.', 'type' => 'string', 'example' => 'CHECK_CONN_SRC', 'title' => ''],
'RepairMethod' => ['description' => 'The method to fix the precheck failure.'."\n"
.'> This parameter is returned only when the value of the **CheckStatus** parameter is Failed.', 'type' => 'string', 'example' => 'CHECK_ERROR_DEST_CONN_REPAIR2', 'title' => ''],
],
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'title' => '',
'example' => '',
],
'StructureInitializationStatus' => [
'description' => 'The initial schema synchronization status.',
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The initial schema synchronization status. Valid values: NotStarted: not started. Migrating: initializing. Failed: initialization failed. Finished: initialization completed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''],
'Percent' => ['description' => 'The progress of initial schema synchronization, in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''],
'ErrorMessage' => ['description' => 'The error message returned when initial schema synchronization failed.', 'type' => 'string', 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', 'title' => ''],
'Progress' => ['description' => 'The number of tables for which initial schema synchronization has been completed.', 'type' => 'string', 'example' => '1', 'title' => ''],
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Finished\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"RequestId\\": \\"B38C644B-4395-4F6F-86E3-592F26BE****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DataInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"Progress\\": \\"39754\\"\\n },\\n \\"DataSynchronizationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Delay\\": \\"0\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\"\\n },\\n \\"PrecheckStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"Detail\\": [\\n {\\n \\"CheckStatus\\": \\"Success\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"ItemName\\": \\"CHECK_CONN_SRC\\",\\n \\"RepairMethod\\": \\"CHECK_ERROR_DEST_CONN_REPAIR2\\"\\n }\\n ]\\n },\\n \\"StructureInitializationStatus\\": {\\n \\"Status\\": \\"Finished\\",\\n \\"Percent\\": \\"100\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"Progress\\": \\"1\\"\\n }\\n}","type":"json"}]',
'title' => 'Query the execution status of a modify synchronization object task',
'summary' => 'Queries the execution status of a task that modifies synchronization objects. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [],
],
'DescribeTagKeys' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of tag keys to return on each page. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '0', 'default' => '10', 'example' => '20', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. This parameter is used together with PageSize. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '0', 'default' => '0', 'example' => '1', 'title' => ''],
],
[
'name' => 'ResourceType',
'in' => 'query',
'schema' => ['description' => 'The resource type. Set the value to **ALIYUN::DTS::INSTANCE**.', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::DTS::INSTANCE', 'title' => ''],
],
[
'name' => 'ResourceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking instance. You can call the [DescribeDtsJobs](~~209702~~) operation to query the instance ID.', 'type' => 'string', 'required' => false, 'example' => 'dtsl5o11f9029c****', 'title' => ''],
],
[
'name' => 'Category',
'in' => 'query',
'schema' => ['description' => 'The tag type. Valid values:'."\n"
.'- **System**: tags created by the system.'."\n"
.'- **Custom**: tags added by users.'."\n"
."\n"
.'> If this parameter is left empty, publicly visible tags are returned by default.', 'type' => 'string', 'required' => false, 'example' => 'Custom', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Category' => ['description' => 'The tag type.', 'type' => 'string', 'example' => 'Custom', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AD110813-9AD6-5F07-BFC8-4C841309****', 'title' => ''],
'PageSize' => ['description' => 'The number of tags returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
'PageNumber' => ['description' => 'The page number of the returned page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'TotalCount' => ['description' => 'The total number of tag keys.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
'TagKeys' => [
'description' => 'The list of tag keys.',
'type' => 'array',
'items' => ['description' => 'The tag key.', 'type' => 'string', 'example' => '["a","x"]', 'title' => ''],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'InvalidParameter.Category', 'errorMessage' => 'The specified Category is invalid. Valid values are Custom and System.', 'description' => 'The specified tag type is invalid. Valid values: Custom and System.'],
['errorCode' => 'InvalidParameter.ResourceType', 'errorMessage' => 'The ResourceType parameter is invalid.', 'description' => 'The specified ResourceType parameter is invalid. Set it to ALIYUN::DTS::INSTANCE.'],
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Category\\": \\"Custom\\",\\n \\"RequestId\\": \\"AD110813-9AD6-5F07-BFC8-4C841309****\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 10,\\n \\"TagKeys\\": [\\n \\"[\\\\\\"a\\\\\\",\\\\\\"x\\\\\\"]\\"\\n ]\\n}","type":"json"}]',
'title' => 'Query all tags of DTS instances',
'summary' => 'Queries all tags that are bound to a data migration, data synchronization, or change tracking instance.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeTagKeys',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DescribeTagValues' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of tag values to return per page when a tag key has multiple tag values. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '0', 'default' => '10', 'example' => '20', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number. Specifies the page to return when a tag key has multiple tag values. The value must be a positive integer that does not exceed the maximum value of the Integer data type. This parameter is typically used together with PageSize. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '0', 'default' => '0', 'example' => '1', 'title' => ''],
],
[
'name' => 'ResourceType',
'in' => 'query',
'schema' => ['description' => 'The resource type defined by the system. Set the value to **ALIYUN::DTS::INSTANCE**.', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::DTS::INSTANCE', 'title' => ''],
],
[
'name' => 'ResourceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking instance. You can call the [DescribeDtsJobs](~~209702~~) operation to query the instance ID.'."\n"
."\n"
.'> If this parameter is left empty, all tag values of the specified tag key for the current account are returned.', 'type' => 'string', 'required' => false, 'example' => 'dtsl5o11f9029c****', 'title' => ''],
],
[
'name' => 'Category',
'in' => 'query',
'schema' => ['description' => 'The type of the tag key. Valid values:'."\n"
.'- **Custom**: a user-added tag key.'."\n"
.'- **System**: a system-created tag key.'."\n"
."\n"
.'> If this parameter is left empty, all tag keys are returned by default.', 'type' => 'string', 'required' => false, 'example' => 'Custom', 'title' => ''],
],
[
'name' => 'Key',
'in' => 'query',
'schema' => ['description' => 'The key of the tag.'."\n"
.'> This parameter is required.', 'type' => 'string', 'required' => false, 'example' => 'owner', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Category' => ['description' => 'The type of the tag key.', 'type' => 'string', 'example' => 'Custom', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AD110813-9AD6-5F07-BFC8-4C841309****', 'title' => ''],
'PageSize' => ['description' => 'The number of tag values returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''],
'PageNumber' => ['description' => 'The page number of the returned tag values.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'TotalCount' => ['description' => 'The total number of tag values that correspond to the tag key.', 'type' => 'integer', 'format' => 'int32', 'example' => '13', 'title' => ''],
'TagValues' => [
'description' => 'The tag information.',
'type' => 'array',
'items' => ['description' => 'The tag values that correspond to the tag key.', 'type' => 'string', 'example' => '["a","x"]', 'title' => ''],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'InvalidParameter.Category', 'errorMessage' => 'The specified Category is invalid. Valid values are Custom and System.', 'description' => 'The specified tag type is invalid. Valid values: Custom and System.'],
['errorCode' => 'InvalidParameter.ResourceType', 'errorMessage' => 'The ResourceType parameter is invalid.', 'description' => 'The specified ResourceType parameter is invalid. Set it to ALIYUN::DTS::INSTANCE.'],
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Category\\": \\"Custom\\",\\n \\"RequestId\\": \\"AD110813-9AD6-5F07-BFC8-4C841309****\\",\\n \\"PageSize\\": 20,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 13,\\n \\"TagValues\\": [\\n \\"[\\\\\\"a\\\\\\",\\\\\\"x\\\\\\"]\\"\\n ]\\n}","type":"json"}]',
'title' => 'Query all values of a tag key',
'summary' => 'Queries all values of a tag key that is attached to a data migration, data synchronization, or change tracking instance.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeTagValues',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'DetachGadInstanceDbMember' => [
'summary' => 'Removes a secondary role.',
'methods' => ['post', 'get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '235864',
'abilityTreeNodes' => ['FEATUREdts05OBVW'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see the list of supported regions.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the active geo-redundancy instance group.', 'type' => 'string', 'required' => false, 'example' => 'gad-bp162d4tp0500****', 'title' => ''],
],
[
'name' => 'SlaveDbInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the secondary role.', 'type' => 'string', 'required' => false, 'example' => 'rm-sdfghjk****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '6063641E-BAD1-4BA7-B70B-26FFFD18****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code associated with this request.', 'type' => 'string', 'example' => '403', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => '****', 'title' => ''],
'RegionId' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see the list of supported regions.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID of the active geo-redundancy instance group.', 'type' => 'string', 'example' => 'gad-bp1i99e8l7913****', 'title' => ''],
'InstanceName' => ['description' => 'The name of the active geo-redundancy instance group.', 'type' => 'string', 'example' => 'test', 'title' => ''],
'CreateTime' => ['description' => 'The time when the task was created, in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'integer', 'format' => 'int64', 'example' => '2021-06-28 17:34:53.0', 'title' => ''],
'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
'SlaveDbInstanceId' => ['description' => 'The instance ID of the secondary role.', 'type' => 'string', 'example' => 'rm-bp1i99e8l7913****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
['errorCode' => 'DTS.Msg.GADInstanceNotFound', 'errorMessage' => 'The GAD instance is not found.', 'description' => 'GAD instance does not exist.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'eventInfo' => [
'enable' => false,
'eventNames' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"6063641E-BAD1-4BA7-B70B-26FFFD18****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Success\\": \\"true\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"DynamicMessage\\": \\"****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceId\\": \\"gad-bp1i99e8l7913****\\",\\n \\"InstanceName\\": \\"test\\",\\n \\"CreateTime\\": 0,\\n \\"ResourceGroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"SlaveDbInstanceId\\": \\"rm-bp1i99e8l7913****\\"\\n}","type":"json"}]',
'title' => 'Remove a secondary role',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:DetachGadInstanceDbMember',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'InitDtsRdsInstance' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the active geo-redundancy database cluster resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'EndpointInstanceType',
'in' => 'query',
'schema' => ['description' => 'The instance type of the unit node. Valid values:'."\n"
."\n"
.'- **RDS**: ApsaraDB RDS for MySQL instance.'."\n"
.'- **CEN**: self-managed MySQL database connected through CEN.', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
],
[
'name' => 'EndpointRegion',
'in' => 'query',
'schema' => ['description' => 'The region in which the ApsaraDB RDS for MySQL instance resides. This parameter is required if the unit node is an ApsaraDB RDS for MySQL instance.'."\n"
."\n"
.'> - You must also specify the **EndpointInstanceId** parameter.'."\n"
.'- You must specify either this parameter or **EndpointCenId**.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'EndpointInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the ApsaraDB RDS for MySQL instance. This parameter is required if the unit node is an ApsaraDB RDS for MySQL instance.'."\n"
.'> - You must also specify the **EndpointRegion** parameter.'."\n"
.'- You must specify either this parameter or **EndpointCenId**.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
],
[
'name' => 'EndpointCenId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the CEN instance. This parameter is required if the unit node is a self-managed MySQL database connected through CEN.'."\n"
.'> You must specify either this parameter or the ApsaraDB RDS for MySQL-related parameters (**EndpointRegion** and **EndpointInstanceId**).', 'type' => 'string', 'required' => false, 'example' => 'cen-9kqshqum*******', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the synchronization node.', 'type' => 'string', 'required' => false, 'example' => 'dtszvxa4qmot6p****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group. This is a global parameter and does not need to be specified for this operation.', 'type' => 'string', 'required' => false, 'example' => '资源组ID,全局参数,当前API无需传入。', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7796ECE0-9C17-5E4D-9CE6-B7EC825A****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request is successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid. ', 'title' => ''],
'AdminAccount' => ['description' => 'The built-in account that DTS uses to connect to the unit node.', 'type' => 'string', 'example' => 'rdsdt_dtsacct', 'title' => ''],
'AdminPassword' => ['description' => 'The password of the built-in account.', 'type' => 'string', 'example' => '1jecpqrtc****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"7796ECE0-9C17-5E4D-9CE6-B7EC825A****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\\\t\\",\\n \\"AdminAccount\\": \\"rdsdt_dtsacct\\",\\n \\"AdminPassword\\": \\"1jecpqrtc****\\"\\n}","type":"json"}]',
'title' => 'Initialize the built-in account used by DTS in a unit node',
'summary' => 'Initializes a built-in account in a node of an active geo-redundancy database cluster. Data Transmission Service (DTS) uses this account to connect to the node and perform synchronization tasks.',
'description' => '- The unit node must be an ApsaraDB RDS for MySQL instance or a self-managed MySQL database connected through Cloud Enterprise Network (CEN).'."\n"
.'- This operation initializes a built-in account named rdsdt_dtsacct in a unit node of an active geo-redundancy database cluster. DTS uses this account to connect to the node and perform synchronization tasks.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:InitDtsRdsInstance',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ListDedicatedCluster' => [
'summary' => 'Queries all clusters created by the current user. You can also filter specific clusters based on specified conditions.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'list'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. This parameter is used as a query condition.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'Type',
'in' => 'query',
'schema' => ['description' => 'The query key. Valid values:'."\n"
."\n"
.'- **NAME**: cluster name.'."\n"
.'- **INSTANCE**: cluster instance ID.'."\n"
.'- **DEDICATEDCLUSTERID**: dedicated cluster ID.'."\n"
."\n"
.'> You must also specify the **Params** parameter to provide the specific content of the query condition.', 'type' => 'string', 'required' => false, 'example' => 'NAME', 'title' => ''],
],
[
'name' => 'Params',
'in' => 'query',
'schema' => ['description' => 'The specific content of the query condition.'."\n"
."\n"
.'> You must first specify the **Type** parameter to define the query key.', 'type' => 'string', 'required' => false, 'example' => 'dtspk3f13r731m****', 'title' => ''],
],
[
'name' => 'State',
'in' => 'query',
'schema' => ['description' => 'The cluster status. Valid values:'."\n"
."\n"
.'- **init**: initializing.'."\n"
.'- **schedule**: pending scheduling.'."\n"
.'- **running**: running.'."\n"
.'- **upgrade**: upgrading.'."\n"
.'- **downgrade**: downgrading.'."\n"
.'- **locked**: locked.'."\n"
.'- **releasing**: being released.'."\n"
.'- **released**: released.', 'type' => 'string', 'required' => false, 'example' => 'init', 'title' => ''],
],
[
'name' => 'OrderDirection',
'in' => 'query',
'schema' => ['description' => 'The sort order. Valid values:'."\n"
."\n"
.'- **asc**: ascending order. This is the default value.'."\n"
.'- **desc**: descending order.', 'type' => 'string', 'required' => false, 'example' => 'asc', 'title' => ''],
],
[
'name' => 'OrderColumn',
'in' => 'query',
'schema' => ['description' => 'The sort column when the response contains multiple DTS dedicated cluster instances. Valid values:'."\n"
."\n"
.'- **gmtCreated**: creation time.'."\n"
.'- **orderCount**: number of nodes.', 'type' => 'string', 'required' => false, 'example' => 'gmtCreated', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => 'The number of clusters to display per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => 'The page number. The value must be a positive integer that does not exceed the maximum value of the Integer data type. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfntftbiobqyky', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'PageRecordCount' => ['description' => 'The maximum number of records that can be displayed on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''],
'TotalRecordCount' => ['description' => 'The total number of clusters that meet the specified conditions.', 'type' => 'integer', 'format' => 'int32', 'example' => '15', 'title' => ''],
'PageNumber' => ['description' => 'The page number. The value is a positive integer that does not exceed the maximum value of the Integer data type. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'DedicatedClusterStatusList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'DedicatedClusterStatus' => [
'description' => 'The status information of all clusters.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'DtsInstanceID' => ['description' => 'The DTS instance ID.', 'type' => 'string', 'example' => 'dtsi03e3zty16i****', 'title' => ''],
'DedicatedClusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'example' => 'dtscluster*******', 'title' => ''],
'DedicatedClusterName' => ['description' => 'The cluster name.', 'type' => 'string', 'example' => 'daily_test', 'title' => ''],
'Du' => ['description' => 'The number of DUs.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''],
'OversoldDu' => ['description' => 'The number of oversold DUs.', 'type' => 'integer', 'format' => 'int64', 'example' => '60', 'title' => ''],
'UsedDu' => ['description' => 'The number of used DUs.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''],
'State' => ['description' => 'The cluster status. Valid values:'."\n"
."\n"
.'- **init**: initializing.'."\n"
.'- **schedule**: pending scheduling.'."\n"
.'- **running**: running.'."\n"
.'- **upgrade**: upgrading.'."\n"
.'- **downgrade**: downgrading.'."\n"
.'- **locked**: locked.'."\n"
.'- **releasing**: being released.'."\n"
.'- **released**: released.', 'type' => 'string', 'example' => 'init', 'title' => ''],
'RegionId' => ['description' => 'The region where the instance resides.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'GmtCreated' => ['description' => 'The creation time.', 'type' => 'integer', 'format' => 'int64', 'example' => '1647424384606', 'title' => ''],
'NodeCount' => ['description' => 'The number of nodes in the cluster.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''],
'DuUtilization' => ['description' => 'The DU utilization percentage.', 'type' => 'integer', 'format' => 'int64', 'example' => '16.6667', 'title' => ''],
'CpuUtilization' => ['description' => 'The CPU utilization percentage.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''],
'TotalCpuCore' => ['description' => 'The total number of CPU cores.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
'UsedCpuCore' => ['description' => 'The number of used CPU cores.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''],
'MemUtilization' => ['description' => 'The memory utilization.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
'TotalMemGBSize' => ['description' => 'The total memory size, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '256', 'title' => ''],
'UsedMemGBSize' => ['description' => 'The used memory size, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '128', 'title' => ''],
'DiskUtilization' => ['description' => 'The disk utilization.', 'type' => 'integer', 'format' => 'int64', 'example' => '50', 'title' => ''],
'TotalDiskGBSize' => ['description' => 'The total disk size, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '2048', 'title' => ''],
'UsedDiskGBSize' => ['description' => 'The used disk size, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '1024', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"PageRecordCount\\": 20,\\n \\"TotalRecordCount\\": 15,\\n \\"PageNumber\\": 1,\\n \\"DedicatedClusterStatusList\\": {\\n \\"DedicatedClusterStatus\\": [\\n {\\n \\"DtsInstanceID\\": \\"dtsi03e3zty16i****\\",\\n \\"DedicatedClusterId\\": \\"dtscluster*******\\",\\n \\"DedicatedClusterName\\": \\"daily_test\\",\\n \\"Du\\": 30,\\n \\"OversoldDu\\": 60,\\n \\"UsedDu\\": 5,\\n \\"State\\": \\"init\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"GmtCreated\\": 1647424384606,\\n \\"NodeCount\\": 5,\\n \\"DuUtilization\\": 16.6667,\\n \\"CpuUtilization\\": 30,\\n \\"TotalCpuCore\\": 100,\\n \\"UsedCpuCore\\": 30,\\n \\"MemUtilization\\": 20,\\n \\"TotalMemGBSize\\": 256,\\n \\"UsedMemGBSize\\": 128,\\n \\"DiskUtilization\\": 50,\\n \\"TotalDiskGBSize\\": 2048,\\n \\"UsedDiskGBSize\\": 1024\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query cluster list',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:ListDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ListJobStep' => [
'summary' => 'Query the JobStep list',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '142560',
'abilityTreeNodes' => ['FEATUREdtsDW6WLD'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'Migration or sync task ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'k2gm967v16f****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region where the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Indicates whether the job is a seamless integration (Zero-ETL) job. Valid values:'."\n"
.'- **true**: Yes.'."\n"
.'- **false**: No.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'Resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek3dcgyq7p****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'HttpStatusCode' => ['description' => 'Status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'Code' => ['description' => 'Error code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'UseV2API' => ['description' => 'Indicates whether the Console 2.0 API is used.', 'type' => 'boolean', 'example' => 'True', 'title' => ''],
'JobSteps' => [
'description' => 'The task step information.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'JobStepId' => ['description' => 'The task step ID.', 'type' => 'string', 'example' => 'l02c1f7h179****', 'title' => ''],
'JobStepName' => ['description' => 'Task step information. Valid values:'."\n"
."\n"
.'- Precheck: precheck phase'."\n"
.'- Incremental data service: incremental data collection phase'."\n"
.'- dts.step.struct.load: schema migration phase'."\n"
.'- dts.step.data.load: full migration phase'."\n"
.'- etl-check: extract, transform, and load phase'."\n"
.'- Consistency validation: data verification phase'."\n"
.'- Synchronization: incremental synchronization phase', 'type' => 'string', 'example' => '预检查', 'title' => ''],
'Code' => ['description' => 'Task step identity.', 'type' => 'string', 'example' => '01', 'title' => ''],
'Serial' => ['description' => 'Task step serial number. Indicates the task execution order. A smaller value indicates an earlier execution order.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'Progress' => ['description' => 'The progress of the task step.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''],
'SubJobCount' => ['description' => 'The number of sub-jobs.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
'IncLatencySeconds' => ['description' => 'Incremental data latency, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '-1', 'title' => ''],
'State' => ['description' => 'Task step status.', 'type' => 'string', 'example' => '○ Finished', 'title' => ''],
'ErrMsg' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'fullcheck find different records : 2372', 'title' => ''],
'SubJobSteps' => [
'description' => 'Step information of the sub-job.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'JobStepId' => ['description' => 'Job ID.', 'type' => 'string', 'example' => 'mj3z9w9s10am68o_0004_0000', 'title' => ''],
'JobStepName' => ['description' => 'Sub-job step information. Valid values are as follows:'."\n"
."\n"
.'- Precheck: precheck phase'."\n"
.'- Incremental data service: incremental data collection phase'."\n"
.'- dts.step.struct.load: schema migration phase'."\n"
.'- dts.step.data.load: full migration phase'."\n"
.'- etl-check: extract, transform, and load (ETL) phase'."\n"
.'- Consistency validation: data verification phase'."\n"
.'- Synchronization: incremental synchronization phase', 'type' => 'string', 'example' => 'test', 'title' => ''],
'Code' => ['description' => 'Sub-task step identity.', 'type' => 'string', 'example' => '03', 'title' => ''],
'Serial' => ['description' => 'Serial number of the sub-task step. Indicates the task execution order; the smaller the numeric value, the earlier the execution order.', 'type' => 'integer', 'format' => 'int32', 'example' => '123', 'title' => ''],
'Progress' => ['description' => 'Progress of the sub-job step.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
'IncLatencySeconds' => ['description' => 'Incremental data latency, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'State' => ['description' => 'Status of the sub-task step. Valid values:'."\n"
.'- Failed: failed.'."\n"
.'- Pause: paused.'."\n"
.'- Schedule: scheduled.'."\n"
.'- Init: initialization.'."\n"
.'- Running: synchronizing.'."\n"
.'- Catched: waiting for synchronization.'."\n"
.'- Finished: ended.', 'type' => 'string', 'example' => 'running', 'title' => ''],
'ErrMsg' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'UncaughtException:java.lang.NullPointerException', 'title' => ''],
'CreateTime' => ['description' => 'The time when the sub-job was created, in the format yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2024-09-20T02:13:12Z', 'title' => ''],
'BootTime' => ['description' => 'The time when the sub-job was started, in the format yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2025-01-02T02:00:21Z', 'title' => ''],
'FinishTime' => ['description' => 'End time of the sub-task, in the format yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2024-03-15T02:15:14Z', 'title' => ''],
'ModifyTime' => ['description' => 'The time when the sub-job was updated, in the format yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2024-08-22T02:04:35Z', 'title' => ''],
'ErrorDetails' => [
'description' => 'Error message.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ErrorCode' => ['description' => 'Error code.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'HelpUrl' => ['description' => 'URL of the help document.', 'type' => 'string', 'example' => '****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'IncLatencyMilliseconds' => ['description' => 'Incremental data latency, in milliseconds.', 'type' => 'string', 'example' => '1', 'title' => ''],
'NeedAcceleration' => ['description' => 'Indicates whether the acceleration feature is required.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'CreateTime' => ['description' => 'The job creation time, in the format yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2023-11-28T17:13:51Z', 'title' => ''],
'BootTime' => ['description' => 'The job start time, in the format yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2024-04-11T09:33:23Z', 'title' => ''],
'FinishTime' => ['description' => 'Task end time, in the format yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2024-03-15T02:15:14Z', 'title' => ''],
'ModifyTime' => ['description' => 'The time when the job was updated, in the format yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'example' => '2025-01-03T02:26:14Z', 'title' => ''],
'ErrorDetails' => [
'description' => 'The error message.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ErrorCode' => ['description' => 'Error code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'HelpUrl' => ['description' => 'URL of the help document.', 'type' => 'string', 'example' => '****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
'IncLatencyMilliseconds' => ['description' => 'Incremental data latency, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
'NeedAcceleration' => ['description' => 'Indicates whether the acceleration feature should be provided.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'redisPhaseType' => ['description' => 'Used to distinguish between the Redis full and incremental phases. Valid values:'."\n"
.'- full: Full phase'."\n"
.'- inc: Incremental phase', 'type' => 'string', 'example' => 'full', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"Code\\": \\"200\\",\\n \\"UseV2API\\": true,\\n \\"JobSteps\\": [\\n {\\n \\"JobStepId\\": \\"l02c1f7h179****\\",\\n \\"JobStepName\\": \\"预检查\\",\\n \\"Code\\": \\"01\\",\\n \\"Serial\\": 1,\\n \\"Progress\\": 100,\\n \\"SubJobCount\\": 1,\\n \\"IncLatencySeconds\\": -1,\\n \\"State\\": \\"○ Finished\\",\\n \\"ErrMsg\\": \\"fullcheck find different records : 2372\\",\\n \\"SubJobSteps\\": [\\n {\\n \\"JobStepId\\": \\"mj3z9w9s10am68o_0004_0000\\",\\n \\"JobStepName\\": \\"test\\",\\n \\"Code\\": \\"03\\",\\n \\"Serial\\": 123,\\n \\"Progress\\": 0,\\n \\"IncLatencySeconds\\": 1,\\n \\"State\\": \\"running\\",\\n \\"ErrMsg\\": \\"UncaughtException:java.lang.NullPointerException\\",\\n \\"CreateTime\\": \\"2024-09-20T02:13:12Z\\",\\n \\"BootTime\\": \\"2025-01-02T02:00:21Z\\",\\n \\"FinishTime\\": \\"2024-03-15T02:15:14Z\\",\\n \\"ModifyTime\\": \\"2024-08-22T02:04:35Z\\",\\n \\"ErrorDetails\\": [\\n {\\n \\"ErrorCode\\": \\"Success\\",\\n \\"HelpUrl\\": \\"****\\"\\n }\\n ],\\n \\"IncLatencyMilliseconds\\": \\"1\\",\\n \\"NeedAcceleration\\": true\\n }\\n ],\\n \\"CreateTime\\": \\"2023-11-28T17:13:51Z\\",\\n \\"BootTime\\": \\"2024-04-11T09:33:23Z\\",\\n \\"FinishTime\\": \\"2024-03-15T02:15:14Z\\",\\n \\"ModifyTime\\": \\"2025-01-03T02:26:14Z\\",\\n \\"ErrorDetails\\": [\\n {\\n \\"ErrorCode\\": \\"200\\",\\n \\"HelpUrl\\": \\"****\\"\\n }\\n ],\\n \\"IncLatencyMilliseconds\\": 1,\\n \\"NeedAcceleration\\": true,\\n \\"redisPhaseType\\": \\"full\\"\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query the JobStep list',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:ListJobStep',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ListTagResources' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou ', 'title' => ''],
],
[
'name' => 'ResourceType',
'in' => 'query',
'schema' => ['description' => 'The resource type. Set the value to **ALIYUN::DTS::INSTANCE**.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ALIYUN::DTS::INSTANCE', 'title' => ''],
],
[
'name' => 'NextToken',
'in' => 'query',
'schema' => ['description' => 'The query token.'."\n"
.'> If a single request does not return all results, you can pass the **NextToken** value returned from the previous request in the subsequent request to continue the query.', 'type' => 'string', 'required' => false, 'example' => '212db86sca4384811e0b5e8707ec2****', 'title' => ''],
],
[
'name' => 'ResourceId',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The ID of the data migration, data synchronization, or change tracking instance. You can call [DescribeDtsJobs](~~209702~~) to query instance IDs.'."\n"
.'> - N specifies the sequence number of the instance ID. For example, ResourceId.0 specifies the first instance ID, and ResourceId.1 specifies the second instance ID. You can query 1 to 50 instance IDs at a time.'."\n"
.'- You must specify at least one of this parameter and **Tag.N.Key**.',
'type' => 'array',
'items' => ['description' => 'The ID of the data migration, data synchronization, or change tracking instance. You can call [DescribeDtsJobs](~~209702~~) to query instance IDs.'."\n"
.'> - N specifies the sequence number of the instance ID. For example, ResourceId.0 specifies the first instance ID, and ResourceId.1 specifies the second instance ID. You can query 1 to 50 instance IDs at a time.'."\n"
.'- You must specify at least one of this parameter and **Tag.N.Key**.', 'type' => 'string', 'required' => false, 'example' => 'dtsntk10k6r12v****', 'title' => ''],
'required' => false,
'example' => 'dtsntk10k6r12v****',
'maxItems' => 51,
'title' => '',
],
],
[
'name' => 'Tag',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The tag value that corresponds to the tag key.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The tag key.'."\n"
.'> - N specifies the sequence number of the tag key. For example, Tag.0.Key specifies the first tag key, and Tag.1.Key specifies the second tag key. You can query 1 to 20 tag keys at a time.'."\n"
.'- You must specify at least one of this parameter and **ResourceId.N**. An empty string is not allowed.', 'type' => 'string', 'required' => false, 'example' => 'testkey1', 'title' => ''],
'Value' => ['description' => 'The tag value.'."\n"
.'> - N specifies the sequence number of the tag value. For example, Tag.0.Value specifies the first tag value, and Tag.1.Value specifies the second tag value. You can query 1 to 20 tag values at a time.'."\n"
.'- An empty string is allowed.', 'type' => 'string', 'required' => false, 'example' => 'testvalue1 ', 'title' => ''],
],
'required' => false,
'description' => '',
'title' => '',
'example' => '',
],
'required' => false,
'maxItems' => 21,
'title' => '',
'example' => '',
],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'NextToken' => ['description' => 'The query token.'."\n"
.'> If this request does not return all results, you can pass this **NextToken** value in the subsequent request to continue the query.', 'type' => 'string', 'example' => '212db86sca4384811e0b5e8707ec2****', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '609AD332-F2B1-48B7-BF43-41FEE641****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'TagResources' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'TagResource' => [
'description' => 'The collection of returned tags.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'TagValue' => ['description' => 'The tag value that corresponds to the tag key.', 'type' => 'string', 'example' => 'testvalue1', 'title' => ''],
'ResourceType' => ['description' => 'The resource type. The value is fixed as **ALIYUN::DTS::INSTANCE**.', 'type' => 'string', 'example' => 'ALIYUN::DTS::INSTANCE', 'title' => ''],
'ResourceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'dtsntk10k6r12v****', 'title' => ''],
'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'testkey1', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
419 => [
['errorCode' => 'QuotaExceed.TagsPerResource', 'errorMessage' => 'The maximum number of tags for each resource is exceeded.', 'description' => ''],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"212db86sca4384811e0b5e8707ec2****\\",\\n \\"RequestId\\": \\"609AD332-F2B1-48B7-BF43-41FEE641****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"TagResources\\": {\\n \\"TagResource\\": [\\n {\\n \\"TagValue\\": \\"testvalue1\\",\\n \\"ResourceType\\": \\"ALIYUN::DTS::INSTANCE\\",\\n \\"ResourceId\\": \\"dtsntk10k6r12v****\\",\\n \\"TagKey\\": \\"testkey1\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'Query tags',
'summary' => 'Queries the tags bound to data migration, data synchronization, and change tracking instances. You can also query the instances bound to specific tags.',
'description' => '****.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:ListTagResources',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ModifyConsumerChannel' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the DTS change tracking instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call [DescribeDtsJobs](~~209702~~) to query the instance ID.'."\n"
.'> You must specify either **DtsInstanceId** or **DtsJobId**.', 'type' => 'string', 'required' => false, 'example' => 'dtsboss6pn1w73****', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.'."\n"
.'> You must specify either **DtsInstanceId** or **DtsJobId**.', 'type' => 'string', 'required' => false, 'example' => 'boss6pn1w73****', 'title' => ''],
],
[
'name' => 'ConsumerGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the consumer group. You can call [DescribeConsumerChannel](~~264169~~) to query the consumer group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsor2y66j4219****', 'title' => ''],
],
[
'name' => 'ConsumerGroupPassword',
'in' => 'query',
'schema' => ['description' => 'The new password of the consumer group account.'."\n"
."\n"
.'- The password must contain characters from at least two of the following categories: uppercase letters, lowercase letters, digits, and special characters.'."\n"
.'- The password must be 8 to 32 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'ConsumerGroupUserName',
'in' => 'query',
'schema' => ['description' => 'The new username of the consumer group account.'."\n"
."\n"
.'- The username can contain one or more types of the following characters: uppercase letters, lowercase letters, digits, and underscores (_).'."\n"
.'- The username can be up to 16 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'ConsumerGroupName',
'in' => 'query',
'schema' => ['description' => 'The new name of the consumer group. The name can be up to 128 characters in length. Specify a descriptive name for easy identification.', 'type' => 'string', 'required' => false, 'example' => '订阅组B', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '055CAF9B-C15D-4799-BB9E-E62D417****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"055CAF9B-C15D-4799-BB9E-E62D417****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Modify a consumer group in a change tracking channel',
'summary' => 'Modifies the information of a consumer group in a change tracking channel (new version).',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => '',
'ramAction' => [
'action' => 'dts:ModifyConsumerChannel',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifyConsumerGroupPassword' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the DescribeSubscriptionInstances operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsg2m10r1x15a****', 'title' => ''],
],
[
'name' => 'ConsumerGroupID',
'in' => 'query',
'schema' => ['description' => 'The ID of the consumer group. You can call the [DescribeConsumerGroup](~~122886~~) operation to query the consumer group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtswc411cg617p****', 'title' => ''],
],
[
'name' => 'ConsumerGroupName',
'in' => 'query',
'schema' => ['description' => 'The name of the consumer group. You can call the [DescribeConsumerGroup](~~122886~~) operation to query the consumer group name.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'ConsumerGroupUserName',
'in' => 'query',
'schema' => ['description' => 'The username of the consumer group. You can call the DescribeConsumerGroup operation to query the username.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'ConsumerGroupPassword',
'in' => 'query',
'schema' => ['description' => 'The current password of the consumer group.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'consumerGroupNewPassword',
'in' => 'query',
'schema' => ['description' => 'The new password of the consumer group.'."\n"
."\n"
.'- The password must contain characters from at least two of the following categories: uppercase letters, lowercase letters, digits, and special characters.'."\n"
.'- The password must be 8 to 32 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'Test654321', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A06B5CFF-9576-4BC1-BE62-A3D43E1F****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A06B5CFF-9576-4BC1-BE62-A3D43E1F****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Modify consumer group password',
'summary' => 'Modifies the password of a consumer group. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [],
],
'ModifyConsumptionTimestamp' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the **DescribeSubscriptionInstances** operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsg2m10r1x15a****', 'title' => ''],
],
[
'name' => 'ConsumptionTimestamp',
'in' => 'query',
'schema' => ['description' => 'The consumption checkpoint in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '2019-10-15T17:20:03Z', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'ABBACEFC-CBA9-4F80-A337-42F202F5****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ABBACEFC-CBA9-4F80-A337-42F202F5****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Modify consumption checkpoint',
'summary' => 'Modifies the consumption checkpoint of a change tracking instance channel.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyConsumptionTimestamp',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ModifyDedicatedCluster' => [
'summary' => 'Modifies the configuration of a dedicated cluster by calling the ModifyDedicatedCluster operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the cluster.'."\n"
.'> Either the **InstanceId** or **DedicatedClusterId** parameter must be specified.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
],
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The ID of the dedicated cluster.'."\n"
.'> Either **InstanceId** or **DedicatedClusterId** must be specified.', 'type' => 'string', 'required' => false, 'example' => 'dtscluster_h3fl1cs217sx952', 'title' => ''],
],
[
'name' => 'DedicatedClusterName',
'in' => 'query',
'schema' => ['description' => 'The name of the cluster.', 'type' => 'string', 'required' => false, 'example' => 'dtscluster_test_001', 'title' => ''],
],
[
'name' => 'OversoldRatio',
'in' => 'query',
'schema' => ['description' => 'The overcommit ratio. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '150', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request is successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DedicatedClusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'example' => 'dtscluster_h3fl1cs217sx952', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DedicatedClusterId\\": \\"dtscluster_h3fl1cs217sx952\\"\\n}","type":"json"}]',
'title' => 'Modify dedicated cluster configuration',
'description' => 'Currently, only the overcommit ratio can be modified.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifyDtsJob' => [
'summary' => 'Modifies a data synchronization task by calling the ModifyDtsJob operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52289',
'abilityTreeNodes' => ['FEATUREdtsQYRBZN'],
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the data synchronization instance.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsbi6e22ay243****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- This parameter is required only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that it is unique among different requests. **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'DbList',
'in' => 'formData',
'style' => 'json',
'schema' => ['description' => 'The modified synchronization objects, in JSON format. For more information about the definition, see [Objects of DTS tasks](~~209545~~).'."\n"
.'- The original DbList is overwritten by the new DbList. Make sure that the new DbList contains all the objects that need to be synchronized. Otherwise, synchronization objects may be lost. Modify this parameter with caution.'."\n"
.'- Call [DescribeDtsJobDetail](~~208925~~) to query the current synchronization objects before you modify them based on your business requirements. For example, if the current objects are tables A and B, and you want to add table C, specify tables A, B, and C in this parameter.'."\n"
.'- The maximum size of DbList is 1 MB.'."\n"
.'- If DbList contains filter conditions, the total length of DbList (including filter conditions) cannot exceed 1 MB.'."\n"
.'- For distributed tasks (such as migration or synchronization tasks whose source is PolarDB-X 1.0), DbList is split based on physical shards and multiple subtasks are generated. The maximum size of DbList for each subtask is 1 MB.', 'type' => 'object', 'required' => false, 'example' => '{"dtstest":{"name":"dtstest","all":true}}', 'title' => ''],
],
[
'name' => 'EtlOperatorColumnReference',
'in' => 'formData',
'schema' => ['description' => 'A field dedicated to T+1 business scenarios. This is an ETL operator and a business-specific field.', 'type' => 'string', 'required' => false, 'example' => '{'."\n"
.' "configKeyMap": ['."\n"
.' {'."\n"
.' "moduleCode": "03",'."\n"
.' "etlOperatorColumnReference": "etlOperatorColumnReference",'."\n"
.' "etlOperatorSetting": "etlOperatorSetting"'."\n"
.' },'."\n"
.' {'."\n"
.' "moduleCode": "07",'."\n"
.' "etlOperatorColumnReference": "etlOperatorColumnReference",'."\n"
.' "etlOperatorSetting": "etlOperatorSetting"'."\n"
.' }'."\n"
.' ],'."\n"
.' "amp.increment.replicator.compare.all.columns.enable": false,'."\n"
.' "srcNetType": "VPC",'."\n"
.' "etlOperatorColumnReference": {'."\n"
.' "MODIFY_TIME": ['."\n"
.' {'."\n"
.' "datasynchron.test_timing_user_000": "user_create_date"'."\n"
.' },'."\n"
.' {'."\n"
.' "datasynchron.test_timing_user_001": "user_create_date"'."\n"
.' },'."\n"
.' {'."\n"
.' "datasynchron.test_timing_user_002": "user_create_date"'."\n"
.' },'."\n"
.' {'."\n"
.' "datasynchron.test_timing_user_003": "user_create_date"'."\n"
.' }'."\n"
.' ]'."\n"
.' },'."\n"
.' "destNetType": "VPC",'."\n"
.' "originalSrcDbInst": "sg-sit-db2-primary.mysql.polardb.rds.aliyuncs.com",'."\n"
.' "etlOperatorSetting": "adb_time_travel",'."\n"
.' "sjobUseJobTask": "1",'."\n"
.' "srcVpcNetMappingInst": "172.19.XXX.XXX:4261",'."\n"
.' "destVpcNetMappingInst": "172.19.XXX.XXX:4260",'."\n"
.' "useJobTask": "1"'."\n"
.'}', 'title' => ''],
],
[
'name' => 'ModifyTypeEnum',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The method used to modify the synchronization task. If this parameter is not specified, the synchronization objects are modified by default. Set this parameter to UPDATE_RESERVED to modify reserved parameters.', 'type' => 'string', 'required' => false, 'example' => 'UPDATE_RESERVED'],
],
[
'name' => 'Reserved',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The reserved parameters of DTS. The update method is append rather than overwrite. The value is in the MAP JSON format. You can specify this parameter to meet special requirements, such as whether to automatically start a precheck. The usage is similar to that of the Reserve parameter. For details, see [Reserve parameter description](~~273111~~).', 'type' => 'string', 'required' => false, 'example' => '{"definer": false,"syncArchitecture": "oneway","whitelist.dms.online.ddl.enable": false,"destSSL": "0","triggerMode": "manual","sqlparser.dms.original.ddl": true,"whitelist.ghost.online.ddl.enable": false,"privilegeMigration": false,"maxRetryTime": 43200,"srcSSL": "0","autoStartModulesAfterConfig": "none"}'],
],
[
'name' => 'FileOssUrl',
'in' => 'query',
'allowEmptyValue' => true,
'schema' => ['title' => '', 'description' => 'The OSS URL of the synchronization file.', 'type' => 'string', 'isFileTransferUrl' => true, 'required' => false, 'example' => 'http://db-list-os-file.oss-cn-shanghai.aliyuncs.com/8e42_12185******43989_************'],
],
[
'name' => 'FilterTableName',
'in' => 'formData',
'schema' => ['title' => '', 'description' => 'The name of the table to be filtered.', 'type' => 'string', 'required' => false, 'example' => 'testtable'],
],
[
'name' => 'StructureInitialization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform schema migration or initial schema synchronization. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DataInitialization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform full data migration or initial full data synchronization. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DataSynchronization',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform incremental data migration or synchronization. Valid values:'."\n"
."\n"
.'- **false**: no.'."\n"
.'- **true**: yes.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the synchronization task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => false, 'example' => 'fpx1149rw7p***', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether this is a seamless integration (zero-ETL) node. Valid values:'."\n"
.'- **true**: yes.'."\n"
.'- **false**: no.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Status' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1D6ECADF-C5E9-4C96-8811-77602B31****', 'title' => ''],
'DtsJobId' => ['description' => 'The DTS task ID.', 'type' => 'string', 'example' => 'bi6e22a****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.'."\n"
.'> The data type of this parameter should be String. An example value is **The request processing has failed due to some unknown error**.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'OperationDenied.JobStatusModifying', 'errorMessage' => 'jobs state is modifying, please wait sync subtask ends', 'description' => 'Objects to synchronize are being modified. Please wait until the modification ends.'],
['errorCode' => 'CheckStatus.InvalidInitStatus', 'errorMessage' => 'Task has not been configured, please configure job first', 'description' => 'The task is not configured. Configure the task first.'],
['errorCode' => 'DTS.Msg.OperationDenied.JobStatusModifying', 'errorMessage' => 'jobs state is modifying, please wait sync subtask ends', 'description' => 'Objects to be synchronized are being modified. Please wait until the modification ends.'],
['errorCode' => 'DTS.Msg.CheckStatus.InvalidInitStatus', 'errorMessage' => 'Task has not been configured, please configure job first', 'description' => 'The task is not configured. Configure the task first.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"200\\",\\n \\"RequestId\\": \\"1D6ECADF-C5E9-4C96-8811-77602B31****\\",\\n \\"DtsJobId\\": \\"bi6e22a****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": true\\n}","type":"json"}]',
'title' => 'Modify a DTS synchronization task',
'description' => '> You can preconfigure settings in the console as needed, and then preview the corresponding OpenAPI parameter information to help you specify request parameters. For more information, see [Preview OpenAPI request parameters](~~2851612~~).',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifyDtsJobConfig' => [
'summary' => 'Modifies the parameters of a DTS task by calling the ModifyDtsJobConfig operation.',
'methods' => ['get', 'post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the DTS task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => false, 'example' => 'lxsn87r328d****', 'title' => ''],
],
[
'name' => 'Parameters',
'in' => 'query',
'schema' => ['description' => 'The parameters to be modified, in JSON character string format. For more information, see [Parameters metric description](~~2536412~~).', 'type' => 'string', 'required' => false, 'example' => '[{"module":"07","name":"sink.connection.idle.second","value":60},{"module":"07","name":"sink.batch.size.maximum","value":64}]', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '068FA72F-4800-4A54-90BB-94806068****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"068FA72F-4800-4A54-90BB-94806068****\\"\\n}","type":"json"}]',
'title' => 'Modify job configuration',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobConfig',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifyDtsJobDedicatedCluster' => [
'summary' => 'Changes the dedicated cluster on which a task runs.',
'methods' => ['get', 'post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'DtsJobIds',
'in' => 'query',
'schema' => ['description' => 'The task ID. You can specify multiple task IDs in a JSON array. Separate the IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["dtsxxxx01", "dtsxxx02"]', 'title' => ''],
],
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The ID of the dedicated cluster.', 'type' => 'string', 'required' => false, 'example' => 'dtsxxxx', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides.'."\n"
."\n"
.'> For the regions supported by dedicated clusters, see [DTS dedicated cluster](~~417481~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the %s variable in the ErrMessage parameter.', 'type' => 'string', 'example' => 'Type', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'Code' => ['description' => 'The error code returned by the backend. The value is incremental.', 'type' => 'string', 'example' => '500', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"Code\\": \\"500\\",\\n \\"Success\\": true,\\n \\"ErrCode\\": \\"InternalError\\"\\n}","type":"json"}]',
'title' => 'Change task cluster',
'description' => '> After a migration task is changed from a dedicated cluster to a public cluster, the billing method of the task changes to pay-as-you-go, and billing starts.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/{#DtsInstanceId}'],
],
],
],
],
],
'ModifyDtsJobDuLimit' => [
'summary' => 'Modifies the DU upper limit of a DTS task by calling the ModifyDtsJobDuLimit operation.',
'methods' => ['get', 'post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the DTS migration, synchronization, or change tracking task.', 'type' => 'string', 'required' => true, 'example' => 'dtsxxx', 'title' => ''],
],
[
'name' => 'DuLimit',
'in' => 'query',
'schema' => ['description' => 'The DU upper limit of the task.'."\n"
."\n"
.'> The minimum value is **1**.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message. This parameter is used to replace the %s variable in the **ErrMessage** parameter.', 'type' => 'string', 'example' => 'Type', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'Code' => ['description' => 'The backend error code, which is an incrementing number.', 'type' => 'string', 'example' => '500', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"Code\\": \\"500\\",\\n \\"Success\\": true,\\n \\"ErrCode\\": \\"InternalError\\"\\n}","type":"json"}]',
'title' => 'Modify DU upper limit of a task',
'description' => '- DTS instances in a dedicated cluster must support specification changes. By changing the resources consumed by a task at runtime, you can dynamically adjust the number of schedulable tasks in the current cluster, thereby deducting or releasing the total number of DUs in the cluster.'."\n"
.'- Before modifying the DU upper limit of a task, ensure that sufficient resources are available.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobDuLimit',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ModifyDtsJobEndpoint' => [
'summary' => 'Modifies the source or destination instance of a DTS synchronization or migration task.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '199390',
'abilityTreeNodes' => ['FEATUREdtsJ32CAF'],
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region to which the DTS instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The DTS task ID. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.'."\n"
."\n"
.'> If you do not specify this parameter, you must specify **DtsInstanceId**.', 'type' => 'string', 'required' => false, 'example' => 'm4312mab158****', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the DTS instance.'."\n"
.'> If you do not specify this parameter, you must specify **DtsJobId**.', 'type' => 'string', 'required' => false, 'example' => 'dtsaw012y2g15q****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward** (default): forward.'."\n"
.'- **Reverse**: reverse.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'Endpoint',
'in' => 'query',
'schema' => ['description' => 'The database instance to modify. Valid values:'."\n"
."\n"
.'- **src**: source instance.'."\n"
.'- **dest**: destination instance.', 'type' => 'string', 'required' => true, 'example' => 'src', 'title' => ''],
],
[
'name' => 'EndpointRegionId',
'in' => 'query',
'schema' => ['description' => 'The region to which the database instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'EndpointInstanceType',
'in' => 'query',
'schema' => ['description' => 'The type of the database instance. Valid values:'."\n"
."\n"
.'- **rds**: ApsaraDB RDS for MySQL or ApsaraDB RDS for PostgreSQL.'."\n"
.'- **polardb**: PolarDB for MySQL or PolarDB for PostgreSQL.'."\n"
.'- **mongodb**: when used as the source, ApsaraDB for MongoDB (replica set architecture). When used as the destination, ApsaraDB for MongoDB (replica set or sharded cluster architecture).'."\n"
.'- **distributed_mongodb**: supported only as the source of a distributed instance. Indicates ApsaraDB for MongoDB (sharded cluster architecture).'."\n"
."\n"
.'> The incremental node of a distributed instance must obtain data changes from the source through Oplog.'."\n"
."\n"
.'- **greenplum**: cloud-native data warehouse AnalyticDB for PostgreSQL.'."\n"
.'- **kafka**: ApsaraMQ for Kafka.'."\n"
.'- **ecs**: a self-managed database hosted on an ECS instance (only supported database types).'."\n"
.'- **express**: a database connected over Express Connect (only supported database types).'."\n"
.'- **other**: a database connected over the Internet (only supported database types).'."\n"
."\n"
.'> - Currently supported database types include **MySQL**, **PolarDB for MySQL**, **PostgreSQL**, **PolarDB for PostgreSQL**, **MongoDB**, **Kafka**, and **AnalyticDB PostgreSQL**.'."\n"
.'- If the database is MongoDB (sharded cluster), the number of shards in the new database must be the same as that in the original MongoDB (sharded cluster).'."\n"
.'- If you want to modify the source instance and the database type is **PostgreSQL**, make sure that the latency of the DTS instance is less than 30 seconds and stop writing data to the source. Otherwise, data inconsistency may occur.'."\n"
.'- The parameter values are case-insensitive.', 'type' => 'string', 'required' => true, 'example' => 'rds', 'title' => ''],
],
[
'name' => 'EndpointInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp10k50h8374w****', 'title' => ''],
],
[
'name' => 'EndpointIp',
'in' => 'query',
'schema' => ['description' => 'The IP address of the database instance.', 'type' => 'string', 'required' => false, 'example' => '172.168.XX.XXX', 'title' => ''],
],
[
'name' => 'EndpointPort',
'in' => 'query',
'schema' => ['description' => 'The port of the database instance.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'Database',
'in' => 'query',
'schema' => ['description' => 'The database name when the database type is **PostgreSQL**, **PolarDB for PostgreSQL**, or **AnalyticDB PostgreSQL**. The authentication database name when the database type is **MongoDB**.'."\n"
."\n"
.'> This parameter is available and required only when the database type is **PostgreSQL**, **PolarDB for PostgreSQL**, **AnalyticDB PostgreSQL**, or **MongoDB**.', 'type' => 'string', 'required' => false, 'example' => 'admin', 'title' => ''],
],
[
'name' => 'ModifyAccount',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to modify the account and password. Valid values:'."\n"
."\n"
.'- **true**: yes.'."\n"
.'- **false** (default): no.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'Username',
'in' => 'query',
'schema' => ['description' => 'The database account.'."\n"
."\n"
.'> This parameter takes effect only when **ModifyAccount** is set to **true**.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'Password',
'in' => 'query',
'schema' => ['description' => 'The database password.'."\n"
."\n"
.'> This parameter takes effect only when **ModifyAccount** is set to **true**.', 'type' => 'string', 'required' => false, 'example' => 'DTStest****', 'title' => ''],
],
[
'name' => 'ShardUsername',
'in' => 'query',
'schema' => ['description' => 'The account of the shard in the MongoDB sharded cluster instance.'."\n"
."\n"
.'> - This parameter is available and required only when the source database instance is ApsaraDB for MongoDB (sharded cluster architecture).'."\n"
.'- This parameter takes effect only when **ModifyAccount** is set to **true**.', 'type' => 'string', 'required' => false, 'example' => 'shard', 'title' => ''],
],
[
'name' => 'ShardPassword',
'in' => 'query',
'schema' => ['description' => 'The password of the shard in the MongoDB sharded cluster instance.'."\n"
."\n"
.'> - This parameter is available and required only when the source database instance is ApsaraDB for MongoDB (sharded cluster architecture).'."\n"
.'- This parameter takes effect only when **ModifyAccount** is set to **true**.', 'type' => 'string', 'required' => false, 'example' => 'DTStest****', 'title' => ''],
],
[
'name' => 'RoleName',
'in' => 'query',
'schema' => ['description' => 'The name of the RAM role for cross-account access.'."\n"
."\n"
.'> This parameter is required when you perform cross-account data synchronization. For the permissions required by this role and how to grant them, see [Configure RAM authorization for cross-account data migration or synchronization](~~48468~~).', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'AliyunUid',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account that owns the database instance.'."\n"
."\n"
.'> Specifying this parameter indicates cross-account data synchronization. You must also specify the **RoleName** parameter.', 'type' => 'string', 'required' => false, 'example' => '150780020300****', 'title' => ''],
],
[
'name' => 'DryRun',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to perform only a dry run. Valid values:'."\n"
."\n"
.'- **true**: performs only a dry run. If the dry run succeeds, the instance is not modified.'."\n"
.'- **false** (default): performs a dry run and then modifies the database instance of the DTS task if the dry run succeeds.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3FA98DF2-2F81-51FF-8A38-AA5112DD****', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'DTS.Msg.InvalidEndpoint', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The endpoint is invalid.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'InvalidParameter.TagKey', 'errorMessage' => 'The Tag.N.Key parameter is invalid.', 'description' => 'The specified tag key is invalid. Enter a valid tag key.'],
['errorCode' => 'InvalidParameter.TagValue', 'errorMessage' => 'The Tag.N.Value parameter is invalid.', 'description' => 'The specified tag value is invalid.'],
['errorCode' => 'InvalidParameter.Tags', 'errorMessage' => 'The specified value of parameter Tags is not valid.', 'description' => 'The specified tag key or tag value is invalid.'],
['errorCode' => 'Missing.TagKey', 'errorMessage' => 'You must specify the key for value %s in Tag.N.Key.', 'description' => 'The tag key is not specified.'],
['errorCode' => 'MissingParameter.TagOrResourceId', 'errorMessage' => 'Either Tags or ResourceIds must be specified.', 'description' => 'The tag or instance ID is not specified.'],
['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The maximum number of Tags is exceeded. The maximum value is 20.', 'description' => 'The maximum number of tags has been reached, which is 20. Delete unnecessary tags.'],
['errorCode' => 'NumberExceed.ResourceIds', 'errorMessage' => 'The maximum number of ResourceIds is exceeded. The maximum value is 50.', 'description' => 'The maximum number of instance IDs has been reached, which is 20. Delete unnecessary instance IDs.'],
['errorCode' => 'InvalidParameter.Category', 'errorMessage' => 'The specified Category is invalid. Valid values are Custom and System.', 'description' => 'The specified tag type is invalid. Valid values: Custom and System.'],
['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The parameter NextToken is invalid.', 'description' => 'The specified NextToken parameter is invalid.'],
['errorCode' => 'InvalidParameter.ResourceType', 'errorMessage' => 'The ResourceType parameter is invalid.', 'description' => 'The specified ResourceType parameter is invalid. Set it to ALIYUN::DTS::INSTANCE.'],
['errorCode' => 'InvalidParameter.Scope', 'errorMessage' => 'The specified Scope is invalid. Valid value: public, private.', 'description' => 'The specified scope that is allowed to view the tag is invalid. Valid values: public and private.'],
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contains duplicate keys.', 'description' => 'The specified tag key already exists. Delete the redundant tag key.'],
['errorCode' => 'NoPermission.SystemTag', 'errorMessage' => 'You are not authorized to operate system tag because the product code is invalid.', 'description' => 'You are not authorized to perform operations on tag values due to invalid code.'],
['errorCode' => 'QuotaExceed.TagsPerResource', 'errorMessage' => 'The maximum number of tags for each resource is exceeded.', 'description' => 'The maximum number of tags has been reached. Remove unnecessary tags.'],
['errorCode' => 'NoPermission.Operator', 'errorMessage' => 'The user is not authorized to operate on the specified resource.', 'description' => 'You are not authorized to perform operations on the specified resource.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"3FA98DF2-2F81-51FF-8A38-AA5112DD****\\",\\n \\"Success\\": true,\\n \\"ErrCode\\": \\"DTS.Msg.InvalidEndpoint\\",\\n \\"ErrMessage\\": \\"The endpoint is invalid.\\"\\n}","type":"json"}]',
'title' => 'Modify the source or destination instance of a DTS task',
'description' => '> After the database instance is modified, the DTS incremental write module rolls back writes by 10 seconds. If the synchronized or migrated data does not have a primary key, stop writing data to the source instance during the database instance replacement. Otherwise, duplicate data may occur.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobEndpoint',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ModifyDtsJobName' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52290',
'abilityTreeNodes' => ['FEATUREdtsJ32CAF'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'DtsJobName',
'in' => 'query',
'schema' => ['description' => 'The new name of the task.'."\n"
.'> Configure a descriptive name that has business meaning (uniqueness is not required) for easy identification.', 'type' => 'string', 'required' => true, 'example' => 'RDS间迁移', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (zero-ETL) node. Valid values:'."\n"
.'- **true**: The node is a seamless integration (zero-ETL) node.'."\n"
.'- **false**: The node is not a seamless integration (zero-ETL) node.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekzfkjjb5gyy6i', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8C498360-7892-433C-847A-BA71A850****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'Code' => ['description' => 'The error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"8C498360-7892-433C-847A-BA71A850****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\"\\n}","type":"json"}]',
'title' => 'Modify DTS task name',
'summary' => 'Modifies the name of a DTS task by calling ModifyDtsJobName.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobName',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifyDtsJobPassword' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52291',
'abilityTreeNodes' => ['FEATUREdtsJ32CAF'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, synchronization, or change tracking task.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'UserName',
'in' => 'query',
'schema' => ['description' => 'The username of the database account to modify.', 'type' => 'string', 'required' => false, 'example' => 'dtstest', 'title' => ''],
],
[
'name' => 'Password',
'in' => 'query',
'schema' => ['description' => 'The new password for the database account.'."\n"
.'> This parameter is required and must be different from the current password.', 'type' => 'string', 'required' => false, 'example' => 'Test123456', 'title' => ''],
],
[
'name' => 'Endpoint',
'in' => 'query',
'schema' => ['description' => 'The database to which the account belongs. Valid values:'."\n"
."\n"
.'- **src**: the source database.'."\n"
.'- **dest**: the destination database.'."\n"
."\n"
.'> This parameter is required.', 'type' => 'string', 'required' => false, 'example' => 'src', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (Zero-ETL) node. Valid values:'."\n"
.'- **true**'."\n"
.'- **false**.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the data migration, synchronization, or subscribe instance.', 'type' => 'string', 'required' => false, 'example' => 'dtsl3m1213ye7l****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- This parameter is required only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8C498360-7892-433C-847A-BA71A850****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'Code' => ['description' => 'The error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'eventInfo' => [
'enable' => false,
'eventNames' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"8C498360-7892-433C-847A-BA71A850****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\"\\n}","type":"json"}]',
'title' => 'Modify task password',
'summary' => 'Modifies the password of a DTS task (new version).',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobPassword',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifyDynamicConfig' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization or migration task.'."\n"
."\n"
.'> You can call [DescribeDtsJobs](~~209702~~) to obtain the task ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ta7w132u12h****', 'title' => ''],
],
[
'name' => 'JobCode',
'in' => 'query',
'schema' => ['description' => 'The task code. Valid values:'."\n"
."\n"
.'- **03**: full data synchronization or migration task.'."\n"
.'- **04**: incremental data migration task.'."\n"
.'- **07**: incremental data synchronization task.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '07', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ConfigList',
'in' => 'query',
'schema' => ['description' => 'The rate limit configurations.'."\n"
."\n"
.'- **dts.datamove.blaster.qps.max**: the queries per second (QPS) for querying the source database.'."\n"
.'- **dts.datamove.source.rps.max**: the records per second (RPS) for full data synchronization or migration.'."\n"
.'- **dts.datamove.source.bps.max**: the data volume per second for full data synchronization or migration. Unit: bytes per second.'."\n"
."\n"
.'> - If **JobCode** is set to **03**, you must set **EnableLimit** to **true** for the three parameters to take effect.'."\n"
.'- If **JobCode** is set to **04** or **07**, you only need to configure **dts.datamove.source.rps.max** and **dts.datamove.source.bps.max**.'."\n"
.'- A value of **-1** indicates that no rate limit is applied.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => '{'."\n"
.' "dts.datamove.source.rps.max": 5000,'."\n"
.' "dts.datamove.source.bps.max": 10485760'."\n"
.'}', 'title' => ''],
],
[
'name' => 'EnableLimit',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to limit the migration rate of the full data synchronization or migration task. Valid values: **true** and **false**.'."\n"
."\n"
.'> This parameter is required only when **JobCode** is set to **03**.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz6zsi7ce5rpy', 'title' => ''],
],
],
'responses' => [
200 => [
'headers' => [],
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8D81829D-1BBD-5CE8-BE75-1CAD5750****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'Code' => ['description' => 'The error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** placeholder in the **ErrMessage** response parameter.'."\n"
."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"8D81829D-1BBD-5CE8-BE75-1CAD5750****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\"\\n}","type":"json"}]',
'title' => 'Adjust migration rate',
'summary' => 'Adjusts the migration rate of a data synchronization or migration instance.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => '',
'ramAction' => [
'action' => 'dts:ModifyDynamicConfig',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ModifyGadInstanceName' => [
'summary' => 'Modifies the name of a Global Active Database (GAD) instance.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '231795',
'abilityTreeNodes' => ['FEATUREdts05OBVW'],
],
'parameters' => [
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek26mat2ldb4oy', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the task. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the active geo-redundancy instance group.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1i99e8l7913****', 'title' => ''],
],
[
'name' => 'InstanceName',
'in' => 'query',
'schema' => ['description' => 'The instance name of the active geo-redundancy instance group.', 'type' => 'string', 'required' => false, 'example' => 'rm-uf6b0m001ir8mr9i9', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4D0ADAD5-DD97-41B6-B78F-D1961AB1****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which replaces **%s** in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'present environment is not support,so skip.', 'title' => ''],
'RegionId' => ['description' => 'The region ID of the instance. For more information, see Supported regions.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceId' => ['description' => 'The active geo-redundancy instance group ID.', 'type' => 'string', 'example' => 'rm-bp162d4tp0500****', 'title' => ''],
'InstanceName' => ['description' => 'The instance name.', 'type' => 'string', 'example' => 'rm-2zehh163694qs5c3v', 'title' => ''],
'CreateTime' => ['description' => 'The time when the task was created, in the format of yyyy-MM-ddTHH:mm:ssZ (UTC).', 'type' => 'integer', 'format' => 'int64', 'example' => '2021-06-28 17:34:53.0', 'title' => ''],
'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
['errorCode' => 'DTS.Msg.GADInstanceNotFound', 'errorMessage' => 'The GAD instance is not found.', 'description' => 'GAD instance does not exist.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"4D0ADAD5-DD97-41B6-B78F-D1961AB1****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Success\\": \\"true\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"DynamicMessage\\": \\"present environment is not support,so skip.\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceId\\": \\"rm-bp162d4tp0500****\\",\\n \\"InstanceName\\": \\"rm-2zehh163694qs5c3v\\",\\n \\"CreateTime\\": 0,\\n \\"ResourceGroupId\\": \\"rg-acfmzawhxxc****\\"\\n}","type":"json"}]',
'title' => 'Modify GAD instance group name',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyGadInstanceName',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ModifyJobStepCheckpoint' => [
'summary' => 'Modify the offset for incremental data writing.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREdtsJ32CAF'],
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region where the DTS instance resides.'."\n"
."\n"
.'> For regions that support dedicated clusters, see [DTS dedicated cluster](~~417481~~).', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the migration, synchronization, or tracking task.', 'type' => 'string', 'required' => false, 'example' => 'l5512es7w15****', 'title' => ''],
],
[
'name' => 'JobStepId',
'in' => 'query',
'schema' => ['description' => 'The task step ID, which corresponds to the **synchronization** step ID returned by the ListJobStep API.', 'type' => 'string', 'required' => false, 'example' => 'wn3z4ukia9wi9xu_0004_0000', 'title' => ''],
],
[
'name' => 'NewCheckPoint',
'in' => 'query',
'schema' => ['description' => 'The new offset as a UNIX timestamp in seconds. The specified value must fall within the offset range of the incremental data collection step.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1760406***', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2ilvoxlrd***', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C306C198-7807-409D-930A-D6CE6C32****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the API call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request succeeded. Valid values:'."\n"
.'- **true**: The request succeeded.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the API call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the %s placeholder in the ErrMessage parameter.'."\n"
."\n"
.'> For example, if ErrMessage returns "The Value of Input Parameter %s is not valid" and DynamicMessage returns "JobId", it indicates that the JobId request parameter you provided is invalid.', 'type' => 'string', 'example' => 'can not find env: zbyk-pre', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"C306C198-7807-409D-930A-D6CE6C32****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"can not find env: zbyk-pre\\"\\n}","type":"json"}]',
'title' => 'Modify task offset',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:ModifyJobStepCheckpoint',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifySubscription' => [
'summary' => 'Modifies a change tracking task (new version).',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREdts7755BW'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call [DescribeDtsJobs](~~209702~~) to query the instance ID.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'dtsboss6pn1w******', 'title' => ''],
],
[
'name' => 'DbList',
'in' => 'query',
'schema' => ['description' => 'The modified subscription objects, in JSON format. For more information about the definition, see [Objects of DTS tasks](~~209545~~).'."\n"
.'> - The new DbList value overwrites the original DbList value. Make sure that the new DbList value contains all the objects that you want to track. Otherwise, objects may be lost. Modify this parameter with caution.'."\n"
.'- You can call [DescribeDtsJobDetail](~~208925~~) to query the original subscription objects.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => '{"dtstest":{"name":"dtstest","all":true}}', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'boss6pn1w******', 'title' => ''],
],
[
'name' => 'SubscriptionDataTypeDDL',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the modified task subscribes to DDL data. Valid values:'."\n"
."\n"
.'- **true**: The task subscribes to DDL data.'."\n"
.'- **false**: The task does not subscribe to DDL data.', 'type' => 'boolean', 'required' => false, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'SubscriptionDataTypeDML',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the modified task subscribes to DML data. Valid values:'."\n"
.'- **true**: The task subscribes to DML data.'."\n"
.'- **false**: The task does not subscribe to DML data.', 'type' => 'boolean', 'required' => false, 'docRequired' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'Reserved',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'ModifyType',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '068FA72F-4800-4A54-90BB-94806068****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"068FA72F-4800-4A54-90BB-94806068****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Modify a change tracking task',
'description' => '> You can perform the required preconfigurations in the console and then preview the corresponding OpenAPI parameter information to help you fill in the request parameters. For more information, see [Preview OpenAPI request parameters](~~2851612~~).',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifySubscription',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifySubscriptionObject' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the [DescribeSubscriptionInstances](~~49442~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsl8zl9ek6292****', 'title' => ''],
],
[
'name' => 'SubscriptionObject',
'in' => 'query',
'schema' => ['description' => 'The subscription objects. The value is a JSON string that supports regular expressions. For more information, see [Subscription object configuration](~~141902~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '[{"DBName":"dtstestdata"}]', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'ABBACEFC-CBA9-4F80-A337-42F202F5****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ABBACEFC-CBA9-4F80-A337-42F202F5****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Modify subscription objects',
'summary' => 'Modifies the subscription objects of a change tracking task. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifySubscriptionObject',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ModifySynchronizationObject' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the [DescribeSynchronizationJobs](~~49454~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtskfq1149w254****', 'title' => ''],
],
[
'name' => 'SynchronizationObjects',
'in' => 'formData',
'schema' => ['description' => 'The modified synchronization objects. The value is a JSON string that supports certain regular expressions. For more information, see [Synchronization object configuration](~~141901~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '[{"DBName": "dtstestdata"}]', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- This parameter is required only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because it will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '902DDCDE-C755-4458-85DA-DF9A323C****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'TaskId' => ['description' => 'The task ID. You can call the [DescribeSynchronizationObjectModifyStatus](~~49452~~) operation based on this parameter to query the status and progress of the synchronization object modification.', 'type' => 'string', 'example' => 'tl911uvi25z****', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"902DDCDE-C755-4458-85DA-DF9A323C****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"TaskId\\": \\"tl911uvi25z****\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Modify synchronization objects of a data synchronization job instance',
'summary' => 'Modifies the synchronization objects in a data synchronization job instance. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifySynchronizationObject',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'PreCheckCreateGadOrder' => [
'summary' => 'Prechecks an order for creating a Global Active Database (GAD) instance group.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '232361',
'abilityTreeNodes' => ['FEATUREdts05OBVW'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfntftbiobqyky', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the active geo-redundancy instance group.', 'type' => 'string', 'required' => false, 'example' => 'gad-bp1i99e8l7913****', 'title' => ''],
],
[
'name' => 'SlaveDbInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the database instance that assumes the secondary role.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp17562h64****', 'title' => ''],
],
[
'name' => 'SlaveDbInstanceRegion',
'in' => 'query',
'schema' => ['description' => 'The region of the database instance that assumes the secondary role.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MasterDatabaseName',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'MasterEngineArchType',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'MasterShardAccountName',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'MasterShardAccountPassword',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'SlaveDatabaseName',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'SlaveEngineArchType',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C166D79D-436B-45F0-B5A5-25E1959F****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'Success' => ['description' => 'Indicates whether the call was successful. Valid values:'."\n"
.'- true: The call was successful.'."\n"
.'- false: The call failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the %s placeholder in the ErrMessage response parameter.'."\n"
."\n"
.'> If ErrMessage returns The Value of Input Parameter %s is not valid and DynamicMessage returns JobId, the value of the JobId request parameter is invalid.', 'type' => 'string', 'example' => 'https://check-result-file-sh.oss-cn-shanghai.aliyuncs.com/dw612cru18e****/dtsdb/diff/student.diff.zip?Expires=****', 'title' => ''],
'RegionId' => ['description' => 'The ID of the region in which the instance resides. For more information, see Supported regions.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
'InstanceId' => ['description' => 'The ID of the active geo-redundancy instance group.', 'type' => 'string', 'example' => 'rm-bp162d4tp0500****', 'title' => ''],
'TaskId' => ['description' => 'The precheck task ID.', 'type' => 'string', 'example' => 'z2v12jfo309****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"C166D79D-436B-45F0-B5A5-25E1959F****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Success\\": \\"true\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"DynamicMessage\\": \\"https://check-result-file-sh.oss-cn-shanghai.aliyuncs.com/dw612cru18e****/dtsdb/diff/student.diff.zip?Expires=****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceId\\": \\"rm-bp162d4tp0500****\\",\\n \\"TaskId\\": \\"z2v12jfo309****\\"\\n}","type":"json"}]',
'title' => 'Precheck GAD instance group creation',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:PreCheckCreateGadOrder',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'PromoteToMaster' => [
'methods' => ['post', 'get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '236002',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'Region ID. Specify this parameter to indicate the region where the instance resides. For more information, see the list of supported regions. ', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'Instance ID. ', 'type' => 'string', 'required' => false, 'example' => 'gad-bp162d4tp0500****', 'title' => ''],
],
[
'name' => 'MasterDbInstanceId',
'in' => 'query',
'schema' => ['description' => 'Primary instance ID. ', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1756****', 'title' => ''],
],
[
'name' => 'SlaveDbInstanceId',
'in' => 'query',
'schema' => ['description' => 'Secondary instance ID. ', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1756****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'Resource group ID. ', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'Status code. ', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'Request ID. ', 'type' => 'string', 'example' => '210ec2e116055198849072222d****', 'title' => ''],
'ErrCode' => ['description' => 'Error code returned when the invocation fails. ', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request succeeded. ', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'Error message returned when the invocation fails. ', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DynamicMessage' => ['description' => 'Dynamic error message, used to replace the **%s** placeholder in the **ErrMessage** error message. '."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, it indicates that the request parameter **DtsJobId** is invalid. ', 'type' => 'string', 'example' => 'present environment is not support,so skip.', 'title' => ''],
'DynamicCode' => ['description' => 'Dynamic error code. This parameter will be unpublished soon. ', 'type' => 'string', 'example' => '403', 'title' => ''],
'TaskId' => ['description' => 'Job ID. This parameter will be unpublished soon. ', 'type' => 'string', 'example' => 'z2v12jfo309****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"210ec2e116055198849072222d****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DynamicMessage\\": \\"present environment is not support,so skip.\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"TaskId\\": \\"z2v12jfo309****\\"\\n}","type":"json"}]',
'title' => 'Promote a geo-disaster recovery instance from the secondary role to the primary role ',
'summary' => 'Promote a geo-disaster recovery instance from the secondary role to the primary role ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:PromoteToMaster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'RenewInstance' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization or change tracking task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'qi0r643lc31****', 'title' => ''],
],
[
'name' => 'ChargeType',
'in' => 'query',
'schema' => ['description' => 'The billing method. Set the value to **PREPAY**, which indicates the subscription billing method.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'PREPAY', 'title' => ''],
],
[
'name' => 'Period',
'in' => 'query',
'schema' => ['description' => "\n"
.'The billing method for the renewal instance. Valid values:'."\n"
.'- **Year**: yearly subscription.'."\n"
.'- **Month**: monthly subscription (default).', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''],
],
[
'name' => 'BuyCount',
'in' => 'query',
'schema' => ['description' => 'The subscription duration of the renewed instance. Default value: 1.'."\n"
.'- If **Period** is set to **Year**, the valid values are **1 to 5**.'."\n"
.'- If **Period** is set to **Month**, the valid values are **1 to 60**.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'EndTime' => ['description' => 'The time when the renewal instance expires. The time is displayed in the format of yyyy-MM-ddTHH:mm:ssZZZ (UTC).'."\n"
."\n"
.'> **ZZZ** indicates the full time zone offset ("+" or "-" followed by hours and minutes), for example, **+00:00**.', 'type' => 'string', 'example' => '2021-08-04T16:00:00.000+00:00', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1112E255-0C38-4970-8159-1D54AD92****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the data synchronization or change tracking task.', 'type' => 'string', 'example' => 'qi0r643lc31****', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'ChargeType' => ['description' => 'The billing method. Set the value to **PREPAY**, which indicates the subscription billing method.', 'type' => 'string', 'example' => 'PREPAY', 'title' => ''],
'Code' => ['description' => 'The error code.'."\n"
."\n"
.'> This parameter will be deprecated.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the %**s** variable in the **ErrMessage** response parameter.'."\n"
."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'dtsqi0r643lc31****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"EndTime\\": \\"2021-08-04T16:00:00.000+00:00\\",\\n \\"RequestId\\": \\"1112E255-0C38-4970-8159-1D54AD92****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"DtsJobId\\": \\"qi0r643lc31****\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"ChargeType\\": \\"PREPAY\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"InstanceId\\": \\"dtsqi0r643lc31****\\"\\n}","type":"json"}]',
'title' => 'Renew a DTS instance',
'summary' => 'Renews a DTS instance. This operation is applicable only to subscription DTS instances.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:RenewInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'ResetDtsJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization or change tracking task.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The synchronization or subscribe instance ID.', 'type' => 'string', 'required' => false, 'example' => 'dtsl3m1213ye7l****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You can set this parameter to **Reverse** to reset the reverse synchronization task only if the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the DTS instance. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekzn4iqlbsm7hy', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '01B6F25-21E7-4484-99D5-3EF2625C****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"01B6F25-21E7-4484-99D5-3EF2625C****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Reset a DTS task',
'summary' => 'Resets a data synchronization or change tracking task.',
'description' => '> After the configuration of a data synchronization or change tracking task is cleared, the original task is deleted. DTS creates a new unconfigured task. You must call the [ConfigureDtsJob](~~208399~~) operation to reconfigure the task.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ResetDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'ResetSynchronizationJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the **DescribeSynchronizationJobs** operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsm761239l27m****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You can set this parameter to **Reverse** to reset the reverse synchronization link only if the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FDC111B1-ACBF-457D-9656-247FDEE9****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FDC111B1-ACBF-457D-9656-247FDEE9****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Reset synchronization task configuration',
'summary' => 'Resets the configuration of a data synchronization task.',
'description' => '> After you reset the configuration of a data synchronization task, the original synchronization task is released. You must call the **ConfigureSynchronizationJob** operation to reconfigure the synchronization task before you can start the task.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ResetSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/{#DtsInstanceId}'],
],
],
],
],
],
'ShieldPrecheck' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration or synchronization instance. You can call the **DescribeMigrationJobs** or DescribeSynchronizationJobs operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsi76118o3w92****', 'title' => ''],
],
[
'name' => 'PrecheckItems',
'in' => 'query',
'schema' => ['description' => 'The precheck items to skip. Separate multiple items with commas (,). Valid values:'."\n"
."\n"
.'- **CHECK_SAME_OBJ**: checks whether objects with the same name exist.'."\n"
.'- **CHECK_SAME_USER**: checks whether accounts with different names exist.'."\n"
.'- **CHECK_SRC**: checks the source database version.'."\n"
.'- **CHECK_TOPOLOGY**: checks the topology version.'."\n"
.'> For the topology versions supported by DTS, see [Topology overview](~~124115~~).'."\n"
.'- **CHECK_SERVER_ID**: checks the server_id of the source database.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'CHECK_SAME_OBJ', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '6F4B5BC4-34B1-49C9-9C8F-C8F16AC4****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6F4B5BC4-34B1-49C9-9C8F-C8F16AC4****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Skip precheck',
'summary' => 'Skips the precheck for a legacy data migration or synchronization task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:ShieldPrecheck',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'SkipFullJobTable' => [
'summary' => 'Skips tables that do not need to be synchronized during the full data synchronization phase.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '142566',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, synchronization, or change tracking task. This parameter is deprecated and no longer takes effect.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'JobProgressId',
'in' => 'query',
'schema' => ['description' => 'The primary key ID of JobProgress. Each object in a full data migration task corresponds to a JobProgress entry. Specify this parameter to identify the table to skip.', 'type' => 'string', 'required' => false, 'example' => '123', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (zero-ETL) node. Valid values:'."\n"
.'- **true**: The node is a zero-ETL node.'."\n"
.'- **false**: The node is not a zero-ETL node.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2ilvoxlrdcby', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4D0ADAD5-DD97-41B6-B78F-D1961AB1****', 'title' => ''],
'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => '200', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"4D0ADAD5-DD97-41B6-B78F-D1961AB1****\\",\\n \\"Code\\": \\"200\\"\\n}","type":"json"}]',
'title' => 'Skip tables that do not need to be synchronized during the full synchronization phase',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SkipFullJobTable',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'SkipPreCheck' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'JobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the precheck task. You can call **DescribePreCheckStatus** to query the ID.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'b4my3zg929a****', 'title' => ''],
],
[
'name' => 'Skip',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to suppress the precheck item. Valid values:'."\n"
."\n"
.'- **true**: Suppress the precheck item.'."\n"
.'- **false**: Unsuppress the precheck item.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => ''],
],
[
'name' => 'SkipPreCheckItems',
'in' => 'query',
'schema' => ['description' => 'The abbreviated names of the precheck items to suppress or unsuppress. Valid values:'."\n"
."\n"
.'- **["CHECK_SAME_OBJ"]**: check for objects with the same name.'."\n"
.'- **["CHECK_SAME_USER"]**: check for accounts with different names.'."\n"
.'- **["CHECK_SRC"]**: source database version check.'."\n"
.'- **["CHECK_TOPOLOGY"]**: topology version check. For the topology versions supported by DTS, see [Topology overview](~~124115~~).'."\n"
.'- **["CHECK_SERVER_ID"]**: source database server_id check.'."\n"
.'- **["CHECK_DEST_TABLE_EMPTY"]**: destination database object existence check.'."\n"
.'- **["CHECK_SUPER_AUTH_DEST"]**: destination database super account permission check.'."\n"
."\n"
.'> Separate multiple item names with commas (,), for example, **["CHECK_SRC","CHECK_SAME_OBJ"]**.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => '["CHECK_SAME_OBJ"]', 'title' => ''],
],
[
'name' => 'SkipPreCheckNames',
'in' => 'query',
'schema' => ['description' => 'The full names of the precheck items to suppress or unsuppress. This parameter corresponds to the **SkipPreCheckItems** parameter. Valid values:'."\n"
."\n"
.'- **["CHECK_SAME_OBJ_DETAIL"]**: check for objects with the same name.'."\n"
.'- **["CHECK_SAME_USER_DETAIL"]**: check for accounts with different names.'."\n"
.'- **["CHECK_SRC_DETAIL"]**: source database version check.'."\n"
.'- **["CHECK_TOPOLOGY_DETAIL"]**: topology version check. For the topology versions supported by DTS, see [Topology overview](~~124115~~).'."\n"
.'- **["CHECK_SERVER_ID_DETAIL"]**: source database server_id check.'."\n"
.'- **["CHECK_DEST_TABLE_EMPTY_DETAIL"]**: check whether the destination database tables are empty.'."\n"
.'- **["CHECK_SUPER_AUTH_DEST_DETAIL"]**: check the super account permissions of the destination database.'."\n"
."\n"
.'> Separate multiple item names with commas (,), for example, **["CHECK_SRC_DETAIL","CHECK_SAME_OBJ_DETAIL"]**.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => '["CHECK_SAME_OBJ_DETAIL"]', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'required' => true, 'example' => 'c7412z57g8k****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8C498360-7892-433C-847A-BA71A850****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'SkipNames' => ['description' => 'The full names of the precheck items to suppress or unsuppress.', 'type' => 'string', 'example' => 'CHECK_SAME_OBJ_DETAIL', 'title' => ''],
'Code' => ['description' => 'The error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '200', 'title' => ''],
'ScheduleJobId' => ['description' => 'The ID of the precheck task.', 'type' => 'string', 'example' => 'b4my3zg929a****', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the %s variable in the ErrMessage parameter.'."\n"
."\n"
.'> For example, if ErrMessage returns The Value of Input Parameter %s is not valid and DynamicMessage returns JobId, the JobId request parameter is invalid.', 'type' => 'string', 'example' => 'JobId', 'title' => ''],
'MigrationJobId' => ['description' => 'The ID of the precheck task.', 'type' => 'string', 'example' => 'b4my3zg929a****', 'title' => ''],
'SkipItems' => ['description' => 'The abbreviated names of the precheck items to suppress or unsuppress.', 'type' => 'string', 'example' => 'CHECK_SAME_OBJ', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"8C498360-7892-433C-847A-BA71A850****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"SkipNames\\": \\"CHECK_SAME_OBJ_DETAIL\\",\\n \\"Code\\": \\"200\\",\\n \\"ScheduleJobId\\": \\"b4my3zg929a****\\",\\n \\"DynamicMessage\\": \\"JobId\\",\\n \\"MigrationJobId\\": \\"b4my3zg929a****\\",\\n \\"SkipItems\\": \\"CHECK_SAME_OBJ\\"\\n}","type":"json"}]',
'title' => 'Suppress or unsuppress precheck alert items',
'summary' => 'Suppresses or unsuppresses precheck alert items.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SkipPreCheck',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StartDtsJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52309',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking instance.'."\n"
.'> You can query the instance ID by invoking [Query the list of data migration instances and details of each instance](~~208139~~), [Query the list of change tracking instances and details of each instance](~~49442~~), or [Query the list of data synchronization instances and details of each instance](~~49454~~).', 'type' => 'string', 'required' => false, 'example' => 'dtsl3m1213ye7l****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward. This is the default value.'."\n"
.'- **Reverse**: reverse.'."\n"
.'> You can set this parameter to **Reverse** to start the reverse synchronization link only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a zero-ETL node. Valid values:'."\n"
."\n"
.'- **false**: no.'."\n"
.'- **true**: yes.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2ilvoxlrdcby', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '601B6F25-21E7-4484-99D5-3EF2625C****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'OperationDenied.NotPurchased', 'errorMessage' => 'The instance has not been purchased and the task cannot be started.', 'description' => 'Failed to start a task. Purchase a task first.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"601B6F25-21E7-4484-99D5-3EF2625C****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Start a DTS instance',
'summary' => 'Starts a data migration, data synchronization, or change tracking task by calling the StartDtsJob operation.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StartDtsJobs' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52310',
'abilityTreeNodes' => ['FEATUREdtsQYRBZN'],
],
'parameters' => [
[
'name' => 'DtsJobIds',
'in' => 'query',
'schema' => ['description' => 'The IDs of the data migration or synchronization tasks.'."\n"
.'> - Separate multiple task IDs with commas (,).'."\n"
.'- You can call [DescribeDtsJobs](~~209702~~) to query DTS task IDs.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'l5o11f9029c****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (zero-ETL) node. Valid values:'."\n"
."\n"
.'- **false**: No.'."\n"
.'- **true**: Yes.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AD823BD3-1BA6-4117-A536-165CB280****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'OperationDenied.NotPurchased', 'errorMessage' => 'The instance has not been purchased and the task cannot be started.', 'description' => 'Failed to start a task. Purchase a task first.'],
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"AD823BD3-1BA6-4117-A536-165CB280****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Batch start DTS tasks',
'summary' => 'Starts multiple data migration or synchronization tasks in a batch by calling the StartDtsJobs operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StartMigrationJob' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtss0611o8vv90****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FDC111B1-ACBF-457D-9656-247FDEE9****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FDC111B1-ACBF-457D-9656-247FDEE9****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Start a migration task',
'summary' => 'Starts a data migration task of Data Transmission Service (DTS).',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartMigrationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StartReverseWriter' => [
'summary' => 'Starts a reverse task that is created by calling the CreateReverseDtsJob operation.',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREdtsZOB49A'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the task generated by calling the **CreateReverseDtsJob** operation.', 'type' => 'string', 'required' => true, 'example' => 'n99m9jx822k****', 'title' => ''],
],
[
'name' => 'CheckPoint',
'in' => 'query',
'schema' => ['description' => 'The checkpoint of the incremental write module. The value is a UNIX timestamp.'."\n"
."\n"
.'> Default value: the checkpoint that is automatically saved by DTS when the original task is stopped.', 'type' => 'string', 'required' => false, 'example' => '1695613785', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID. This is a global parameter and does not need to be passed in for this operation.', 'type' => 'string', 'required' => false, 'example' => '资源组ID,全局参数,当前API无需传入。', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '291BA4F1-2035-3FAA-6D5A-5D2015CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
['errorCode' => 'InvalidParameter', 'errorMessage' => 'The value of the parameter %s is invalid.', 'description' => 'The specified parameter is invalid.'],
['errorCode' => 'Original.Job.Running', 'errorMessage' => 'The parent dts job is running, reverse job cannot been startup.', 'description' => 'The original task is running and the reverse task cannot be started.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"291BA4F1-2035-3FAA-6D5A-5D2015CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\"\\n}","type":"json"}]',
'title' => 'Start a reverse task',
'description' => 'Before you call this operation, check the status of the reverse task in the console or by calling [DescribeDtsJobDetail](~~208925~~). Make sure that the task has not been released and is in the paused state.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartReverseWriter',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StartSubscriptionInstance' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the change tracking instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SubscriptionInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the change tracking instance. You can call the [DescribeSubscriptionInstances](~~49442~~) operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtso6m11cxt26q****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B083F9AB-BE9B-4716-8AD3-CFA04391****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'TaskId' => ['description' => 'The task ID. This parameter is about to be deprecated.', 'type' => 'string', 'example' => '11****', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B083F9AB-BE9B-4716-8AD3-CFA04391****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"TaskId\\": \\"11****\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Start a change tracking instance channel',
'summary' => 'Starts the channel of a change tracking instance. This is a legacy operation.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartSubscriptionInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StartSynchronizationJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region where the data synchronization instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization instance. You can call the **DescribeSynchronizationJobs** operation to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsf19100l2186****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'> - You can set this parameter to **Reverse** to start the reverse synchronization link only if the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be discontinued.', 'type' => 'string', 'required' => false, 'example' => '1689726061829****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FDC111B1-ACBF-457D-9656-247FDEE9****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FDC111B1-ACBF-457D-9656-247FDEE9****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Start a data synchronization instance',
'summary' => 'Starts a data synchronization task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StopDedicatedCluster' => [
'summary' => 'Releases a cluster by calling the StopDedicatedCluster operation.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.'."\n"
.'> You must specify either **InstanceId** or **DedicatedClusterId**.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1162kryivb8****', 'title' => ''],
],
[
'name' => 'DedicatedClusterId',
'in' => 'query',
'schema' => ['description' => 'The cluster ID.'."\n"
.'> You must specify either **InstanceId** or **DedicatedClusterId**.', 'type' => 'string', 'required' => false, 'example' => 'dtscluster_h3fl1cs217sx952', 'title' => ''],
],
[
'name' => 'DedicatedClusterName',
'in' => 'query',
'schema' => ['description' => 'The cluster name.', 'type' => 'string', 'required' => false, 'example' => 'dtscluster_test_001', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID. This is a global parameter that does not need to be specified for this operation.', 'type' => 'string', 'required' => false, 'example' => '资源组ID,全局参数,当前API无需传入。', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '621BB4F8-3016-4FAA-8D5A-5D3163CC****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.q', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"RequestId\\": \\"621BB4F8-3016-4FAA-8D5A-5D3163CC****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.q\\"\\n}","type":"json"}]',
'title' => 'Release a cluster',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StopDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'StopDtsJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52314',
'abilityTreeNodes' => ['FEATUREdtsQYRBZN'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the data migration, data synchronization, or subscribe instance.', 'type' => 'string', 'required' => false, 'example' => 'dtsl3m1213ye7l****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You can set this parameter to **Reverse** to stop the reverse synchronization link only if the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (zero-ETL) node. Valid values:'."\n"
."\n"
.'- **false**: No.'."\n"
.'- **true**: Yes.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfm2jr35xnjh7i', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '01B6F25-21E7-4484-99D5-3EF2625C****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"01B6F25-21E7-4484-99D5-3EF2625C****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Stop a DTS task',
'summary' => 'Stops a data migration, data synchronization, or change tracking task by calling StopDtsJob.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StopDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StopDtsJobs' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52315',
'abilityTreeNodes' => ['FEATUREdtsQYRBZN'],
],
'parameters' => [
[
'name' => 'DtsJobIds',
'in' => 'query',
'schema' => ['description' => 'The IDs of the data migration or data synchronization tasks.'."\n"
.'> - Separate multiple task IDs with commas (,).'."\n"
.'- Call [DescribeDtsJobs](~~209702~~) to query DTS task IDs.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'l5o11f9029c****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (zero-ETL) node. Valid values:'."\n"
."\n"
.'- **false**: No.'."\n"
.'- **true**: Yes.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekzsf6yoxhfpva', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AD823BD3-1BA6-4117-A536-165CB280****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** variable in the **ErrMessage** parameter. > For example, if **ErrMessage** returns **The value of input parameter %s is not valid** and **DynamicMessage** returns **[timeout]**, the request parameter **timeout** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"AD823BD3-1BA6-4117-A536-165CB280****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Stop DTS tasks in batches',
'summary' => 'Stops multiple DTS tasks at a time.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StopDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'StopMigrationJob' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsb2c11sxpi3j****', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. Generate a value from your client to ensure uniqueness across different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C306C198-7807-409D-930A-D6CE6C32****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C306C198-7807-409D-930A-D6CE6C32****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'End a migration task',
'summary' => 'Ends a data migration task that is in a migration state.',
'changeSet' => [],
'ramActions' => [],
],
'SummaryJobDetail' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '52317',
'abilityTreeNodes' => ['FEATUREdts4VPC0Q'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration or synchronization task.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'JobCode',
'in' => 'query',
'schema' => ['description' => 'The migration phase. Valid values:'."\n"
.'- **02**: schema migration phase.'."\n"
.'- **03**: incremental data migration phase.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '02', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You can set this parameter to **Reverse** to release the reverse synchronization link only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The migration or synchronization instance ID.', 'type' => 'string', 'required' => false, 'example' => 'dtsl3m1213ye7l****', 'title' => ''],
],
[
'name' => 'StructType',
'in' => 'query',
'schema' => [
'description' => 'The type of schema definition. Valid values:'."\n"
."\n"
.'- **before**: schema migration or initial schema synchronization.'."\n"
.'- **after**: DDL operations during incremental data migration or synchronization.',
'type' => 'string',
'enum' => [],
'required' => false,
'example' => 'before',
'title' => '',
],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (zero-ETL) node. Valid values:'."\n"
.'- **true**: The node is a seamless integration node.'."\n"
.'- **false**: The node is not a seamless integration node.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2mjc4qlnog6q', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9033138C-5AB3-5EB7-BA78-43131F19297C', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'JobId' => ['description' => 'The ID of the data migration or synchronization task.', 'type' => 'string', 'example' => 'l3m1213ye7l****', 'title' => ''],
'ProgressSummaryDetails' => [
'description' => 'The array of migration object information.'."\n"
.'> The array is returned in the following format: \\[{"key":"Function","state":5,"totalCount":22},{"key":"Procedure","state":5,"totalCount":26},{"key":"Table","state":0,"totalCount":68},{"key":"View","state":5,"totalCount":100}].',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The object type of the migration object. Valid values: **Table**, **Constraint**, **Index**, **View**, **Materialize View**, **Type** (user-defined type), **Synonym**, **Trigger**, **Function**, **Procedure** (stored procedure), **Package**, **Default**, **Rule**, **PlanGuide** (execute plan), and **Sequence**.', 'type' => 'string', 'example' => 'Table', 'title' => ''],
'TotalCount' => ['description' => 'The total number of migration objects.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
'State' => ['description' => 'The migration status. Valid values:'."\n"
.'- **0**: finish (completed).'."\n"
.'- **1**: catched (waiting for synchronization).'."\n"
.'- **2**: init (initializing).'."\n"
.'- **3**: running (synchronizing).'."\n"
.'- **4**: warning (error).'."\n"
.'- **5**: failed (failed).', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"Code\\": \\"200\\",\\n \\"RequestId\\": \\"9033138C-5AB3-5EB7-BA78-43131F19297C\\",\\n \\"Success\\": true,\\n \\"JobId\\": \\"l3m1213ye7l****\\",\\n \\"ProgressSummaryDetails\\": [\\n {\\n \\"Key\\": \\"Table\\",\\n \\"TotalCount\\": 100,\\n \\"State\\": 0\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Query migration table information of a DTS task',
'summary' => 'Queries the number of tables migrated in a Data Transmission Service (DTS) data migration or synchronization task.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:SummaryJobDetail',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'SuspendDtsJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52318',
'abilityTreeNodes' => ['FEATUREdtsQYRBZN'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration, data synchronization, or change tracking task.'."\n"
."\n"
.'> You can call the [DescribeDtsJobs](~~209702~~) operation to query the task ID.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'l3m1213ye7l****', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the data migration, data synchronization, or subscribe instance.', 'type' => 'string', 'required' => false, 'example' => 'dtsl3m1213ye7l****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You can set this parameter to **Reverse** to suspend the reverse synchronization link only if the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (Zero-ETL) node. Valid values:'."\n"
."\n"
.'- **false**: no.'."\n"
.'- **true**: yes.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '01B6F25-21E7-4484-99D5-3EF2625C****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"01B6F25-21E7-4484-99D5-3EF2625C****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Suspend a DTS task',
'summary' => 'Suspends a data migration, data synchronization, or change tracking task.',
'description' => '****.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SuspendDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'SuspendDtsJobs' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '52319',
'abilityTreeNodes' => ['FEATUREdtsQYRBZN'],
],
'parameters' => [
[
'name' => 'DtsJobIds',
'in' => 'query',
'schema' => ['description' => 'The IDs of the migration or synchronization tasks.'."\n"
.'> - Separate multiple task IDs with commas (,).'."\n"
.'- Call [DescribeDtsJobs](~~209702~~) to obtain the DTS task IDs.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'hfi12iv4z7e****', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (Zero-ETL) node. Valid values:'."\n"
."\n"
.'- **false**: No.'."\n"
.'- **true**: Yes.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AD823BD3-1BA6-4117-A536-165CB280****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"AD823BD3-1BA6-4117-A536-165CB280****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Suspend DTS tasks in batches',
'summary' => 'Suspends multiple DTS tasks at a time.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SuspendDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'SuspendMigrationJob' => [
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MigrationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data migration instance. You can call the **DescribeMigrationJobs** operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsj1x11y51g3b****', 'title' => ''],
],
[
'name' => 'ClientToken',
'in' => 'query',
'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. Generate a value from your client to ensure uniqueness across different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter will be discontinued.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C306C198-7807-409D-930A-D6CE6C32****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C306C198-7807-409D-930A-D6CE6C32****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Suspend a data migration task',
'summary' => 'Suspends a data migration task that is in progress.',
'changeSet' => [],
'ramActions' => [],
],
'SuspendSynchronizationJob' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data synchronization instance. You can call the **DescribeSynchronizationJobs** operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsmr1q4mc2152****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You can set this parameter to **Reverse** to pause the reverse synchronization link only if the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter is about to be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C306C198-7807-409D-930A-D6CE6C32****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C306C198-7807-409D-930A-D6CE6C32****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Pause a synchronization task',
'summary' => 'Pauses a data synchronization task that is in the Synchronizing state.',
'description' => '> - When you call this operation, the synchronization task must be in the Synchronizing state.'."\n"
.'- A synchronization task cannot be paused for more than 6 hours. Otherwise, the task cannot be restarted.'."\n"
.'- DTS continues to charge fees for a pay-as-you-go synchronization task even if the task is paused. This is because DTS only pauses writing data to the destination instance but continues to pull logs from the source instance to ensure quick resumption when the task is restarted. Therefore, the task still consumes resources such as bandwidth of the source database.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SuspendSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'SwitchPhysicalDtsJobToCloud' => [
'summary' => 'Performs physical migration of an MSSQL database to Alibaba Cloud.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration or synchronization task. You can call the **DescribeDtsJobs** operation to query the ID.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'l5512es7w15****', 'title' => ''],
],
[
'name' => 'DtsInstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the migration, synchronization, or change tracking instance.', 'type' => 'string', 'required' => false, 'example' => 'dtsl3m1213ye7l****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> - Default value: **Forward**.'."\n"
.'- You can set this parameter to **Reverse** to release the reverse synchronization link only when the topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see the list of supported regions.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '659304E3-D44E-5EFA-BDE3-60015E30403B', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** response parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"659304E3-D44E-5EFA-BDE3-60015E30403B\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Physical migration of MSSQL to the cloud',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SwitchPhysicalDtsJobToCloud',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'SwitchSynchronizationEndpoint' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'SynchronizationJobId',
'in' => 'query',
'schema' => ['description' => 'Instance ID of the data synchronization instance. You can call the DescribeSynchronizationJobs operation to query instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsexjk1alb116****', 'title' => ''],
],
[
'name' => 'SynchronizationDirection',
'in' => 'query',
'schema' => ['description' => 'The synchronization direction. Valid values:'."\n"
.'- **Forward**: forward.'."\n"
.'- **Reverse**: reverse.'."\n"
."\n"
.'> Default value: **Forward**. The value **Reverse** takes effect only when the synchronization topology of the data synchronization instance is two-way synchronization.', 'type' => 'string', 'required' => false, 'example' => 'Forward', 'title' => ''],
],
[
'name' => 'Endpoint.Type',
'in' => 'query',
'schema' => ['description' => '待调整连接信息的实例,取值:'."\n"
."\n"
.'- **Source**:源实例。'."\n"
.'- **Destination**:目标实例。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'Destination', 'title' => ''],
],
[
'name' => 'Endpoint.InstanceType',
'in' => 'query',
'schema' => ['description' => '新数据库所属的实例类型,取值:'."\n"
."\n"
.'- **LocalInstance**:有公网IP的自建数据库;'."\n"
.'- **ECS**:ECS上的自建数据库。'."\n"
.'- **Express**:通过专线接入的自建数据库。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ECS', 'title' => ''],
],
[
'name' => 'Endpoint.InstanceId',
'in' => 'query',
'schema' => ['description' => 'ECS或专有网络的实例ID。'."\n"
.'> - 当**Endpoint.InstanceType**取值为**ECS**时,本参数需传入ECS实例的ID。'."\n"
.'- 当**Endpoint.InstanceType**取值为**Express**时,本参数需传入专有网络ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i-bp11haem1kpkhoup****', 'title' => ''],
],
[
'name' => 'Endpoint.IP',
'in' => 'query',
'schema' => ['description' => '新数据库的IP地址。'."\n"
.'> 当**Endpoint.InstanceType**取值为**Express**时,本参数才可用且必须传入。', 'type' => 'string', 'required' => false, 'example' => '172.15.185.***', 'title' => ''],
],
[
'name' => 'Endpoint.Port',
'in' => 'query',
'schema' => ['description' => '新的数据库服务端口。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '3306', 'title' => ''],
],
[
'name' => 'SourceEndpoint.OwnerID',
'in' => 'query',
'schema' => ['description' => '当源实例与目标实例所属阿里云账号不同时,您需要传入该参数指定源实例的所属阿里云账号的ID。', 'type' => 'string', 'required' => false, 'example' => '14069264****', 'title' => ''],
],
[
'name' => 'SourceEndpoint.Role',
'in' => 'query',
'schema' => ['description' => '当源实例与目标实例所属阿里云账号不同时,需传入该参数,来指定源实例的授权角色,以允许目标实例阿里云账号访问源实例的实例信息。'."\n"
.'> 角色所需的权限及授权方式,请参见[跨阿里云账号数据迁移或同步时如何配置RAM授权](~~48468~~)。', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'AccountId',
'in' => 'query',
'schema' => ['description' => 'The Alibaba Cloud account ID. You do not need to specify this parameter because it will be deprecated.', 'type' => 'string', 'required' => false, 'example' => '12323344****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3232F84C-C961-4811-B014-4EA7A27C****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned when the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'TaskId' => ['description' => 'The task ID. You can call the [DescribeEndpointSwitchStatus](~~135598~~) operation to query the execution status of this task.', 'type' => 'string', 'example' => '11**** ', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned when the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3232F84C-C961-4811-B014-4EA7A27C****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"TaskId\\": \\"11****\\\\t\\",\\n \\"Success\\": \\"true\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Switch synchronization connection information',
'summary' => 'Passes the connection information of the new database to DTS after a primary/secondary switchover. DTS restarts data synchronization from the checkpoint.',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SwitchSynchronizationEndpoint',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'TagResources' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou ', 'title' => ''],
],
[
'name' => 'ResourceType',
'in' => 'query',
'schema' => ['description' => 'The resource type. Set the value to **ALIYUN::DTS::INSTANCE**.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'ALIYUN::DTS::INSTANCE', 'title' => ''],
],
[
'name' => 'ResourceId',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The ID of the data migration, synchronization, or change tracking instance. You can call the [DescribeDtsJobs](~~209702~~) operation to query instance IDs.'."\n"
."\n"
.'> N specifies the sequence number of the instance ID. For example, ResourceId.0 specifies the first instance ID, and ResourceId.1 specifies the second instance ID.',
'type' => 'array',
'items' => ['description' => 'The ID of the data migration, synchronization, or change tracking instance. You can call the [DescribeDtsJobs](~~209702~~) operation to query instance IDs.'."\n"
."\n"
.'> N specifies the sequence number of the instance ID. For example, ResourceId.0 specifies the first instance ID, and ResourceId.1 specifies the second instance ID.', 'type' => 'string', 'required' => false, 'example' => 'dtsntk10k6r12v****', 'title' => ''],
'required' => true,
'example' => 'dtsntk10k6r12v****',
'maxItems' => 51,
'title' => '',
],
],
[
'name' => 'Tag',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The list of tags (key-value pairs) to bind.',
'type' => 'array',
'items' => [
'description' => 'The list of tags (key-value pairs) to bind.',
'type' => 'object',
'properties' => [
'Key' => ['description' => 'The key of the tag.'."\n"
.'> - N specifies the sequence number of the tag key. For example, Tag.0.Key specifies the key of the first tag, and Tag.1.Key specifies the key of the second tag.'."\n"
.'- Empty strings are not allowed.', 'type' => 'string', 'required' => true, 'example' => 'testkey1', 'title' => ''],
'Value' => ['description' => 'The value of the tag.'."\n"
.'> - N specifies the sequence number of the tag value. For example, Tag.0.Value specifies the value of the first tag, and Tag.1.Value specifies the value of the second tag.'."\n"
.'- Empty strings are allowed.', 'type' => 'string', 'required' => true, 'example' => 'testvalue1', 'title' => ''],
],
'required' => false,
'title' => '',
'example' => '',
],
'required' => true,
'maxItems' => 21,
'title' => '',
'example' => '',
],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '755D7B84-6813-42B0-BC9D-2699CFEA****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
419 => [
['errorCode' => 'QuotaExceed.TagsPerResource', 'errorMessage' => 'The maximum number of tags for each resource is exceeded.', 'description' => ''],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"755D7B84-6813-42B0-BC9D-2699CFEA****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Create tags',
'summary' => 'Binds tags to one or more data migration, synchronization, and change tracking instances by calling the TagResources operation.',
'description' => 'If you have a large number of instances, you can create multiple tags and attach different tags to instances for categorization. Then, you can filter instances by tag.'."\n"
."\n"
.'- A tag consists of a key-value pair. Tag keys must be unique within the same Alibaba Cloud account and region. Tag values do not have this restriction.'."\n"
.'- If the specified tag does not exist, the tag is automatically created and attached to the destination instance.'."\n"
.'- If the instance already has a tag with the same key, the existing tag is overwritten.'."\n"
.'- You can attach up to 20 tags to each instance.'."\n"
.'- You can invoke the operation to attach tags to up to 50 instances at a time.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:TagResources',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'TransferInstanceClass' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREdtsJ32CAF'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'OrderType',
'in' => 'query',
'schema' => ['description' => 'Set this parameter to **UPGRADE**.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'UPGRADE', 'title' => ''],
],
[
'name' => 'InstanceClass',
'in' => 'query',
'schema' => ['description' => 'The instance specifications after the upgrade. You can call [DescribeDtsJobDetail](~~208925~~) to query the instance specifications before the upgrade.'."\n"
."\n"
.'- Specifications supported by data migration instances: **xxlarge**, **xlarge**, **large**, **medium**, and **small**.'."\n"
.'- Specifications supported by data synchronization instances: **large**, **medium**, **small**, and **micro**.'."\n"
."\n"
.'> For more information about the description and performance test results of each specification, see [Specifications of data migration instances](~~26606~~) and [Specifications of data synchronization instances](~~26605~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'large', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The ID of the region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data migration or data synchronization task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'r4yr723m199****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'DatabaseCount',
'in' => 'query',
'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'EndTime' => ['description' => 'The time when the instance expires.'."\n"
."\n"
.'> This parameter is returned only when ChargeType is set to **PREPAY**.', 'type' => 'string', 'example' => '2021-08-04T16:00:00.000+00:00', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '716DB03E-2D0B-4DC3-BC4C-F7A9EE21****', 'title' => ''],
'DtsJobId' => ['description' => 'The ID of the data migration or data synchronization task.', 'type' => 'string', 'example' => 'r4yr723m199****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ChargeType' => ['description' => 'The billing method. Valid values:'."\n"
.'- **POSTPAY**: pay-as-you-go.'."\n"
.'- **PREPAY**: subscription.', 'type' => 'string', 'example' => 'POSTPAY', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message, which is used to replace the %**s** variable in the **ErrMessage** parameter.'."\n"
."\n"
.'> If **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the value of the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'dtsr4yr723m199****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => 'Upgrade or downgrade DTS instance specifications',
'summary' => 'Upgrades or downgrades the specifications of a DTS instance.',
'description' => '> - Downgrading DTS instance specifications is no longer supported.'."\n"
.'- If the source of a DTS instance is Redis 6.0 and incremental data updates exist, do not perform an upgrade. Otherwise, the DTS instance may fail and cannot be recovered. You must reconfigure the instance after a failure.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:TransferInstanceClass',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"EndTime\\": \\"2021-08-04T16:00:00.000+00:00\\",\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"716DB03E-2D0B-4DC3-BC4C-F7A9EE21****\\",\\n \\"DtsJobId\\": \\"r4yr723m199****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ChargeType\\": \\"POSTPAY\\",\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"InstanceId\\": \\"dtsr4yr723m199****\\"\\n}","type":"json"}]',
],
'TransferPayType' => [
'summary' => 'Transforms the payment method of a DTS instance.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '52325',
'abilityTreeNodes' => ['FEATUREdtsJ32CAF'],
],
'parameters' => [
[
'name' => 'DtsJobId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data synchronization or change tracking task. You can call [DescribeDtsJobs](~~209702~~) to query the task ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'o4nh3g7jg56****', 'title' => ''],
],
[
'name' => 'ChargeType',
'in' => 'query',
'schema' => ['description' => 'The billing method after conversion. Valid values:'."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.'."\n"
.''."\n"
.'- **sync_serverless**: pay-as-you-go Serverless..', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'PostPaid', 'title' => ''],
],
[
'name' => 'Period',
'in' => 'query',
'schema' => ['description' => 'The billing method of the subscription instance. Valid values:'."\n"
.'- **Year**: annual subscription.'."\n"
.'- **Month**: monthly subscription.'."\n"
."\n"
.'> This parameter is valid and required only when ChargeType is set to **PrePaid** (subscription).', 'type' => 'string', 'required' => false, 'example' => 'Year', 'title' => ''],
],
[
'name' => 'BuyCount',
'in' => 'query',
'schema' => ['description' => 'The subscription duration of the instance.'."\n"
.'- If Period is set to **Year**, valid values are **1** to **5**.'."\n"
.'- If Period is set to **Month**, valid values are **1** to **60**.'."\n"
."\n"
.'> This parameter is valid and required only when ChargeType is set to **Prepaid**.', 'type' => 'string', 'required' => false, 'example' => '5', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID of the instance. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'MinDu',
'in' => 'query',
'schema' => ['description' => 'The minimum number of DTS Units (DUs) for the Serverless instance. Valid values: 1, 2, 4, 8, and 16.'."\n"
."\n"
.''."\n"
.'> This feature is currently not supported. Do not specify this parameter.'."\n"
.''."\n"
.'> This parameter is valid and required only when ChargeType is set to **sync_serverless**..', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'MaxDu',
'in' => 'query',
'schema' => ['description' => 'The maximum number of DUs for the Serverless instance. Valid values: 2, 4, 8, and 16.'."\n"
.''."\n"
.'> This feature is currently not supported. Do not specify this parameter.'."\n"
.''."\n"
.'> This parameter is valid and required only when ChargeType is set to **sync_serverless**..', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '16', 'title' => ''],
],
[
'name' => 'AutoPay',
'in' => 'query',
'schema' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
[
'name' => 'InstanceClass',
'in' => 'query',
'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'EndTime' => ['description' => 'The time when the subscription instance expires, in UNIX timestamp format.'."\n"
.'> - If the instance is converted to pay-as-you-go, this value is empty.'."\n"
.'- You can use a search engine to find a UNIX timestamp conversion tool.', 'type' => 'string', 'example' => '1614916318', 'title' => ''],
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '601B6F25-21E7-4484-99D5-3EF2625C****', 'title' => ''],
'DtsJobId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'o4nh3g7jg56****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ChargeType' => ['description' => 'The billing method after conversion. Valid values:'."\n"
.'- **PrePaid**: subscription.'."\n"
.'- **PostPaid**: pay-as-you-go.', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'Code' => ['description' => 'The error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '200', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** parameter.'."\n"
.'> For example, if **ErrMessage** returns **The Value of Input Parameter %s is not valid** and **DynamicMessage** returns **DtsJobId**, the request parameter **DtsJobId** is invalid.', 'type' => 'string', 'example' => 'DtsJobId', 'title' => ''],
'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'dtso4nh3g7jg56****', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"EndTime\\": \\"1614916318\\",\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"601B6F25-21E7-4484-99D5-3EF2625C****\\",\\n \\"DtsJobId\\": \\"o4nh3g7jg56****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ChargeType\\": \\"PostPaid\\",\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"Code\\": \\"200\\",\\n \\"DynamicMessage\\": \\"DtsJobId\\",\\n \\"InstanceId\\": \\"dtso4nh3g7jg56****\\"\\n}","type":"json"}]',
'title' => 'Transform payment method',
'description' => 'Before you call this operation, make sure that you fully understand the billing methods and [pricing](https://www.aliyun.com/price/product#/dts/detail) of Data Transmission Service (DTS).'."\n"
.''."\n"
.'Before you call this operation, make sure that you fully understand the billing methods and [pricing](https://www.alibabacloud.com/zh/product/data-transmission-service/pricing) of Data Transmission Service (DTS).'."\n"
.''."\n"
."\n"
.'- To avoid resource waste, confirm the payment method transformation before you perform the operation.'."\n"
.'- Data migration instances support only the pay-as-you-go billing method. No transformation is required.'."\n"
.''."\n"
.'- Serverless instances do not support payment method transformation.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:TransferPayType',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
],
'UntagResources' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region ID. Specify this parameter to indicate the region where the instance resides. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceType',
'in' => 'query',
'schema' => ['description' => 'The resource type. The only valid value is **ALIYUN::DTS::INSTANCE**.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'ALIYUN::DTS::INSTANCE', 'title' => ''],
],
[
'name' => 'All',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to unbind instance tags from the instance. Valid values:'."\n"
."\n"
.'- **true**: Unbinds instance tags from the instance.'."\n"
.'- **false**: Does not unbind instance tags. You must specify the tags to unbind in the **TagKey.N** parameter.'."\n"
."\n"
.'> - You must specify at least one of **TagKey.N** and this parameter.'."\n"
.'- If you specify both **TagKey.N** and this parameter, this parameter does not take effect.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'ResourceId',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The ID of the data migration, synchronization, or change tracking instance. You can call the [DescribeDtsJobs](~~209702~~) operation to query instance IDs.'."\n"
.'> N specifies the sequence number of the instance ID. For example, ResourceId.0 specifies the first instance ID, and ResourceId.1 specifies the second instance ID. You can unbind tags from 1 to 50 instances at a time.',
'type' => 'array',
'items' => ['description' => 'The ID of the data migration, synchronization, or change tracking instance. You can call the [DescribeDtsJobs](~~209702~~) operation to query instance IDs.'."\n"
.'> N specifies the sequence number of the instance ID. For example, ResourceId.0 specifies the first instance ID, and ResourceId.1 specifies the second instance ID. You can unbind tags from 1 to 50 instances at a time.', 'type' => 'string', 'required' => false, 'example' => 'dtsntk10k6r12v****', 'title' => ''],
'required' => true,
'example' => 'dtsntk10k6r12v****',
'maxItems' => 51,
'title' => '',
],
],
[
'name' => 'TagKey',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => 'The tag key.'."\n"
.'> - N specifies the sequence number of the tag key. For example, TagKey.0 specifies the first tag key, and TagKey.1 specifies the second tag key. You can unbind 1 to 20 tag keys at a time.'."\n"
.'- Empty strings are not allowed.'."\n"
.'- You must specify at least one of **All** and this parameter.'."\n"
.'- If you specify both **All** and this parameter, only this parameter takes effect.',
'type' => 'array',
'items' => ['description' => 'The tag key.'."\n"
.'> - N specifies the sequence number of the tag key. For example, TagKey.0 specifies the first tag key, and TagKey.1 specifies the second tag key. You can unbind 1 to 20 tag keys at a time.'."\n"
.'- Empty strings are not allowed.'."\n"
.'- You must specify at least one of **All** and this parameter.'."\n"
.'- If you specify both **All** and this parameter, only this parameter takes effect.', 'type' => 'string', 'required' => false, 'example' => 'testkey1', 'title' => ''],
'required' => false,
'example' => 'testkey1',
'maxItems' => 21,
'title' => '',
],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'ED3A8FE0-EEFA-4416-BC42-34D61A52****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call fails.', 'type' => 'string', 'example' => 'The request processing has failed due to some unknown error.', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ED3A8FE0-EEFA-4416-BC42-34D61A52****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The request processing has failed due to some unknown error.\\"\\n}","type":"json"}]',
'title' => 'Unbind tags',
'summary' => 'Unbinds tags from data migration, synchronization, and change tracking instances.',
'description' => '> After a tag is unbound from an instance, the tag is automatically deleted if it is not bound to any other instance.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:UntagResources',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'UpgradeTwoWay' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID. You can call [DescribeDtsJobs](~~209702~~) to query the instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dtsh77p49x4k28****', 'title' => ''],
],
[
'name' => 'InstanceClass',
'in' => 'query',
'schema' => ['description' => 'The instance specification for two-way synchronization. Valid values: **large**, **medium**, **micro**, and **small**.'."\n"
.'> For more information about instance specifications, see [Specifications of data synchronization instances](~~26605~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'large', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region in which the DTS instance resides. For more information, see [List of supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxc****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '2D3B4615-923F-49AA-AF21-6D8E3967****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message. This parameter is used to replace the **%s** variable in the **ErrMessage** parameter.'."\n"
.'> For example, if the value of **ErrMessage** is **The Value of Input Parameter %s is not valid** and the value of **DynamicMessage** is **InstanceId**, the specified value of the request parameter **InstanceId** is invalid.', 'type' => 'string', 'example' => 'InstanceId', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"2D3B4615-923F-49AA-AF21-6D8E3967****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"DynamicMessage\\": \\"InstanceId\\",\\n \\"DynamicCode\\": \\"403\\"\\n}","type":"json"}]',
'title' => 'Upgrade one-way synchronization to two-way synchronization',
'summary' => 'Upgrades the synchronization topology of a DTS data synchronization instance from one-way synchronization to two-way synchronization.',
'description' => 'Before you use this operation, make sure that you fully understand the billing methods and [pricing](https://www.aliyun.com/price/product#/dts/detail) of ApsaraDB DTS.'."\n"
.'Before you use this operation, make sure that you fully understand the billing methods and [pricing](https://www.alibabacloud.com/zh/product/data-transmission-service/pricing) of ApsaraDB DTS.'."\n"
.'Before you begin:'."\n"
.'- The database type of both the source instance and the destination instance of the data synchronization node must be **MySQL**.'."\n"
.'- The synchronization topology of the data synchronization node must be **one-way synchronization**.'."\n"
.'- The data synchronization node must be in the **Synchronizing** state.'."\n"
.'- During the upgrade, data synchronization may experience a latency of approximately 5 seconds. Perform this operation during off-peak hours.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:UpgradeTwoWay',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
'WhiteIpList' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '52328',
'abilityTreeNodes' => ['FEATUREdtsJGBLR6'],
],
'parameters' => [
[
'name' => 'Type',
'in' => 'query',
'schema' => ['description' => 'The connection method of the self-managed database or third-party ApsaraDB database. Valid values:'."\n"
.'- **internet**: connected over the Internet.'."\n"
.'- **vpc**: connected over Express Connect, VPN Gateway, or Smart Access Gateway.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'vpc', 'title' => ''],
],
[
'name' => 'Region',
'in' => 'query',
'schema' => ['description' => 'The region ID of the source instance. For details, see [Supported regions](~~141033~~).'."\n"
.'> If the source instance is a self-managed database with a public IP address or a third-party ApsaraDB database, you can set this parameter to **ap-southeast-1** or the area ID that is geographically closest to the database.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'DestinationRegion',
'in' => 'query',
'schema' => ['description' => 'The region ID of the destination instance. For details, see [Supported regions](~~141033~~).'."\n"
."\n"
.'> - If the destination instance is a self-managed database with a public IP address or a third-party ApsaraDB database, you can set this parameter to **ap-southeast-1** or the area ID that is geographically closest to the database.'."\n"
.'- This parameter is required when the DTS task is a data migration or data synchronization task.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
'schema' => ['description' => 'The region to which the DTS instance belongs. For more information, see [Supported regions](~~141033~~).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'ZeroEtlJob',
'in' => 'query',
'schema' => ['description' => 'Specifies whether the node is a seamless integration (Zero-ETL) node. Valid values:'."\n"
.'- **true**: The node is a seamless integration (Zero-ETL) node.'."\n"
.'- **false**: The node is not a seamless integration (Zero-ETL) node.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'SrcVpcId',
'in' => 'query',
'schema' => ['description' => 'The ID of the source VPC.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcPrimaryVswId',
'in' => 'query',
'schema' => ['description' => 'The primary vSwitch of the source for VPC NAT.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcSecondaryVswId',
'in' => 'query',
'schema' => ['description' => 'The secondary vSwitch of the source for VPC NAT.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestVpcId',
'in' => 'query',
'schema' => ['description' => 'The ID of the destination VPC.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestPrimaryVswId',
'in' => 'query',
'schema' => ['description' => 'The primary vSwitch of the destination for VPC NAT.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'DestSecondaryVswId',
'in' => 'query',
'schema' => ['description' => 'The secondary vSwitch of the destination for VPC NAT.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'SrcRoleName',
'in' => 'query',
'schema' => ['description' => 'The name of the source role.', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts', 'title' => ''],
],
[
'name' => 'SrcAliyunUid',
'in' => 'query',
'schema' => ['description' => 'The UID of the source Alibaba Cloud account.', 'type' => 'string', 'required' => false, 'example' => '1971721963139419', 'title' => ''],
],
[
'name' => 'DestRoleName',
'in' => 'query',
'schema' => ['description' => 'The name of the destination role.', 'type' => 'string', 'required' => false, 'example' => 'ram-for-dts-sq', 'title' => ''],
],
[
'name' => 'DestAliyunUid',
'in' => 'query',
'schema' => ['description' => 'The UID of the destination Alibaba Cloud account.', 'type' => 'string', 'required' => false, 'example' => '****', 'title' => ''],
],
[
'name' => 'ResourceGroupId',
'in' => 'query',
'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek26mat2ldb4oy', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AD823BD3-1BA6-4117-A536-165CB280****', 'title' => ''],
'ErrCode' => ['description' => 'The error code returned if the call failed.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''],
'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
.'- **true**: The request was successful.'."\n"
.'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'ErrMessage' => ['description' => 'The error message returned if the call failed.', 'type' => 'string', 'example' => 'The Value of Input Parameter %s is not valid.', 'title' => ''],
'IpList' => ['description' => 'The IP whitelist. Multiple IP addresses are separated by commas (,).', 'type' => 'string', 'example' => '10.151.12.0/24,47.102.181.0/24,47.101.109.0/24,120.55.129.0/24,11.115.103.0/24,47.102.234.0/24', 'title' => ''],
'DynamicMessage' => ['description' => 'The dynamic error message used to replace the **%s** variable in the **ErrMessage** parameter.', 'type' => 'string', 'example' => 'Type', 'title' => ''],
'DynamicCode' => ['description' => 'The dynamic error code. This parameter will be deprecated.', 'type' => 'string', 'example' => '403', 'title' => ''],
'SrcIpList' => ['description' => 'The IP whitelist of the source adapted for VPC NAT.', 'type' => 'string', 'example' => '127.0.0.1', 'title' => ''],
'DestIpList' => ['description' => 'The IP whitelist of the destination adapted for VPC NAT.', 'type' => 'string', 'example' => '127.0.0.1', 'title' => ''],
],
'description' => '',
'title' => '',
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
],
403 => [
['errorCode' => 'InvalidSecurityToken.Expired', 'errorMessage' => 'Specified SecurityToken is expired.', 'description' => 'The signature expired. Use a new signature.'],
],
500 => [
['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
],
],
'eventInfo' => [
'enable' => false,
'eventNames' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"RequestId\\": \\"AD823BD3-1BA6-4117-A536-165CB280****\\",\\n \\"ErrCode\\": \\"InternalError\\",\\n \\"Success\\": true,\\n \\"ErrMessage\\": \\"The Value of Input Parameter %s is not valid.\\",\\n \\"IpList\\": \\"10.151.12.0/24,47.102.181.0/24,47.101.109.0/24,120.55.129.0/24,11.115.103.0/24,47.102.234.0/24\\",\\n \\"DynamicMessage\\": \\"Type\\",\\n \\"DynamicCode\\": \\"403\\",\\n \\"SrcIpList\\": \\"127.0.0.1\\",\\n \\"DestIpList\\": \\"127.0.0.1\\"\\n}","type":"json"}]',
'title' => 'Query IP addresses of DTS servers',
'summary' => 'Queries the IP addresses of DTS servers by calling the WhiteIpList operation.',
'description' => 'If the **source or destination instance** is a **self-managed database** or a **third-party ApsaraDB database**, you need to invoke this operation to query the IP addresses of DTS servers, and then add the returned IP addresses to the security settings (typically the firewall) of the source or destination instance. For more information about how to add IP addresses, see [Add the CIDR blocks of DTS servers to the whitelist of a self-managed database for migration, synchronization, or subscribe](~~84900~~).'."\n"
.'If the **source or destination instance** is a **self-managed database** or a **third-party ApsaraDB database**, you need to invoke this operation to query the IP addresses of DTS servers, and then add the returned IP addresses to the security settings (typically the firewall) of the source or destination instance. For more information about how to add IP addresses, see [Add the CIDR blocks of DTS servers to the whitelist of a self-managed database](~~176627~~).'."\n"
."\n"
.'> If the **source or destination database** is an **Alibaba Cloud database instance** (such as ApsaraDB RDS or ApsaraDB for MongoDB) or a **self-managed database hosted on ECS**, the system automatically adds the IP addresses of DTS servers to the security settings of the instance when you click **Authorize Whitelist and Proceed to Next Step** during the configuration of the source or destination instance. You do not need to manually add the IP addresses.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:WhiteIpList',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
],
],
'endpoints' => [
['regionId' => 'cn-wulanchabu', 'regionName' => 'China (Ulanqab)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.aliyuncs.com', 'endpoint' => 'dts.aliyuncs.com', 'vpc' => 'dts-vpc.cn-wulanchabu.aliyuncs.com'],
['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-beijing.aliyuncs.com', 'endpoint' => 'dts.cn-beijing.aliyuncs.com', 'vpc' => 'dts-vpc.cn-beijing.aliyuncs.com'],
['regionId' => 'cn-qingdao', 'regionName' => 'China (Qingdao)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-qingdao.aliyuncs.com', 'endpoint' => 'dts.cn-qingdao.aliyuncs.com', 'vpc' => 'dts-vpc.cn-qingdao.aliyuncs.com'],
['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-shanghai.aliyuncs.com', 'endpoint' => 'dts.cn-shanghai.aliyuncs.com', 'vpc' => 'dts-vpc.cn-shanghai.aliyuncs.com'],
['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-hongkong.aliyuncs.com', 'endpoint' => 'dts.cn-hongkong.aliyuncs.com', 'vpc' => 'dts-vpc.cn-hongkong.aliyuncs.com'],
['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'dts.cn-zhangjiakou.aliyuncs.com', 'vpc' => 'dts-vpc.cn-zhangjiakou.aliyuncs.com'],
['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-shenzhen.aliyuncs.com', 'endpoint' => 'dts.cn-shenzhen.aliyuncs.com', 'vpc' => 'dts-vpc.cn-shenzhen.aliyuncs.com'],
['regionId' => 'ap-northeast-1', 'regionName' => 'Japan (Tokyo)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.ap-northeast-1.aliyuncs.com', 'endpoint' => 'dts.ap-northeast-1.aliyuncs.com', 'vpc' => 'dts-vpc.ap-northeast-1.aliyuncs.com'],
['regionId' => 'cn-chengdu', 'regionName' => 'China (Chengdu)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-chengdu.aliyuncs.com', 'endpoint' => 'dts.cn-chengdu.aliyuncs.com', 'vpc' => 'dts-vpc.cn-chengdu.aliyuncs.com'],
['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.ap-southeast-1.aliyuncs.com', 'endpoint' => 'dts.ap-southeast-1.aliyuncs.com', 'vpc' => 'dts-vpc.ap-southeast-1.aliyuncs.com'],
['regionId' => 'ap-southeast-2', 'regionName' => 'Australia (Sydney) Closed', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.ap-southeast-2.aliyuncs.com', 'endpoint' => 'dts.ap-southeast-2.aliyuncs.com', 'vpc' => 'dts-vpc.ap-southeast-2.aliyuncs.com'],
['regionId' => 'ap-southeast-3', 'regionName' => 'Malaysia (Kuala Lumpur)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.ap-southeast-3.aliyuncs.com', 'endpoint' => 'dts.ap-southeast-3.aliyuncs.com', 'vpc' => 'dts-vpc.ap-southeast-3.aliyuncs.com'],
['regionId' => 'cn-huhehaote', 'regionName' => 'China (Hohhot)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-huhehaote.aliyuncs.com', 'endpoint' => 'dts.cn-huhehaote.aliyuncs.com', 'vpc' => 'dts-vpc.cn-huhehaote.aliyuncs.com'],
['regionId' => 'ap-southeast-5', 'regionName' => 'Indonesia (Jakarta)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.ap-southeast-5.aliyuncs.com', 'endpoint' => 'dts.ap-southeast-5.aliyuncs.com', 'vpc' => 'dts-vpc.ap-southeast-5.aliyuncs.com'],
['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dts.cn-hangzhou.aliyuncs.com', 'endpoint' => 'dts.cn-hangzhou.aliyuncs.com', 'vpc' => 'dts-vpc.cn-hangzhou.aliyuncs.com'],
['regionId' => 'us-east-1', 'regionName' => 'US (Virginia)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'dts.us-east-1.aliyuncs.com', 'endpoint' => 'dts.us-east-1.aliyuncs.com', 'vpc' => 'dts-vpc.us-east-1.aliyuncs.com'],
['regionId' => 'eu-west-1', 'regionName' => 'UK (London)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'dts.eu-west-1.aliyuncs.com', 'endpoint' => 'dts.eu-west-1.aliyuncs.com', 'vpc' => 'dts-vpc.eu-west-1.aliyuncs.com'],
['regionId' => 'us-west-1', 'regionName' => 'US (Silicon Valley)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'dts.us-west-1.aliyuncs.com', 'endpoint' => 'dts.us-west-1.aliyuncs.com', 'vpc' => 'dts-vpc.us-west-1.aliyuncs.com'],
['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'dts.eu-central-1.aliyuncs.com', 'endpoint' => 'dts.eu-central-1.aliyuncs.com', 'vpc' => 'dts-vpc.eu-central-1.aliyuncs.com'],
['regionId' => 'me-east-1', 'regionName' => 'UAE (Dubai)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'dts.me-east-1.aliyuncs.com', 'endpoint' => 'dts.me-east-1.aliyuncs.com', 'vpc' => 'dts-vpc.me-east-1.aliyuncs.com'],
['regionId' => 'ap-south-1', 'regionName' => 'India (Mumbai) Closed', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'dts.ap-south-1.aliyuncs.com', 'endpoint' => 'dts.ap-south-1.aliyuncs.com', 'vpc' => 'dts-vpc.ap-south-1.aliyuncs.com'],
['regionId' => 'cn-shenzhen-finance-1', 'regionName' => 'China South 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dts.cn-hangzhou.aliyuncs.com', 'endpoint' => 'dts.cn-hangzhou.aliyuncs.com', 'vpc' => 'dts-vpc.cn-shenzhen-finance-1.aliyuncs.com'],
['regionId' => 'cn-beijing-finance-1', 'regionName' => 'China North 2 Finance (Preview)', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dts.cn-beijing-finance-1.aliyuncs.com', 'endpoint' => 'dts.cn-beijing-finance-1.aliyuncs.com', 'vpc' => 'dts-vpc.cn-beijing-finance-1.aliyuncs.com'],
['regionId' => 'cn-shanghai-finance-1', 'regionName' => 'China East 2 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dts.cn-hangzhou.aliyuncs.com', 'endpoint' => 'dts.cn-hangzhou.aliyuncs.com', 'vpc' => 'dts-vpc.cn-shanghai-finance-1.aliyuncs.com'],
['regionId' => 'cn-north-2-gov-1', 'regionName' => 'Beijing Government Cloud', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dts.aliyuncs.com', 'endpoint' => 'dts.aliyuncs.com', 'vpc' => 'dts-vpc.cn-north-2-gov-1.aliyuncs.com'],
['regionId' => 'cn-hangzhou-finance', 'regionName' => 'China East 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dts.cn-hangzhou.aliyuncs.com', 'endpoint' => 'dts.cn-hangzhou.aliyuncs.com', 'vpc' => ''],
],
'errorCodes' => [
['code' => 'Abnormal.RamCheckUserRole', 'message' => 'The user does not have the RAM role of %s.', 'http_code' => 403, 'description' => 'The RAM role owned by the Alibaba Cloud account to which the destination instance belongs is not authorized. For more information about how to grant permissions to the RAM role, see Configure RAM authorization for cross-account data migration and synchronization.'],
['code' => 'Abnormal.RamCheckUserRole', 'message' => 'User do not have the ram role of %s.', 'http_code' => 403, 'description' => 'You have not granted permissions to the default role AliyunDTSDefaultrole. If your RAM user has read and write permissions on RAM, you can grant permissions to the role in the RAM console. Otherwise, you must log on to the RAM console with your Alibaba Cloud account to grant permissions to the role, and then refresh this page.'],
['code' => 'AccountExists', 'message' => 'The account of instance %s already exists.', 'http_code' => 403, 'description' => 'The specified instance account already exists.'],
['code' => 'AccountExists', 'message' => 'The instance %s account already exists', 'http_code' => 403, 'description' => 'Failed to create the account for the %s instance because the account already exists.'],
['code' => 'ADB30GetInstanceList.InvokeFail', 'message' => 'InvalidDBClusterId.NotFound : The DBClusterId provided does not exist in our records. DbInstanceId null.', 'http_code' => 403, 'description' => 'Failed to call ADB interface'],
['code' => 'ADB30ModifyWhiteName.InvokeFail', 'message' => 'ACS. Server Error : An error occurred while processing your request by ADB Cloud Service.', 'http_code' => 403, 'description' => 'Failed to call ADB to modify whitelist interface'],
['code' => 'AssumeRoleFail', 'message' => 'You are not authorized to do this action. You should be authorized by RAM.', 'http_code' => 403, 'description' => 'The sub-account or role does not have the corresponding API permission.'],
['code' => 'CheckJobFailed.ServerUnAvailable', 'message' => 'Unable to check whether the node can connect to the database because the node service is unavailable.', 'http_code' => 403, 'description' => 'Failed to connect to specific DTS node servers. Try again later. If the error persists, contact technical support.'],
['code' => 'CheckStatus.InvalidInitStatus', 'message' => 'Task has not been configured, please configure job first', 'http_code' => 403, 'description' => 'The task is not configured. Configure the task first.'],
['code' => 'CreateAccountFail', 'message' => 'The instance %s failed to create an account.', 'http_code' => 403, 'description' => 'The instance account has failed to be created.'],
['code' => 'CreateAccountFail', 'message' => 'The instance %s create account fail', 'http_code' => 403, 'description' => 'Failed to create the account for the %s instance.'],
['code' => 'CreateJobFail', 'message' => 'create job fail', 'http_code' => 403, 'description' => 'Failed to create the data synchronization subtask. To obtain the specific error code, contact the technical support personnel.'],
['code' => 'DbProductInvokeFail', 'message' => 'Failed to call other cloud product API to perform %s operation.', 'http_code' => 403, 'description' => 'Failed to perform the %s operation that involves calling other Alibaba Cloud services.'],
['code' => 'DbTypeNotSupport.OnlyReadRDS', 'message' => 'Synchronization is not currently supported due to latency issues with read-only DRDS instances.', 'http_code' => 403, 'description' => 'DTS does not support data synchronization for read-only sharded databases of PolarDB-X 1.0 instances.'],
['code' => 'DbTypeNotSupport.PolarDBRDS', 'message' => 'The current rds instance is of type PolarDB, which is not supported for the time being. Only rds instances under drds are supported.', 'http_code' => 403, 'description' => 'DTS does not support data synchronization for PolarDB-X instances that have data distributed to PolarDB for MySQL clusters.'],
['code' => 'DescribeColumns.TimeOut', 'message' => 'Interface timed out, please try again or use OpenApi to configure the task.', 'http_code' => 403, 'description' => 'The request to obtain column information timed out. Try again or call the related API operation to obtain the information.'],
['code' => 'DescribeStruct.TimeOut', 'message' => 'Interface timed out, please try again or use OpenApi to configure the task.', 'http_code' => 403, 'description' => 'The request to obtain database schema information timed out. Try again or call the related API operation to obtain the information.'],
['code' => 'DmsInvokeFail', 'message' => 'dms invoke fail', 'http_code' => 403, 'description' => 'Failed to call the DMS operation. Please try again.'],
['code' => 'DRDSErrExecuteOnMySQL.ClientVersionTooLow', 'message' => 'drds invoke fail, cause: client version too low.', 'http_code' => 403, 'description' => 'The PolarDB-X 1.0 client version does not meet the related requirements. Upgrade the version of the PolarDB-X 1.0 client and try again.'],
['code' => 'DRDSInvokeFail', 'message' => 'drds invoke fail.', 'http_code' => 403, 'description' => 'Failed to call DRDS interface'],
['code' => 'DropAccountFail', 'message' => 'The instance %s drop account fail', 'http_code' => 403, 'description' => 'Failed to delete the account for the %s instance.'],
['code' => 'DTS.Msg.AccountPermissionDenied', 'message' => 'The database account does not have permission to access privilege metadata', 'http_code' => 403, 'description' => 'The specified database account does not have permissions to access the metadata.'],
['code' => 'DTS.Msg.AdminAccountExists', 'message' => 'There is a duplicate high-privilege account under the current instance %s. Please check whether there are other running DTS tasks in the current instance. After confirming that is does not exist, please concat technical support to delete the account.', 'http_code' => 403, 'description' => 'DTS tasks have been configured for the current RDS instance'],
['code' => 'DTS.Msg.CallCloudProductApiError', 'message' => 'Call Cloud Product OpenAPI Error, CloudProduct:rds, ErrCode:SDK.ServerUnreachable.', 'http_code' => 403, 'description' => 'Failed to call other product interfaces'],
['code' => 'DTS.Msg.CheckJobFailed.ServerUnAvailable', 'message' => 'Unable to check whether the node can connect to the database because the node service is unavailable.', 'http_code' => 403, 'description' => 'Failed to connect to specific DTS node servers. Try again later. If the error persists, contact technical support.'],
['code' => 'DTS.Msg.CheckStatus.InvalidInitStatus', 'message' => 'Task has not been configured, please configure job first', 'http_code' => 403, 'description' => 'The task is not configured. Configure the task first.'],
['code' => 'DTS.Msg.CreateSubDistriubtedJobError', 'message' => 'create subDistributedJob error, cause The request processing has failed due to some unknown error.', 'http_code' => 403, 'description' => 'Whether the current task is in the process of modifying the synchronization object, you need to wait for the modification of the synchronization object to end.'],
['code' => 'DTS.Msg.DbInstanceNotExists', 'message' => 'The database instance is not exists.', 'http_code' => 403, 'description' => 'Current database instance not found'],
['code' => 'DTS.Msg.DbListIsEmpty', 'message' => 'If you only migrate procedure, view or function, pls choose migrate job and do not check full data and incremental migration.', 'http_code' => 403, 'description' => 'The currently selected synchronization object is empty'],
['code' => 'DTS.Msg.DbTypeNotSupport.OnlyReadRDS', 'message' => 'Synchronization is not currently supported due to latency issues with read-only DRDS instances.', 'http_code' => 403, 'description' => 'DTS does not support data synchronization for read-only sharded databases of PolarDB-X 1.0 instances.'],
['code' => 'DTS.Msg.DbTypeNotSupport.PolarDBRDS', 'message' => 'The current rds instance is of type PolarDB, which is not supported for the time being. Only rds instances under drds are supported.', 'http_code' => 403, 'description' => 'DTS does not support data synchronization for PolarDB-X instances that have data distributed to PolarDB for MySQL clusters.'],
['code' => 'DTS.Msg.DescribeColumns.TimeOut', 'message' => 'Interface timed out, please try again or use OpenApi to configure the task.', 'http_code' => 403, 'description' => 'The request to obtain column information timed out. Try again or call the related API operation to obtain the information.'],
['code' => 'DTS.Msg.DescribeStruct.TimeOut', 'message' => 'Interface timed out, please try again or use OpenApi to configure the task.', 'http_code' => 403, 'description' => 'The request to obtain database schema information timed out. Try again or call the related API operation to obtain the information.'],
['code' => 'DTS.Msg.DistributedDatabaseNodesError', 'message' => 'distributed database nodes error, expect nodes number is 1, actual 2.', 'http_code' => 403, 'description' => 'Error getting distributed database node'],
['code' => 'DTS.Msg.DRDSErrExecuteOnMySQL.ClientVersionTooLow', 'message' => 'drds invoke fail, cause: client version too low.', 'http_code' => 403, 'description' => 'The PolarDB-X 1.0 client version does not meet the related requirements. Upgrade the version of the PolarDB-X 1.0 client and try again.'],
['code' => 'DTS.Msg.FileExistValidFailError', 'message' => 'The file has not been generated, please try again later.', 'http_code' => 403, 'description' => 'The file has not been generated. Please try again later.'],
['code' => 'DTS.Msg.GADInstanceNotFound', 'message' => 'The GAD instance is not found.', 'http_code' => 403, 'description' => 'GAD instance does not exist.'],
['code' => 'DTS.Msg.GetCenError', 'message' => 'The cen [null] is not exists.', 'http_code' => 403, 'description' => 'The current CEN instance cannot be found'],
['code' => 'DTS.Msg.GetKafkaMetaInfo.NoAvailableBroker', 'message' => 'Could not find any available broker.', 'http_code' => 403, 'description' => 'Failed to obtain metadata from the Kafka server. This issue may be caused by incorrect configurations of bootstrap.servers, incorrect Kafka versions, or network failures.'],
['code' => 'DTS.Msg.GetMongoDbShardInfo.EmptyInstances', 'message' => 'Failed to get MongoDb shard information, the return is empty.', 'http_code' => 403, 'description' => 'Failed to obtain shard information. Check parameter configurations to ensure that a database of an ApsaraDB for MongoDB sharded cluster instance is configured.'],
['code' => 'DTS.Msg.GetMongoDbShardInfo.NoShardAddress', 'message' => 'MongoDb has not yet opened the shard connection address, please try again after opening.', 'http_code' => 403, 'description' => 'Failed to obtain shard connection information. Check parameter configurations to ensure that a database of an ApsaraDB for MongoDB sharded cluster instance is configured and an endpoint is applied for the required shard node.'],
['code' => 'DTS.Msg.GrantAccessAlreadyExists', 'message' => 'When calling the VPC interface to establish a reverse mapping, an error is reported that the reverse mapping already exists, please try again.', 'http_code' => 403, 'description' => 'Error in calling VPC interface to obtain VPC reverse access result'],
['code' => 'DTS.Msg.InvalidDrdsTable', 'message' => 'Invalid drds table [pay center].[merchat bank base].', 'http_code' => 403, 'description' => 'Failed to get distributed task table topology'],
['code' => 'DTS.Msg.InvalidIpAddress', 'message' => 'The ip address is not valid.', 'http_code' => 403, 'description' => 'IP address is not a standard form of IP'],
['code' => 'DTS.Msg.InvalidParameter.AliyunUidFormat', 'message' => 'The cloud account to which the source instance belongs should fill in the standard Alibaba Cloud UID', 'http_code' => 403, 'description' => 'Specify a standard user ID of an Alibaba Cloud account as the Alibaba Cloud account of the source database.'],
['code' => 'DTS.Msg.InvalidParameter.KafkaBrokerInvalid', 'message' => 'kafka broker configuration must be intranet IP', 'http_code' => 403, 'description' => 'You must set the name of a node of a self-managed Kafka cluster hosted on ECS to an IP address.'],
['code' => 'DTS.Msg.InvalidParameter.KafkaHostInvalid', 'message' => 'kafaka host name should be intranet IP', 'http_code' => 403, 'description' => 'You must set the hostname of a Kafka instance to its internal IP address.'],
['code' => 'DTS.Msg.LXCreateOrder.NotFoundPricePlan', 'message' => 'Pricing plan price result not found, please check the parameters of the task configuration.', 'http_code' => 403, 'description' => 'Failed to create an order. No pricing plans are found. Possible causes include invalid parameters and a lack of pricing.'],
['code' => 'DTS.Msg.LXCreateOrderError', 'message' => 'Failed to create order, failure message: The module is invalid', 'http_code' => 403, 'description' => 'DTS supports cross-border data synchronization only in specific scenarios. To purchase a data synchronization instance used to synchronize data across countries, fill in the Application for DTS cross-border data synchronization.'],
['code' => 'DTS.Msg.LXCreateOrderErrorIntl', 'message' => 'DTS supports cross-border data synchronization only in specific scenarios. To purchase a data synchronization instance used to synchronize data across countries, application for DTS cross-border data synchronization.', 'http_code' => 403, 'description' => 'DTS supports cross-border data synchronization only in specific scenarios. To purchase a data synchronization instance used to synchronize data across countries, fill in the Application for DTS cross-border data synchronization.'],
['code' => 'DTS.Msg.LXPayOrder.AccountBookNotExists', 'message' => 'The current account balance is insufficient or the account book has not been opened, please confirm and try again.', 'http_code' => 403, 'description' => 'Failed to complete the payment due to insufficient balance or lack of fund accounts. Failed orders are displayed in the user center of the DTS console. You must cancel them instead of paying for them in another way.'],
['code' => 'DTS.Msg.LXPayOrder.AmountLimitExceeded', 'message' => 'The current account has a POC label, and the order payment amount can only be 0 yuan, but the amount of this order is greater than 0 yuan, so it cannot be paid.', 'http_code' => 403, 'description' => 'Failed to complete the payment because your account is tagged POC. Use another account or use a voucher to pay for your order so that the amount to be paid changes to 0. Failed orders are displayed in the user center of the DTS console. You must cancel them instead of paying for them in another way.'],
['code' => 'DTS.Msg.LXPayOrder.InsufficientBalance', 'message' => 'Insufficient balance, order payment failed.', 'http_code' => 403, 'description' => 'Failed to complete the payment due to insufficient balance. Please add funds to your account and try again later.'],
['code' => 'DTS.Msg.MissingDtsJobSteps', 'message' => 'The parameter [StructureInitialization,DataInitialization,DataSynchronization] is invalid, one of them must be true.', 'http_code' => 403, 'description' => 'There is a problem with the step selection of the task.'],
['code' => 'DTS.Msg.ModifyDenied.JobStatusNotRunning', 'message' => 'The operation of modifying synchronization object is denied cause the task is not running, pls start job and retry.', 'http_code' => 403, 'description' => 'Failed to modify objects to be synchronized because the task is stopped. Restart the task and try again after its latency is less than 10 minutes.'],
['code' => 'DTS.Msg.MongoCommandError', 'message' => 'An error occur when execute mongo command.', 'http_code' => 403, 'description' => 'Failed when invoking mongo command'],
['code' => 'DTS.Msg.NotSupportEsInstance', 'message' => 'The elastic search instance is not support.', 'http_code' => 403, 'description' => 'The current ElasticSearch instance does not support configuring DTS tasks.'],
['code' => 'DTS.Msg.NotSupportModify', 'message' => 'DTS migration tasks do not support modifying synchronization objects.', 'http_code' => 403, 'description' => 'The migration task does not support modifying synchronization objects.'],
['code' => 'DTS.Msg.NotSupportRedisMinorVersion', 'message' => 'You need to upgrade redis minor version.', 'http_code' => 403, 'description' => 'ApsaraDB for Redis does not support configuring DTS tasks.'],
['code' => 'DTS.Msg.NotSupportServerlessInstance', 'message' => 'The serverless RDS instance is not support.', 'http_code' => 403, 'description' => 'RDS serverless version does not support configuring DTS tasks'],
['code' => 'DTS.Msg.OperationDenied.JobStatusModifying', 'message' => 'jobs state is modifying, please wait sync subtask ends', 'http_code' => 403, 'description' => 'Objects to be synchronized are being modified. Please wait until the modification ends.'],
['code' => 'DTS.Msg.OperationDenied.NotPurchased', 'message' => 'The instance has not been purchased and the task cannot be started.', 'http_code' => 403, 'description' => 'Failed to start a task. Purchase a task first.'],
['code' => 'DTS.Msg.OperationDeniedNotPurchased', 'message' => 'The instance has not been purchased and the task cannot be started.', 'http_code' => 403, 'description' => 'The current task has not been purchased'],
['code' => 'DTS.Msg.PrePayNotAllowDelete', 'message' => 'DTS prepaid instances are not allowed to be released through the DTS API, please go to the User Center '."\n"
.' Unsubscribe Management page to unsubscribe.', 'http_code' => 403, 'description' => 'Package year and package month tasks do not support release'],
['code' => 'DTS.Msg.RamPermissionDenied', 'message' => 'Your RAM account is not authorized to do this operation, please authorize in RAM first and try again.', 'http_code' => 403, 'description' => 'Your RAM account does not have permission to perform this operation. Please authorize in RAM before trying.'],
['code' => 'DTS.Msg.SQLExecuteError.AccessDenied', 'message' => 'Access denied for input user.', 'http_code' => 403, 'description' => 'Failed to connect to the source database during the connection test or task configuration. Check whether your account has required permissions.'],
['code' => 'DTS.Msg.SQLExecuteError.ConnectionRefused', 'message' => 'Connection refused, the Network Adapter could not establish the connection.', 'http_code' => 403, 'description' => 'The connection request is rejected. This issue may be caused by incorrect configurations of the listener process, running failures of the listener process, or other reasons such as heavy loads.'],
['code' => 'DTS.Msg.SQLExecuteError.JDBC4CommunicationsException', 'message' => 'Communications link failure,The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.', 'http_code' => 403, 'description' => 'A communication link error occurred. The JDBC driver sends the last packet to the source database server, but the driver receives no responses from the source database server.'],
['code' => 'DTS.Msg.SrcLink.InternetAddressNotFound', 'message' => 'Data instances in different regions use migration tasks, and the source data instance must have a public network address. Please open a public network address or use a synchronization task.', 'http_code' => 403, 'description' => 'For a data migration task across regions, the source instance must have a public IP address. Enable a public IP address or use the data synchronization feature.'],
['code' => 'DTS.Msg.StopJobFailed.ServerUnAvailable', 'message' => 'Pause task failed because node service could not be connected.', 'http_code' => 403, 'description' => 'Failed to connect to DTS node servers. Try again later. If the error persists, contact technical support.'],
['code' => 'DTS.Msg.SuspendDenied.JobStatusModifying', 'message' => 'The operation of suspend synchronization job is not permitted due to Dts job status is modifying, pls waiting the end of modifying state.', 'http_code' => 403, 'description' => 'Failed to stop the task because objects to be synchronized are being modified. Try again after the modification ends.'],
['code' => 'DTS.Msg.UpdateJob.OperationDenied.InitStatus', 'message' => 'The operation is not permitted due to Dts job status is init.', 'http_code' => 403, 'description' => 'The task is started and cannot be modified. You can reconfigure the task or use the reselect objects feature. If you reconfigure the task, the current task configurations are removed.'],
['code' => 'Duplicate.TagKey', 'message' => 'The Tag.N.Key contains duplicate keys.', 'http_code' => 403, 'description' => 'The specified tag key already exists. Delete the redundant tag key.'],
['code' => 'DuplicateAccount.RDSSqlServer', 'message' => 'add admin account error.', 'http_code' => 403, 'description' => ''],
['code' => 'Forbidden.AliyunUIDNotFound', 'message' => 'The Aliyun UID %s does not exist.', 'http_code' => 404, 'description' => 'The specified Alibaba Cloud account UID does not exist.'],
['code' => 'Forbidden.AliyunUIDNotFound', 'message' => 'The Aliyun UID %s is not exists.', 'http_code' => 404, 'description' => 'The account with the %s UID does not exist.'],
['code' => 'Forbidden.InstanceNotFound', 'message' => 'The specified instance %s does not exist.', 'http_code' => 404, 'description' => 'The specified instance does not exist.'],
['code' => 'Forbidden.InstanceNotFound', 'message' => 'The specified Instance %s not Found', 'http_code' => 404, 'description' => 'The instance with the %s instance ID does not exist.'],
['code' => 'GetKafkaMetaInfo.NoAvailableBroker', 'message' => 'Could not find any available broker.', 'http_code' => 403, 'description' => 'Failed to obtain metadata from the Kafka server. This issue may be caused by incorrect configurations of bootstrap.servers, incorrect Kafka versions, or network failures.'],
['code' => 'GetMongoDbShardInfo.EmptyInstances', 'message' => 'Failed to get MongoDb shard information, the return is empty.', 'http_code' => 403, 'description' => 'Failed to obtain shard information. Check parameter configurations to ensure that a database of an ApsaraDB for MongoDB sharded cluster instance is configured.'],
['code' => 'GetMongoDbShardInfo.NoShardAddress', 'message' => 'MongoDb has not yet opened the shard connection address, please try again after opening.', 'http_code' => 403, 'description' => 'Failed to obtain shard connection information. Check parameter configurations to ensure that a database of an ApsaraDB for MongoDB sharded cluster instance is configured and an endpoint is applied for the required shard node.'],
['code' => 'InternalError', 'message' => 'The request processing has failed due to some unknown error', 'http_code' => 500, 'description' => 'An unknown error occurred while calling this operation. If you try again and fail, contact the technical support personnel.'],
['code' => 'InternalError', 'message' => 'Internal error, please try again later.', 'http_code' => 503, 'description' => 'An internal error occurred. Please try again later.'],
['code' => 'InvalidAccessKeyId.NotFound', 'message' => 'Specified access key is not found.', 'http_code' => 403, 'description' => 'The AccessKey pair does not exist.'],
['code' => 'InvalidInstanceId', 'message' => 'The specified instance %s does not exist.', 'http_code' => 404, 'description' => 'The specified instance does not exist.'],
['code' => 'InvalidInstanceId', 'message' => 'The specified instance %s is not exists.', 'http_code' => 404, 'description' => 'The instance with the %s instance ID does not exist.'],
['code' => 'InvalidInstanceId', 'message' => 'The specified instance null does not exist.', 'http_code' => 403, 'description' => 'The specified instance does not exist.'],
['code' => 'InvalidJobId', 'message' => 'The specified DTS job ID %s is not found.', 'http_code' => 404, 'description' => 'The specified task ID is invalid.'],
['code' => 'InvalidJobId', 'message' => 'The specified dts job id %s is not exists.', 'http_code' => 404, 'description' => 'The job with the %s job ID does not exist. Check the job ID and try again.'],
['code' => 'InvalidJobName', 'message' => 'The specified job name %s does not exist.', 'http_code' => 403, 'description' => 'The specified task name is invalid.'],
['code' => 'InvalidParameter', 'message' => 'The value of the parameter %s is invalid.', 'http_code' => 403, 'description' => 'The specified parameter is invalid.'],
['code' => 'InvalidParameter', 'message' => 'The parameter value verification fails.', 'http_code' => 403, 'description' => 'The specified parameters are invalid. Check whether all the required parameters are specified and whether the AccessKey pair is valid.'],
['code' => 'InvalidParameter.AliyunUidFormat', 'message' => 'The cloud account to which the source instance belongs should fill in the standard Alibaba Cloud UID', 'http_code' => 403, 'description' => 'Specify a standard user ID of an Alibaba Cloud account as the Alibaba Cloud account of the source database.'],
['code' => 'InvalidParameter.Category', 'message' => 'The specified Category is invalid. Valid values are Custom and System.', 'http_code' => 400, 'description' => 'The specified tag type is invalid. Valid values: Custom and System.'],
['code' => 'InvalidParameter.KafkaBrokerInvalid', 'message' => 'kafka broker configuration must be intranet IP', 'http_code' => 403, 'description' => 'You must set the name of a node of a self-managed Kafka cluster hosted on ECS to an IP address.'],
['code' => 'InvalidParameter.KafkaHostInvalid', 'message' => 'kafaka host name should be intranet IP', 'http_code' => 403, 'description' => 'You must set the hostname of a Kafka instance to its internal IP address.'],
['code' => 'InvalidParameter.NextToken', 'message' => 'The parameter NextToken is invalid.', 'http_code' => 400, 'description' => 'The specified NextToken parameter is invalid.'],
['code' => 'InvalidParameter.ResourceType', 'message' => 'The ResourceType parameter is invalid.', 'http_code' => 400, 'description' => 'The specified ResourceType parameter is invalid. Set it to ALIYUN::DTS::INSTANCE.'],
['code' => 'InvalidParameter.Scope', 'message' => 'The specified Scope is invalid. Valid value: public, private.', 'http_code' => 400, 'description' => 'The specified scope that is allowed to view the tag is invalid. Valid values: public and private.'],
['code' => 'InvalidParameter.TagKey', 'message' => 'The Tag.N.Key parameter is invalid.', 'http_code' => 400, 'description' => 'The specified tag key is invalid. Enter a valid tag key.'],
['code' => 'InvalidParameter.Tags', 'message' => 'The specified value of parameter Tags is not valid.', 'http_code' => 400, 'description' => 'The specified tag key or tag value is invalid.'],
['code' => 'InvalidParameter.TagValue', 'message' => 'The Tag.N.Value parameter is invalid.', 'http_code' => 400, 'description' => 'The specified tag value is invalid.'],
['code' => 'InvalidParameterValue', 'message' => 'The Value of Input Parameter %s is not valid.', 'http_code' => 403, 'description' => 'The current input parameter value is illegal'],
['code' => 'InvalidRegion.NotFound', 'message' => 'The specified region %s is not found.', 'http_code' => 404, 'description' => 'The specified region does not exist.'],
['code' => 'InvalidRegion.NotFound', 'message' => 'The specified region %s is not exists.', 'http_code' => 404, 'description' => 'The specified %s region is invalid.'],
['code' => 'InvalidResourceId.NotFound', 'message' => 'The specified ResourceId is not found in our records.', 'http_code' => 404, 'description' => 'The instance ID does not exist.'],
['code' => 'InvalidSecurityToken.Expired', 'message' => 'Specified SecurityToken is expired.', 'http_code' => 403, 'description' => 'The signature expired. Use a new signature.'],
['code' => 'InvalidSslConfig', 'message' => 'Failed to generate SSL config.', 'http_code' => 403, 'description' => 'The SSL encryption configurations are invalid.'],
['code' => 'InvalidSslConfig', 'message' => 'generate ssl config fail', 'http_code' => 403, 'description' => 'Failed to configure the SSL encryption.'],
['code' => 'LackOfResource', 'message' => 'Resource is insufficient.', 'http_code' => 403, 'description' => 'The maximum amount of resources has been reached. Submit a ticket to raise the quota.'],
['code' => 'LackOfResource', 'message' => 'Resource is insufficient', 'http_code' => 403, 'description' => 'Your DTS resources are insufficient. To scale out the resources, contact the technical support personnel.'],
['code' => 'LXBuyError', 'message' => 'Buy instance error.', 'http_code' => 403, 'description' => 'An error occurred while purchasing the instance.'],
['code' => 'LXBuyError', 'message' => 'Buy instance error.get price error, response is error.', 'http_code' => 403, 'description' => 'An error occurred while purchasing the instance.'],
['code' => 'LXBuyError', 'message' => 'Buy instance error.create order error, response is error.', 'http_code' => 403, 'description' => 'An error occurred while purchasing the instance.'],
['code' => 'LXBuyError', 'message' => 'Buy instance error.return response is error.', 'http_code' => 403, 'description' => 'Error purchasing DTS instance'],
['code' => 'LXCreateOrder.NotFoundPricePlan', 'message' => 'Pricing plan price result not found, please check the parameters of the task configuration.', 'http_code' => 403, 'description' => 'Failed to create an order. No pricing plans are found. Possible causes include invalid parameters and a lack of pricing.'],
['code' => 'LXCreateOrderError', 'message' => 'Failed to create order, failure message: The module is invalid', 'http_code' => 403, 'description' => 'DTS supports cross-border data synchronization only in specific scenarios. To purchase a data synchronization instance used to synchronize data across countries, fill in the Application for DTS cross-border data synchronization.'],
['code' => 'LXPayOrder.InsufficientBalance', 'message' => 'Insufficient balance, order payment failed.', 'http_code' => 403, 'description' => 'Failed to complete the payment due to insufficient balance. Please add funds to your account and try again later.'],
['code' => 'Missing.TagKey', 'message' => 'You must specify the key for value %s in Tag.N.Key.', 'http_code' => 400, 'description' => 'The tag key is not specified.'],
['code' => 'MissingDestinationEndpointPort', 'message' => 'DestinationEndpointPort is mandatory for this action.', 'http_code' => 403, 'description' => 'Destination Port is required'],
['code' => 'MissingDestinationRegion', 'message' => 'DestinationRegion is mandatory for this action.', 'http_code' => 403, 'description' => 'The target region is a required parameter.'],
['code' => 'MissingDtsInstanceId', 'message' => 'DtsInstanceId is mandatory for this action.', 'http_code' => 403, 'description' => 'The instance ID is required.'],
['code' => 'MissingInstanceClass', 'message' => 'InstanceClass is mandatory for this action.', 'http_code' => 403, 'description' => 'The instance specification is required.'],
['code' => 'MissingParameter', 'message' => 'The parameter %s is needed but no provided.', 'http_code' => 403, 'description' => 'You must specify the %s parameter.'],
['code' => 'MissingParameter', 'message' => 'If the parameter is missing, please check whether the displayed parameter is missing and whether the user AK is correct. For details, please refer to the DTS OpenAPI documentation.', 'http_code' => 403, 'description' => 'Required parameters are not specified. Check whether all the required parameters are specified and whether the AccessKey pair is valid. For more information, see DTS API Reference.'],
['code' => 'MissingParameter', 'message' => 'The parameter is needed but no provided.', 'http_code' => 403, 'description' => 'Required parameters not provided'],
['code' => 'MissingParameter.TagOrResourceId', 'message' => 'Either Tags or ResourceIds must be specified.', 'http_code' => 400, 'description' => 'The tag or instance ID is not specified.'],
['code' => 'MissingSourceEndpointEngineName', 'message' => 'SourceEndpointEngineName is mandatory for this action.', 'http_code' => 403, 'description' => 'The source instance engine type is required.'],
['code' => 'MissingType', 'message' => 'Type is mandatory for this action.', 'http_code' => 403, 'description' => 'In this API, Type is a required parameter.'],
['code' => 'MongoDbGetInstanceAttr.InvokeFail', 'message' => 'MongoDb invoke fail.', 'http_code' => 403, 'description' => 'The current MongoDB instance does not support the operation.'],
['code' => 'MongoDbGetInstanceList.InvokeFail', 'message' => 'The DBInstanceId provided does not exist in our records.', 'http_code' => 403, 'description' => 'Current database instance not found'],
['code' => 'MongoDbModifyWhiteNames.InvokeFail', 'message' => 'OperationDenied.DBInstanceStatus : The operation is not permitted due to status of instance.', 'http_code' => 403, 'description' => ''],
['code' => 'NetWorkItemNotFound', 'message' => 'The network type %s is not found in the instance.', 'http_code' => 403, 'description' => 'The specified network type is not found for the instance.'],
['code' => 'NetWorkItemNotFound', 'message' => 'The instance not found %s available connection url', 'http_code' => 403, 'description' => 'No link addresses available for the %s instance are found.'],
['code' => 'NetWorkItemNotFound', 'message' => 'The instance not found available connection url.', 'http_code' => 403, 'description' => 'The current database instance could not find a usable connection address'],
['code' => 'NoPermission', 'message' => 'The user is not authorized to perform the operation.', 'http_code' => 403, 'description' => 'The user does not have permissions to perform this operation.'],
['code' => 'NoPermission.Operator', 'message' => 'The user is not authorized to operate on the specified resource.', 'http_code' => 403, 'description' => 'You are not authorized to perform operations on the specified resource.'],
['code' => 'NoPermission.SystemTag', 'message' => 'You are not authorized to operate system tag because the product code is invalid.', 'http_code' => 403, 'description' => 'You are not authorized to perform operations on tag values due to invalid code.'],
['code' => 'NotFound.UserDBInstanceList', 'message' => 'No user database instance is found.', 'http_code' => 403, 'description' => 'The specified database instance is not found.'],
['code' => 'NotFound.UserDBInstanceList', 'message' => 'Not found user db instances', 'http_code' => 403, 'description' => 'No instances within the account are found.'],
['code' => 'NotFound.UserDBInstanceList', 'message' => 'Not found user db instances.', 'http_code' => 403, 'description' => 'Current database instance not found'],
['code' => 'NumberExceed.ResourceIds', 'message' => 'The maximum number of ResourceIds is exceeded. The maximum value is 50.', 'http_code' => 400, 'description' => 'The maximum number of instance IDs has been reached, which is 20. Delete unnecessary instance IDs.'],
['code' => 'NumberExceed.Tags', 'message' => 'The maximum number of Tags is exceeded. The maximum value is 20.', 'http_code' => 400, 'description' => 'The maximum number of tags has been reached, which is 20. Delete unnecessary tags.'],
['code' => 'OperationDenied.ConsumerGroupOutOfUsage', 'message' => 'The consumer group %s exceeds the limit.', 'http_code' => 403, 'description' => 'The maximum number of consumer group for a DTS change tracking instance has been reached, which is 20. Delete unnecessary consumer groups.'],
['code' => 'OperationDenied.DBInstanceStatus', 'message' => 'The operation is not permitted because the database instance status is %s.', 'http_code' => 403, 'description' => 'The current status of the database instance does not support this operation.'],
['code' => 'OperationDenied.DBInstanceStatus', 'message' => 'The operation is not permitted due to db instance status is %s', 'http_code' => 403, 'description' => 'This operation is not allowed because the current instance is in the %s state.'],
['code' => 'OperationDenied.DBInstanceType', 'message' => 'The database instance %s does not permit the operation.', 'http_code' => 403, 'description' => 'The database instance does not support this operation.'],
['code' => 'OperationDenied.DBInstanceType', 'message' => 'The operation is not permitted to db instance %s', 'http_code' => 403, 'description' => 'This operation is not allowed in the %s databases.'],
['code' => 'OperationDenied.JobStatus', 'message' => 'The operation is not permitted due to DTS job status %s.', 'http_code' => 403, 'description' => 'The current status of the task does not support this operation.'],
['code' => 'OperationDenied.JobStatus', 'message' => 'The operation is not permitted because the DTS job status is %s.', 'http_code' => 403, 'description' => 'The current task status does not support this operation.'],
['code' => 'OperationDenied.JobStatus', 'message' => 'The operation is not permitted due to Dts job status is %s', 'http_code' => 403, 'description' => 'This operation is not allowed because the current task is in the %s state.'],
['code' => 'OperationDenied.JobStatus', 'message' => 'When the task is in the prompting state, the operation is not allowed. Please check the task status. Other operations are allowed only when the pre-check is passed.', 'http_code' => 403, 'description' => 'This operation is not allowed because the task has not passed the precheck. Check the state of the task.'],
['code' => 'OperationDenied.JobStatus', 'message' => 'The operation is not permitted because the DTS job status.', 'http_code' => 403, 'description' => 'Current DTS task status does not allow current operation'],
['code' => 'OperationDenied.JobStatusModifying', 'message' => 'jobs state is modifying, please wait sync subtask ends', 'http_code' => 403, 'description' => 'Objects to synchronize are being modified. Please wait until the modification ends.'],
['code' => 'OperationDenied.NotPurchased', 'message' => 'The instance has not been purchased and the task cannot be started.', 'http_code' => 403, 'description' => 'Failed to start a task. Purchase a task first.'],
['code' => 'OperationDenied.ResourceOutOfUsage', 'message' => 'The maximum number of InstanceIds is exceeded. The maximum value is 200.', 'http_code' => 403, 'description' => 'The maximum number of instance IDs has been reached, which is 200.'],
['code' => 'Original.Job.Running', 'message' => 'The parent dts job is running, reverse job cannot been startup.', 'http_code' => 403, 'description' => 'The original task is running and the reverse task cannot be started.'],
['code' => 'PolarDbInvokeFail', 'message' => 'PolarDb invoke fail', 'http_code' => 403, 'description' => 'Failed to call the PolarDB API operation.'],
['code' => 'QuotaExceed.TagsPerResource', 'message' => 'The maximum number of tags for each resource is exceeded.', 'http_code' => 403, 'description' => 'The maximum number of tags has been reached. Remove unnecessary tags.'],
['code' => 'RdsGetInstanceList.InvokeFail', 'message' => 'SDK.ReadTimeout : SocketTimeoutException has occurred on a socket read or accept.The url is http://rds.aliyuncs.com/ - DbInstanceId null.', 'http_code' => 403, 'description' => 'Failed to obtain RDS instance'],
['code' => 'RdsGetWhiteNames.InvokeFail', 'message' => 'SDK.ReadTimeout : SocketTimeoutException has occurred on a socket read or accept.The url is http://rds.aliyuncs.com/ - DbInstanceId rm-wz98850woxxd18s1l - ModuleName:Add a whitelist to the source database.', 'http_code' => 403, 'description' => 'Failed to modify the RDS instance whitelist.'],
['code' => 'RdsInvokeFail', 'message' => 'Failed to call the RDS interface.', 'http_code' => 403, 'description' => 'The RDS API operation has failed to be called.'],
['code' => 'RdsInvokeFail', 'message' => 'rds invoke fail', 'http_code' => 403, 'description' => 'Failed to call the RDS API operation.'],
['code' => 'RedisError', 'message' => 'A redis error occurred caused by: %s', 'http_code' => 403, 'description' => 'Failed to configure the task related to Redis.'],
['code' => 'RedisError', 'message' => 'A redis error occurred caused by: %s.', 'http_code' => 403, 'description' => 'Failed to configure tasks related to Rdis'],
['code' => 'RedisGetInstanceConnection.InvokeFail', 'message' => 'InvalidInstanceId.NotFound : The InstanceId provided does not exist in our records.', 'http_code' => 403, 'description' => ''],
['code' => 'RedisInvokeFail', 'message' => 'redis cluster not support taskType: OTHER.', 'http_code' => 403, 'description' => ''],
['code' => 'RedisModifyWhiteNames.InvokeFail', 'message' => 'The system security ip group cannot be modified.', 'http_code' => 403, 'description' => 'Currently, Redis does not support modifying security groups.'],
['code' => 'ReverseJob.Exists', 'message' => 'The operation is not permitted due to reverse Dts job is already exists.', 'http_code' => 403, 'description' => 'Creation failed, reverse task already exists.'],
['code' => 'ServiceUnavailable', 'message' => 'The request has failed due to a temporary failure of the server.', 'http_code' => 500, 'description' => 'The response of the server timed out or the server was unavailable. Please try again. If the error persists, contact technical support.'],
['code' => 'SignatureNonceUsed', 'message' => 'Specified signature nonce was used already.', 'http_code' => 400, 'description' => 'The value of the SignatureNonce parameter cannot be repeated within 15 minutes. To prevent repeated form submission and replay attacks, a unique SignatureNonce must be generated for each request.'],
['code' => 'SQLExecuteError', 'message' => 'SQL execute failed with cause %s', 'http_code' => 403, 'description' => 'An SQL statement execution error has occurred.'],
['code' => 'SQLExecuteError', 'message' => 'Describe schema error.', 'http_code' => 403, 'description' => 'There is a problem in obtaining the source database table information.'],
['code' => 'SQLExecuteError.AccessDenied', 'message' => 'Access denied for input user.', 'http_code' => 403, 'description' => 'Failed to connect to the source database during the connection test or task configuration. Check whether your account has required permissions.'],
['code' => 'SQLExecuteError.ConnectionRefused', 'message' => 'Connection refused, the Network Adapter could not establish the connection.', 'http_code' => 403, 'description' => 'The connection request is rejected. This issue may be caused by incorrect configurations of the listener process, running failures of the listener process, or other reasons such as heavy loads.'],
['code' => 'SQLExecuteError.JDBC4CommunicationsException', 'message' => 'Communications link failure,The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.', 'http_code' => 403, 'description' => 'A communication link error occurred. The JDBC driver sends the last packet to the source database server, but the driver receives no responses from the source database server.'],
['code' => 'SrcLink.InternetAddressNotFound', 'message' => 'Data instances in different regions use migration tasks, and the source data instance must have '."\n"
.'a public network address. Please open a public network address or use a synchronization task.', 'http_code' => 403, 'description' => 'For a data migration task across regions, the source instance must have a public IP address. Enable a public IP address or use the data synchronization feature.'],
['code' => 'StopJobFailed.ServerUnAvailable', 'message' => 'Pause task failed because node service could not be connected.', 'http_code' => 403, 'description' => 'Failed to connect to DTS node servers. Try again later. If the error persists, contact technical support.'],
['code' => 'SubJobNotCompleted', 'message' => 'sub job has not been completed, please wait', 'http_code' => 403, 'description' => 'The subtask is not completed. Try again after it is completed.'],
['code' => 'SystemError', 'message' => 'Something went wrong with the service, please try again', 'http_code' => 503, 'description' => 'An exception occurred. Please try again later.'],
['code' => 'Throttling.User', 'message' => 'Request was denied due to user flow control.', 'http_code' => 400, 'description' => 'The request is rejected due to high request frequency. Please try again later.'],
['code' => 'UnSupported', 'message' => 'The action %s is not supported.', 'http_code' => 403, 'description' => 'The operation is not supported.'],
['code' => 'UnSupportedTaskType', 'message' => 'The task type with source %s and destination %s is not supported.', 'http_code' => 403, 'description' => 'DTS does not support the database. For more information about databases that are supported by DTS, see Supported databases.'],
['code' => 'UnSupportedTaskType', 'message' => 'Not support the task which is from this source to this destination.', 'http_code' => 403, 'description' => 'The task does not support the source to destination'],
['code' => 'UpdateJob.OperationDenied.InitStatus', 'message' => 'The operation is not permitted due to Dts job status is init.', 'http_code' => 403, 'description' => 'The task is started and cannot be modified. You can reconfigure the task or use the reselect objects feature. If you reconfigure the task, the current task configurations are removed.'],
['code' => 'VpcInvokeFail', 'message' => 'Failed to call the VPC interface.', 'http_code' => 403, 'description' => 'The VPC API operation has failed to be called.'],
['code' => 'VpcInvokeFail', 'message' => 'vpc invoke fail', 'http_code' => 403, 'description' => 'Failed to call the VPC API operation.'],
],
'changeSet' => [],
'ram' => [
'productCode' => 'DTS',
'productName' => 'Data Transmission Service',
'ramCodes' => ['dts'],
'ramLevel' => 'RESOURCE',
'ramConditions' => [],
'ramActions' => [
[
'apiName' => 'DescribeConnectionStatus',
'description' => '',
'operationType' => 'none',
'ramAction' => [
'action' => 'dts:DescribeConnectionStatus',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ListTagResources',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:ListTagResources',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeCheckJobs',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeCheckJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'SuspendDtsJobs',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SuspendDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'UpgradeTwoWay',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:UpgradeTwoWay',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateConsumerGroup',
'description' => '',
'operationType' => '',
'ramAction' => [
'action' => 'dts:CreateConsumerGroup',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDataCheckTableDetails',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDataCheckTableDetails',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'PreCheckCreateGadOrder',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:PreCheckCreateGadOrder',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeTagValues',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeTagValues',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ConfigureSubscriptionInstance',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureSubscriptionInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDocParserJobStatus',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDocParserJobStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'SwitchPhysicalDtsJobToCloud',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SwitchPhysicalDtsJobToCloud',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'TransferPayType',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:TransferPayType',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DeleteSynchronizationJob',
'description' => '',
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeSubscriptionInstances',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSubscriptionInstances',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ConfigureMigrationJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ConfigureMigrationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ConfigureMigrationJobAlert',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureMigrationJobAlert',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeMigrationJobs',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeMigrationJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifyDynamicConfig',
'description' => '',
'operationType' => '',
'ramAction' => [
'action' => 'dts:ModifyDynamicConfig',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeMigrationJobDetail',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeMigrationJobDetail',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeEtlJobLogs',
'description' => '',
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:DescribeEtlJobLogs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ResetSynchronizationJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ResetSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/{#DtsInstanceId}'],
],
],
],
[
'apiName' => 'TransferInstanceClass',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:TransferInstanceClass',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ConvertInstanceResourceGroup',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ConvertInstanceResourceGroup',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDtsJobDetail',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDtsJobDetail',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeSubscriptionMeta',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSubscriptionMeta',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeJobMonitorRule',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeJobMonitorRule',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'CreateDtsInstance',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:CreateDtsInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/*'],
],
],
],
[
'apiName' => 'DeleteConsumerGroup',
'description' => '',
'operationType' => '',
'ramAction' => [
'action' => 'dts:DeleteConsumerGroup',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeSubscriptionInstanceStatus',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSubscriptionInstanceStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ConfigureSynchronizationJob',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:ConfigureSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeGadInstances',
'description' => '',
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:DescribeGadInstances',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'TagResources',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:TagResources',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ModifyConsumerChannel',
'description' => '',
'operationType' => '',
'ramAction' => [
'action' => 'dts:ModifyConsumerChannel',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifyDtsJobName',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobName',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DeleteDtsJobs',
'description' => '',
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DeleteMigrationJob',
'description' => '',
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteMigrationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeSynchronizationJobs',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSynchronizationJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDtsJobs',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/*'],
],
],
],
[
'apiName' => 'ConfigureSynchronizationJobAlert',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureSynchronizationJobAlert',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDataCheckReportUrl',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDataCheckReportUrl',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeMetricList',
'description' => '',
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:DescribeMetricList',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DeleteDtsJob',
'description' => '',
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'PromoteToMaster',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:PromoteToMaster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'WhiteIpList',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:WhiteIpList',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateSubscriptionInstance',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateSubscriptionInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateConsumerChannel',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:CreateConsumerChannel',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifyDtsJobEndpoint',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobEndpoint',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribePreCheckCreateGadOrderResult',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribePreCheckCreateGadOrderResult',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeDtsEtlJobVersionInfo',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDtsEtlJobVersionInfo',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateMigrationJob',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateMigrationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ListDedicatedCluster',
'description' => '',
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:ListDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'SkipPreCheck',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SkipPreCheck',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'StartReverseWriter',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartReverseWriter',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifyDtsJobDedicatedCluster',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/{#DtsInstanceId}'],
],
],
],
[
'apiName' => 'DescribeConsumerChannel',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeConsumerChannel',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'RenewInstance',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:RenewInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'SummaryJobDetail',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:SummaryJobDetail',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribePreCheckStatus',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribePreCheckStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeDedicatedClusterMonitorRule',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDedicatedClusterMonitorRule',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#AccountId}:instance/{#DtsInstanceId}'],
],
],
],
[
'apiName' => 'ModifyGadInstanceName',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyGadInstanceName',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'SuspendDtsJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SuspendDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ConfigureDtsJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ConfigureDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DeleteConsumerChannel',
'description' => '',
'operationType' => '',
'ramAction' => [
'action' => 'dts:DeleteConsumerChannel',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'StopDedicatedCluster',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StopDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'UntagResources',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:UntagResources',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'CountJobByCondition',
'description' => '',
'operationType' => 'none',
'ramAction' => [
'action' => 'dts:CountJobByCondition',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'StartDtsJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DetachGadInstanceDbMember',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:DetachGadInstanceDbMember',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'SkipFullJobTable',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SkipFullJobTable',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'SwitchSynchronizationEndpoint',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SwitchSynchronizationEndpoint',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'CreateDedicatedClusterMonitorRule',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateDedicatedClusterMonitorRule',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'StopDtsJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StopDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifyDtsJobPassword',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobPassword',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDataCheckTableDiffDetails',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDataCheckTableDiffDetails',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateDocParserJob',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateDocParserJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'InitDtsRdsInstance',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:InitDtsRdsInstance',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateSynchronizationJob',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeConsumerGroup',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeConsumerGroup',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ConfigureSubscription',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureSubscription',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ModifyDtsJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeSynchronizationJobReplicatorCompare',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSynchronizationJobReplicatorCompare',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'CreateJobMonitorRule',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:CreateJobMonitorRule',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeFullProcessList',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeFullProcessList',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifySubscriptionObject',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifySubscriptionObject',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifyDtsJobDuLimit',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobDuLimit',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ModifySubscription',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifySubscription',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeTagKeys',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeTagKeys',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'StartSubscriptionInstance',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartSubscriptionInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDedicatedCluster',
'description' => '',
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:DescribeDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeSubscriptionInstanceAlert',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSubscriptionInstanceAlert',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifyJobStepCheckpoint',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:ModifyJobStepCheckpoint',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DeleteSubscriptionInstance',
'description' => '',
'operationType' => 'delete',
'ramAction' => [
'action' => 'dts:DeleteSubscriptionInstance',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDocParserJobResult',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDocParserJobResult',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'StartDtsJobs',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StartDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ShieldPrecheck',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:ShieldPrecheck',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ListJobStep',
'description' => '',
'operationType' => 'list',
'ramAction' => [
'action' => 'dts:ListJobStep',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeEndpointSwitchStatus',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeEndpointSwitchStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'SuspendSynchronizationJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:SuspendSynchronizationJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifySynchronizationObject',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifySynchronizationObject',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDtsServiceLog',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDtsServiceLog',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeClusterUsedUtilization',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeClusterUsedUtilization',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'DescribeSynchronizationJobStatus',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeSynchronizationJobStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'CreateReverseDtsJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:CreateReverseDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeDTSIP',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeDTSIP',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ModifyDtsJobConfig',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDtsJobConfig',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'StopDtsJobs',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:StopDtsJobs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ResetDtsJob',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ResetDtsJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
[
'apiName' => 'ConfigureSynchronizationJobReplicatorCompare',
'description' => '',
'operationType' => 'create',
'ramAction' => [
'action' => 'dts:ConfigureSynchronizationJobReplicatorCompare',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeMigrationJobStatus',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeMigrationJobStatus',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'ModifyDedicatedCluster',
'description' => '',
'operationType' => 'update',
'ramAction' => [
'action' => 'dts:ModifyDedicatedCluster',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
[
'apiName' => 'DescribeClusterOperateLogs',
'description' => '',
'operationType' => 'get',
'ramAction' => [
'action' => 'dts:DescribeClusterOperateLogs',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DTS', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
],
],
],
],
'resourceTypes' => [
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/*'],
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/{#instanceId}'],
['validationType' => 'always', 'resourceType' => 'GAD', 'arn' => 'acs:dts:{#regionId}:{#accountId}:gad/*'],
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#Region}:{#accountId}:instance/{#DtsInstanceId}'],
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#accountId}:instance/{#DtsInstanceId}'],
['validationType' => 'always', 'resourceType' => 'MigrationJob', 'arn' => 'acs:dts:*:{#accountId}:migrationjob/{#DtsJobId}'],
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#accountId}:instance/*'],
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:*:instance/*'],
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:*:{#token-account-uid}:instance/*'],
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:*:instance/{#instanceId}'],
['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:dts:{#regionId}:{#AccountId}:instance/{#DtsInstanceId}'],
],
],
];