tccli 3.0.1152.1__py2.py3-none-any.whl → 3.0.1154.1__py2.py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. tccli/__init__.py +1 -1
  2. tccli/services/__init__.py +3 -0
  3. tccli/services/billing/v20180709/api.json +1 -1
  4. tccli/services/ccc/v20200210/api.json +2 -2
  5. tccli/services/clb/v20180317/api.json +1 -1
  6. tccli/services/cloudapp/__init__.py +4 -0
  7. tccli/services/cloudapp/cloudapp_client.py +195 -0
  8. tccli/services/cloudapp/v20220530/api.json +259 -0
  9. tccli/services/cloudapp/v20220530/examples.json +13 -0
  10. tccli/services/dsgc/v20190723/api.json +66 -3
  11. tccli/services/ess/v20201111/api.json +1 -1
  12. tccli/services/essbasic/v20210526/api.json +24 -6
  13. tccli/services/essbasic/v20210526/examples.json +8 -2
  14. tccli/services/faceid/v20180301/api.json +5 -5
  15. tccli/services/hunyuan/v20230901/api.json +2 -2
  16. tccli/services/lighthouse/v20200324/api.json +6 -6
  17. tccli/services/live/v20180801/api.json +1 -1
  18. tccli/services/lke/v20231130/api.json +3 -3
  19. tccli/services/mongodb/v20190725/api.json +2 -2
  20. tccli/services/monitor/v20180724/api.json +36 -36
  21. tccli/services/monitor/v20180724/examples.json +25 -25
  22. tccli/services/oceanus/v20190422/api.json +20 -0
  23. tccli/services/tcr/v20190924/api.json +1 -1
  24. tccli/services/tcr/v20190924/examples.json +1 -1
  25. tccli/services/tke/v20180525/api.json +4 -4
  26. tccli/services/trtc/v20190722/api.json +2 -2
  27. tccli/services/vpc/v20170312/api.json +1 -1
  28. tccli/services/waf/v20180125/examples.json +1 -1
  29. {tccli-3.0.1152.1.dist-info → tccli-3.0.1154.1.dist-info}/METADATA +2 -2
  30. {tccli-3.0.1152.1.dist-info → tccli-3.0.1154.1.dist-info}/RECORD +33 -29
  31. {tccli-3.0.1152.1.dist-info → tccli-3.0.1154.1.dist-info}/WHEEL +0 -0
  32. {tccli-3.0.1152.1.dist-info → tccli-3.0.1154.1.dist-info}/entry_points.txt +0 -0
  33. {tccli-3.0.1152.1.dist-info → tccli-3.0.1154.1.dist-info}/license_files/LICENSE +0 -0
tccli/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = '3.0.1152.1'
1
+ __version__ = '3.0.1154.1'
@@ -200,6 +200,9 @@ SERVICE_VERSIONS = {
200
200
  "clb": [
201
201
  "2018-03-17"
202
202
  ],
203
+ "cloudapp": [
204
+ "2022-05-30"
205
+ ],
203
206
  "cloudaudit": [
204
207
  "2019-03-19"
205
208
  ],
@@ -183,7 +183,7 @@
183
183
  "status": "online"
184
184
  },
185
185
  "DescribeCostDetail": {
186
- "document": "查询消耗明细",
186
+ "document": "查询消耗明细\n\n注意事项:\n1. 对于消耗明细数据量级很大(例如每月消耗明细量级超过100w)的客户,通过 API 调用明细数据会有超时风险,建议您开通消耗账单数据存储功能,通过存储桶中获取账单文件进行分析。[账单存储至COS桶](https://cloud.tencent.com/document/product/555/61275)",
187
187
  "input": "DescribeCostDetailRequest",
188
188
  "name": "查询消耗明细",
189
189
  "output": "DescribeCostDetailResponse",
@@ -4447,8 +4447,8 @@
4447
4447
  },
4448
4448
  {
4449
4449
  "disabled": false,
4450
- "document": "筛选坐席状态列表",
4451
- "example": "[0,100,200,300,400,500,600,700,800]",
4450
+ "document": "筛选坐席状态列表 座席状态 free 示闲 | busy 忙碌 | rest 小休 | notReady 示忙 | afterCallWork 话后调整 | offline 离线 ",
4451
+ "example": "[\"free\"]",
4452
4452
  "member": "string",
4453
4453
  "name": "StatusList",
4454
4454
  "required": false,
@@ -463,7 +463,7 @@
463
463
  "status": "online"
464
464
  },
465
465
  "ModifyLoadBalancerAttributes": {
466
- "document": "修改负载均衡实例的属性。支持修改负载均衡实例的名称、设置负载均衡的跨域属性。\n本接口为异步接口,接口返回成功后,需以得到的 RequestID 为入参,调用 DescribeTaskStatus 接口查询本次任务是否成功。",
466
+ "document": "修改负载均衡实例的属性。支持修改负载均衡实例的名称、设置负载均衡的跨域属性。\n注意:非带宽上移用户的 CLB 实例必须加入带宽包才可以设置跨域属性。\n本接口为异步接口,接口返回成功后,需以得到的 RequestID 为入参,调用 DescribeTaskStatus 接口查询本次任务是否成功。",
467
467
  "input": "ModifyLoadBalancerAttributesRequest",
468
468
  "name": "修改负载均衡实例的属性",
469
469
  "output": "ModifyLoadBalancerAttributesResponse",
@@ -0,0 +1,4 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ from tccli.services.cloudapp.cloudapp_client import action_caller
4
+
@@ -0,0 +1,195 @@
1
+ # -*- coding: utf-8 -*-
2
+ import os
3
+ import sys
4
+ import six
5
+ import json
6
+ import tccli.options_define as OptionsDefine
7
+ import tccli.format_output as FormatOutput
8
+ from tccli import __version__
9
+ from tccli.utils import Utils
10
+ from tccli.exceptions import ConfigurationError, ClientError, ParamError
11
+ from tencentcloud.common import credential
12
+ from tencentcloud.common.profile.http_profile import HttpProfile
13
+ from tencentcloud.common.profile.client_profile import ClientProfile
14
+ from tencentcloud.cloudapp.v20220530 import cloudapp_client as cloudapp_client_v20220530
15
+ from tencentcloud.cloudapp.v20220530 import models as models_v20220530
16
+
17
+ from jmespath import search
18
+ import time
19
+
20
+ def doVerifyLicense(args, parsed_globals):
21
+ g_param = parse_global_arg(parsed_globals)
22
+
23
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
24
+ cred = credential.CVMRoleCredential()
25
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
26
+ cred = credential.STSAssumeRoleCredential(
27
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
28
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
29
+ )
30
+ 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):
31
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
32
+ else:
33
+ cred = credential.Credential(
34
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
35
+ )
36
+ http_profile = HttpProfile(
37
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
38
+ reqMethod="POST",
39
+ endpoint=g_param[OptionsDefine.Endpoint],
40
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
41
+ )
42
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
43
+ if g_param[OptionsDefine.Language]:
44
+ profile.language = g_param[OptionsDefine.Language]
45
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
46
+ client = mod.CloudappClient(cred, g_param[OptionsDefine.Region], profile)
47
+ client._sdkVersion += ("_CLI_" + __version__)
48
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
49
+ model = models.VerifyLicenseRequest()
50
+ model.from_json_string(json.dumps(args))
51
+ start_time = time.time()
52
+ while True:
53
+ rsp = client.VerifyLicense(model)
54
+ result = rsp.to_json_string()
55
+ try:
56
+ json_obj = json.loads(result)
57
+ except TypeError as e:
58
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
59
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
60
+ break
61
+ cur_time = time.time()
62
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
63
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
64
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
65
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
66
+ else:
67
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
68
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
69
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
70
+
71
+
72
+ CLIENT_MAP = {
73
+ "v20220530": cloudapp_client_v20220530,
74
+
75
+ }
76
+
77
+ MODELS_MAP = {
78
+ "v20220530": models_v20220530,
79
+
80
+ }
81
+
82
+ ACTION_MAP = {
83
+ "VerifyLicense": doVerifyLicense,
84
+
85
+ }
86
+
87
+ AVAILABLE_VERSION_LIST = [
88
+ "v20220530",
89
+
90
+ ]
91
+
92
+
93
+ def action_caller():
94
+ return ACTION_MAP
95
+
96
+
97
+ def parse_global_arg(parsed_globals):
98
+ g_param = parsed_globals
99
+
100
+ is_exist_profile = True
101
+ if not parsed_globals["profile"]:
102
+ is_exist_profile = False
103
+ g_param["profile"] = os.environ.get("TCCLI_PROFILE", "default")
104
+
105
+ configure_path = os.path.join(os.path.expanduser("~"), ".tccli")
106
+ is_conf_exist, conf_path = Utils.file_existed(configure_path, g_param["profile"] + ".configure")
107
+ is_cred_exist, cred_path = Utils.file_existed(configure_path, g_param["profile"] + ".credential")
108
+
109
+ conf = {}
110
+ cred = {}
111
+
112
+ if is_conf_exist:
113
+ conf = Utils.load_json_msg(conf_path)
114
+ if is_cred_exist:
115
+ cred = Utils.load_json_msg(cred_path)
116
+
117
+ if not (isinstance(conf, dict) and isinstance(cred, dict)):
118
+ raise ConfigurationError(
119
+ "file: %s or %s is not json format"
120
+ % (g_param["profile"] + ".configure", g_param["profile"] + ".credential"))
121
+
122
+ if OptionsDefine.Token not in cred:
123
+ cred[OptionsDefine.Token] = None
124
+
125
+ if not is_exist_profile:
126
+ if os.environ.get(OptionsDefine.ENV_SECRET_ID) and os.environ.get(OptionsDefine.ENV_SECRET_KEY):
127
+ cred[OptionsDefine.SecretId] = os.environ.get(OptionsDefine.ENV_SECRET_ID)
128
+ cred[OptionsDefine.SecretKey] = os.environ.get(OptionsDefine.ENV_SECRET_KEY)
129
+ cred[OptionsDefine.Token] = os.environ.get(OptionsDefine.ENV_TOKEN)
130
+
131
+ if os.environ.get(OptionsDefine.ENV_REGION):
132
+ conf[OptionsDefine.SysParam][OptionsDefine.Region] = os.environ.get(OptionsDefine.ENV_REGION)
133
+
134
+ if os.environ.get(OptionsDefine.ENV_ROLE_ARN) and os.environ.get(OptionsDefine.ENV_ROLE_SESSION_NAME):
135
+ cred[OptionsDefine.RoleArn] = os.environ.get(OptionsDefine.ENV_ROLE_ARN)
136
+ cred[OptionsDefine.RoleSessionName] = os.environ.get(OptionsDefine.ENV_ROLE_SESSION_NAME)
137
+
138
+ for param in g_param.keys():
139
+ if g_param[param] is None:
140
+ if param in [OptionsDefine.SecretKey, OptionsDefine.SecretId, OptionsDefine.Token]:
141
+ if param in cred:
142
+ g_param[param] = cred[param]
143
+ elif not (g_param[OptionsDefine.UseCVMRole.replace('-', '_')]
144
+ or os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN)):
145
+ raise ConfigurationError("%s is invalid" % param)
146
+ elif param in [OptionsDefine.Region, OptionsDefine.Output, OptionsDefine.Language]:
147
+ if param in conf[OptionsDefine.SysParam]:
148
+ g_param[param] = conf[OptionsDefine.SysParam][param]
149
+ elif param != OptionsDefine.Language:
150
+ raise ConfigurationError("%s is invalid" % param)
151
+ elif param.replace('_', '-') in [OptionsDefine.RoleArn, OptionsDefine.RoleSessionName]:
152
+ if param.replace('_', '-') in cred:
153
+ g_param[param] = cred[param.replace('_', '-')]
154
+
155
+ try:
156
+ if g_param[OptionsDefine.ServiceVersion]:
157
+ g_param[OptionsDefine.Version] = "v" + g_param[OptionsDefine.ServiceVersion].replace('-', '')
158
+ else:
159
+ version = conf["cloudapp"][OptionsDefine.Version]
160
+ g_param[OptionsDefine.Version] = "v" + version.replace('-', '')
161
+
162
+ if g_param[OptionsDefine.Endpoint] is None:
163
+ g_param[OptionsDefine.Endpoint] = conf["cloudapp"][OptionsDefine.Endpoint]
164
+ g_param["sts_cred_endpoint"] = conf.get("sts", {}).get("endpoint")
165
+ except Exception as err:
166
+ raise ConfigurationError("config file:%s error, %s" % (conf_path, str(err)))
167
+
168
+ if g_param[OptionsDefine.Version] not in AVAILABLE_VERSION_LIST:
169
+ raise Exception("available versions: %s" % " ".join(AVAILABLE_VERSION_LIST))
170
+
171
+ if g_param[OptionsDefine.Waiter]:
172
+ param = eval(g_param[OptionsDefine.Waiter])
173
+ if 'expr' not in param:
174
+ raise Exception('`expr` in `--waiter` must be defined')
175
+ if 'to' not in param:
176
+ raise Exception('`to` in `--waiter` must be defined')
177
+ if 'timeout' not in param:
178
+ if 'waiter' in conf and 'timeout' in conf['waiter']:
179
+ param['timeout'] = conf['waiter']['timeout']
180
+ else:
181
+ param['timeout'] = 180
182
+ if 'interval' not in param:
183
+ if 'waiter' in conf and 'interval' in conf['waiter']:
184
+ param['interval'] = conf['waiter']['interval']
185
+ else:
186
+ param['interval'] = 5
187
+ param['interval'] = min(param['interval'], param['timeout'])
188
+ g_param['OptionsDefine.WaiterInfo'] = param
189
+
190
+ if six.PY2:
191
+ for key, value in g_param.items():
192
+ if isinstance(value, six.text_type):
193
+ g_param[key] = value.encode('utf-8')
194
+ return g_param
195
+
@@ -0,0 +1,259 @@
1
+ {
2
+ "actions": {
3
+ "VerifyLicense": {
4
+ "document": "通过运行时roleId查询对应的软件 LICENSE",
5
+ "input": "VerifyLicenseRequest",
6
+ "name": "从应用软件进程验证授权信息",
7
+ "output": "VerifyLicenseResponse",
8
+ "status": "online"
9
+ }
10
+ },
11
+ "metadata": {
12
+ "apiVersion": "2022-05-30",
13
+ "api_brief": "介绍如何使用 API 对云应用进行部署、管理等操作。",
14
+ "serviceNameCN": "云应用",
15
+ "serviceShortName": "cloudapp"
16
+ },
17
+ "objects": {
18
+ "License": {
19
+ "document": "表示应用实例的软件授权,包含颁发信息、激活信息等内容。",
20
+ "members": [
21
+ {
22
+ "disabled": false,
23
+ "document": "License ID",
24
+ "example": "LICENSE_CLOUDAPP_A95275D8",
25
+ "member": "string",
26
+ "name": "LicenseId",
27
+ "output_required": true,
28
+ "type": "string",
29
+ "value_allowed_null": false
30
+ },
31
+ {
32
+ "disabled": false,
33
+ "document": "软件授权模式。<table><thead><tr><th>枚举值</th><th>说明</th></tr></thead><tbody><tr><td>Permanent</td><td>永久授权。该授权不受有效期限制。</td></tr><tr><td>Subscription</td><td>订阅授权。授权如果过了有效期,则会进入过期状态。</td></tr></tbody></table>",
34
+ "example": "Subscription",
35
+ "member": "string",
36
+ "name": "LicenseMode",
37
+ "output_required": true,
38
+ "type": "string",
39
+ "value_allowed_null": false
40
+ },
41
+ {
42
+ "disabled": false,
43
+ "document": "软件的授权状态。<table><thead><tr><th>枚举值</th><th>说明</th></tr></thead><tbody><tr><td>Issued</td><td>已颁发,等待激活。一般来说,如果软件已经在运行,不会出现该状态。</td></tr><tr><td>Active</td><td>授权在有效期内,这是软件运行期间最常见的状态。</td></tr><tr><td>Expired</td><td>授权已过期。订阅类的软件授权有有效期,如果服务器时间已晚于有效期,则会进入过期状态。</td></tr><tr><td>Deactivated</td><td>授权已失效。用户如果退货软件,则授权会自动失效。</td></tr></tbody></table>",
44
+ "example": "Active",
45
+ "member": "string",
46
+ "name": "LicenseStatus",
47
+ "output_required": true,
48
+ "type": "string",
49
+ "value_allowed_null": false
50
+ },
51
+ {
52
+ "disabled": false,
53
+ "document": "软件供应方 ID。",
54
+ "example": "1000",
55
+ "member": "uint64",
56
+ "name": "ProviderId",
57
+ "output_required": true,
58
+ "type": "int",
59
+ "value_allowed_null": false
60
+ },
61
+ {
62
+ "disabled": false,
63
+ "document": "软件包 ID。",
64
+ "example": "pkg-kby01bv4",
65
+ "member": "string",
66
+ "name": "SoftwarePackageId",
67
+ "output_required": true,
68
+ "type": "string",
69
+ "value_allowed_null": false
70
+ },
71
+ {
72
+ "disabled": false,
73
+ "document": "软件包版本。",
74
+ "example": "1.0.0",
75
+ "member": "string",
76
+ "name": "SoftwarePackageVersion",
77
+ "output_required": true,
78
+ "type": "string",
79
+ "value_allowed_null": false
80
+ },
81
+ {
82
+ "disabled": false,
83
+ "document": "被授权的用户 UIN。",
84
+ "example": "100008888888",
85
+ "member": "string",
86
+ "name": "AuthorizedUserUin",
87
+ "output_required": true,
88
+ "type": "string",
89
+ "value_allowed_null": false
90
+ },
91
+ {
92
+ "disabled": false,
93
+ "document": "被授权的应用实例 ID。",
94
+ "example": "cloudapp-95t785d8",
95
+ "member": "string",
96
+ "name": "AuthorizedCloudappId",
97
+ "output_required": true,
98
+ "type": "string",
99
+ "value_allowed_null": false
100
+ },
101
+ {
102
+ "disabled": false,
103
+ "document": "被授权的角色 ID。",
104
+ "example": "4000008000060000",
105
+ "member": "string",
106
+ "name": "AuthorizedCloudappRoleId",
107
+ "output_required": true,
108
+ "type": "string",
109
+ "value_allowed_null": false
110
+ },
111
+ {
112
+ "disabled": false,
113
+ "document": "被授权的软件规格,具体字段请参考结构SaleParam",
114
+ "example": "无",
115
+ "member": "SaleParam",
116
+ "name": "AuthorizedSpecification",
117
+ "output_required": true,
118
+ "type": "list",
119
+ "value_allowed_null": false
120
+ },
121
+ {
122
+ "disabled": false,
123
+ "document": "被授权的软件的计费模式。<table><thead><tr><th>枚举值</th><th>说明</th></tr></thead><tbody><tr><td>1</td><td>线上计费,软件的授权从腾讯云线上购买,支持续费、退款等操作。</td></tr><tr><td>2</td><td>线下计费,软件的授权线下签订合同购买,定向客户交付,无法从线上续费和退款。</td></tr><tr><td>4</td><td>免费</td></tr></tbody></table>",
124
+ "example": "1",
125
+ "member": "int64",
126
+ "name": "BillingMode",
127
+ "output_required": true,
128
+ "type": "int",
129
+ "value_allowed_null": false
130
+ },
131
+ {
132
+ "disabled": false,
133
+ "document": "授权时长(单位由LifeSpanUnit确定,枚举值有Y年/M月/D日三种)",
134
+ "example": "1",
135
+ "member": "int64",
136
+ "name": "LifeSpan",
137
+ "output_required": false,
138
+ "type": "int",
139
+ "value_allowed_null": false
140
+ },
141
+ {
142
+ "disabled": false,
143
+ "document": "授权颁发时间。",
144
+ "example": "2024-06-29T00:00:00+08:00",
145
+ "member": "datetime_iso",
146
+ "name": "IssueDate",
147
+ "output_required": true,
148
+ "type": "string",
149
+ "value_allowed_null": false
150
+ },
151
+ {
152
+ "disabled": false,
153
+ "document": "授权激活时间,如从未激活则返回 null。\n注意:此字段可能返回 null,表示取不到有效值。",
154
+ "example": "2024-06-30T00:00:00+08:00",
155
+ "member": "datetime_iso",
156
+ "name": "ActivationDate",
157
+ "output_required": false,
158
+ "type": "string",
159
+ "value_allowed_null": true
160
+ },
161
+ {
162
+ "disabled": false,
163
+ "document": "授权过期时间,如未过期或者是永久授权,则返回 null。\n注意:此字段可能返回 null,表示取不到有效值。",
164
+ "example": "2025-06-30T00:00:00+08:00",
165
+ "member": "datetime_iso",
166
+ "name": "ExpirationDate",
167
+ "output_required": false,
168
+ "type": "string",
169
+ "value_allowed_null": true
170
+ },
171
+ {
172
+ "disabled": false,
173
+ "document": "授权时长单位,枚举值有Y年/M月/D日三种",
174
+ "example": "Y",
175
+ "member": "string",
176
+ "name": "LifeSpanUnit",
177
+ "output_required": false,
178
+ "type": "string",
179
+ "value_allowed_null": false
180
+ }
181
+ ],
182
+ "usage": "out"
183
+ },
184
+ "SaleParam": {
185
+ "document": "表示商品 SKU 的单个售卖参数",
186
+ "members": [
187
+ {
188
+ "disabled": false,
189
+ "document": "售卖参数标识",
190
+ "example": "user_scale",
191
+ "member": "string",
192
+ "name": "ParamKey",
193
+ "output_required": true,
194
+ "type": "string",
195
+ "value_allowed_null": false
196
+ },
197
+ {
198
+ "disabled": false,
199
+ "document": "售卖参数值",
200
+ "example": "100",
201
+ "member": "string",
202
+ "name": "ParamValue",
203
+ "output_required": true,
204
+ "type": "string",
205
+ "value_allowed_null": false
206
+ },
207
+ {
208
+ "disabled": false,
209
+ "document": "售卖参数的展示名称\n注意:此字段可能返回 null,表示取不到有效值。",
210
+ "example": "用户规模",
211
+ "member": "string",
212
+ "name": "ParamKeyName",
213
+ "output_required": true,
214
+ "type": "string",
215
+ "value_allowed_null": true
216
+ },
217
+ {
218
+ "disabled": false,
219
+ "document": "售卖参数值的展示名称\n注意:此字段可能返回 null,表示取不到有效值。",
220
+ "example": "100人",
221
+ "member": "string",
222
+ "name": "ParamValueName",
223
+ "output_required": true,
224
+ "type": "string",
225
+ "value_allowed_null": true
226
+ }
227
+ ],
228
+ "usage": "out"
229
+ },
230
+ "VerifyLicenseRequest": {
231
+ "document": "VerifyLicense请求参数结构体",
232
+ "members": [],
233
+ "type": "object"
234
+ },
235
+ "VerifyLicenseResponse": {
236
+ "document": "VerifyLicense返回参数结构体",
237
+ "members": [
238
+ {
239
+ "disabled": false,
240
+ "document": "软件的详细授权信息。",
241
+ "example": "见 License 数据结构。",
242
+ "member": "License",
243
+ "name": "License",
244
+ "output_required": true,
245
+ "type": "object",
246
+ "value_allowed_null": false
247
+ },
248
+ {
249
+ "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
250
+ "member": "string",
251
+ "name": "RequestId",
252
+ "type": "string"
253
+ }
254
+ ],
255
+ "type": "object"
256
+ }
257
+ },
258
+ "version": "1.0"
259
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "actions": {
3
+ "VerifyLicense": [
4
+ {
5
+ "document": "",
6
+ "input": "POST / HTTP/1.1\nHost: cloudapp.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: VerifyLicense\n<公共请求参数>\n\n{}",
7
+ "output": "{\n \"Response\": {\n \"License\": {\n \"LicenseId\": \"abc\",\n \"LicenseMode\": \"abc\",\n \"LicenseStatus\": \"abc\",\n \"ProviderId\": 1,\n \"SoftwarePackageId\": \"abc\",\n \"SoftwarePackageVersion\": \"abc\",\n \"AuthorizedUserUin\": \"abc\",\n \"AuthorizedCloudappId\": \"abc\",\n \"AuthorizedCloudappRoleId\": \"abc\",\n \"AuthorizedSpecification\": [\n {\n \"ParamKey\": \"abc\",\n \"ParamValue\": \"abc\",\n \"ParamKeyName\": \"abc\",\n \"ParamValueName\": \"abc\"\n }\n ],\n \"BillingMode\": 0,\n \"LifeSpan\": 0,\n \"IssueDate\": \"2020-09-22T00:00:00+00:00\",\n \"ActivationDate\": \"2020-09-22T00:00:00+00:00\",\n \"ExpirationDate\": \"2020-09-22T00:00:00+00:00\",\n \"LifeSpanUnit\": \"abc\"\n },\n \"RequestId\": \"abc\"\n }\n}",
8
+ "title": "通过运行时roleId查询对应的软件 LICENSE"
9
+ }
10
+ ]
11
+ },
12
+ "version": "1.0"
13
+ }
@@ -3955,6 +3955,33 @@
3955
3955
  "name": "TimingStartTime",
3956
3956
  "required": false,
3957
3957
  "type": "string"
3958
+ },
3959
+ {
3960
+ "disabled": false,
3961
+ "document": "random-随机,asc生序,desc降序",
3962
+ "example": "抽样方式",
3963
+ "member": "string",
3964
+ "name": "Order",
3965
+ "required": false,
3966
+ "type": "string"
3967
+ },
3968
+ {
3969
+ "disabled": false,
3970
+ "document": "抽样的条数,范围30-1000",
3971
+ "example": "20",
3972
+ "member": "int64",
3973
+ "name": "Rows",
3974
+ "required": false,
3975
+ "type": "int"
3976
+ },
3977
+ {
3978
+ "disabled": false,
3979
+ "document": "抽样的排序字段",
3980
+ "example": "id",
3981
+ "member": "string",
3982
+ "name": "GlobalOrderField",
3983
+ "required": false,
3984
+ "type": "string"
3958
3985
  }
3959
3986
  ],
3960
3987
  "type": "object"
@@ -3968,7 +3995,7 @@
3968
3995
  "example": "1",
3969
3996
  "member": "int64",
3970
3997
  "name": "TaskId",
3971
- "required": true,
3998
+ "output_required": true,
3972
3999
  "type": "int",
3973
4000
  "value_allowed_null": false
3974
4001
  },
@@ -3978,7 +4005,7 @@
3978
4005
  "example": "1",
3979
4006
  "member": "int64",
3980
4007
  "name": "ResultId",
3981
- "required": true,
4008
+ "output_required": true,
3982
4009
  "type": "int",
3983
4010
  "value_allowed_null": true
3984
4011
  },
@@ -9480,6 +9507,24 @@
9480
9507
  "name": "FieldResultId",
9481
9508
  "required": true,
9482
9509
  "type": "int"
9510
+ },
9511
+ {
9512
+ "disabled": false,
9513
+ "document": "排序方式",
9514
+ "example": "random",
9515
+ "member": "string",
9516
+ "name": "Order",
9517
+ "required": false,
9518
+ "type": "string"
9519
+ },
9520
+ {
9521
+ "disabled": false,
9522
+ "document": "排序字段",
9523
+ "example": "id",
9524
+ "member": "string",
9525
+ "name": "OrderField",
9526
+ "required": false,
9527
+ "type": "string"
9483
9528
  }
9484
9529
  ],
9485
9530
  "type": "object"
@@ -9924,6 +9969,24 @@
9924
9969
  "name": "FieldResultId",
9925
9970
  "required": true,
9926
9971
  "type": "int"
9972
+ },
9973
+ {
9974
+ "disabled": false,
9975
+ "document": "排序方式",
9976
+ "example": "random",
9977
+ "member": "string",
9978
+ "name": "Order",
9979
+ "required": false,
9980
+ "type": "string"
9981
+ },
9982
+ {
9983
+ "disabled": false,
9984
+ "document": "排序字段",
9985
+ "example": "id",
9986
+ "member": "string",
9987
+ "name": "OrderField",
9988
+ "required": false,
9989
+ "type": "string"
9927
9990
  }
9928
9991
  ],
9929
9992
  "type": "object"
@@ -9937,7 +10000,7 @@
9937
10000
  "example": "无",
9938
10001
  "member": "DspaFieldResultDataSample",
9939
10002
  "name": "Items",
9940
- "required": true,
10003
+ "output_required": true,
9941
10004
  "type": "list",
9942
10005
  "value_allowed_null": true
9943
10006
  },
@@ -6106,7 +6106,7 @@
6106
6106
  },
6107
6107
  {
6108
6108
  "disabled": false,
6109
- "document": "电子印章类型 , 可选类型如下: <ul><li>**OFFICIAL**: (默认)公章</li><li>**CONTRACT**: 合同专用章;</li><li>**FINANCE**: 财务专用章;</li><li>**PERSONNEL**: 人事专用章</li><li>**INVOICE**: 发票专用章</li></ul>注: `同企业下只能有<font color=\"red\">一个</font>公章, 重复创建会报错`",
6109
+ "document": "电子印章类型 , 可选类型如下: <ul><li>**OFFICIAL**: (默认)公章</li><li>**CONTRACT**: 合同专用章;</li><li>**FINANCE**: 财务专用章;</li><li>**PERSONNEL**: 人事专用章</li><li>**INVOICE**: 发票专用章</li><li>**OTHER**: 其他</li></ul>注: 同企业下只能有<font color=\"red\">一个</font>公章, 重复创建会报错",
6110
6110
  "example": "OFFICIAL",
6111
6111
  "member": "string",
6112
6112
  "name": "SealType",