tccli 3.0.1121.1__py2.py3-none-any.whl → 3.0.1122.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.
- tccli/__init__.py +1 -1
- tccli/services/__init__.py +3 -0
- tccli/services/antiddos/v20200309/api.json +19 -0
- tccli/services/cdb/v20170320/api.json +127 -26
- tccli/services/cdb/v20170320/examples.json +2 -2
- tccli/services/domain/v20180808/api.json +18 -0
- tccli/services/ess/ess_client.py +53 -0
- tccli/services/ess/v20201111/api.json +126 -0
- tccli/services/ess/v20201111/examples.json +20 -0
- tccli/services/faceid/v20180301/api.json +2 -2
- tccli/services/lighthouse/v20200324/api.json +72 -64
- tccli/services/lighthouse/v20200324/examples.json +1 -1
- tccli/services/tcb/v20180608/api.json +5 -5
- tccli/services/tcr/v20190924/api.json +1 -1
- tccli/services/tcr/v20190924/examples.json +1 -1
- tccli/services/tse/v20201207/api.json +22 -0
- tccli/services/tsf/v20180326/api.json +77 -16
- tccli/services/vdb/__init__.py +4 -0
- tccli/services/vdb/v20230616/api.json +505 -0
- tccli/services/vdb/v20230616/examples.json +13 -0
- tccli/services/vdb/vdb_client.py +195 -0
- tccli/services/waf/v20180125/api.json +124 -0
- tccli/services/waf/v20180125/examples.json +8 -0
- tccli/services/waf/waf_client.py +53 -0
- tccli/services/wedata/v20210820/api.json +9 -0
- {tccli-3.0.1121.1.dist-info → tccli-3.0.1122.1.dist-info}/METADATA +2 -2
- {tccli-3.0.1121.1.dist-info → tccli-3.0.1122.1.dist-info}/RECORD +30 -26
- {tccli-3.0.1121.1.dist-info → tccli-3.0.1122.1.dist-info}/WHEEL +0 -0
- {tccli-3.0.1121.1.dist-info → tccli-3.0.1122.1.dist-info}/entry_points.txt +0 -0
- {tccli-3.0.1121.1.dist-info → tccli-3.0.1122.1.dist-info}/license_files/LICENSE +0 -0
| @@ -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.vdb.v20230616 import vdb_client as vdb_client_v20230616
         | 
| 15 | 
            +
            from tencentcloud.vdb.v20230616 import models as models_v20230616
         | 
| 16 | 
            +
             | 
| 17 | 
            +
            from jmespath import search
         | 
| 18 | 
            +
            import time
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            def doDescribeInstances(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.VdbClient(cred, g_param[OptionsDefine.Region], profile)
         | 
| 47 | 
            +
                client._sdkVersion += ("_CLI_" + __version__)
         | 
| 48 | 
            +
                models = MODELS_MAP[g_param[OptionsDefine.Version]]
         | 
| 49 | 
            +
                model = models.DescribeInstancesRequest()
         | 
| 50 | 
            +
                model.from_json_string(json.dumps(args))
         | 
| 51 | 
            +
                start_time = time.time()
         | 
| 52 | 
            +
                while True:
         | 
| 53 | 
            +
                    rsp = client.DescribeInstances(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 | 
            +
                "v20230616": vdb_client_v20230616,
         | 
| 74 | 
            +
             | 
| 75 | 
            +
            }
         | 
| 76 | 
            +
             | 
| 77 | 
            +
            MODELS_MAP = {
         | 
| 78 | 
            +
                "v20230616": models_v20230616,
         | 
| 79 | 
            +
             | 
| 80 | 
            +
            }
         | 
| 81 | 
            +
             | 
| 82 | 
            +
            ACTION_MAP = {
         | 
| 83 | 
            +
                "DescribeInstances": doDescribeInstances,
         | 
| 84 | 
            +
             | 
| 85 | 
            +
            }
         | 
| 86 | 
            +
             | 
| 87 | 
            +
            AVAILABLE_VERSION_LIST = [
         | 
| 88 | 
            +
                "v20230616",
         | 
| 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["vdb"][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["vdb"][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 | 
            +
             | 
| @@ -672,6 +672,13 @@ | |
| 672 672 | 
             
                  "output": "ModifyApiAnalyzeStatusResponse",
         | 
| 673 673 | 
             
                  "status": "online"
         | 
| 674 674 | 
             
                },
         | 
| 675 | 
            +
                "ModifyApiSecEventChange": {
         | 
| 676 | 
            +
                  "document": "api安全状态变更接口",
         | 
| 677 | 
            +
                  "input": "ModifyApiSecEventChangeRequest",
         | 
| 678 | 
            +
                  "name": "api安全状态变更接口",
         | 
| 679 | 
            +
                  "output": "ModifyApiSecEventChangeResponse",
         | 
| 680 | 
            +
                  "status": "online"
         | 
| 681 | 
            +
                },
         | 
| 675 682 | 
             
                "ModifyAreaBanStatus": {
         | 
| 676 683 | 
             
                  "document": "修改防护域名的地域封禁状态",
         | 
| 677 684 | 
             
                  "input": "ModifyAreaBanStatusRequest",
         | 
| @@ -2388,6 +2395,42 @@ | |
| 2388 2395 | 
             
                  ],
         | 
| 2389 2396 | 
             
                  "usage": "both"
         | 
| 2390 2397 | 
             
                },
         | 
| 2398 | 
            +
                "ApiSecKey": {
         | 
| 2399 | 
            +
                  "document": "api列表",
         | 
| 2400 | 
            +
                  "members": [
         | 
| 2401 | 
            +
                    {
         | 
| 2402 | 
            +
                      "disabled": false,
         | 
| 2403 | 
            +
                      "document": "api名称",
         | 
| 2404 | 
            +
                      "example": "无",
         | 
| 2405 | 
            +
                      "member": "string",
         | 
| 2406 | 
            +
                      "name": "ApiName",
         | 
| 2407 | 
            +
                      "required": true,
         | 
| 2408 | 
            +
                      "type": "string",
         | 
| 2409 | 
            +
                      "value_allowed_null": false
         | 
| 2410 | 
            +
                    },
         | 
| 2411 | 
            +
                    {
         | 
| 2412 | 
            +
                      "disabled": false,
         | 
| 2413 | 
            +
                      "document": "域名",
         | 
| 2414 | 
            +
                      "example": "qcloudwaf.com",
         | 
| 2415 | 
            +
                      "member": "string",
         | 
| 2416 | 
            +
                      "name": "Domain",
         | 
| 2417 | 
            +
                      "required": true,
         | 
| 2418 | 
            +
                      "type": "string",
         | 
| 2419 | 
            +
                      "value_allowed_null": false
         | 
| 2420 | 
            +
                    },
         | 
| 2421 | 
            +
                    {
         | 
| 2422 | 
            +
                      "disabled": false,
         | 
| 2423 | 
            +
                      "document": "请求方法",
         | 
| 2424 | 
            +
                      "example": "POST",
         | 
| 2425 | 
            +
                      "member": "string",
         | 
| 2426 | 
            +
                      "name": "Method",
         | 
| 2427 | 
            +
                      "required": true,
         | 
| 2428 | 
            +
                      "type": "string",
         | 
| 2429 | 
            +
                      "value_allowed_null": false
         | 
| 2430 | 
            +
                    }
         | 
| 2431 | 
            +
                  ],
         | 
| 2432 | 
            +
                  "usage": "in"
         | 
| 2433 | 
            +
                },
         | 
| 2391 2434 | 
             
                "AttackLogInfo": {
         | 
| 2392 2435 | 
             
                  "document": "攻击日志详情",
         | 
| 2393 2436 | 
             
                  "members": [
         | 
| @@ -14163,6 +14206,87 @@ | |
| 14163 14206 | 
             
                  ],
         | 
| 14164 14207 | 
             
                  "type": "object"
         | 
| 14165 14208 | 
             
                },
         | 
| 14209 | 
            +
                "ModifyApiSecEventChangeRequest": {
         | 
| 14210 | 
            +
                  "document": "ModifyApiSecEventChange请求参数结构体",
         | 
| 14211 | 
            +
                  "members": [
         | 
| 14212 | 
            +
                    {
         | 
| 14213 | 
            +
                      "disabled": false,
         | 
| 14214 | 
            +
                      "document": "变更状态,1:新发现,2,确认中,3,已确认,4,已下线,5,已忽略",
         | 
| 14215 | 
            +
                      "example": "1",
         | 
| 14216 | 
            +
                      "member": "string",
         | 
| 14217 | 
            +
                      "name": "Mode",
         | 
| 14218 | 
            +
                      "required": false,
         | 
| 14219 | 
            +
                      "type": "string"
         | 
| 14220 | 
            +
                    },
         | 
| 14221 | 
            +
                    {
         | 
| 14222 | 
            +
                      "disabled": false,
         | 
| 14223 | 
            +
                      "document": "处理人",
         | 
| 14224 | 
            +
                      "example": "ddp",
         | 
| 14225 | 
            +
                      "member": "string",
         | 
| 14226 | 
            +
                      "name": "UserName",
         | 
| 14227 | 
            +
                      "required": false,
         | 
| 14228 | 
            +
                      "type": "string"
         | 
| 14229 | 
            +
                    },
         | 
| 14230 | 
            +
                    {
         | 
| 14231 | 
            +
                      "disabled": false,
         | 
| 14232 | 
            +
                      "document": "备注,有长度显示1k",
         | 
| 14233 | 
            +
                      "example": "test",
         | 
| 14234 | 
            +
                      "member": "string",
         | 
| 14235 | 
            +
                      "name": "Remark",
         | 
| 14236 | 
            +
                      "required": false,
         | 
| 14237 | 
            +
                      "type": "string"
         | 
| 14238 | 
            +
                    },
         | 
| 14239 | 
            +
                    {
         | 
| 14240 | 
            +
                      "disabled": false,
         | 
| 14241 | 
            +
                      "document": "批量操作的事件列表",
         | 
| 14242 | 
            +
                      "example": "[\"api_aaa\",\"api_bbb\"]",
         | 
| 14243 | 
            +
                      "member": "string",
         | 
| 14244 | 
            +
                      "name": "EventIdList",
         | 
| 14245 | 
            +
                      "required": false,
         | 
| 14246 | 
            +
                      "type": "list"
         | 
| 14247 | 
            +
                    },
         | 
| 14248 | 
            +
                    {
         | 
| 14249 | 
            +
                      "disabled": false,
         | 
| 14250 | 
            +
                      "document": "批量操作的api列表",
         | 
| 14251 | 
            +
                      "example": "无",
         | 
| 14252 | 
            +
                      "member": "ApiSecKey",
         | 
| 14253 | 
            +
                      "name": "ApiNameList",
         | 
| 14254 | 
            +
                      "required": false,
         | 
| 14255 | 
            +
                      "type": "list"
         | 
| 14256 | 
            +
                    },
         | 
| 14257 | 
            +
                    {
         | 
| 14258 | 
            +
                      "disabled": false,
         | 
| 14259 | 
            +
                      "document": "判断是否删除,包括删除事件和删除资产",
         | 
| 14260 | 
            +
                      "example": "true或者false",
         | 
| 14261 | 
            +
                      "member": "bool",
         | 
| 14262 | 
            +
                      "name": "IsDelete",
         | 
| 14263 | 
            +
                      "required": false,
         | 
| 14264 | 
            +
                      "type": "bool"
         | 
| 14265 | 
            +
                    },
         | 
| 14266 | 
            +
                    {
         | 
| 14267 | 
            +
                      "disabled": false,
         | 
| 14268 | 
            +
                      "document": "判断是否是更新api的备注,更新api备注的时候,为true",
         | 
| 14269 | 
            +
                      "example": "无",
         | 
| 14270 | 
            +
                      "member": "bool",
         | 
| 14271 | 
            +
                      "name": "UpdateApiRemark",
         | 
| 14272 | 
            +
                      "required": false,
         | 
| 14273 | 
            +
                      "type": "bool"
         | 
| 14274 | 
            +
                    }
         | 
| 14275 | 
            +
                  ],
         | 
| 14276 | 
            +
                  "type": "object"
         | 
| 14277 | 
            +
                },
         | 
| 14278 | 
            +
                "ModifyApiSecEventChangeResponse": {
         | 
| 14279 | 
            +
                  "document": "ModifyApiSecEventChange返回参数结构体",
         | 
| 14280 | 
            +
                  "members": [
         | 
| 14281 | 
            +
                    {
         | 
| 14282 | 
            +
                      "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
         | 
| 14283 | 
            +
                      "member": "string",
         | 
| 14284 | 
            +
                      "name": "RequestId",
         | 
| 14285 | 
            +
                      "type": "string"
         | 
| 14286 | 
            +
                    }
         | 
| 14287 | 
            +
                  ],
         | 
| 14288 | 
            +
                  "type": "object"
         | 
| 14289 | 
            +
                },
         | 
| 14166 14290 | 
             
                "ModifyAreaBanStatusRequest": {
         | 
| 14167 14291 | 
             
                  "document": "ModifyAreaBanStatus请求参数结构体",
         | 
| 14168 14292 | 
             
                  "members": [
         | 
| @@ -832,6 +832,14 @@ | |
| 832 832 | 
             
                    "title": "api分析页面开关"
         | 
| 833 833 | 
             
                  }
         | 
| 834 834 | 
             
                ],
         | 
| 835 | 
            +
                "ModifyApiSecEventChange": [
         | 
| 836 | 
            +
                  {
         | 
| 837 | 
            +
                    "document": "weraza",
         | 
| 838 | 
            +
                    "input": "POST / HTTP/1.1\nHost: waf.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: ModifyApiSecEventChange\n<公共请求参数>\n\n{\n    \"UserName\": \"ddp\",\n    \"EventIdList\": [\n        \"api_test\"\n    ],\n    \"Remark\": \"test\",\n    \"Mode\": \"2\",\n    \"ApiNameList\": [\n        {\n            \"Domain\": \"www.test.com\",\n            \"Method\": \"POST\",\n            \"ApiName\": \"aaa\"\n        }\n    ]\n}",
         | 
| 839 | 
            +
                    "output": "{\n    \"Response\": {\n        \"RequestId\": \"ac576aa3-4a4c-4a8e-81c0-c650c139d074\"\n    }\n}",
         | 
| 840 | 
            +
                    "title": "test111"
         | 
| 841 | 
            +
                  }
         | 
| 842 | 
            +
                ],
         | 
| 835 843 | 
             
                "ModifyAreaBanStatus": [
         | 
| 836 844 | 
             
                  {
         | 
| 837 845 | 
             
                    "document": "",
         | 
    
        tccli/services/waf/waf_client.py
    CHANGED
    
    | @@ -6985,6 +6985,58 @@ def doDescribeDomainRules(args, parsed_globals): | |
| 6985 6985 | 
             
                FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
         | 
| 6986 6986 |  | 
| 6987 6987 |  | 
| 6988 | 
            +
            def doModifyApiSecEventChange(args, parsed_globals):
         | 
| 6989 | 
            +
                g_param = parse_global_arg(parsed_globals)
         | 
| 6990 | 
            +
             | 
| 6991 | 
            +
                if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
         | 
| 6992 | 
            +
                    cred = credential.CVMRoleCredential()
         | 
| 6993 | 
            +
                elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
         | 
| 6994 | 
            +
                    cred = credential.STSAssumeRoleCredential(
         | 
| 6995 | 
            +
                        g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
         | 
| 6996 | 
            +
                        g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
         | 
| 6997 | 
            +
                    )
         | 
| 6998 | 
            +
                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):
         | 
| 6999 | 
            +
                    cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
         | 
| 7000 | 
            +
                else:
         | 
| 7001 | 
            +
                    cred = credential.Credential(
         | 
| 7002 | 
            +
                        g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
         | 
| 7003 | 
            +
                    )
         | 
| 7004 | 
            +
                http_profile = HttpProfile(
         | 
| 7005 | 
            +
                    reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
         | 
| 7006 | 
            +
                    reqMethod="POST",
         | 
| 7007 | 
            +
                    endpoint=g_param[OptionsDefine.Endpoint],
         | 
| 7008 | 
            +
                    proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
         | 
| 7009 | 
            +
                )
         | 
| 7010 | 
            +
                profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
         | 
| 7011 | 
            +
                if g_param[OptionsDefine.Language]:
         | 
| 7012 | 
            +
                    profile.language = g_param[OptionsDefine.Language]
         | 
| 7013 | 
            +
                mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
         | 
| 7014 | 
            +
                client = mod.WafClient(cred, g_param[OptionsDefine.Region], profile)
         | 
| 7015 | 
            +
                client._sdkVersion += ("_CLI_" + __version__)
         | 
| 7016 | 
            +
                models = MODELS_MAP[g_param[OptionsDefine.Version]]
         | 
| 7017 | 
            +
                model = models.ModifyApiSecEventChangeRequest()
         | 
| 7018 | 
            +
                model.from_json_string(json.dumps(args))
         | 
| 7019 | 
            +
                start_time = time.time()
         | 
| 7020 | 
            +
                while True:
         | 
| 7021 | 
            +
                    rsp = client.ModifyApiSecEventChange(model)
         | 
| 7022 | 
            +
                    result = rsp.to_json_string()
         | 
| 7023 | 
            +
                    try:
         | 
| 7024 | 
            +
                        json_obj = json.loads(result)
         | 
| 7025 | 
            +
                    except TypeError as e:
         | 
| 7026 | 
            +
                        json_obj = json.loads(result.decode('utf-8'))  # python3.3
         | 
| 7027 | 
            +
                    if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
         | 
| 7028 | 
            +
                        break
         | 
| 7029 | 
            +
                    cur_time = time.time()
         | 
| 7030 | 
            +
                    if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
         | 
| 7031 | 
            +
                        raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
         | 
| 7032 | 
            +
                        (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
         | 
| 7033 | 
            +
                        search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
         | 
| 7034 | 
            +
                    else:
         | 
| 7035 | 
            +
                        print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
         | 
| 7036 | 
            +
                    time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
         | 
| 7037 | 
            +
                FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
         | 
| 7038 | 
            +
             | 
| 7039 | 
            +
             | 
| 6988 7040 | 
             
            def doAddDomainWhiteRule(args, parsed_globals):
         | 
| 6989 7041 | 
             
                g_param = parse_global_arg(parsed_globals)
         | 
| 6990 7042 |  | 
| @@ -7286,6 +7338,7 @@ ACTION_MAP = { | |
| 7286 7338 | 
             
                "DescribeUserSignatureRule": doDescribeUserSignatureRule,
         | 
| 7287 7339 | 
             
                "FreshAntiFakeUrl": doFreshAntiFakeUrl,
         | 
| 7288 7340 | 
             
                "DescribeDomainRules": doDescribeDomainRules,
         | 
| 7341 | 
            +
                "ModifyApiSecEventChange": doModifyApiSecEventChange,
         | 
| 7289 7342 | 
             
                "AddDomainWhiteRule": doAddDomainWhiteRule,
         | 
| 7290 7343 | 
             
                "ModifyDomainIpv6Status": doModifyDomainIpv6Status,
         | 
| 7291 7344 | 
             
                "ModifyUserLevel": doModifyUserLevel,
         | 
| @@ -39856,6 +39856,15 @@ | |
| 39856 39856 | 
             
                      "name": "RequestFromSource",
         | 
| 39857 39857 | 
             
                      "required": false,
         | 
| 39858 39858 | 
             
                      "type": "string"
         | 
| 39859 | 
            +
                    },
         | 
| 39860 | 
            +
                    {
         | 
| 39861 | 
            +
                      "disabled": false,
         | 
| 39862 | 
            +
                      "document": "项目id",
         | 
| 39863 | 
            +
                      "example": "无",
         | 
| 39864 | 
            +
                      "member": "string",
         | 
| 39865 | 
            +
                      "name": "ProjectId",
         | 
| 39866 | 
            +
                      "required": false,
         | 
| 39867 | 
            +
                      "type": "string"
         | 
| 39859 39868 | 
             
                    }
         | 
| 39860 39869 | 
             
                  ],
         | 
| 39861 39870 | 
             
                  "type": "object"
         | 
| @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            Metadata-Version: 2.1
         | 
| 2 2 | 
             
            Name: tccli
         | 
| 3 | 
            -
            Version: 3.0. | 
| 3 | 
            +
            Version: 3.0.1122.1
         | 
| 4 4 | 
             
            Summary: Universal Command Line Environment for Tencent Cloud
         | 
| 5 5 | 
             
            Project-URL: Bug Tracker, https://github.com/TencentCloud/tencentcloud-cli/issues
         | 
| 6 6 | 
             
            Project-URL: Homepage, https://github.com/TencentCloud/tencentcloud-cli
         | 
| @@ -13,7 +13,7 @@ Classifier: Programming Language :: Python :: 2.7 | |
| 13 13 | 
             
            Classifier: Programming Language :: Python :: 3
         | 
| 14 14 | 
             
            Requires-Dist: jmespath==0.10.0
         | 
| 15 15 | 
             
            Requires-Dist: six==1.16.0
         | 
| 16 | 
            -
            Requires-Dist: tencentcloud-sdk-python>=3.0. | 
| 16 | 
            +
            Requires-Dist: tencentcloud-sdk-python>=3.0.1122
         | 
| 17 17 | 
             
            Description-Content-Type: text/markdown
         | 
| 18 18 |  | 
| 19 19 | 
             
            # 命令行工具简介
         | 
| @@ -1,4 +1,4 @@ | |
| 1 | 
            -
            tccli/__init__.py,sha256= | 
| 1 | 
            +
            tccli/__init__.py,sha256=yDQWHR1Wftq5ufOzuuGQVRhU9xVzDM0sC1448Eq392Q,27
         | 
| 2 2 | 
             
            tccli/argparser.py,sha256=iFaw_iIMdyVwUdcv2_2OHQfe7-7j9yGzoOgXgXswoBo,5555
         | 
| 3 3 | 
             
            tccli/argument.py,sha256=ZtVo3AySpzM-Hw6_hPdU27FjUsc8QPB2fIuLy7JSBAk,8091
         | 
| 4 4 | 
             
            tccli/base_command.py,sha256=rFWNAwfS0GA6LLGNOM-iPI0RV81Jag5cZn536ZQN0pw,2859
         | 
| @@ -31,7 +31,7 @@ tccli/colorama/initialise.py,sha256=wvk00vDorLrR_rGd67Zmy0DYS0hmWHBGA8CVSc-tu0Y, | |
| 31 31 | 
             
            tccli/colorama/win32.py,sha256=GAN1ljiDeneuXBjXyGb_H2hEQ2HVLLkJ617zxZxgBpY,5267
         | 
| 32 32 | 
             
            tccli/colorama/winterm.py,sha256=4kMnk536S6wiAIZwPAFv4j1lE52vyI4p24djn5vVsoY,5883
         | 
| 33 33 | 
             
            tccli/services/MANIFEST.in,sha256=2Id4nQ7_YlPcmGJgB7Jz02hTv24e4LYMsl0CMORtVTU,26325
         | 
| 34 | 
            -
            tccli/services/__init__.py,sha256= | 
| 34 | 
            +
            tccli/services/__init__.py,sha256=G4ct7IUO-0zlIdugbLCxW2PTkm4qS8iZiaHwPMeGYPg,11826
         | 
| 35 35 | 
             
            tccli/services/aa/__init__.py,sha256=jqFTiw1tGZng_t1E5scKOq2vkIM7l12IT7uhNZdgILk,83
         | 
| 36 36 | 
             
            tccli/services/aa/aa_client.py,sha256=KHQWt9LvbszactPXIcoLdnJqoRmc615XzTyDS4N2xsA,8671
         | 
| 37 37 | 
             
            tccli/services/aa/v20200224/api.json,sha256=K-1Niz-kTgONcjoegOPbbjIi-j3vltZg2Cuu25HK4Hk,13820
         | 
| @@ -76,7 +76,7 @@ tccli/services/anicloud/v20220923/api.json,sha256=ReMz8L-Mmw-Yg1rcimiKUjhH-8MwGa | |
| 76 76 | 
             
            tccli/services/anicloud/v20220923/examples.json,sha256=sTXo5RoanXn0e1nNQuXbStNy01GRrQgLyk8tI5tAFQ8,3296
         | 
| 77 77 | 
             
            tccli/services/antiddos/__init__.py,sha256=GLp18f7B8VnijOHexfey8gZ0E-2p5r4YPaoGQd3l69E,95
         | 
| 78 78 | 
             
            tccli/services/antiddos/antiddos_client.py,sha256=I3G604WcHioMzElyfqdd3qD_h_6Eig5y9AlnSg36vfU,305014
         | 
| 79 | 
            -
            tccli/services/antiddos/v20200309/api.json,sha256= | 
| 79 | 
            +
            tccli/services/antiddos/v20200309/api.json,sha256=NtZJxxZJjCyRkcOiuNcoVedMkJwZQWSCLN_y38k40_g,399428
         | 
| 80 80 | 
             
            tccli/services/antiddos/v20200309/examples.json,sha256=PWxOEUDiuIOpNQ9sxnAUKwlXEPMP4xLp6yqsLDcVOHE,86985
         | 
| 81 81 | 
             
            tccli/services/apcas/__init__.py,sha256=gXBBRpZLfMKkOVPIZWWRP6qF9bMTS4pXRfUNQao-zIc,89
         | 
| 82 82 | 
             
            tccli/services/apcas/apcas_client.py,sha256=PdOZxSCxxkAFRxpzf_qiqG4a0WIu2THxh6vhPkmYFA8,27034
         | 
| @@ -200,8 +200,8 @@ tccli/services/ccc/v20200210/api.json,sha256=WGgmnDQqaKVArdbqkUH6VQQ5vKenobtOLCj | |
| 200 200 | 
             
            tccli/services/ccc/v20200210/examples.json,sha256=DlRpuvQDsshw_2LEej4TWXY8GfEHMxtS2d_aW1H2gXI,61610
         | 
| 201 201 | 
             
            tccli/services/cdb/__init__.py,sha256=9Jk9tAMP2ZM_xOG77GvqXL1q3UfwYTEos6_P6xzpTiM,85
         | 
| 202 202 | 
             
            tccli/services/cdb/cdb_client.py,sha256=y1rHyC-yn4bROlxey7WK4_htIOE6XpB7T53Zm9AA7Rc,513780
         | 
| 203 | 
            -
            tccli/services/cdb/v20170320/api.json,sha256= | 
| 204 | 
            -
            tccli/services/cdb/v20170320/examples.json,sha256= | 
| 203 | 
            +
            tccli/services/cdb/v20170320/api.json,sha256=OjMNDb8I5SgQMyisdeJH9xK0-ZzZdfwkclDh1wP4Q6I,696590
         | 
| 204 | 
            +
            tccli/services/cdb/v20170320/examples.json,sha256=9SqrNfkvmwpp0i_Vyj0eu_m5nJOmZ9J-aP-o4XwNc7o,161441
         | 
| 205 205 | 
             
            tccli/services/cdc/__init__.py,sha256=0NOw5_YSjO-QzgYYiIo0gheuTe2_dvzCUnVD4BOP4tI,85
         | 
| 206 206 | 
             
            tccli/services/cdc/cdc_client.py,sha256=wSnb34OvPAii0UEu5GkkgWFQ15CmtjsfnPKgE5nzFqU,71139
         | 
| 207 207 | 
             
            tccli/services/cdc/v20201214/api.json,sha256=O0KqyCyXEpQSo7qCylAecp8c1RnGDmy16rJx3uLYl1I,116333
         | 
| @@ -374,7 +374,7 @@ tccli/services/dnspod/v20210323/api.json,sha256=amqEDUB63aYybphbv_P1gIbb_OC2idIT | |
| 374 374 | 
             
            tccli/services/dnspod/v20210323/examples.json,sha256=PxfBEyeiNF76hpdTECsDflxfziZysfZlkU8DfcyjsMM,109778
         | 
| 375 375 | 
             
            tccli/services/domain/__init__.py,sha256=meqFi6gRyH2HwgL3XpXkhrspL-i6f-EMjpdZ6Flbzi4,91
         | 
| 376 376 | 
             
            tccli/services/domain/domain_client.py,sha256=XsY_9uZx3NDhsgUpka8C3F7zjnxbvvypwwPsvP_55Fo,176163
         | 
| 377 | 
            -
            tccli/services/domain/v20180808/api.json,sha256= | 
| 377 | 
            +
            tccli/services/domain/v20180808/api.json,sha256=3bFeo80APBvX313D1QZGlTkO4L8fVUrMrzd2YAFAE5I,177664
         | 
| 378 378 | 
             
            tccli/services/domain/v20180808/examples.json,sha256=_ysqnw_wKPcpryWdfNVSqu_0FYrAYnxtUTAZPz59pfQ,47170
         | 
| 379 379 | 
             
            tccli/services/drm/__init__.py,sha256=ainWI4ecU60xaDpvcv41dI7VZjgidV8o0pUfX4suepg,85
         | 
| 380 380 | 
             
            tccli/services/drm/drm_client.py,sha256=DlekwYPkoaVI1sBDvZgYSdHnPPe7o25qPOVu-7NIP5M,39404
         | 
| @@ -433,9 +433,9 @@ tccli/services/es/es_client.py,sha256=whe1By2rhBmC_x4-mGOIcnv8a_r-zdH6n6Rv2HrMQK | |
| 433 433 | 
             
            tccli/services/es/v20180416/api.json,sha256=V1qD0uCV9D-ynaaihY9Ji8VR_ub14WPgi4FbgN2AxpM,327282
         | 
| 434 434 | 
             
            tccli/services/es/v20180416/examples.json,sha256=WkePWH9dzpdDVmCnZnHQACqpVbUF91iHsvVpZU5Rhlk,72633
         | 
| 435 435 | 
             
            tccli/services/ess/__init__.py,sha256=heBHzUKDuNxQ68yNutgyA8stCndyFWqYJqiQFozTiDs,85
         | 
| 436 | 
            -
            tccli/services/ess/ess_client.py,sha256= | 
| 437 | 
            -
            tccli/services/ess/v20201111/api.json,sha256= | 
| 438 | 
            -
            tccli/services/ess/v20201111/examples.json,sha256= | 
| 436 | 
            +
            tccli/services/ess/ess_client.py,sha256=L2DqyHf2gDV_XDAFsrEzxrJUvmpKyek0XIRD_zDx328,267150
         | 
| 437 | 
            +
            tccli/services/ess/v20201111/api.json,sha256=_H6TMo0-X9ik4qpvJZBI3pSv4RH_9vWsOLVGsl4o2tw,689708
         | 
| 438 | 
            +
            tccli/services/ess/v20201111/examples.json,sha256=o3lIr4CTqEMNzYW864gcpmFnrXYnONbSorBrldibQgE,550879
         | 
| 439 439 | 
             
            tccli/services/essbasic/__init__.py,sha256=Uh5kuYtJvJ4F1S2w-19_B6a_JMF1ubh8Se-7p5LA0PE,95
         | 
| 440 440 | 
             
            tccli/services/essbasic/essbasic_client.py,sha256=bhKxFfhWnOF0UIPJBS0nX9TLOGl_Hg8uwcqKgMM7094,395323
         | 
| 441 441 | 
             
            tccli/services/essbasic/v20201222/api.json,sha256=8yA-0DwpjBAZajDJnp3flQ2xn1sdkZMVQcvegUcemSM,184116
         | 
| @@ -450,7 +450,7 @@ tccli/services/facefusion/v20220927/api.json,sha256=QkmJxry0glAJOD3fQI0zStWjgr6y | |
| 450 450 | 
             
            tccli/services/facefusion/v20220927/examples.json,sha256=qWRwUvfMlVONM0pr7NJqwilVlqXeRKJQXe-7AsYuSdo,5082
         | 
| 451 451 | 
             
            tccli/services/faceid/__init__.py,sha256=zbcAvv37wx7NH6hsSFPSCqgR2ih1UiQOdqNfmitdeVY,91
         | 
| 452 452 | 
             
            tccli/services/faceid/faceid_client.py,sha256=Es-scyPV_zLnZUIf8SfdsXf6L2XJXQKZsSe0YYF7sn0,119863
         | 
| 453 | 
            -
            tccli/services/faceid/v20180301/api.json,sha256= | 
| 453 | 
            +
            tccli/services/faceid/v20180301/api.json,sha256=O5dQvjKnxavNq71EkFeJLpWEaxhW7dG9lF2JryYc8oQ,205210
         | 
| 454 454 | 
             
            tccli/services/faceid/v20180301/examples.json,sha256=9q0Uv8yTZRYsIJHt7tnGgVAH0cYSHHp7wWf7N0DayuQ,40296
         | 
| 455 455 | 
             
            tccli/services/fmu/__init__.py,sha256=uYgLsNe53oF1T-qH3hFFAdGC7d9SKthtORQ7dLiPfx8,85
         | 
| 456 456 | 
             
            tccli/services/fmu/fmu_client.py,sha256=8BCV5LAHPDHw8O749qGM5hthX50xVO5d76fZmWKSlbQ,36237
         | 
| @@ -598,8 +598,8 @@ tccli/services/lcic/v20220817/api.json,sha256=lWdLZ-b-NltSAbYuHgJVY_ghVn6dcV6KDV | |
| 598 598 | 
             
            tccli/services/lcic/v20220817/examples.json,sha256=5Z-y4nxBnoYP2yrPkBj22kMkdJlfchah6L9kZ91nIKA,50538
         | 
| 599 599 | 
             
            tccli/services/lighthouse/__init__.py,sha256=mthGX-k-GPfpudeGSVAEXUMitx-xg7Aw2ZcXxrjf_78,99
         | 
| 600 600 | 
             
            tccli/services/lighthouse/lighthouse_client.py,sha256=rEbJoZeoN4IXJ9jsTZZiRy1BCqYReO-E7dX9Xw3cmFs,344732
         | 
| 601 | 
            -
            tccli/services/lighthouse/v20200324/api.json,sha256= | 
| 602 | 
            -
            tccli/services/lighthouse/v20200324/examples.json,sha256= | 
| 601 | 
            +
            tccli/services/lighthouse/v20200324/api.json,sha256=3KKkLiRb-JJiIJAuUGSPEIqEPCfScBYc7UJiGd1CTFo,372360
         | 
| 602 | 
            +
            tccli/services/lighthouse/v20200324/examples.json,sha256=jasAQYC3vVquvh4RwrlKtTfiv415zXxySLJMT50hIb0,129649
         | 
| 603 603 | 
             
            tccli/services/live/__init__.py,sha256=RcvY72t1P1PSv7r9d9SCa9Iv7qvP8ok30HwiMcPVAs4,87
         | 
| 604 604 | 
             
            tccli/services/live/live_client.py,sha256=_ZxqmP2bC3uaSY3Q0VIi4wZ1ybHp3vetxJ7A0YpAt_0,491967
         | 
| 605 605 | 
             
            tccli/services/live/v20180801/api.json,sha256=CAFmoDDdNo74bD1IINQgPI8VQ66ULsfEyjo_VNpVXEY,637472
         | 
| @@ -848,7 +848,7 @@ tccli/services/tcaplusdb/v20190823/api.json,sha256=pHRIjC7nHXgbs5GhVqSDgwNGbrD0k | |
| 848 848 | 
             
            tccli/services/tcaplusdb/v20190823/examples.json,sha256=4o0vxe8G0J-VPs-zpmZm42Nj14cypUCk7ybGVa0jPGo,71146
         | 
| 849 849 | 
             
            tccli/services/tcb/__init__.py,sha256=OZp6hzmDTuD9PSJthhu7joVfMUyUxi1XU6AEJzHqcvo,85
         | 
| 850 850 | 
             
            tccli/services/tcb/tcb_client.py,sha256=WCa2n9QcBUjKLvG2TQL9MZ0lfM107YBZSyfyLDQXk4w,283005
         | 
| 851 | 
            -
            tccli/services/tcb/v20180608/api.json,sha256= | 
| 851 | 
            +
            tccli/services/tcb/v20180608/api.json,sha256=2AF4Mba41zbyyj67BKh5VZl0fHNylP0RV0Qs1XqxxCk,432346
         | 
| 852 852 | 
             
            tccli/services/tcb/v20180608/examples.json,sha256=79unDvkbbqBRQ0FOW2nOOezeMHbO-VlKfW_Y-O90xbI,81267
         | 
| 853 853 | 
             
            tccli/services/tcbr/__init__.py,sha256=uyoGuL5IscLq8H2hJ0mI60czMenQT9fBZtDawCn2nwo,87
         | 
| 854 854 | 
             
            tccli/services/tcbr/tcbr_client.py,sha256=gHJZZRdxvgKfthwTnR2edXu8L1DDpaREY2bqofkuMSg,36569
         | 
| @@ -872,8 +872,8 @@ tccli/services/tcm/v20210413/api.json,sha256=oybjJ32O2gkA4jM0GzF5TjLStkdbzNesR-B | |
| 872 872 | 
             
            tccli/services/tcm/v20210413/examples.json,sha256=RmwOWh2XJgjESkwGVAqOkRJDY7bGWfkrz-mh7fu4_S0,9764
         | 
| 873 873 | 
             
            tccli/services/tcr/__init__.py,sha256=h57HyxoFfMD29YVvZnQ-HJy2kdkYPwV8qLCy3O1TGP4,85
         | 
| 874 874 | 
             
            tccli/services/tcr/tcr_client.py,sha256=_7t2rzyOgtrYlhxUfQ6KrEK5neDGM4kSYy_pyse1fKw,348272
         | 
| 875 | 
            -
            tccli/services/tcr/v20190924/api.json,sha256= | 
| 876 | 
            -
            tccli/services/tcr/v20190924/examples.json,sha256 | 
| 875 | 
            +
            tccli/services/tcr/v20190924/api.json,sha256=gc5GlQH6Nnl3McDVT_xHWEnvECBR2zIFroUifGUKwtY,319284
         | 
| 876 | 
            +
            tccli/services/tcr/v20190924/examples.json,sha256=Pmu1D5lhgdvTDfR3Q9k-O22a8cNJ_szDq5EM8uLwJ1I,75241
         | 
| 877 877 | 
             
            tccli/services/tcss/__init__.py,sha256=FTLOwcSZ8-U5g9XG6eYy1mphujovIis-nfDfI5HV2lU,87
         | 
| 878 878 | 
             
            tccli/services/tcss/tcss_client.py,sha256=7YsMYepM9vjl2Us0rD8pUvI73GEv6b4QwhZNlszPCSw,1065653
         | 
| 879 879 | 
             
            tccli/services/tcss/v20201101/api.json,sha256=fgc8KdgMPXVjW-YJfl1R6S0EKNE1u6lYivsuxKZu4MA,1438794
         | 
| @@ -994,11 +994,11 @@ tccli/services/trtc/v20190722/api.json,sha256=vfPubXdYxnjlo2MLAIA_1ZzZ6ZNpjvOT-M | |
| 994 994 | 
             
            tccli/services/trtc/v20190722/examples.json,sha256=MKRiAZC8RClP2SGvWOCUB6hpgxec_ML1u9KH66riasE,100013
         | 
| 995 995 | 
             
            tccli/services/tse/__init__.py,sha256=3Y4ZA_IFX8df4-ir1I9p0u4ksAywRrtd2CAvJ5yKyz0,85
         | 
| 996 996 | 
             
            tccli/services/tse/tse_client.py,sha256=dB6fIYbGz01ZbcK6tPBI3lRYavc6fgVZfzKNqIczQ0s,354664
         | 
| 997 | 
            -
            tccli/services/tse/v20201207/api.json,sha256= | 
| 997 | 
            +
            tccli/services/tse/v20201207/api.json,sha256=vjfxAUASOSI8oQP6iCzvvydCT6x8jGzNya1XRnDpVB0,528114
         | 
| 998 998 | 
             
            tccli/services/tse/v20201207/examples.json,sha256=JM058O1rixNw-4KUUOHx4XCB8E6dIZ1KT6Zi1-mYoy8,118890
         | 
| 999 999 | 
             
            tccli/services/tsf/__init__.py,sha256=hvORrthG6YRLLU39wB0CxW441UZHSkET1ZA8mIpSq5Y,85
         | 
| 1000 1000 | 
             
            tccli/services/tsf/tsf_client.py,sha256=X8cDNZE_y_k0v8p7XTxhcj594LPkH-gfRlKHhjVDIyU,689349
         | 
| 1001 | 
            -
            tccli/services/tsf/v20180326/api.json,sha256= | 
| 1001 | 
            +
            tccli/services/tsf/v20180326/api.json,sha256=foJSj1vIMSL_92bisSnZnpGNjcjFPkOOrlB_0Gf5ryk,960420
         | 
| 1002 1002 | 
             
            tccli/services/tsf/v20180326/examples.json,sha256=gnOt2hBnHedgBRZlAvvsVSAFJOPiyi2hKte_Wze2Mp0,235532
         | 
| 1003 1003 | 
             
            tccli/services/tsw/__init__.py,sha256=GdacZygTd9U7T0AcE8p4G6GvCfFjyXB-aU4yT4ctQC8,85
         | 
| 1004 1004 | 
             
            tccli/services/tsw/tsw_client.py,sha256=hZ07kOcyiespYfrKToQxOzGcv5q3TcoMbtE_L-HcRGc,18221
         | 
| @@ -1018,6 +1018,10 @@ tccli/services/vcg/__init__.py,sha256=LGlwYvjIDpGhl5ttFhG2110yhERW6aPpC-0-0I7uM5 | |
| 1018 1018 | 
             
            tccli/services/vcg/vcg_client.py,sha256=B-sAC4q_Q_c9W_E_u2flLMBWlSZ-ab2xS9d9PTKFeNY,11831
         | 
| 1019 1019 | 
             
            tccli/services/vcg/v20240404/api.json,sha256=qa-ahmSDpXlluMEAc9b9S1zthuBwuP335rB5iohNFKo,5180
         | 
| 1020 1020 | 
             
            tccli/services/vcg/v20240404/examples.json,sha256=AZZjwnSyfApnKu4Km0IXAVMcgkY_jRGroUxvP3h_KNk,1048
         | 
| 1021 | 
            +
            tccli/services/vdb/__init__.py,sha256=4w1E9B9lHzlNK92HkjR5lsUW9uWi6-_WSOahjmJ9-2A,85
         | 
| 1022 | 
            +
            tccli/services/vdb/vdb_client.py,sha256=MkeoqB4hoLoPqTJDdsxS13knXHYNkEqrrZbq_A4Th24,8659
         | 
| 1023 | 
            +
            tccli/services/vdb/v20230616/api.json,sha256=TvHeYhCZcECdfnrUrF1jA2vyDGtfrIj7Ety_Odmg4jU,16259
         | 
| 1024 | 
            +
            tccli/services/vdb/v20230616/examples.json,sha256=suLwEpDd0bQ2WbbqP8aZhcfKCXYEfaKedauUJR9HuQI,4038
         | 
| 1021 1025 | 
             
            tccli/services/vm/__init__.py,sha256=LPFWa5DLkDxQROjKcTZulPWNiMmZFEYuaDQHd519Z88,83
         | 
| 1022 1026 | 
             
            tccli/services/vm/vm_client.py,sha256=46nNYY9WPV6R7lHUk5S8IeNjtE98fGqEsESjGDOUeaU,24488
         | 
| 1023 1027 | 
             
            tccli/services/vm/v20200709/api.json,sha256=XupMI4aC0iFQP8qweq9nosHc8IJn4kjx0axDbU2njQ0,47563
         | 
| @@ -1047,16 +1051,16 @@ tccli/services/vtc/vtc_client.py,sha256=fmPYW8n3JkpKw8hpbxuS7YeQSNbGz9a4JPueMsWF | |
| 1047 1051 | 
             
            tccli/services/vtc/v20240223/api.json,sha256=9uBeE4X2hntDOIFyqHTe2MVvMf5B3PXmLvDZQ1HFzKU,13054
         | 
| 1048 1052 | 
             
            tccli/services/vtc/v20240223/examples.json,sha256=WhfgTwYRmA4ULpsqEMZKzPU1DY87BYu8YDOf7cgc4Qc,5042
         | 
| 1049 1053 | 
             
            tccli/services/waf/__init__.py,sha256=CQIYSctAXRbX8x5xidAj7CBzOVIdMOZJQ0e6ENff3HU,85
         | 
| 1050 | 
            -
            tccli/services/waf/waf_client.py,sha256= | 
| 1051 | 
            -
            tccli/services/waf/v20180125/api.json,sha256= | 
| 1052 | 
            -
            tccli/services/waf/v20180125/examples.json,sha256= | 
| 1054 | 
            +
            tccli/services/waf/waf_client.py,sha256=6Ke4EUBIgq6bsos3bynD-ws9KfIs_M8vGMDjzLn06tc,432883
         | 
| 1055 | 
            +
            tccli/services/waf/v20180125/api.json,sha256=t4KQDOntzHhgvRVdpGcxwHIKToX-e4wKPvp0DjK1A-I,626147
         | 
| 1056 | 
            +
            tccli/services/waf/v20180125/examples.json,sha256=yunCSQ2WlF9vy_hBNGY84Aw0nNWM4y1tlywuan8StMk,161189
         | 
| 1053 1057 | 
             
            tccli/services/wav/__init__.py,sha256=iOdPQbxYh0cdKcDo0kRWmQMiCl38owcMur1PRm3R6R8,85
         | 
| 1054 1058 | 
             
            tccli/services/wav/wav_client.py,sha256=KfvA5VHhN0HlAa70HjkAs8KkC_GfMzTM4vjlDWXIxVQ,86224
         | 
| 1055 1059 | 
             
            tccli/services/wav/v20210129/api.json,sha256=GKTYbYztrP-UP5qTQ8_N6U0bcIBt_1wlxpgVDNEFWXI,184058
         | 
| 1056 1060 | 
             
            tccli/services/wav/v20210129/examples.json,sha256=YUzbd8bt4nyFAwn2QFWbTH8D6qQ1zO-nKy8VT-kQbQM,35017
         | 
| 1057 1061 | 
             
            tccli/services/wedata/__init__.py,sha256=F95gQMminW0gPanAt4q4yW30-8c7_2F2FVQzZZvcaTo,91
         | 
| 1058 1062 | 
             
            tccli/services/wedata/wedata_client.py,sha256=OApw8WKEfKy1heJ7q7nQodcbIzyyGIpxMzu3RPXHh94,689408
         | 
| 1059 | 
            -
            tccli/services/wedata/v20210820/api.json,sha256= | 
| 1063 | 
            +
            tccli/services/wedata/v20210820/api.json,sha256=XZO1a6Rc0uExJBHdQaXsiwGT6JLf4UbL1BlIGuJw_Wo,1384030
         | 
| 1060 1064 | 
             
            tccli/services/wedata/v20210820/examples.json,sha256=KIyTJ5X439I8JKZS-j5G83X4KlGWdDmvHtUGraPIQUc,526818
         | 
| 1061 1065 | 
             
            tccli/services/weilingwith/__init__.py,sha256=I04f9CndPHuhInQKYjgkxKufojP4j5EJxBtfPNWLTfo,101
         | 
| 1062 1066 | 
             
            tccli/services/weilingwith/weilingwith_client.py,sha256=a6bYzcTZWWE7Bj0FsuCvYp3aYRX6fySk4r_pXwQSWAc,204878
         | 
| @@ -1084,8 +1088,8 @@ tccli/services/yunsou/v20180504/api.json,sha256=2808fil5p3pTEJ3SqXEEq7eSrASZOiv8 | |
| 1084 1088 | 
             
            tccli/services/yunsou/v20180504/examples.json,sha256=Jg4WuqS_Wxl7eTBMbzjem65FuUZQi3qq3xtlBNFZlTU,11870
         | 
| 1085 1089 | 
             
            tccli/services/yunsou/v20191115/api.json,sha256=r_p7c7fMNylQVDpSN0CkUB4Cx1nYW1lI3BM_Zi50FNs,15932
         | 
| 1086 1090 | 
             
            tccli/services/yunsou/v20191115/examples.json,sha256=vN5MzexHVPMckm4MbnXNiOe3KKiVchvf4_uLpjOskuk,3983
         | 
| 1087 | 
            -
            tccli-3.0. | 
| 1088 | 
            -
            tccli-3.0. | 
| 1089 | 
            -
            tccli-3.0. | 
| 1090 | 
            -
            tccli-3.0. | 
| 1091 | 
            -
            tccli-3.0. | 
| 1091 | 
            +
            tccli-3.0.1122.1.dist-info/METADATA,sha256=_stNClV-fxpuCWi2_VYvSjoJsVgsUbn611s0XxBYqzM,16172
         | 
| 1092 | 
            +
            tccli-3.0.1122.1.dist-info/WHEEL,sha256=HyPWovjK_wfsxZqVnw7Bu5rgKxNh3Nm__lHm0ALDcb4,101
         | 
| 1093 | 
            +
            tccli-3.0.1122.1.dist-info/entry_points.txt,sha256=9ZzsXxi7Xj3ZneT7VxRVJpFvnmdEOeysh999_0gWVvo,85
         | 
| 1094 | 
            +
            tccli-3.0.1122.1.dist-info/license_files/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
         | 
| 1095 | 
            +
            tccli-3.0.1122.1.dist-info/RECORD,,
         | 
| 
            File without changes
         | 
| 
            File without changes
         | 
| 
            File without changes
         |