tccli 3.0.1393.1__py2.py3-none-any.whl → 3.0.1395.1__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. tccli/__init__.py +1 -1
  2. tccli/services/__init__.py +2 -1
  3. tccli/services/ai3d/v20250513/api.json +4 -4
  4. tccli/services/apm/apm_client.py +53 -0
  5. tccli/services/apm/v20210622/api.json +354 -0
  6. tccli/services/apm/v20210622/examples.json +8 -0
  7. tccli/services/billing/billing_client.py +326 -8
  8. tccli/services/billing/v20180709/api.json +2200 -255
  9. tccli/services/billing/v20180709/examples.json +48 -0
  10. tccli/services/cam/v20190116/api.json +1 -1
  11. tccli/services/ccc/ccc_client.py +125 -72
  12. tccli/services/ccc/v20200210/api.json +185 -10
  13. tccli/services/ccc/v20200210/examples.json +8 -0
  14. tccli/services/cfw/v20190904/api.json +121 -9
  15. tccli/services/ckafka/v20190819/api.json +20 -0
  16. tccli/services/ctem/v20231128/api.json +290 -0
  17. tccli/services/ctem/v20231128/examples.json +3 -3
  18. tccli/services/cvm/cvm_client.py +0 -212
  19. tccli/services/cvm/v20170312/api.json +80 -842
  20. tccli/services/cvm/v20170312/examples.json +24 -56
  21. tccli/services/emr/v20190103/api.json +36 -7
  22. tccli/services/ess/v20201111/api.json +7 -7
  23. tccli/services/ess/v20201111/examples.json +6 -6
  24. tccli/services/essbasic/v20210526/api.json +1 -1
  25. tccli/services/gs/gs_client.py +216 -4
  26. tccli/services/gs/v20191118/api.json +201 -0
  27. tccli/services/gs/v20191118/examples.json +32 -0
  28. tccli/services/iai/v20180301/api.json +115 -93
  29. tccli/services/iai/v20180301/examples.json +19 -19
  30. tccli/services/iotexplorer/iotexplorer_client.py +57 -4
  31. tccli/services/iotexplorer/v20190423/api.json +69 -0
  32. tccli/services/iotexplorer/v20190423/examples.json +8 -0
  33. tccli/services/lighthouse/v20200324/api.json +113 -9
  34. tccli/services/lighthouse/v20200324/examples.json +2 -2
  35. tccli/services/lke/v20231130/api.json +34 -1
  36. tccli/services/lkeap/v20240522/api.json +1 -1
  37. tccli/services/mna/v20210119/api.json +10 -1
  38. tccli/services/mna/v20210119/examples.json +1 -1
  39. tccli/services/ocr/v20181119/api.json +2 -2
  40. tccli/services/organization/v20210331/api.json +6 -6
  41. tccli/services/redis/v20180412/api.json +9 -9
  42. tccli/services/sqlserver/v20180328/api.json +15 -5
  43. tccli/services/sqlserver/v20180328/examples.json +1 -1
  44. tccli/services/trocket/v20230308/api.json +4 -4
  45. tccli/services/tsf/v20180326/api.json +2 -2
  46. tccli/services/vod/v20180717/api.json +1 -1
  47. tccli/services/vpc/v20170312/api.json +5 -5
  48. tccli/services/vtc/v20240223/api.json +1 -1
  49. tccli/services/waf/v20180125/api.json +8 -8
  50. tccli/services/waf/v20180125/examples.json +1 -1
  51. tccli/services/wedata/v20250806/api.json +13645 -0
  52. tccli/services/wedata/v20250806/examples.json +621 -0
  53. tccli/services/wedata/wedata_client.py +5031 -1157
  54. {tccli-3.0.1393.1.dist-info → tccli-3.0.1395.1.dist-info}/METADATA +2 -2
  55. {tccli-3.0.1393.1.dist-info → tccli-3.0.1395.1.dist-info}/RECORD +58 -56
  56. {tccli-3.0.1393.1.dist-info → tccli-3.0.1395.1.dist-info}/WHEEL +0 -0
  57. {tccli-3.0.1393.1.dist-info → tccli-3.0.1395.1.dist-info}/entry_points.txt +0 -0
  58. {tccli-3.0.1393.1.dist-info → tccli-3.0.1395.1.dist-info}/license_files/LICENSE +0 -0
@@ -693,7 +693,7 @@ def doModifyAndroidInstancesProperties(args, parsed_globals):
693
693
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
694
694
 
695
695
 
696
- def doCreateSession(args, parsed_globals):
696
+ def doDeleteAndroidInstanceBackups(args, parsed_globals):
697
697
  g_param = parse_global_arg(parsed_globals)
698
698
 
699
699
  if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
@@ -722,11 +722,11 @@ def doCreateSession(args, parsed_globals):
722
722
  client = mod.GsClient(cred, g_param[OptionsDefine.Region], profile)
723
723
  client._sdkVersion += ("_CLI_" + __version__)
724
724
  models = MODELS_MAP[g_param[OptionsDefine.Version]]
725
- model = models.CreateSessionRequest()
725
+ model = models.DeleteAndroidInstanceBackupsRequest()
726
726
  model.from_json_string(json.dumps(args))
727
727
  start_time = time.time()
728
728
  while True:
729
- rsp = client.CreateSession(model)
729
+ rsp = client.DeleteAndroidInstanceBackups(model)
730
730
  result = rsp.to_json_string()
731
731
  try:
732
732
  json_obj = json.loads(result)
@@ -1109,6 +1109,58 @@ def doStopAndroidInstancesApp(args, parsed_globals):
1109
1109
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1110
1110
 
1111
1111
 
1112
+ def doRestoreAndroidInstance(args, parsed_globals):
1113
+ g_param = parse_global_arg(parsed_globals)
1114
+
1115
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
1116
+ cred = credential.CVMRoleCredential()
1117
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
1118
+ cred = credential.STSAssumeRoleCredential(
1119
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
1120
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
1121
+ )
1122
+ elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
1123
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
1124
+ else:
1125
+ cred = credential.Credential(
1126
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
1127
+ )
1128
+ http_profile = HttpProfile(
1129
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
1130
+ reqMethod="POST",
1131
+ endpoint=g_param[OptionsDefine.Endpoint],
1132
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
1133
+ )
1134
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
1135
+ if g_param[OptionsDefine.Language]:
1136
+ profile.language = g_param[OptionsDefine.Language]
1137
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
1138
+ client = mod.GsClient(cred, g_param[OptionsDefine.Region], profile)
1139
+ client._sdkVersion += ("_CLI_" + __version__)
1140
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
1141
+ model = models.RestoreAndroidInstanceRequest()
1142
+ model.from_json_string(json.dumps(args))
1143
+ start_time = time.time()
1144
+ while True:
1145
+ rsp = client.RestoreAndroidInstance(model)
1146
+ result = rsp.to_json_string()
1147
+ try:
1148
+ json_obj = json.loads(result)
1149
+ except TypeError as e:
1150
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
1151
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
1152
+ break
1153
+ cur_time = time.time()
1154
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
1155
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
1156
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
1157
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
1158
+ else:
1159
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
1160
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
1161
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1162
+
1163
+
1112
1164
  def doTrylockWorker(args, parsed_globals):
1113
1165
  g_param = parse_global_arg(parsed_globals)
1114
1166
 
@@ -1213,6 +1265,58 @@ def doDescribeAndroidInstanceImages(args, parsed_globals):
1213
1265
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1214
1266
 
1215
1267
 
1268
+ def doCreateSession(args, parsed_globals):
1269
+ g_param = parse_global_arg(parsed_globals)
1270
+
1271
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
1272
+ cred = credential.CVMRoleCredential()
1273
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
1274
+ cred = credential.STSAssumeRoleCredential(
1275
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
1276
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
1277
+ )
1278
+ elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
1279
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
1280
+ else:
1281
+ cred = credential.Credential(
1282
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
1283
+ )
1284
+ http_profile = HttpProfile(
1285
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
1286
+ reqMethod="POST",
1287
+ endpoint=g_param[OptionsDefine.Endpoint],
1288
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
1289
+ )
1290
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
1291
+ if g_param[OptionsDefine.Language]:
1292
+ profile.language = g_param[OptionsDefine.Language]
1293
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
1294
+ client = mod.GsClient(cred, g_param[OptionsDefine.Region], profile)
1295
+ client._sdkVersion += ("_CLI_" + __version__)
1296
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
1297
+ model = models.CreateSessionRequest()
1298
+ model.from_json_string(json.dumps(args))
1299
+ start_time = time.time()
1300
+ while True:
1301
+ rsp = client.CreateSession(model)
1302
+ result = rsp.to_json_string()
1303
+ try:
1304
+ json_obj = json.loads(result)
1305
+ except TypeError as e:
1306
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
1307
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
1308
+ break
1309
+ cur_time = time.time()
1310
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
1311
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
1312
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
1313
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
1314
+ else:
1315
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
1316
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
1317
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1318
+
1319
+
1216
1320
  def doStartAndroidInstancesApp(args, parsed_globals):
1217
1321
  g_param = parse_global_arg(parsed_globals)
1218
1322
 
@@ -1369,6 +1473,58 @@ def doModifyAndroidInstancesResolution(args, parsed_globals):
1369
1473
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1370
1474
 
1371
1475
 
1476
+ def doDescribeAndroidInstanceBackups(args, parsed_globals):
1477
+ g_param = parse_global_arg(parsed_globals)
1478
+
1479
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
1480
+ cred = credential.CVMRoleCredential()
1481
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
1482
+ cred = credential.STSAssumeRoleCredential(
1483
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
1484
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
1485
+ )
1486
+ elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
1487
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
1488
+ else:
1489
+ cred = credential.Credential(
1490
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
1491
+ )
1492
+ http_profile = HttpProfile(
1493
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
1494
+ reqMethod="POST",
1495
+ endpoint=g_param[OptionsDefine.Endpoint],
1496
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
1497
+ )
1498
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
1499
+ if g_param[OptionsDefine.Language]:
1500
+ profile.language = g_param[OptionsDefine.Language]
1501
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
1502
+ client = mod.GsClient(cred, g_param[OptionsDefine.Region], profile)
1503
+ client._sdkVersion += ("_CLI_" + __version__)
1504
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
1505
+ model = models.DescribeAndroidInstanceBackupsRequest()
1506
+ model.from_json_string(json.dumps(args))
1507
+ start_time = time.time()
1508
+ while True:
1509
+ rsp = client.DescribeAndroidInstanceBackups(model)
1510
+ result = rsp.to_json_string()
1511
+ try:
1512
+ json_obj = json.loads(result)
1513
+ except TypeError as e:
1514
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
1515
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
1516
+ break
1517
+ cur_time = time.time()
1518
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
1519
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
1520
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
1521
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
1522
+ else:
1523
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
1524
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
1525
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1526
+
1527
+
1372
1528
  def doDeleteAndroidInstanceLabel(args, parsed_globals):
1373
1529
  g_param = parse_global_arg(parsed_globals)
1374
1530
 
@@ -2305,6 +2461,58 @@ def doUploadFileToAndroidInstances(args, parsed_globals):
2305
2461
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
2306
2462
 
2307
2463
 
2464
+ def doBackUpAndroidInstance(args, parsed_globals):
2465
+ g_param = parse_global_arg(parsed_globals)
2466
+
2467
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
2468
+ cred = credential.CVMRoleCredential()
2469
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
2470
+ cred = credential.STSAssumeRoleCredential(
2471
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
2472
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
2473
+ )
2474
+ elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
2475
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
2476
+ else:
2477
+ cred = credential.Credential(
2478
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
2479
+ )
2480
+ http_profile = HttpProfile(
2481
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
2482
+ reqMethod="POST",
2483
+ endpoint=g_param[OptionsDefine.Endpoint],
2484
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
2485
+ )
2486
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
2487
+ if g_param[OptionsDefine.Language]:
2488
+ profile.language = g_param[OptionsDefine.Language]
2489
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
2490
+ client = mod.GsClient(cred, g_param[OptionsDefine.Region], profile)
2491
+ client._sdkVersion += ("_CLI_" + __version__)
2492
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
2493
+ model = models.BackUpAndroidInstanceRequest()
2494
+ model.from_json_string(json.dumps(args))
2495
+ start_time = time.time()
2496
+ while True:
2497
+ rsp = client.BackUpAndroidInstance(model)
2498
+ result = rsp.to_json_string()
2499
+ try:
2500
+ json_obj = json.loads(result)
2501
+ except TypeError as e:
2502
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
2503
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
2504
+ break
2505
+ cur_time = time.time()
2506
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
2507
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
2508
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
2509
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
2510
+ else:
2511
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
2512
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
2513
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
2514
+
2515
+
2308
2516
  def doModifyAndroidApp(args, parsed_globals):
2309
2517
  g_param = parse_global_arg(parsed_globals)
2310
2518
 
@@ -4045,7 +4253,7 @@ ACTION_MAP = {
4045
4253
  "UninstallAndroidInstancesApp": doUninstallAndroidInstancesApp,
4046
4254
  "CreateAndroidInstanceImage": doCreateAndroidInstanceImage,
4047
4255
  "ModifyAndroidInstancesProperties": doModifyAndroidInstancesProperties,
4048
- "CreateSession": doCreateSession,
4256
+ "DeleteAndroidInstanceBackups": doDeleteAndroidInstanceBackups,
4049
4257
  "ModifyAndroidInstancesInformation": doModifyAndroidInstancesInformation,
4050
4258
  "DeleteAndroidInstanceImages": doDeleteAndroidInstanceImages,
4051
4259
  "DistributeFileToAndroidInstances": doDistributeFileToAndroidInstances,
@@ -4053,11 +4261,14 @@ ACTION_MAP = {
4053
4261
  "CreateAndroidInstances": doCreateAndroidInstances,
4054
4262
  "RebootAndroidInstances": doRebootAndroidInstances,
4055
4263
  "StopAndroidInstancesApp": doStopAndroidInstancesApp,
4264
+ "RestoreAndroidInstance": doRestoreAndroidInstance,
4056
4265
  "TrylockWorker": doTrylockWorker,
4057
4266
  "DescribeAndroidInstanceImages": doDescribeAndroidInstanceImages,
4267
+ "CreateSession": doCreateSession,
4058
4268
  "StartAndroidInstancesApp": doStartAndroidInstancesApp,
4059
4269
  "RestartAndroidInstancesApp": doRestartAndroidInstancesApp,
4060
4270
  "ModifyAndroidInstancesResolution": doModifyAndroidInstancesResolution,
4271
+ "DescribeAndroidInstanceBackups": doDescribeAndroidInstanceBackups,
4061
4272
  "DeleteAndroidInstanceLabel": doDeleteAndroidInstanceLabel,
4062
4273
  "DistributeAndroidInstanceImageToHosts": doDistributeAndroidInstanceImageToHosts,
4063
4274
  "CreateAndroidInstanceLabel": doCreateAndroidInstanceLabel,
@@ -4076,6 +4287,7 @@ ACTION_MAP = {
4076
4287
  "ModifyAndroidInstanceInformation": doModifyAndroidInstanceInformation,
4077
4288
  "ModifyAndroidInstancesAppBlacklist": doModifyAndroidInstancesAppBlacklist,
4078
4289
  "UploadFileToAndroidInstances": doUploadFileToAndroidInstances,
4290
+ "BackUpAndroidInstance": doBackUpAndroidInstance,
4079
4291
  "ModifyAndroidApp": doModifyAndroidApp,
4080
4292
  "SyncAndroidInstanceImage": doSyncAndroidInstanceImage,
4081
4293
  "ModifyAndroidInstanceResolution": doModifyAndroidInstanceResolution,
@@ -1,5 +1,12 @@
1
1
  {
2
2
  "actions": {
3
+ "BackUpAndroidInstance": {
4
+ "document": "备份安卓实例。该接口需要联系我们开通内网存储才能使用。",
5
+ "input": "BackUpAndroidInstanceRequest",
6
+ "name": "备份安卓实例",
7
+ "output": "BackUpAndroidInstanceResponse",
8
+ "status": "online"
9
+ },
3
10
  "BackUpAndroidInstanceToStorage": {
4
11
  "document": "备份云手机数据到指定存储,支持 COS 和兼容 AWS S3 协议的对象存储服务。如果是备份到 COS 时,会使用公网流量,授权 COS bucket 请在控制台中操作。",
5
12
  "input": "BackUpAndroidInstanceToStorageRequest",
@@ -133,6 +140,13 @@
133
140
  "output": "DeleteAndroidInstanceBackupFilesResponse",
134
141
  "status": "online"
135
142
  },
143
+ "DeleteAndroidInstanceBackups": {
144
+ "document": "批量删除安卓实例备份",
145
+ "input": "DeleteAndroidInstanceBackupsRequest",
146
+ "name": "批量删除安卓实例备份",
147
+ "output": "DeleteAndroidInstanceBackupsResponse",
148
+ "status": "online"
149
+ },
136
150
  "DeleteAndroidInstanceImages": {
137
151
  "document": "删除安卓实例镜像",
138
152
  "input": "DeleteAndroidInstanceImagesRequest",
@@ -161,6 +175,13 @@
161
175
  "output": "DescribeAndroidInstanceAppsResponse",
162
176
  "status": "online"
163
177
  },
178
+ "DescribeAndroidInstanceBackups": {
179
+ "document": "查询安卓实例备份列表",
180
+ "input": "DescribeAndroidInstanceBackupsRequest",
181
+ "name": "查询安卓实例备份列表",
182
+ "output": "DescribeAndroidInstanceBackupsResponse",
183
+ "status": "online"
184
+ },
164
185
  "DescribeAndroidInstanceImages": {
165
186
  "document": "查询安卓实例镜像信息,当镜像的 AndroidInstanceImageState 为 NORMAL 时,镜像处于可用状态。",
166
187
  "input": "DescribeAndroidInstanceImagesRequest",
@@ -406,6 +427,13 @@
406
427
  "output": "RestartAndroidInstancesAppResponse",
407
428
  "status": "online"
408
429
  },
430
+ "RestoreAndroidInstance": {
431
+ "document": "还原安卓实例。该接口需要联系我们开通内网存储才能使用。",
432
+ "input": "RestoreAndroidInstanceRequest",
433
+ "name": "还原安卓实例",
434
+ "output": "RestoreAndroidInstanceResponse",
435
+ "status": "online"
436
+ },
409
437
  "RestoreAndroidInstanceFromStorage": {
410
438
  "document": "使用指定存储数据还原云手机,支持 COS 和兼容 AWS S3 协议的对象存储服务。如果还原数据来自 COS 时,会使用公网流量,授权 COS bucket 请在控制台中操作。",
411
439
  "input": "RestoreAndroidInstanceFromStorageRequest",
@@ -1516,6 +1544,61 @@
1516
1544
  ],
1517
1545
  "usage": "both"
1518
1546
  },
1547
+ "BackUpAndroidInstanceRequest": {
1548
+ "document": "BackUpAndroidInstance请求参数结构体",
1549
+ "members": [
1550
+ {
1551
+ "disabled": false,
1552
+ "document": "安卓实例ID",
1553
+ "example": "cai-1a2b3c4d",
1554
+ "member": "string",
1555
+ "name": "AndroidInstanceId",
1556
+ "required": true,
1557
+ "type": "string"
1558
+ },
1559
+ {
1560
+ "disabled": false,
1561
+ "document": "包含的路径,支持仅含一个通配符*,通配符不能出现在路径开始",
1562
+ "example": "[ \"/data/tmp/\"]",
1563
+ "member": "string",
1564
+ "name": "Includes",
1565
+ "required": false,
1566
+ "type": "list"
1567
+ },
1568
+ {
1569
+ "disabled": false,
1570
+ "document": "需要排除路径,支持仅含一个通配符*,通配符不能出现在路径开始",
1571
+ "example": "[ \"/data/tmp/\"]",
1572
+ "member": "string",
1573
+ "name": "Excludes",
1574
+ "required": false,
1575
+ "type": "list"
1576
+ }
1577
+ ],
1578
+ "type": "object"
1579
+ },
1580
+ "BackUpAndroidInstanceResponse": {
1581
+ "document": "BackUpAndroidInstance返回参数结构体",
1582
+ "members": [
1583
+ {
1584
+ "disabled": false,
1585
+ "document": "备份 ID",
1586
+ "example": "backup-1a2b",
1587
+ "member": "string",
1588
+ "name": "BackupId",
1589
+ "output_required": true,
1590
+ "type": "string",
1591
+ "value_allowed_null": false
1592
+ },
1593
+ {
1594
+ "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
1595
+ "member": "string",
1596
+ "name": "RequestId",
1597
+ "type": "string"
1598
+ }
1599
+ ],
1600
+ "type": "object"
1601
+ },
1519
1602
  "BackUpAndroidInstanceToStorageRequest": {
1520
1603
  "document": "BackUpAndroidInstanceToStorage请求参数结构体",
1521
1604
  "members": [
@@ -2900,6 +2983,33 @@
2900
2983
  ],
2901
2984
  "type": "object"
2902
2985
  },
2986
+ "DeleteAndroidInstanceBackupsRequest": {
2987
+ "document": "DeleteAndroidInstanceBackups请求参数结构体",
2988
+ "members": [
2989
+ {
2990
+ "disabled": false,
2991
+ "document": "备份ID列表",
2992
+ "example": "[\"backup-1a2b\"]",
2993
+ "member": "string",
2994
+ "name": "BackupIds",
2995
+ "required": true,
2996
+ "type": "list"
2997
+ }
2998
+ ],
2999
+ "type": "object"
3000
+ },
3001
+ "DeleteAndroidInstanceBackupsResponse": {
3002
+ "document": "DeleteAndroidInstanceBackups返回参数结构体",
3003
+ "members": [
3004
+ {
3005
+ "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
3006
+ "member": "string",
3007
+ "name": "RequestId",
3008
+ "type": "string"
3009
+ }
3010
+ ],
3011
+ "type": "object"
3012
+ },
2903
3013
  "DeleteAndroidInstanceImagesRequest": {
2904
3014
  "document": "DeleteAndroidInstanceImages请求参数结构体",
2905
3015
  "members": [
@@ -3074,6 +3184,51 @@
3074
3184
  ],
3075
3185
  "type": "object"
3076
3186
  },
3187
+ "DescribeAndroidInstanceBackupsRequest": {
3188
+ "document": "DescribeAndroidInstanceBackups请求参数结构体",
3189
+ "members": [
3190
+ {
3191
+ "disabled": false,
3192
+ "document": "备份ID列表",
3193
+ "example": "[\"backup-1a2b\"]",
3194
+ "member": "string",
3195
+ "name": "BackupIds",
3196
+ "required": false,
3197
+ "type": "list"
3198
+ },
3199
+ {
3200
+ "disabled": false,
3201
+ "document": "分页偏移",
3202
+ "example": "10",
3203
+ "member": "int64",
3204
+ "name": "Offset",
3205
+ "required": false,
3206
+ "type": "int"
3207
+ },
3208
+ {
3209
+ "disabled": false,
3210
+ "document": "每页数量",
3211
+ "example": "100",
3212
+ "member": "int64",
3213
+ "name": "Limit",
3214
+ "required": false,
3215
+ "type": "int"
3216
+ }
3217
+ ],
3218
+ "type": "object"
3219
+ },
3220
+ "DescribeAndroidInstanceBackupsResponse": {
3221
+ "document": "DescribeAndroidInstanceBackups返回参数结构体",
3222
+ "members": [
3223
+ {
3224
+ "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
3225
+ "member": "string",
3226
+ "name": "RequestId",
3227
+ "type": "string"
3228
+ }
3229
+ ],
3230
+ "type": "object"
3231
+ },
3077
3232
  "DescribeAndroidInstanceImagesRequest": {
3078
3233
  "document": "DescribeAndroidInstanceImages请求参数结构体",
3079
3234
  "members": [
@@ -5153,6 +5308,52 @@
5153
5308
  ],
5154
5309
  "type": "object"
5155
5310
  },
5311
+ "RestoreAndroidInstanceRequest": {
5312
+ "document": "RestoreAndroidInstance请求参数结构体",
5313
+ "members": [
5314
+ {
5315
+ "disabled": false,
5316
+ "document": "安卓实例 ID",
5317
+ "example": "cai-1a2b3c4d",
5318
+ "member": "string",
5319
+ "name": "AndroidInstanceId",
5320
+ "required": true,
5321
+ "type": "string"
5322
+ },
5323
+ {
5324
+ "disabled": false,
5325
+ "document": "备份 ID",
5326
+ "example": "backup-1a2b",
5327
+ "member": "string",
5328
+ "name": "BackupId",
5329
+ "required": true,
5330
+ "type": "string"
5331
+ }
5332
+ ],
5333
+ "type": "object"
5334
+ },
5335
+ "RestoreAndroidInstanceResponse": {
5336
+ "document": "RestoreAndroidInstance返回参数结构体",
5337
+ "members": [
5338
+ {
5339
+ "disabled": false,
5340
+ "document": "实例任务 ID",
5341
+ "example": "任务 ID",
5342
+ "member": "string",
5343
+ "name": "TaskId",
5344
+ "output_required": true,
5345
+ "type": "string",
5346
+ "value_allowed_null": false
5347
+ },
5348
+ {
5349
+ "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
5350
+ "member": "string",
5351
+ "name": "RequestId",
5352
+ "type": "string"
5353
+ }
5354
+ ],
5355
+ "type": "object"
5356
+ },
5156
5357
  "S3Options": {
5157
5358
  "document": "S3协议参数",
5158
5359
  "members": [
@@ -1,5 +1,13 @@
1
1
  {
2
2
  "actions": {
3
+ "BackUpAndroidInstance": [
4
+ {
5
+ "document": "示例",
6
+ "input": "POST / HTTP/1.1\nHost: gs.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: BackUpAndroidInstance\n<公共请求参数>\n\n{\n \"AndroidInstanceId\": \"cai-251006279-fe2d6u0dry4\",\n \"Includes\": [\n \"/data/misc/\"\n ]\n}",
7
+ "output": "{\n \"Response\": {\n \"BackupId\": \"cai-251006279-fe2d6u0dry4-20250814194831\",\n \"RequestId\": \"d8b4d88f-f1ee-46af-80b6-a82e8d0efecd\"\n }\n}",
8
+ "title": "示例"
9
+ }
10
+ ],
3
11
  "BackUpAndroidInstanceToStorage": [
4
12
  {
5
13
  "document": "示例",
@@ -158,6 +166,14 @@
158
166
  "title": "示例"
159
167
  }
160
168
  ],
169
+ "DeleteAndroidInstanceBackups": [
170
+ {
171
+ "document": "示例",
172
+ "input": "POST / HTTP/1.1\nHost: gs.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DeleteAndroidInstanceBackups\n<公共请求参数>\n\n{\n \"BackupIds\": [\n \"cai-251006279-fe2d6u0dry4-20250814193859\"\n ]\n}",
173
+ "output": "{\n \"Response\": {\n \"RequestId\": \"ae7f7eb2-7c82-4278-bb50-34a132714218\"\n }\n}",
174
+ "title": "示例"
175
+ }
176
+ ],
161
177
  "DeleteAndroidInstanceImages": [
162
178
  {
163
179
  "document": "删除安卓实例镜像",
@@ -190,6 +206,14 @@
190
206
  "title": "查询安卓实例应用"
191
207
  }
192
208
  ],
209
+ "DescribeAndroidInstanceBackups": [
210
+ {
211
+ "document": "示例",
212
+ "input": "POST / HTTP/1.1\nHost: gs.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeAndroidInstanceBackups\n<公共请求参数>\n\n{}",
213
+ "output": "{\n \"Response\": {\n \"RequestId\": \"249a2ab6-3259-4bec-8683-bbf03492e894\"\n }\n}",
214
+ "title": "示例"
215
+ }
216
+ ],
193
217
  "DescribeAndroidInstanceImages": [
194
218
  {
195
219
  "document": "查询安卓实例镜像",
@@ -470,6 +494,14 @@
470
494
  "title": "示例"
471
495
  }
472
496
  ],
497
+ "RestoreAndroidInstance": [
498
+ {
499
+ "document": "示例",
500
+ "input": "POST / HTTP/1.1\nHost: gs.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: RestoreAndroidInstance\n<公共请求参数>\n\n{\n \"AndroidInstanceId\": \"cai-251006279-fe2dmi83dvo\",\n \"BackupId\": \"cai-251006279-fe2d6u0dry4-20250814194831\"\n}",
501
+ "output": "{\n \"Response\": {\n \"RequestId\": \"84f5461e-175b-4dde-bafc-e009900b831b\",\n \"TaskId\": \"6f082b31-9400-4c54-97ab-0a36dd788925\"\n }\n}",
502
+ "title": "示例"
503
+ }
504
+ ],
473
505
  "RestoreAndroidInstanceFromStorage": [
474
506
  {
475
507
  "document": "示例",