From 632610d9c06586a4ab5bd3fc540fb7ba030b3363 Mon Sep 17 00:00:00 2001 From: Li Kexian Date: Wed, 15 Apr 2020 12:38:50 +0800 Subject: [PATCH] fixed InstanceOperationInProgress error #9054 --- builder/tencentcloud/cvm/artifact.go | 2 +- builder/tencentcloud/cvm/common.go | 8 +- .../cvm/step_detach_temp_key_pair.go | 6 + go.mod | 2 +- go.sum | 4 +- .../tencentcloud/common/client.go | 8 +- .../tencentcloud/common/http/request.go | 2 +- .../tencentcloud/common/http/response.go | 2 +- .../common/profile/client_profile.go | 2 + .../tencentcloud/cvm/v20170312/client.go | 20 +- .../tencentcloud/cvm/v20170312/models.go | 248 ++- .../tencentcloud/vpc/v20170312/client.go | 766 +++++++- .../tencentcloud/vpc/v20170312/models.go | 1556 ++++++++++++++++- vendor/modules.txt | 2 +- 14 files changed, 2495 insertions(+), 133 deletions(-) diff --git a/builder/tencentcloud/cvm/artifact.go b/builder/tencentcloud/cvm/artifact.go index 7db1579f9..d4ea37519 100644 --- a/builder/tencentcloud/cvm/artifact.go +++ b/builder/tencentcloud/cvm/artifact.go @@ -104,7 +104,7 @@ func (a *Artifact) Destroy() error { } } - if shareAccountIds != nil && len(shareAccountIds) != 0 { + if len(shareAccountIds) != 0 { cancelShareReq := cvm.NewModifyImageSharePermissionRequest() cancelShareReq.ImageId = &imageId cancelShareReq.AccountIds = shareAccountIds diff --git a/builder/tencentcloud/cvm/common.go b/builder/tencentcloud/cvm/common.go index 8c81df153..48deda926 100644 --- a/builder/tencentcloud/cvm/common.go +++ b/builder/tencentcloud/cvm/common.go @@ -38,7 +38,8 @@ func WaitForInstance(ctx context.Context, client *cvm.Client, instanceId string, if *resp.Response.TotalCount == 0 { return fmt.Errorf("instance(%s) not exist", instanceId) } - if *resp.Response.InstanceSet[0].InstanceState == status { + if *resp.Response.InstanceSet[0].InstanceState == status && + (resp.Response.InstanceSet[0].LatestOperationState == nil || *resp.Response.InstanceSet[0].LatestOperationState != "OPERATING") { break } time.Sleep(DefaultWaitForInterval * time.Second) @@ -149,14 +150,15 @@ func SSHHost(pubilcIp bool) func(multistep.StateBag) (string, error) { // Retry do retry on api request func Retry(ctx context.Context, fn func(context.Context) error) error { return retry.Config{ - Tries: 30, + Tries: 60, ShouldRetry: func(err error) bool { e, ok := err.(*errors.TencentCloudSDKError) if !ok { return false } if e.Code == "ClientError.NetworkError" || e.Code == "ClientError.HttpStatusCodeError" || - e.Code == "InvalidKeyPair.NotSupported" || e.Code == "InvalidInstance.NotSupported" || + e.Code == "InvalidKeyPair.NotSupported" || e.Code == "InvalidParameterValue.KeyPairNotSupported" || + e.Code == "InvalidInstance.NotSupported" || e.Code == "OperationDenied.InstanceOperationInProgress" || strings.Contains(e.Code, "RequestLimitExceeded") || strings.Contains(e.Code, "InternalError") || strings.Contains(e.Code, "ResourceInUse") || strings.Contains(e.Code, "ResourceBusy") { return true diff --git a/builder/tencentcloud/cvm/step_detach_temp_key_pair.go b/builder/tencentcloud/cvm/step_detach_temp_key_pair.go index dd9bc5a1b..6c5533e4d 100644 --- a/builder/tencentcloud/cvm/step_detach_temp_key_pair.go +++ b/builder/tencentcloud/cvm/step_detach_temp_key_pair.go @@ -35,6 +35,12 @@ func (s *stepDetachTempKeyPair) Run(ctx context.Context, state multistep.StateBa return Halt(state, err, "Fail to detach keypair from instance") } + Message(state, "Waiting for keypair detached", "") + err = WaitForInstance(ctx, client, *instance.InstanceId, "RUNNING", 1800) + if err != nil { + return Halt(state, err, "Failed to wait for keypair detached") + } + Message(state, "Keypair detached", "") return multistep.ActionContinue diff --git a/go.mod b/go.mod index 38adc4ead..823fa6c17 100644 --- a/go.mod +++ b/go.mod @@ -150,7 +150,7 @@ require ( github.com/stretchr/objx v0.2.0 // indirect github.com/stretchr/testify v1.4.0 github.com/temoto/robotstxt v1.1.1 // indirect - github.com/tencentcloud/tencentcloud-sdk-go v3.0.121+incompatible + github.com/tencentcloud/tencentcloud-sdk-go v3.0.155+incompatible github.com/ucloud/ucloud-sdk-go v0.12.0 github.com/ufilesdk-dev/ufile-gosdk v0.0.0-20190830075812-b4dbc4ef43a6 github.com/ugorji/go v0.0.0-20151218193438-646ae4a518c1 diff --git a/go.sum b/go.sum index b0493931e..2b35ae269 100644 --- a/go.sum +++ b/go.sum @@ -520,6 +520,8 @@ github.com/tencentcloud/tencentcloud-sdk-go v3.0.97+incompatible h1:y2gZtLpcWqFz github.com/tencentcloud/tencentcloud-sdk-go v3.0.97+incompatible/go.mod h1:0PfYow01SHPMhKY31xa+EFz2RStxIqj6JFAJS+IkCi4= github.com/tencentcloud/tencentcloud-sdk-go v3.0.121+incompatible h1:/5EEPgCRsWdGgZsM7YRLhYE9gpE9+kUGoIfGCrFYU0s= github.com/tencentcloud/tencentcloud-sdk-go v3.0.121+incompatible/go.mod h1:0PfYow01SHPMhKY31xa+EFz2RStxIqj6JFAJS+IkCi4= +github.com/tencentcloud/tencentcloud-sdk-go v3.0.155+incompatible h1:M+Q7+SIBnUZbV0ec+HAOtv2M/wmOUsfjEOpQxM3u4xI= +github.com/tencentcloud/tencentcloud-sdk-go v3.0.155+incompatible/go.mod h1:0PfYow01SHPMhKY31xa+EFz2RStxIqj6JFAJS+IkCi4= github.com/ucloud/ucloud-sdk-go v0.12.0 h1:VCFN3jWg/G4wvwjG6qG5AhFuAT1JdmGvY6+4WHbuJcw= github.com/ucloud/ucloud-sdk-go v0.12.0/go.mod h1:lM6fpI8y6iwACtlbHUav823/uKPdXsNBlnBpRF2fj3c= github.com/ufilesdk-dev/ufile-gosdk v0.0.0-20190830075812-b4dbc4ef43a6 h1:FAWNiqocJ04wC4Znj7Ax4PGWstZijayO6ifuHHvb+vI= @@ -783,4 +785,4 @@ honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.1-2019.2.3 h1:3JgtbtFHMiCmsznwGVTUWbgGov+pVqnlf1dEJTNAXeM= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= -rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= \ No newline at end of file +rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/client.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/client.go index 96a9644b1..fc167bb40 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/client.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/client.go @@ -65,7 +65,7 @@ func (c *Client) sendWithSignatureV1(request tchttp.Request, response tchttp.Res return err } if request.GetHttpMethod() == "POST" { - httpRequest.Header["Content-Type"] = []string{"application/x-www-form-urlencoded"} + httpRequest.Header.Set("Content-Type", "application/x-www-form-urlencoded") } if c.debug { outbytes, err := httputil.DumpRequest(httpRequest, true) @@ -243,6 +243,7 @@ func (c *Client) WithProfile(clientProfile *profile.ClientProfile) *Client { c.signMethod = clientProfile.SignMethod c.unsignedPayload = clientProfile.UnsignedPayload c.httpProfile = clientProfile.HttpProfile + c.debug = clientProfile.Debug c.httpClient.Timeout = time.Duration(c.httpProfile.ReqTimeout) * time.Second return c } @@ -257,6 +258,11 @@ func (c *Client) WithHttpTransport(transport http.RoundTripper) *Client { return c } +func (c *Client) WithDebug(flag bool) *Client { + c.debug = flag + return c +} + func NewClientWithSecretId(secretId, secretKey, region string) (client *Client, err error) { client = &Client{} client.Init(region).WithSecretId(secretId, secretKey) diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go index 8331570bc..bd4b3b681 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go @@ -152,7 +152,7 @@ func CompleteCommonParams(request Request, region string) { params["Action"] = request.GetAction() params["Timestamp"] = strconv.FormatInt(time.Now().Unix(), 10) params["Nonce"] = strconv.Itoa(rand.Int()) - params["RequestClient"] = "SDK_GO_3.0.121" + params["RequestClient"] = "SDK_GO_3.0.155" } func ConstructParams(req Request) (err error) { diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/response.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/response.go index 288f21bdf..fd18e2064 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/response.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/response.go @@ -22,7 +22,7 @@ type ErrorResponse struct { Error struct { Code string `json:"Code"` Message string `json:"Message"` - } `json:"Error" omitempty` + } `json:"Error,omitempty"` RequestId string `json:"RequestId"` } `json:"Response"` } diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile/client_profile.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile/client_profile.go index 21069ff99..bc876801c 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile/client_profile.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile/client_profile.go @@ -9,6 +9,7 @@ type ClientProfile struct { // Valid choices: zh-CN, en-US. // Default value is zh-CN. Language string + Debug bool } func NewClientProfile() *ClientProfile { @@ -17,5 +18,6 @@ func NewClientProfile() *ClientProfile { SignMethod: "TC3-HMAC-SHA256", UnsignedPayload: false, Language: "zh-CN", + Debug: false, } } diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312/client.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312/client.go index 7824a47e2..9c54201ed 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312/client.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312/client.go @@ -507,7 +507,7 @@ func NewDescribeInstanceInternetBandwidthConfigsResponse() (response *DescribeIn // 本接口 (DescribeInstanceInternetBandwidthConfigs) 用于查询实例带宽配置。 // -// * 只支持查询`BANDWIDTH_PREPAID`计费模式的带宽配置。 +// * 只支持查询`BANDWIDTH_PREPAID`( 预付费按带宽结算 )计费模式的带宽配置。 // * 接口返回实例的所有带宽配置信息(包含历史的带宽配置信息)。 func (c *Client) DescribeInstanceInternetBandwidthConfigs(request *DescribeInstanceInternetBandwidthConfigsRequest) (response *DescribeInstanceInternetBandwidthConfigsResponse, err error) { if request == nil { @@ -535,7 +535,7 @@ func NewDescribeInstanceTypeConfigsResponse() (response *DescribeInstanceTypeCon // 本接口 (DescribeInstanceTypeConfigs) 用于查询实例机型配置。 // -// * 可以根据`zone`、`instance-family`来查询实例机型配置。过滤条件详见过滤器`Filter`。 +// * 可以根据`zone`、`instance-family`来查询实例机型配置。过滤条件详见过滤器[`Filter`](https://cloud.tencent.com/document/api/213/15753#Filter)。 // * 如果参数为空,返回指定地域的所有实例机型配置。 func (c *Client) DescribeInstanceTypeConfigs(request *DescribeInstanceTypeConfigsRequest) (response *DescribeInstanceTypeConfigsResponse, err error) { if request == nil { @@ -561,13 +561,14 @@ func NewDescribeInstanceVncUrlResponse() (response *DescribeInstanceVncUrlRespon return } -// 本接口 ( DescribeInstanceVncUrl ) 用于查询实例管理终端地址。 +// 本接口 ( DescribeInstanceVncUrl ) 用于查询实例管理终端地址,获取的地址可用于实例的 VNC 登录。 // // * 处于 `STOPPED` 状态的机器无法使用此功能。 // * 管理终端地址的有效期为 15 秒,调用接口成功后如果 15 秒内不使用该链接进行访问,管理终端地址自动失效,您需要重新查询。 // * 管理终端地址一旦被访问,将自动失效,您需要重新查询。 // * 如果连接断开,每分钟内重新连接的次数不能超过 30 次。 // * 获取到 `InstanceVncUrl` 后,您需要在链接 末尾加上参数 `InstanceVncUrl=xxxx` 。 +// // - 参数 `InstanceVncUrl` :调用接口成功后会返回的 `InstanceVncUrl` 的值。 // // 最后组成的 URL 格式如下: @@ -1336,9 +1337,9 @@ func NewModifyInstancesProjectResponse() (response *ModifyInstancesProjectRespon // 本接口 (ModifyInstancesProject) 用于修改实例所属项目。 // -// * 项目为一个虚拟概念,用户可以在一个账户下面建立多个项目,每个项目中管理不同的资源;将多个不同实例分属到不同项目中,后续使用 [`DescribeInstances`](https://cloud.tencent.com/document/api/213/9388)接口查询实例,项目ID可用于过滤结果。 +// * 项目为一个虚拟概念,用户可以在一个账户下面建立多个项目,每个项目中管理不同的资源;将多个不同实例分属到不同项目中,后续使用 [`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口查询实例,项目ID可用于过滤结果。 // * 绑定负载均衡的实例不支持修改实例所属项目,请先使用[`DeregisterInstancesFromLoadBalancer`](https://cloud.tencent.com/document/api/214/1258)接口解绑负载均衡。 -// * 修改实例所属项目会自动解关联实例原来关联的安全组,修改完成后可能使用[`ModifySecurityGroupsOfInstance`](https://cloud.tencent.com/document/api/213/1367)接口关联安全组。 +// [^_^]: # ( 修改实例所属项目会自动解关联实例原来关联的安全组,修改完成后可使用[`ModifyInstancesAttribute`](https://cloud.tencent.com/document/api/213/15739)接口关联安全组。) // * 支持批量操作。每次请求批量实例的上限为100。 // * 实例操作结果可以通过调用 [DescribeInstances](https://cloud.tencent.com/document/api/213/15728#.E7.A4.BA.E4.BE.8B3-.E6.9F.A5.E8.AF.A2.E5.AE.9E.E4.BE.8B.E7.9A.84.E6.9C.80.E6.96.B0.E6.93.8D.E4.BD.9C.E6.83.85.E5.86.B5) 接口查询,如果实例的最新操作状态(LatestOperationState)为“SUCCESS”,则代表操作成功。 func (c *Client) ModifyInstancesProject(request *ModifyInstancesProjectRequest) (response *ModifyInstancesProjectResponse, err error) { @@ -1509,7 +1510,7 @@ func NewRenewHostsResponse() (response *RenewHostsResponse) { // 本接口 (RenewHosts) 用于续费包年包月CDH实例。 // -// * 只支持操作包年包月实例,否则操作会以特定[错误码](#4.-.E9.94.99.E8.AF.AF.E7.A0.81)返回。 +// * 只支持操作包年包月实例,否则操作会以特定[错误码](#6.-.E9.94.99.E8.AF.AF.E7.A0.81)返回。 // * 续费时请确保账户余额充足。可通过[`DescribeAccountBalance`](https://cloud.tencent.com/document/product/555/20253)接口查询账户余额。 func (c *Client) RenewHosts(request *RenewHostsRequest) (response *RenewHostsResponse, err error) { if request == nil { @@ -1632,8 +1633,8 @@ func NewResetInstancesPasswordResponse() (response *ResetInstancesPasswordRespon // 本接口 (ResetInstancesPassword) 用于将实例操作系统的密码重置为用户指定的密码。 // -// * 只修改管理员帐号的密码。实例的操作系统不同,管理员帐号也会不一样(`Windows`为`Administrator`,`Ubuntu`为`ubuntu`,其它系统为`root`)。 -// * 重置处于运行中状态的实例,需要显式指定强制关机参数`ForceStop`。如果没有显式指定强制关机参数,则只有处于关机状态的实例才允许执行重置密码操作。 +// *如果是修改系统管理云密码:实例的操作系统不同,管理员帐号也会不一样(`Windows`为`Administrator`,`Ubuntu`为`ubuntu`,其它系统为`root`)。 +// * 重置处于运行中状态的实例密码,需要设置关机参数`ForceStop`为`TRUE`。如果没有显式指定强制关机参数,则只有处于关机状态的实例才允许执行重置密码操作。 // * 支持批量操作。将多个实例操作系统的密码重置为相同的密码。每次请求批量实例的上限为100。 // * 实例操作结果可以通过调用 [DescribeInstances](https://cloud.tencent.com/document/api/213/15728#.E7.A4.BA.E4.BE.8B3-.E6.9F.A5.E8.AF.A2.E5.AE.9E.E4.BE.8B.E7.9A.84.E6.9C.80.E6.96.B0.E6.93.8D.E4.BD.9C.E6.83.85.E5.86.B5) 接口查询,如果实例的最新操作状态(LatestOperationState)为“SUCCESS”,则代表操作成功。 func (c *Client) ResetInstancesPassword(request *ResetInstancesPasswordRequest) (response *ResetInstancesPasswordResponse, err error) { @@ -1690,8 +1691,7 @@ func NewResizeInstanceDisksResponse() (response *ResizeInstanceDisksResponse) { // 本接口 (ResizeInstanceDisks) 用于扩容实例的数据盘。 // -// * 目前只支持扩容非弹性数据盘([`DescribeDisks`](https://cloud.tencent.com/document/api/362/16315)接口返回值中的`Portable`为`false`表示非弹性),且[数据盘类型](https://cloud.tencent.com/document/api/213/15753#DataDisk)为:`CLOUD_BASIC`、`CLOUD_PREMIUM`、`CLOUD_SSD`。 -// * 目前不支持[CDH](https://cloud.tencent.com/document/product/416)实例使用该接口扩容数据盘。 +// * 目前只支持扩容非弹性数据盘([`DescribeDisks`](https://cloud.tencent.com/document/api/362/16315)接口返回值中的`Portable`为`false`表示非弹性),且[数据盘类型](https://cloud.tencent.com/document/api/213/15753#DataDisk)为:`CLOUD_BASIC`、`CLOUD_PREMIUM`、`CLOUD_SSD`和[CDH](https://cloud.tencent.com/document/product/416)实例的`LOCAL_BASIC`、`LOCAL_SSD`类型数据盘。 // * 对于包年包月实例,使用该接口会涉及扣费,请确保账户余额充足。可通过[`DescribeAccountBalance`](https://cloud.tencent.com/document/product/555/20253)接口查询账户余额。 // * 目前只支持扩容一块数据盘。 // * 实例操作结果可以通过调用 [DescribeInstances](https://cloud.tencent.com/document/api/213/15728#.E7.A4.BA.E4.BE.8B3-.E6.9F.A5.E8.AF.A2.E5.AE.9E.E4.BE.8B.E7.9A.84.E6.9C.80.E6.96.B0.E6.93.8D.E4.BD.9C.E6.83.85.E5.86.B5) 接口查询,如果实例的最新操作状态(LatestOperationState)为“SUCCESS”,则代表操作成功。 diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312/models.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312/models.go index 24847ec30..6cffe801f 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312/models.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312/models.go @@ -44,13 +44,13 @@ type AllocateHostsRequest struct { // 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 HostChargePrepaid *ChargePrepaid `json:"HostChargePrepaid,omitempty" name:"HostChargePrepaid"` - // 实例计费类型。目前仅支持:PREPAID(预付费,即包年包月模式)。 + // 实例计费类型。目前仅支持:PREPAID(预付费,即包年包月模式),默认为:'PREPAID'。 HostChargeType *string `json:"HostChargeType,omitempty" name:"HostChargeType"` // CDH实例机型,默认为:'HS1'。 HostType *string `json:"HostType,omitempty" name:"HostType"` - // 购买CDH实例数量。 + // 购买CDH实例数量,默认为:1。 HostCount *uint64 `json:"HostCount,omitempty" name:"HostCount"` // 标签描述列表。通过指定该参数可以同时绑定标签到相应的资源实例。 @@ -133,7 +133,7 @@ type AssociateSecurityGroupsRequest struct { // 要绑定的`安全组ID`,类似sg-efil73jd,只支持绑定单个安全组。 SecurityGroupIds []*string `json:"SecurityGroupIds,omitempty" name:"SecurityGroupIds" list` - // 被绑定的`实例ID`,类似ins-lesecurk,支持指定多个实例。 + // 被绑定的`实例ID`,类似ins-lesecurk,支持指定多个实例,每次请求批量实例的上限为100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` } @@ -237,7 +237,7 @@ type CreateImageRequest struct { // 镜像名称 ImageName *string `json:"ImageName,omitempty" name:"ImageName"` - // 需要制作镜像的实例ID + // 需要制作镜像的实例ID。 InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` // 镜像描述 @@ -250,13 +250,13 @@ type CreateImageRequest struct { // 创建Windows镜像时是否启用Sysprep Sysprep *string `json:"Sysprep,omitempty" name:"Sysprep"` - // 实例需要制作镜像的数据盘Id + // 基于实例创建整机镜像时,指定包含在镜像里的数据盘Id DataDiskIds []*string `json:"DataDiskIds,omitempty" name:"DataDiskIds" list` - // 需要制作镜像的快照ID,必须包含一个系统盘快照 + // 基于快照创建镜像,指定快照ID,必须包含一个系统盘快照。不可与InstanceId同时传入。 SnapshotIds []*string `json:"SnapshotIds,omitempty" name:"SnapshotIds" list` - // 检测请求的合法性,但不会对操作的资源产生任何影响 + // 检测本次请求的是否成功,但不会对操作的资源产生任何影响 DryRun *bool `json:"DryRun,omitempty" name:"DryRun"` } @@ -336,13 +336,13 @@ func (r *CreateKeyPairResponse) FromJsonString(s string) error { type DataDisk struct { - // 数据盘大小,单位:GB。最小调整步长为10G,不同数据盘类型取值范围不同,具体限制详见:[实例规格](/document/product/213/2177)。默认值为0,表示不购买数据盘。更多限制详见产品文档。 + // 数据盘大小,单位:GB。最小调整步长为10G,不同数据盘类型取值范围不同,具体限制详见:[存储概述](https://cloud.tencent.com/document/product/213/4952)。默认值为0,表示不购买数据盘。更多限制详见产品文档。 DiskSize *int64 `json:"DiskSize,omitempty" name:"DiskSize"` - // 数据盘类型。数据盘类型限制详见[实例规格](/document/product/213/2177)。取值范围:
  • LOCAL_BASIC:本地硬盘
  • LOCAL_SSD:本地SSD硬盘
  • CLOUD_BASIC:普通云硬盘
  • CLOUD_PREMIUM:高性能云硬盘
  • CLOUD_SSD:SSD云硬盘

    默认取值:LOCAL_BASIC。

    该参数对`ResizeInstanceDisk`接口无效。 + // 数据盘类型。数据盘类型限制详见[存储概述](https://cloud.tencent.com/document/product/213/4952)。取值范围:
  • LOCAL_BASIC:本地硬盘
  • LOCAL_SSD:本地SSD硬盘
  • CLOUD_BASIC:普通云硬盘
  • CLOUD_PREMIUM:高性能云硬盘
  • CLOUD_SSD:SSD云硬盘

    默认取值:LOCAL_BASIC。

    该参数对`ResizeInstanceDisk`接口无效。 DiskType *string `json:"DiskType,omitempty" name:"DiskType"` - // 数据盘ID。LOCAL_BASIC 和 LOCAL_SSD 类型没有ID。暂时不支持该参数。 + // 数据盘ID。LOCAL_BASIC 和 LOCAL_SSD 类型没有ID,暂时不支持该参数。 DiskId *string `json:"DiskId,omitempty" name:"DiskId"` // 数据盘是否随子机销毁。取值范围: @@ -357,7 +357,7 @@ type DataDisk struct { // 注意:此字段可能返回 null,表示取不到有效值。 SnapshotId *string `json:"SnapshotId,omitempty" name:"SnapshotId"` - // 数据盘是否随子机销毁。取值范围: + // 数据盘是加密。取值范围: //
  • TRUE:加密 //
  • FALSE:不加密
    // 默认取值:FALSE
    @@ -369,7 +369,7 @@ type DataDisk struct { type DeleteDisasterRecoverGroupsRequest struct { *tchttp.BaseRequest - // 分散置放群组ID列表,可通过[DescribeDisasterRecoverGroups](https://cloud.tencent.com/document/api/213/17810)接口获取。 + // 分散置放群组ID列表,可通过[DescribeDisasterRecoverGroups](https://cloud.tencent.com/document/api/213/17810)接口获取。每次请求允许操作的分散置放群组数量上限是100。 DisasterRecoverGroupIds []*string `json:"DisasterRecoverGroupIds,omitempty" name:"DisasterRecoverGroupIds" list` } @@ -517,7 +517,7 @@ func (r *DescribeDisasterRecoverGroupQuotaResponse) FromJsonString(s string) err type DescribeDisasterRecoverGroupsRequest struct { *tchttp.BaseRequest - // 分散置放群组ID列表。 + // 分散置放群组ID列表。每次请求允许操作的分散置放群组数量上限是100。 DisasterRecoverGroupIds []*string `json:"DisasterRecoverGroupIds,omitempty" name:"DisasterRecoverGroupIds" list` // 分散置放群组名称,支持模糊匹配。 @@ -566,12 +566,17 @@ func (r *DescribeDisasterRecoverGroupsResponse) FromJsonString(s string) error { type DescribeHostsRequest struct { *tchttp.BaseRequest - // 过滤条件。 - //
  • zone - String - 是否必填:否 - (过滤条件)按照可用区过滤。
  • - //
  • project-id - Integer - 是否必填:否 - (过滤条件)按照项目ID过滤。可通过调用 DescribeProject 查询已创建的项目列表或登录控制台进行查看;也可以调用 AddProject 创建新的项目。
  • - //
  • host-id - String - 是否必填:否 - (过滤条件)按照CDH ID过滤。CDH ID形如:host-11112222。
  • - //
  • host-name - String - 是否必填:否 - (过滤条件)按照CDH实例名称过滤。
  • - //
  • host-state - String - 是否必填:否 - (过滤条件)按照CDH实例状态进行过滤。(PENDING:创建中|LAUNCH_FAILURE:创建失败|RUNNING:运行中|EXPIRED:已过期)
  • + //
  • zone
  • + //

    按照【可用区】进行过滤。可用区形如:ap-guangzhou-1。

    类型:String

    必选:否

    可选项:可用区列表

    + //
  • project-id
  • + //

    按照【项目ID】进行过滤,可通过调用[DescribeProject](https://cloud.tencent.com/document/api/378/4400)查询已创建的项目列表或登录[控制台](https://console.cloud.tencent.com/cvm/index)进行查看;也可以调用[AddProject](https://cloud.tencent.com/document/api/378/4398)创建新的项目。项目ID形如:1002189。

    类型:Integer

    必选:否

    + //
  • host-id
  • + //

    按照【[CDH](https://cloud.tencent.com/document/product/416) ID】进行过滤。[CDH](https://cloud.tencent.com/document/product/416) ID形如:host-xxxxxxxx。

    类型:String

    必选:否

    + //
  • host-name
  • + //

    按照【CDH实例名称】进行过滤。

    类型:String

    必选:否

    + //
  • host-state
  • + //

    按照【CDH实例状态】进行过滤。(PENDING:创建中 | LAUNCH_FAILURE:创建失败 | RUNNING:运行中 | EXPIRED:已过期)

    类型:String

    必选:否

    + // 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。 Filters []*Filter `json:"Filters,omitempty" name:"Filters" list` // 偏移量,默认为0。 @@ -853,9 +858,10 @@ func (r *DescribeInstanceInternetBandwidthConfigsResponse) FromJsonString(s stri type DescribeInstanceTypeConfigsRequest struct { *tchttp.BaseRequest - // 过滤条件。 - //
  • zone - String - 是否必填:否 -(过滤条件)按照[可用区](https://cloud.tencent.com/document/product/213/15753#ZoneInfo)过滤。
  • - //
  • instance-family - String - 是否必填:否 -(过滤条件)按照实例机型系列过滤。实例机型系列形如:S1、I1、M1等。
  • + //
  • zone
  • + //

    按照【可用区】进行过滤。可用区形如:ap-guangzhou-1。

    类型:String

    必选:否

    可选项:可用区列表

    + //
  • instance-family
  • + //

    按照【实例机型系列】进行过滤。实例机型系列形如:S1、I1、M1等。

    类型:Integer

    必选:否

    // 每次请求的`Filters`的上限为10,`Filter.Values`的上限为1。 Filters []*Filter `json:"Filters,omitempty" name:"Filters" list` } @@ -930,7 +936,7 @@ func (r *DescribeInstanceVncUrlResponse) FromJsonString(s string) error { type DescribeInstancesOperationLimitRequest struct { *tchttp.BaseRequest - // 按照一个或者多个实例ID查询,可通过[DescribeInstances](https://cloud.tencent.com/document/api/213/9388)API返回值中的InstanceId获取。实例ID形如:ins-xxxxxxxx。(此参数的具体格式可参考API[简介](https://cloud.tencent.com/document/api/213/15688)的id.N一节)。每次请求的实例的上限为100。 + // 按照一个或者多个实例ID查询,可通过[DescribeInstances](https://cloud.tencent.com/document/api/213/15728)API返回值中的InstanceId获取。实例ID形如:ins-xxxxxxxx。(此参数的具体格式可参考API[简介](https://cloud.tencent.com/document/api/213/15688)的ids.N一节)。每次请求的实例的上限为100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 实例操作。 @@ -971,24 +977,37 @@ func (r *DescribeInstancesOperationLimitResponse) FromJsonString(s string) error type DescribeInstancesRequest struct { *tchttp.BaseRequest - // 按照一个或者多个实例ID查询。实例ID形如:`ins-xxxxxxxx`。(此参数的具体格式可参考API[简介](https://cloud.tencent.com/document/api/213/15688)的`id.N`一节)。每次请求的实例的上限为100。参数不支持同时指定`InstanceIds`和`Filters`。 + // 按照一个或者多个实例ID查询。实例ID形如:`ins-xxxxxxxx`。(此参数的具体格式可参考API[简介](https://cloud.tencent.com/document/api/213/15688)的`ids.N`一节)。每次请求的实例的上限为100。参数不支持同时指定`InstanceIds`和`Filters`。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` - // 过滤条件。 - //
  • zone - String - 是否必填:否 -(过滤条件)按照可用区过滤。
  • - //
  • project-id - Integer - 是否必填:否 -(过滤条件)按照项目ID过滤。可通过调用[DescribeProject](https://cloud.tencent.com/document/api/378/4400)查询已创建的项目列表或登录[控制台](https://console.cloud.tencent.com/cvm/index)进行查看;也可以调用[AddProject](https://cloud.tencent.com/document/api/378/4398)创建新的项目。
  • - //
  • host-id - String - 是否必填:否 - (过滤条件)按照[CDH](https://cloud.tencent.com/document/product/416) ID过滤。[CDH](https://cloud.tencent.com/document/product/416) ID形如:host-xxxxxxxx。
  • - //
  • vpc-id - String - 是否必填:否 - (过滤条件)按照VPC ID进行过滤。VPC ID形如:vpc-xxxxxxxx。
  • - //
  • subnet-id - String - 是否必填:否 - (过滤条件)按照子网ID进行过滤。子网ID形如:subnet-xxxxxxxx。
  • - //
  • instance-id - String - 是否必填:否 - (过滤条件)按照实例ID过滤。实例ID形如:ins-xxxxxxxx。
  • - //
  • security-group-id - String - 是否必填:否 - (过滤条件)按照安全组ID过滤,安全组ID形如: sg-8jlk3f3r。
  • - //
  • instance-name - String - 是否必填:否 - (过滤条件)按照实例名称过滤。
  • - //
  • instance-charge-type - String - 是否必填:否 -(过滤条件)按照实例计费模式过滤。 (PREPAID:表示预付费,即包年包月 | POSTPAID_BY_HOUR:表示后付费,即按量计费 | CDHPAID:表示[CDH](https://cloud.tencent.com/document/product/416)付费,即只对[CDH](https://cloud.tencent.com/document/product/416)计费,不对[CDH](https://cloud.tencent.com/document/product/416)上的实例计费。 )
  • - //
  • private-ip-address - String - 是否必填:否 - (过滤条件)按照实例主网卡的内网IP过滤。
  • - //
  • public-ip-address - String - 是否必填:否 - (过滤条件)按照实例主网卡的公网IP过滤,包含实例创建时自动分配的IP和实例创建后手动绑定的弹性IP。
  • - //
  • tag-key - String - 是否必填:否 - (过滤条件)按照标签键进行过滤。
  • - //
  • tag-value - String - 是否必填:否 - (过滤条件)按照标签值进行过滤。
  • - //
  • tag:tag-key - String - 是否必填:否 - (过滤条件)按照标签键值对进行过滤。 tag-key使用具体的标签键进行替换。使用请参考示例2。
  • + //
  • zone
  • + //

    按照【可用区】进行过滤。可用区形如:ap-guangzhou-1。

    类型:String

    必选:否

    可选项:可用区列表

    + //
  • project-id
  • + //

    按照【项目ID】进行过滤,可通过调用[DescribeProject](https://cloud.tencent.com/document/api/378/4400)查询已创建的项目列表或登录[控制台](https://console.cloud.tencent.com/cvm/index)进行查看;也可以调用[AddProject](https://cloud.tencent.com/document/api/378/4398)创建新的项目。项目ID形如:1002189。

    类型:Integer

    必选:否

    + //
  • host-id
  • + //

    按照【[CDH](https://cloud.tencent.com/document/product/416) ID】进行过滤。[CDH](https://cloud.tencent.com/document/product/416) ID形如:host-xxxxxxxx。

    类型:String

    必选:否

    + //
  • vpc-id
  • + //

    按照【VPC ID】进行过滤。VPC ID形如:vpc-xxxxxxxx。

    类型:String

    必选:否

    + //
  • subnet-id
  • + //

    按照【子网ID】进行过滤。子网ID形如:subnet-xxxxxxxx。

    类型:String

    必选:否

    + //
  • instance-id
  • + //

    按照【实例ID】进行过滤。实例ID形如:ins-xxxxxxxx。

    类型:String

    必选:否

    + //
  • security-group-id
  • + //

    按照【安全组ID】进行过滤。安全组ID形如: sg-8jlk3f3r。

    类型:String

    必选:否

    + //
  • instance-name
  • + //

    按照【实例名称】进行过滤。

    类型:String

    必选:否

    + //
  • instance-charge-type
  • + //

    按照【实例计费模式】进行过滤。(PREPAID:表示预付费,即包年包月 | POSTPAID_BY_HOUR:表示后付费,即按量计费 | CDHPAID:表示[CDH](https://cloud.tencent.com/document/product/416)付费,即只对[CDH](https://cloud.tencent.com/document/product/416)计费,不对[CDH](https://cloud.tencent.com/document/product/416)上的实例计费。)

    类型:String

    必选:否

    + //
  • private-ip-address
  • + //

    按照【实例主网卡的内网IP】进行过滤。

    类型:String

    必选:否

    + //
  • public-ip-address
  • + //

    按照【实例主网卡的公网IP】进行过滤,包含实例创建时自动分配的IP和实例创建后手动绑定的弹性IP。

    类型:String

    必选:否

    + //
  • tag-key
  • + //

    按照【标签键】进行过滤。

    类型:String

    必选:否

    + //
  • tag-value
  • + //

    按照【标签值】进行过滤。

    类型:String

    必选:否

    + //
  • tag:tag-key
  • + //

    按照【标签键值对】进行过滤。tag-key使用具体的标签键进行替换。使用请参考示例2。

    类型:String

    必选:否

    // 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`InstanceIds`和`Filters`。 Filters []*Filter `json:"Filters,omitempty" name:"Filters" list` @@ -1035,7 +1054,7 @@ func (r *DescribeInstancesResponse) FromJsonString(s string) error { type DescribeInstancesStatusRequest struct { *tchttp.BaseRequest - // 按照一个或者多个实例ID查询。实例ID形如:`ins-11112222`。此参数的具体格式可参考API[简介](https://cloud.tencent.com/document/api/213/15688)的`id.N`一节)。每次请求的实例的上限为100。 + // 按照一个或者多个实例ID查询。实例ID形如:`ins-11112222`。此参数的具体格式可参考API[简介](https://cloud.tencent.com/document/api/213/15688)的`ids.N`一节)。每次请求的实例的上限为100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 @@ -1061,7 +1080,7 @@ type DescribeInstancesStatusResponse struct { // 符合条件的实例状态数量。 TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"` - // [实例状态](https://cloud.tencent.com/document/api/213/15738) 列表。 + // [实例状态](https://cloud.tencent.com/document/api/213/15753#InstanceStatus) 列表。 InstanceStatusSet []*InstanceStatus `json:"InstanceStatusSet,omitempty" name:"InstanceStatusSet" list` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 @@ -1337,15 +1356,15 @@ func (r *DescribeReservedInstancesResponse) FromJsonString(s string) error { type DescribeZoneInstanceConfigInfosRequest struct { *tchttp.BaseRequest - // 过滤条件。 - // - //
  • zone - String - 是否必填:否 -(过滤条件)按照可用区过滤。
  • - // - //
  • instance-family String - 是否必填:否 -(过滤条件)按照机型系列过滤。按照实例机型系列过滤。实例机型系列形如:S1、I1、M1等。
  • - // - //
  • instance-type - String - 是否必填:否 - (过滤条件)按照机型过滤。按照实例机型过滤。不同实例机型指定了不同的资源规格,具体取值可通过调用接口 DescribeInstanceTypeConfigs 来获得最新的规格表或参见实例类型描述。若不指定该参数,则默认机型为S1.SMALL1。
  • - // - //
  • instance-charge-type - String - 是否必填:否 -(过滤条件)按照实例计费模式过滤。 (PREPAID:表示预付费,即包年包月 | POSTPAID_BY_HOUR:表示后付费,即按量计费 | CDHPAID:表示CDH付费,即只对CDH计费,不对CDH上的实例计费。 )
  • + //
  • zone
  • + //

    按照【可用区】进行过滤。可用区形如:ap-guangzhou-1。

    类型:String

    必选:否

    可选项:可用区列表

    + //
  • instance-family
  • + //

    按照【实例机型系列】进行过滤。实例机型系列形如:S1、I1、M1等。

    类型:Integer

    必选:否

    + //
  • instance-type
  • + //

    按照【实例机型】进行过滤。不同实例机型指定了不同的资源规格,具体取值可通过调用接口 [DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/product/213/15749) 来获得最新的规格表或参见[实例类型](https://cloud.tencent.com/document/product/213/11518)描述。若不指定该参数,则默认机型为S1.SMALL1。

    类型:String

    必选:否

    + //
  • instance-charge-type
  • + //

    按照【实例计费模式】进行过滤。(PREPAID:表示预付费,即包年包月 | POSTPAID_BY_HOUR:表示后付费,即按量计费 | CDHPAID:表示[CDH](https://cloud.tencent.com/document/product/416)付费,即只对[CDH](https://cloud.tencent.com/document/product/416)计费,不对[CDH](https://cloud.tencent.com/document/product/416)上的实例计费。)

    类型:String

    必选:否

    + // 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。 Filters []*Filter `json:"Filters,omitempty" name:"Filters" list` } @@ -1840,7 +1859,7 @@ type InquiryPriceRenewInstancesRequest struct { // 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的续费时长、是否设置自动续费等属性。 InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitempty" name:"InstanceChargePrepaid"` - // 试运行。 + // 试运行,测试使用,不执行具体逻辑。取值范围:
  • TRUE:跳过执行逻辑
  • FALSE:执行逻辑

    默认取值:FALSE。 DryRun *bool `json:"DryRun,omitempty" name:"DryRun"` // 是否续费弹性数据盘。取值范围:
  • TRUE:表示续费包年包月实例同时续费其挂载的弹性数据盘
  • FALSE:表示续费包年包月实例同时不再续费其挂载的弹性数据盘

    默认取值:TRUE。 @@ -1975,10 +1994,10 @@ func (r *InquiryPriceResetInstancesInternetMaxBandwidthResponse) FromJsonString( type InquiryPriceResetInstancesTypeRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口返回值中的`InstanceId`获取。每次请求批量实例的上限为1。 + // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口返回值中的`InstanceId`获取。本接口每次请求批量实例的上限为1。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` - // 实例机型。不同实例机型指定了不同的资源规格,具体取值可参见附表实例资源规格对照表,也可以调用查询实例资源规格列表接口获得最新的规格表。 + // 实例机型。不同实例机型指定了不同的资源规格,具体取值可参见附表[实例资源规格](https://cloud.tencent.com/document/product/213/11518)对照表,也可以调用查询[实例资源规格列表](https://cloud.tencent.com/document/product/213/15749)接口获得最新的规格表。 InstanceType *string `json:"InstanceType,omitempty" name:"InstanceType"` } @@ -2088,7 +2107,7 @@ type InquiryPriceRunInstancesRequest struct { // 购买实例数量。取值范围:[1,100]。默认取值:1。指定购买实例的数量不能超过用户所能购买的剩余配额数量,具体配额相关限制详见[CVM实例购买限制](https://cloud.tencent.com/document/product/213/2664)。 InstanceCount *int64 `json:"InstanceCount,omitempty" name:"InstanceCount"` - // 实例显示名称。
  • 不指定实例显示名称则默认显示‘未命名’。
  • 购买多台实例,如果指定模式串`{R:x}`,表示生成数字`[x, x+n-1]`,其中`n`表示购买实例的数量,例如`server_{R:3}`,购买1台时,实例显示名称为`server_3`;购买2台时,实例显示名称分别为`server_3`,`server_4`。支持指定多个模式串`{R:x}`。
  • 购买多台实例,如果不指定模式串,则在实例显示名称添加后缀`1、2...n`,其中`n`表示购买实例的数量,例如`server_`,购买2台时,实例显示名称分别为`server_1`,`server_2`。 + // 实例显示名称。
  • 不指定实例显示名称则默认显示‘未命名’。
  • 购买多台实例,如果指定模式串`{R:x}`,表示生成数字`[x, x+n-1]`,其中`n`表示购买实例的数量,例如`server_{R:3}`,购买1台时,实例显示名称为`server_3`;购买2台时,实例显示名称分别为`server_3`,`server_4`。支持指定多个模式串`{R:x}`。
  • 购买多台实例,如果不指定模式串,则在实例显示名称添加后缀`1、2...n`,其中`n`表示购买实例的数量,例如`server_`,购买2台时,实例显示名称分别为`server_1`,`server_2`。
  • 最多支持60个字符(包含模式串)。 InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"` // 实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。 @@ -2192,12 +2211,13 @@ type Instance struct { ImageId *string `json:"ImageId,omitempty" name:"ImageId"` // 自动续费标识。取值范围:
  • `NOTIFY_AND_MANUAL_RENEW`:表示通知即将过期,但不自动续费
  • `NOTIFY_AND_AUTO_RENEW`:表示通知即将过期,而且自动续费
  • `DISABLE_NOTIFY_AND_MANUAL_RENEW`:表示不通知即将过期,也不自动续费。 + //
  • 注意:后付费模式本项为null RenewFlag *string `json:"RenewFlag,omitempty" name:"RenewFlag"` // 创建时间。按照`ISO8601`标准表示,并且使用`UTC`时间。格式为:`YYYY-MM-DDThh:mm:ssZ`。 CreatedTime *string `json:"CreatedTime,omitempty" name:"CreatedTime"` - // 到期时间。按照`ISO8601`标准表示,并且使用`UTC`时间。格式为:`YYYY-MM-DDThh:mm:ssZ`。 + // 到期时间。按照`ISO8601`标准表示,并且使用`UTC`时间。格式为:`YYYY-MM-DDThh:mm:ssZ`。注意:后付费模式本项为null ExpiredTime *string `json:"ExpiredTime,omitempty" name:"ExpiredTime"` // 操作系统名称。 @@ -2233,11 +2253,23 @@ type Instance struct { // 实例最新操作的唯一请求 ID。 // 注意:此字段可能返回 null,表示取不到有效值。 LatestOperationRequestId *string `json:"LatestOperationRequestId,omitempty" name:"LatestOperationRequestId"` + + // 分散置放群组ID。 + // 注意:此字段可能返回 null,表示取不到有效值。 + DisasterRecoverGroupId *string `json:"DisasterRecoverGroupId,omitempty" name:"DisasterRecoverGroupId"` + + // 实例的IPv6地址。 + // 注意:此字段可能返回 null,表示取不到有效值。 + IPv6Addresses []*string `json:"IPv6Addresses,omitempty" name:"IPv6Addresses" list` + + // CAM角色名。 + // 注意:此字段可能返回 null,表示取不到有效值。 + CamRoleName *string `json:"CamRoleName,omitempty" name:"CamRoleName"` } type InstanceChargePrepaid struct { - // 购买实例的时长,单位:月。取值范围:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36。 + // 购买实例的时长,单位:月。取值范围:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36, 48, 60。 Period *int64 `json:"Period,omitempty" name:"Period"` // 自动续费标识。取值范围:
  • NOTIFY_AND_AUTO_RENEW:通知过期且自动续费
  • NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费
  • DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费

    默认取值:NOTIFY_AND_MANUAL_RENEW。若该参数指定为NOTIFY_AND_AUTO_RENEW,在账户余额充足的情况下,实例到期后将按月自动续费。 @@ -2254,7 +2286,6 @@ type InstanceFamilyConfig struct { } type InstanceMarketOptionsRequest struct { - *tchttp.BaseRequest // 竞价相关选项 SpotOptions *SpotMarketOptions `json:"SpotOptions,omitempty" name:"SpotOptions"` @@ -2263,15 +2294,6 @@ type InstanceMarketOptionsRequest struct { MarketType *string `json:"MarketType,omitempty" name:"MarketType"` } -func (r *InstanceMarketOptionsRequest) ToJsonString() string { - b, _ := json.Marshal(r) - return string(b) -} - -func (r *InstanceMarketOptionsRequest) FromJsonString(s string) error { - return json.Unmarshal([]byte(s), &r) -} - type InstanceStatus struct { // 实例`ID`。 @@ -2300,6 +2322,9 @@ type InstanceTypeConfig struct { // 内存容量,单位:`GB`。 Memory *int64 `json:"Memory,omitempty" name:"Memory"` + + // FPGA核数,单位:核。 + FPGA *int64 `json:"FPGA,omitempty" name:"FPGA"` } type InstanceTypeQuotaItem struct { @@ -2340,6 +2365,10 @@ type InstanceTypeQuotaItem struct { // 实例的售卖价格。 Price *ItemPrice `json:"Price,omitempty" name:"Price"` + + // 售罄原因。 + // 注意:此字段可能返回 null,表示取不到有效值。 + SoldOutReason *string `json:"SoldOutReason,omitempty" name:"SoldOutReason"` } type InternetAccessible struct { @@ -2380,21 +2409,45 @@ type InternetChargeTypeConfig struct { type ItemPrice struct { - // 后续单价,单位:元。 + // 后续合计费用的原价,后付费模式使用,单位:元。
  • 如返回了其他时间区间项,如UnitPriceSecondStep,则本项代表时间区间在(0, 96)小时;若未返回其他时间区间项,则本项代表全时段,即(0, ∞)小时 // 注意:此字段可能返回 null,表示取不到有效值。 UnitPrice *float64 `json:"UnitPrice,omitempty" name:"UnitPrice"` - // 后续计价单元,可取值范围:
  • HOUR:表示计价单元是按每小时来计算。当前涉及该计价单元的场景有:实例按小时后付费(POSTPAID_BY_HOUR)、带宽按小时后付费(BANDWIDTH_POSTPAID_BY_HOUR):
  • GB:表示计价单元是按每GB来计算。当前涉及该计价单元的场景有:流量按小时后付费(TRAFFIC_POSTPAID_BY_HOUR)。 + // 后续计价单元,后付费模式使用,可取值范围:
  • HOUR:表示计价单元是按每小时来计算。当前涉及该计价单元的场景有:实例按小时后付费(POSTPAID_BY_HOUR)、带宽按小时后付费(BANDWIDTH_POSTPAID_BY_HOUR):
  • GB:表示计价单元是按每GB来计算。当前涉及该计价单元的场景有:流量按小时后付费(TRAFFIC_POSTPAID_BY_HOUR)。 // 注意:此字段可能返回 null,表示取不到有效值。 ChargeUnit *string `json:"ChargeUnit,omitempty" name:"ChargeUnit"` - // 预支费用的原价,单位:元。 + // 预支合计费用的原价,预付费模式使用,单位:元。 // 注意:此字段可能返回 null,表示取不到有效值。 OriginalPrice *float64 `json:"OriginalPrice,omitempty" name:"OriginalPrice"` - // 预支费用的折扣价,单位:元。 + // 预支合计费用的折扣价,预付费模式使用,单位:元。 // 注意:此字段可能返回 null,表示取不到有效值。 DiscountPrice *float64 `json:"DiscountPrice,omitempty" name:"DiscountPrice"` + + // 折扣,如20代表2折 + // 注意:此字段可能返回 null,表示取不到有效值。 + Discount *uint64 `json:"Discount,omitempty" name:"Discount"` + + // 后续合计费用的折扣价,后付费模式使用,单位:元
  • 如返回了其他时间区间项,如UnitPriceDiscountSecondStep,则本项代表时间区间在(0, 96)小时;若未返回其他时间区间项,则本项代表全时段,即(0, ∞)小时 + // 注意:此字段可能返回 null,表示取不到有效值。 + UnitPriceDiscount *float64 `json:"UnitPriceDiscount,omitempty" name:"UnitPriceDiscount"` + + // 使用时间区间在(96, 360)小时的后续合计费用的原价,后付费模式使用,单位:元。 + // 注意:此字段可能返回 null,表示取不到有效值。 + UnitPriceSecondStep *float64 `json:"UnitPriceSecondStep,omitempty" name:"UnitPriceSecondStep"` + + // 使用时间区间在(96, 360)小时的后续合计费用的折扣价,后付费模式使用,单位:元 + // 注意:此字段可能返回 null,表示取不到有效值。 + UnitPriceDiscountSecondStep *float64 `json:"UnitPriceDiscountSecondStep,omitempty" name:"UnitPriceDiscountSecondStep"` + + // 使用时间区间在(360, ∞)小时的后续合计费用的原价,后付费模式使用,单位:元。 + // 注意:此字段可能返回 null,表示取不到有效值。 + UnitPriceThirdStep *float64 `json:"UnitPriceThirdStep,omitempty" name:"UnitPriceThirdStep"` + + // 使用时间区间在(360, ∞)小时的后续合计费用的折扣价,后付费模式使用,单位:元 + // 注意:此字段可能返回 null,表示取不到有效值。 + UnitPriceDiscountThirdStep *float64 `json:"UnitPriceDiscountThirdStep,omitempty" name:"UnitPriceDiscountThirdStep"` } type KeyPair struct { @@ -2444,11 +2497,11 @@ type LocalDiskType struct { type LoginSettings struct { - // 实例登录密码。不同操作系统类型密码复杂度限制不一样,具体如下:
  • Linux实例密码必须8到16位,至少包括两项[a-z,A-Z]、[0-9] 和 [( ) ` ~ ! @ # $ % ^ & * - + = | { } [ ] : ; ' , . ? / ]中的特殊符号。
  • Windows实例密码必须12到16位,至少包括三项[a-z],[A-Z],[0-9] 和 [( ) ` ~ ! @ # $ % ^ & * - + = { } [ ] : ; ' , . ? /]中的特殊符号。

    若不指定该参数,则由系统随机生成密码,并通过站内信方式通知到用户。 + // 实例登录密码。不同操作系统类型密码复杂度限制不一样,具体如下:
  • Linux实例密码必须8到30位,至少包括两项[a-z],[A-Z]、[0-9] 和 [( ) \` ~ ! @ # $ % ^ & * - + = | { } [ ] : ; ' , . ? / ]中的特殊符号。
  • Windows实例密码必须12到30位,至少包括三项[a-z],[A-Z],[0-9] 和 [( ) \` ~ ! @ # $ % ^ & * - + = | { } [ ] : ; ' , . ? /]中的特殊符号。

    若不指定该参数,则由系统随机生成密码,并通过站内信方式通知到用户。 // 注意:此字段可能返回 null,表示取不到有效值。 Password *string `json:"Password,omitempty" name:"Password"` - // 密钥ID列表。关联密钥后,就可以通过对应的私钥来访问实例;KeyId可通过接口DescribeKeyPairs获取,密钥与密码不能同时指定,同时Windows操作系统不支持指定密钥。当前仅支持购买的时候指定一个密钥。 + // 密钥ID列表。关联密钥后,就可以通过对应的私钥来访问实例;KeyId可通过接口[DescribeKeyPairs](https://cloud.tencent.com/document/api/213/15699)获取,密钥与密码不能同时指定,同时Windows操作系统不支持指定密钥。当前仅支持购买的时候指定一个密钥。 // 注意:此字段可能返回 null,表示取不到有效值。 KeyIds []*string `json:"KeyIds,omitempty" name:"KeyIds" list` @@ -2505,6 +2558,9 @@ type ModifyHostsAttributeRequest struct { // 自动续费标识。取值范围:
  • NOTIFY_AND_AUTO_RENEW:通知过期且自动续费
  • NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费
  • DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费

    若该参数指定为NOTIFY_AND_AUTO_RENEW,在账户余额充足的情况下,实例到期后将按月自动续费。 RenewFlag *string `json:"RenewFlag,omitempty" name:"RenewFlag"` + + // 项目ID。项目可以使用[AddProject](https://cloud.tencent.com/doc/api/403/4398)接口创建。可通过[`DescribeProject`](https://cloud.tencent.com/document/product/378/4400) API返回值中的`projectId`获取。后续使用[DescribeHosts](https://cloud.tencent.com/document/api/213/16474)接口查询实例时,项目ID可用于过滤结果。 + ProjectId *uint64 `json:"ProjectId,omitempty" name:"ProjectId"` } func (r *ModifyHostsAttributeRequest) ToJsonString() string { @@ -2617,7 +2673,7 @@ func (r *ModifyImageSharePermissionResponse) FromJsonString(s string) error { type ModifyInstancesAttributeRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/9388) API返回值中的`InstanceId`获取。每次请求允许操作的实例数量上限是100。 + // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728) API返回值中的`InstanceId`获取。每次请求允许操作的实例数量上限是100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 实例名称。可任意命名,但不得超过60个字符。 @@ -2657,7 +2713,7 @@ func (r *ModifyInstancesAttributeResponse) FromJsonString(s string) error { type ModifyInstancesChargeTypeRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/9388)接口返回值中的`InstanceId`获取。每次请求批量实例的上限为100。 + // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口返回值中的`InstanceId`获取。每次请求批量实例的上限为100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 实例[计费类型](https://cloud.tencent.com/document/product/213/2180)。
  • PREPAID:预付费,即包年包月。 @@ -2697,10 +2753,10 @@ func (r *ModifyInstancesChargeTypeResponse) FromJsonString(s string) error { type ModifyInstancesProjectRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/9388) API返回值中的`InstanceId`获取。每次请求允许操作的实例数量上限是100。 + // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728) API返回值中的`InstanceId`获取。每次请求允许操作的实例数量上限是100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` - // 项目ID。项目可以使用[AddProject](https://cloud.tencent.com/doc/api/403/4398)接口创建。后续使用[DescribeInstances](https://cloud.tencent.com/document/api/213/9388)接口查询实例时,项目ID可用于过滤结果。 + // 项目ID。项目可以使用[AddProject](https://cloud.tencent.com/doc/api/403/4398)接口创建。可通过[`DescribeProject`](https://cloud.tencent.com/document/product/378/4400) API返回值中的`projectId`获取。后续使用[DescribeInstances](https://cloud.tencent.com/document/api/213/15728)接口查询实例时,项目ID可用于过滤结果。 ProjectId *int64 `json:"ProjectId,omitempty" name:"ProjectId"` } @@ -2734,7 +2790,7 @@ func (r *ModifyInstancesProjectResponse) FromJsonString(s string) error { type ModifyInstancesRenewFlagRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/9388) API返回值中的`InstanceId`获取。每次请求允许操作的实例数量上限是100。 + // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728) API返回值中的`InstanceId`获取。每次请求允许操作的实例数量上限是100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 自动续费标识。取值范围:
  • NOTIFY_AND_AUTO_RENEW:通知过期且自动续费
  • NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费
  • DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费

    若该参数指定为NOTIFY_AND_AUTO_RENEW,在账户余额充足的情况下,实例到期后将按月自动续费。 @@ -2853,7 +2909,7 @@ func (r *ModifyKeyPairAttributeResponse) FromJsonString(s string) error { type OperationCountLimit struct { - // 实例操作。 + // 实例操作。取值范围:
  • `INSTANCE_DEGRADE`:降配操作
  • `INTERNET_CHARGE_TYPE_CHANGE`:修改网络带宽计费模式 Operation *string `json:"Operation,omitempty" name:"Operation"` // 实例ID。 @@ -2880,7 +2936,7 @@ type OsVersion struct { type Placement struct { - // 实例所属的[可用区](/document/product/213/9452#zone)ID。该参数也可以通过调用 [DescribeZones](/document/api/213/9455) 的返回值中的Zone字段来获取。 + // 实例所属的[可用区](https://cloud.tencent.com/document/product/213/15753#ZoneInfo)ID。该参数也可以通过调用 [DescribeZones](https://cloud.tencent.com/document/product/213/15707) 的返回值中的Zone字段来获取。 Zone *string `json:"Zone,omitempty" name:"Zone"` // 实例所属项目ID。该参数可以通过调用 [DescribeProject](/document/api/378/4400) 的返回值中的 projectId 字段来获取。不填为默认项目。 @@ -2954,7 +3010,7 @@ func (r *PurchaseReservedInstancesOfferingResponse) FromJsonString(s string) err type RebootInstancesRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/9388)接口返回值中的`InstanceId`获取。每次请求批量实例的上限为100。 + // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口返回值中的`InstanceId`获取。每次请求批量实例的上限为100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 是否在正常重启失败后选择强制重启实例。取值范围:
  • TRUE:表示在正常重启失败后进行强制重启
  • FALSE:表示在正常重启失败后不进行强制重启

    默认取值:FALSE。 @@ -3006,7 +3062,7 @@ type RegionInfo struct { type RenewHostsRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的CDH实例ID。 + // 一个或多个待操作的CDH实例ID。每次请求的CDH实例的上限为100。 HostIds []*string `json:"HostIds,omitempty" name:"HostIds" list` // 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 @@ -3043,7 +3099,7 @@ func (r *RenewHostsResponse) FromJsonString(s string) error { type RenewInstancesRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/9388)接口返回值中的`InstanceId`获取。每次请求批量实例的上限为100。 + // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口返回值中的`InstanceId`获取。每次请求批量实例的上限为100。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的续费时长、是否设置自动续费等属性。包年包月实例该参数为必传参数。 @@ -3165,14 +3221,14 @@ type ReservedInstancesOffering struct { type ResetInstanceRequest struct { *tchttp.BaseRequest - // 实例ID。可通过 [DescribeInstances](https://cloud.tencent.com/document/api/213/9388) API返回值中的`InstanceId`获取。 + // 实例ID。可通过 [DescribeInstances](https://cloud.tencent.com/document/api/213/15728) API返回值中的`InstanceId`获取。 InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` - // 指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-xxx`。镜像类型分为四种:
  • 公共镜像
  • 自定义镜像
  • 共享镜像
  • 服务市场镜像

  • 可通过以下方式获取可用的镜像ID:
  • `公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。
  • 通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/9418) ,取返回信息中的`ImageId`字段。
  • + // 指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-xxx`。镜像类型分为四种:
  • 公共镜像
  • 自定义镜像
  • 共享镜像
  • 服务市场镜像

  • 可通过以下方式获取可用的镜像ID:
  • `公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。
  • 通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,取返回信息中的`ImageId`字段。
  • //
    默认取值:默认使用当前镜像。 ImageId *string `json:"ImageId,omitempty" name:"ImageId"` - // 实例系统盘配置信息。系统盘为云盘的实例可以通过该参数指定重装后的系统盘大小来实现对系统盘的扩容操作,若不指定则默认系统盘大小保持不变。系统盘大小只支持扩容不支持缩容;重装只支持修改系统盘的大小,不能修改系统盘的类型。 + // 实例系统盘配置信息。系统盘为云盘的实例可以通过该参数指定重装后的系统盘大小来实现对系统盘的扩容操作,若不指定大小且原系统盘大小小于镜像大小,则会自动扩容,产生多余的磁盘费用。系统盘大小只支持扩容不支持缩容;重装只支持修改系统盘的大小,不能修改系统盘的类型。 SystemDisk *SystemDisk `json:"SystemDisk,omitempty" name:"SystemDisk"` // 实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。 @@ -3181,7 +3237,7 @@ type ResetInstanceRequest struct { // 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。 EnhancedService *EnhancedService `json:"EnhancedService,omitempty" name:"EnhancedService"` - // 重装系统时,可以指定修改实例的HostName。 + // 重装系统时,可以指定修改实例的主机名。
  • 点号(.)和短横线(-)不能作为 HostName 的首尾字符,不能连续使用。
  • Windows 实例:名字符长度为[2, 15],允许字母(不限制大小写)、数字和短横线(-)组成,不支持点号(.),不能全是数字。
  • 其他类型(Linux 等)实例:字符长度为[2, 60],允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。 HostName *string `json:"HostName,omitempty" name:"HostName"` } @@ -3262,11 +3318,11 @@ type ResetInstancesPasswordRequest struct { InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 实例登录密码。不同操作系统类型密码复杂度限制不一样,具体如下: - // Linux实例密码必须8-30位,推荐使用12位以上密码,不能以“/”开头,至少包含以下字符中的三种不同字符,字符种类:
  • 小写字母:[a-z]
  • 大写字母:[A-Z]
  • 数字:0-9
  • 特殊字符: ()\`~!@#$%^&\*-+=\_|{}[]:;'<>,.?/: - // Windows实例密码必须12~30位,不能以“/”开头且不包括用户名,至少包含以下字符中的三种不同字符
  • 小写字母:[a-z]
  • 大写字母:[A-Z]
  • 数字: 0-9
  • 特殊字符:()\`~!@#$%^&\*-+=\_|{}[]:;' <>,.?/:
  • 如果实例即包含`Linux`实例又包含`Windows`实例,则密码复杂度限制按照`Windows`实例的限制。 + // Linux实例密码必须8-30位,推荐使用12位以上密码,不能以“/”开头,至少包含以下字符中的三种不同字符,字符种类:
  • 小写字母:[a-z]
  • 大写字母:[A-Z]
  • 数字:0-9
  • 特殊字符: ()\`~!@#$%^&\*-+=\_|{}[]:;'<>,.?/ + // Windows实例密码必须12~30位,不能以“/”开头且不包括用户名,至少包含以下字符中的三种不同字符
  • 小写字母:[a-z]
  • 大写字母:[A-Z]
  • 数字: 0-9
  • 特殊字符:()\`~!@#$%^&\*-+=\_|{}[]:;' <>,.?/
  • 如果实例即包含`Linux`实例又包含`Windows`实例,则密码复杂度限制按照`Windows`实例的限制。 Password *string `json:"Password,omitempty" name:"Password"` - // 待重置密码的实例操作系统用户名。不得超过64个字符。 + // 待重置密码的实例操作系统的管理员账户。不得超过64个字符。 UserName *string `json:"UserName,omitempty" name:"UserName"` // 是否对运行中的实例选择强制关机。建议对运行中的实例先手动关机,然后再重置用户密码。取值范围:
  • TRUE:表示在正常关机失败后进行强制关机
  • FALSE:表示在正常关机失败后不进行强制关机

    默认取值:FALSE。

    强制关机的效果等同于关闭物理计算机的电源开关。强制关机可能会导致数据丢失或文件系统损坏,请仅在服务器不能正常关机时使用。 @@ -3303,13 +3359,13 @@ func (r *ResetInstancesPasswordResponse) FromJsonString(s string) error { type ResetInstancesTypeRequest struct { *tchttp.BaseRequest - // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口返回值中的`InstanceId`获取。每次请求批量实例的上限为1。 + // 一个或多个待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口返回值中的`InstanceId`获取。本接口每次请求批量实例的上限为1。 InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds" list` // 实例机型。不同实例机型指定了不同的资源规格,具体取值可通过调用接口[`DescribeInstanceTypeConfigs`](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例类型](https://cloud.tencent.com/document/product/213/11518)描述。 InstanceType *string `json:"InstanceType,omitempty" name:"InstanceType"` - // 是否对运行中的实例选择强制关机。建议对运行中的实例先手动关机,然后再重置用户密码。取值范围:
  • TRUE:表示在正常关机失败后进行强制关机
  • FALSE:表示在正常关机失败后不进行强制关机

    默认取值:FALSE。

    强制关机的效果等同于关闭物理计算机的电源开关。强制关机可能会导致数据丢失或文件系统损坏,请仅在服务器不能正常关机时使用。 + // 是否对运行中的实例选择强制关机。建议对运行中的实例先手动关机。取值范围:
  • TRUE:表示在正常关机失败后进行强制关机
  • FALSE:表示在正常关机失败后不进行强制关机

    默认取值:FALSE。

    强制关机的效果等同于关闭物理计算机的电源开关。强制关机可能会导致数据丢失或文件系统损坏,请仅在服务器不能正常关机时使用。 ForceStop *bool `json:"ForceStop,omitempty" name:"ForceStop"` } @@ -3346,7 +3402,7 @@ type ResizeInstanceDisksRequest struct { // 待操作的实例ID。可通过[`DescribeInstances`](https://cloud.tencent.com/document/api/213/15728)接口返回值中的`InstanceId`获取。 InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` - // 待扩容的数据盘配置信息。只支持扩容非弹性数据盘([`DescribeDisks`](https://cloud.tencent.com/document/api/362/16315)接口返回值中的`Portable`为`false`表示非弹性),且[数据盘类型](/document/api/213/9452#block_device)为:`CLOUD_BASIC`、`CLOUD_PREMIUM`、`CLOUD_SSD`。数据盘容量单位:GB。最小扩容步长:10G。关于数据盘类型的选择请参考硬盘产品简介。可选数据盘类型受到实例类型`InstanceType`限制。另外允许扩容的最大容量也因数据盘类型的不同而有所差异。 + // 待扩容的数据盘配置信息。只支持扩容非弹性数据盘([`DescribeDisks`](https://cloud.tencent.com/document/api/362/16315)接口返回值中的`Portable`为`false`表示非弹性),且[数据盘类型](/document/api/213/9452#block_device)为:`CLOUD_BASIC`、`CLOUD_PREMIUM`、`CLOUD_SSD`。数据盘容量单位:GB。最小扩容步长:10G。关于数据盘类型的选择请参考[硬盘产品简介](https://cloud.tencent.com/document/product/362/2353)。可选数据盘类型受到实例类型`InstanceType`限制。另外允许扩容的最大容量也因数据盘类型的不同而有所差异。 DataDisks []*DataDisk `json:"DataDisks,omitempty" name:"DataDisks" list` // 是否对运行中的实例选择强制关机。建议对运行中的实例先手动关机,然后再重置用户密码。取值范围:
  • TRUE:表示在正常关机失败后进行强制关机
  • FALSE:表示在正常关机失败后不进行强制关机

    默认取值:FALSE。

    强制关机的效果等同于关闭物理计算机的电源开关。强制关机可能会导致数据丢失或文件系统损坏,请仅在服务器不能正常关机时使用。 @@ -3414,7 +3470,7 @@ type RunInstancesRequest struct { // 购买实例数量。包年包月实例取值范围:[1,300],按量计费实例取值范围:[1,100]。默认取值:1。指定购买实例的数量不能超过用户所能购买的剩余配额数量,具体配额相关限制详见[CVM实例购买限制](https://cloud.tencent.com/document/product/213/2664)。 InstanceCount *int64 `json:"InstanceCount,omitempty" name:"InstanceCount"` - // 实例显示名称。
  • 不指定实例显示名称则默认显示‘未命名’。
  • 购买多台实例,如果指定模式串`{R:x}`,表示生成数字`[x, x+n-1]`,其中`n`表示购买实例的数量,例如`server_{R:3}`,购买1台时,实例显示名称为`server_3`;购买2台时,实例显示名称分别为`server_3`,`server_4`。支持指定多个模式串`{R:x}`。
  • 购买多台实例,如果不指定模式串,则在实例显示名称添加后缀`1、2...n`,其中`n`表示购买实例的数量,例如`server_`,购买2台时,实例显示名称分别为`server_1`,`server_2`。 + // 实例显示名称。
  • 不指定实例显示名称则默认显示‘未命名’。
  • 购买多台实例,如果指定模式串`{R:x}`,表示生成数字`[x, x+n-1]`,其中`n`表示购买实例的数量,例如`server_{R:3}`,购买1台时,实例显示名称为`server_3`;购买2台时,实例显示名称分别为`server_3`,`server_4`。支持指定多个模式串`{R:x}`。
  • 购买多台实例,如果不指定模式串,则在实例显示名称添加后缀`1、2...n`,其中`n`表示购买实例的数量,例如`server_`,购买2台时,实例显示名称分别为`server_1`,`server_2`。
  • 最多支持60个字符(包含模式串)。 InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"` // 实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。 @@ -3423,7 +3479,7 @@ type RunInstancesRequest struct { // 实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的sgId字段来获取。若不指定该参数,则绑定默认安全组。 SecurityGroupIds []*string `json:"SecurityGroupIds,omitempty" name:"SecurityGroupIds" list` - // 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。 + // 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认公共镜像开启云监控、云安全服务;自定义镜像与镜像市场镜像默认不开启云监控,云安全服务,而使用镜像里保留的服务。 EnhancedService *EnhancedService `json:"EnhancedService,omitempty" name:"EnhancedService"` // 用于保证请求幂等性的字符串。该字符串由客户生成,需保证不同请求之间唯一,最大值不超过64个ASCII字符。若不指定该参数,则无法保证请求的幂等性。 @@ -3662,7 +3718,7 @@ func (r *SyncImagesResponse) FromJsonString(s string) error { type SystemDisk struct { - // 系统盘类型。系统盘类型限制详见[实例规格](/document/product/213/2177)。取值范围:
  • LOCAL_BASIC:本地硬盘
  • LOCAL_SSD:本地SSD硬盘
  • CLOUD_BASIC:普通云硬盘
  • CLOUD_SSD:SSD云硬盘
  • CLOUD_PREMIUM:高性能云硬盘

    默认取值:CLOUD_BASIC。 + // 系统盘类型。系统盘类型限制详见[存储概述](https://cloud.tencent.com/document/product/213/4952)。取值范围:
  • LOCAL_BASIC:本地硬盘
  • LOCAL_SSD:本地SSD硬盘
  • CLOUD_BASIC:普通云硬盘
  • CLOUD_SSD:SSD云硬盘
  • CLOUD_PREMIUM:高性能云硬盘

    默认取值:CLOUD_BASIC。 DiskType *string `json:"DiskType,omitempty" name:"DiskType"` // 系统盘ID。LOCAL_BASIC 和 LOCAL_SSD 类型没有ID。暂时不支持该参数。 @@ -3782,6 +3838,8 @@ type ZoneInfo struct { //
  • na-toronto-1
  • //
  • na-ashburn-1
  • //
  • na-ashburn-2
  • + //
  • ap-nanjing-1
  • + //
  • ap-nanjing-2
  • Zone *string `json:"Zone,omitempty" name:"Zone"` // 可用区描述,例如,广州三区 diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312/client.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312/client.go index 5285508b2..76efcd74c 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312/client.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312/client.go @@ -341,6 +341,56 @@ func (c *Client) AssociateNatGatewayAddress(request *AssociateNatGatewayAddressR return } +func NewAssociateNetworkAclSubnetsRequest() (request *AssociateNetworkAclSubnetsRequest) { + request = &AssociateNetworkAclSubnetsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "AssociateNetworkAclSubnets") + return +} + +func NewAssociateNetworkAclSubnetsResponse() (response *AssociateNetworkAclSubnetsResponse) { + response = &AssociateNetworkAclSubnetsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(AssociateNetworkAclSubnets)用于网络ACL关联vpc下的子网。 +func (c *Client) AssociateNetworkAclSubnets(request *AssociateNetworkAclSubnetsRequest) (response *AssociateNetworkAclSubnetsResponse, err error) { + if request == nil { + request = NewAssociateNetworkAclSubnetsRequest() + } + response = NewAssociateNetworkAclSubnetsResponse() + err = c.Send(request, response) + return +} + +func NewAssociateNetworkInterfaceSecurityGroupsRequest() (request *AssociateNetworkInterfaceSecurityGroupsRequest) { + request = &AssociateNetworkInterfaceSecurityGroupsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "AssociateNetworkInterfaceSecurityGroups") + return +} + +func NewAssociateNetworkInterfaceSecurityGroupsResponse() (response *AssociateNetworkInterfaceSecurityGroupsResponse) { + response = &AssociateNetworkInterfaceSecurityGroupsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(AssociateNetworkInterfaceSecurityGroups)用于弹性网卡绑定安全组(SecurityGroup)。 +func (c *Client) AssociateNetworkInterfaceSecurityGroups(request *AssociateNetworkInterfaceSecurityGroupsRequest) (response *AssociateNetworkInterfaceSecurityGroupsResponse, err error) { + if request == nil { + request = NewAssociateNetworkInterfaceSecurityGroupsRequest() + } + response = NewAssociateNetworkInterfaceSecurityGroupsResponse() + err = c.Send(request, response) + return +} + func NewAttachCcnInstancesRequest() (request *AttachCcnInstancesRequest) { request = &AttachCcnInstancesRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -423,6 +473,59 @@ func (c *Client) AttachNetworkInterface(request *AttachNetworkInterfaceRequest) return } +func NewCheckAssistantCidrRequest() (request *CheckAssistantCidrRequest) { + request = &CheckAssistantCidrRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "CheckAssistantCidr") + return +} + +func NewCheckAssistantCidrResponse() (response *CheckAssistantCidrResponse) { + response = &CheckAssistantCidrResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(CheckAssistantCidr)用于检查辅助CIDR是否与存量路由、对等连接(对端VPC的CIDR)等资源存在冲突。如果存在重叠,则返回重叠的资源。(接口灰度中,如需使用请提工单。) +// * 检测辅助CIDR是否与当前VPC的主CIDR和辅助CIDR存在重叠。 +// * 检测辅助CIDR是否与当前VPC的路由的目的端存在重叠。 +// * 检测辅助CIDR是否与当前VPC的对等连接,对端VPC下的主CIDR或辅助CIDR存在重叠。 +func (c *Client) CheckAssistantCidr(request *CheckAssistantCidrRequest) (response *CheckAssistantCidrResponse, err error) { + if request == nil { + request = NewCheckAssistantCidrRequest() + } + response = NewCheckAssistantCidrResponse() + err = c.Send(request, response) + return +} + +func NewCheckDefaultSubnetRequest() (request *CheckDefaultSubnetRequest) { + request = &CheckDefaultSubnetRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "CheckDefaultSubnet") + return +} + +func NewCheckDefaultSubnetResponse() (response *CheckDefaultSubnetResponse) { + response = &CheckDefaultSubnetResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(CheckDefaultSubnet)用于预判是否可建默认子网。 +func (c *Client) CheckDefaultSubnet(request *CheckDefaultSubnetRequest) (response *CheckDefaultSubnetResponse, err error) { + if request == nil { + request = NewCheckDefaultSubnetRequest() + } + response = NewCheckDefaultSubnetResponse() + err = c.Send(request, response) + return +} + func NewCheckNetDetectStateRequest() (request *CheckNetDetectStateRequest) { request = &CheckNetDetectStateRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -498,6 +601,61 @@ func (c *Client) CreateAddressTemplateGroup(request *CreateAddressTemplateGroupR return } +func NewCreateAndAttachNetworkInterfaceRequest() (request *CreateAndAttachNetworkInterfaceRequest) { + request = &CreateAndAttachNetworkInterfaceRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "CreateAndAttachNetworkInterface") + return +} + +func NewCreateAndAttachNetworkInterfaceResponse() (response *CreateAndAttachNetworkInterfaceResponse) { + response = &CreateAndAttachNetworkInterfaceResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(CreateAndAttachNetworkInterface)用于创建弹性网卡并绑定云主机。 +// * 创建弹性网卡时可以指定内网IP,并且可以指定一个主IP,指定的内网IP必须在弹性网卡所在子网内,而且不能被占用。 +// * 创建弹性网卡时可以指定需要申请的内网IP数量,系统会随机生成内网IP地址。 +// * 一个弹性网卡支持绑定的IP地址是有限制的,更多资源限制信息详见弹性网卡使用限制。 +// * 创建弹性网卡同时可以绑定已有安全组。 +// * 创建弹性网卡同时可以绑定标签, 应答里的标签列表代表添加成功的标签。 +func (c *Client) CreateAndAttachNetworkInterface(request *CreateAndAttachNetworkInterfaceRequest) (response *CreateAndAttachNetworkInterfaceResponse, err error) { + if request == nil { + request = NewCreateAndAttachNetworkInterfaceRequest() + } + response = NewCreateAndAttachNetworkInterfaceResponse() + err = c.Send(request, response) + return +} + +func NewCreateAssistantCidrRequest() (request *CreateAssistantCidrRequest) { + request = &CreateAssistantCidrRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "CreateAssistantCidr") + return +} + +func NewCreateAssistantCidrResponse() (response *CreateAssistantCidrResponse) { + response = &CreateAssistantCidrResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(CreateAssistantCidr)用于批量创建辅助CIDR。(接口灰度中,如需使用请提工单。) +func (c *Client) CreateAssistantCidr(request *CreateAssistantCidrRequest) (response *CreateAssistantCidrResponse, err error) { + if request == nil { + request = NewCreateAssistantCidrRequest() + } + response = NewCreateAssistantCidrResponse() + err = c.Send(request, response) + return +} + func NewCreateBandwidthPackageRequest() (request *CreateBandwidthPackageRequest) { request = &CreateBandwidthPackageRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -513,7 +671,7 @@ func NewCreateBandwidthPackageResponse() (response *CreateBandwidthPackageRespon return } -// 接口支持创建[设备带宽包](https://cloud.tencent.com/document/product/684/15246#.E8.AE.BE.E5.A4.87.E5.B8.A6.E5.AE.BD.E5.8C.85)和[ip带宽包](https://cloud.tencent.com/document/product/684/15246#ip-.E5.B8.A6.E5.AE.BD.E5.8C.85) +// 接口支持创建[设备带宽包](https://cloud.tencent.com/document/product/684/15246#.E8.AE.BE.E5.A4.87.E5.B8.A6.E5.AE.BD.E5.8C.85)和[IP带宽包](https://cloud.tencent.com/document/product/684/15246#ip-.E5.B8.A6.E5.AE.BD.E5.8C.85) func (c *Client) CreateBandwidthPackage(request *CreateBandwidthPackageRequest) (response *CreateBandwidthPackageResponse, err error) { if request == nil { request = NewCreateBandwidthPackageRequest() @@ -539,6 +697,7 @@ func NewCreateCcnResponse() (response *CreateCcnResponse) { } // 本接口(CreateCcn)用于创建云联网(CCN)。
    +// * 创建云联网同时可以绑定标签, 应答里的标签列表代表添加成功的标签。 // 每个账号能创建的云联网实例个数是有限的,详请参考产品文档。如果需要扩充请联系在线客服。 func (c *Client) CreateCcn(request *CreateCcnRequest) (response *CreateCcnResponse, err error) { if request == nil { @@ -574,6 +733,34 @@ func (c *Client) CreateCustomerGateway(request *CreateCustomerGatewayRequest) (r return } +func NewCreateDefaultSecurityGroupRequest() (request *CreateDefaultSecurityGroupRequest) { + request = &CreateDefaultSecurityGroupRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "CreateDefaultSecurityGroup") + return +} + +func NewCreateDefaultSecurityGroupResponse() (response *CreateDefaultSecurityGroupResponse) { + response = &CreateDefaultSecurityGroupResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(CreateDefaultSecurityGroup)用于创建(如果项目下未存在默认安全组,则创建;已存在则获取。)默认安全组(SecurityGroup)。 +// * 每个账户下每个地域的每个项目的安全组数量限制。 +// * 新建的安全组的入站和出站规则默认都是全部拒绝,在创建后通常您需要再调用CreateSecurityGroupPolicies将安全组的规则设置为需要的规则。 +// * 创建安全组同时可以绑定标签, 应答里的标签列表代表添加成功的标签。 +func (c *Client) CreateDefaultSecurityGroup(request *CreateDefaultSecurityGroupRequest) (response *CreateDefaultSecurityGroupResponse, err error) { + if request == nil { + request = NewCreateDefaultSecurityGroupRequest() + } + response = NewCreateDefaultSecurityGroupResponse() + err = c.Send(request, response) + return +} + func NewCreateDefaultVpcRequest() (request *CreateDefaultVpcRequest) { request = &CreateDefaultVpcRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -808,6 +995,32 @@ func (c *Client) CreateNetDetect(request *CreateNetDetectRequest) (response *Cre return } +func NewCreateNetworkAclRequest() (request *CreateNetworkAclRequest) { + request = &CreateNetworkAclRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "CreateNetworkAcl") + return +} + +func NewCreateNetworkAclResponse() (response *CreateNetworkAclResponse) { + response = &CreateNetworkAclResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(CreateNetworkAcl)用于创建新的网络ACL。 +// * 新建的网络ACL的入站和出站规则默认都是全部拒绝,在创建后通常您需要再调用ModifyNetworkAclEntries将网络ACL的规则设置为需要的规则。 +func (c *Client) CreateNetworkAcl(request *CreateNetworkAclRequest) (response *CreateNetworkAclResponse, err error) { + if request == nil { + request = NewCreateNetworkAclRequest() + } + response = NewCreateNetworkAclResponse() + err = c.Send(request, response) + return +} + func NewCreateNetworkInterfaceRequest() (request *CreateNetworkInterfaceRequest) { request = &CreateNetworkInterfaceRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -855,6 +1068,7 @@ func NewCreateRouteTableResponse() (response *CreateRouteTableResponse) { // 本接口(CreateRouteTable)用于创建路由表。 // * 创建了VPC后,系统会创建一个默认路由表,所有新建的子网都会关联到默认路由表。默认情况下您可以直接使用默认路由表来管理您的路由策略。当您的路由策略较多时,您可以调用创建路由表接口创建更多路由表管理您的路由策略。 +// * 创建路由表同时可以绑定标签, 应答里的标签列表代表添加成功的标签。 func (c *Client) CreateRouteTable(request *CreateRouteTableRequest) (response *CreateRouteTableResponse, err error) { if request == nil { request = NewCreateRouteTableRequest() @@ -908,6 +1122,7 @@ func NewCreateSecurityGroupResponse() (response *CreateSecurityGroupResponse) { // 本接口(CreateSecurityGroup)用于创建新的安全组(SecurityGroup)。 // * 每个账户下每个地域的每个项目的安全组数量限制。 // * 新建的安全组的入站和出站规则默认都是全部拒绝,在创建后通常您需要再调用CreateSecurityGroupPolicies将安全组的规则设置为需要的规则。 +// * 创建安全组同时可以绑定标签, 应答里的标签列表代表添加成功的标签。 func (c *Client) CreateSecurityGroup(request *CreateSecurityGroupRequest) (response *CreateSecurityGroupResponse, err error) { if request == nil { request = NewCreateSecurityGroupRequest() @@ -952,6 +1167,44 @@ func (c *Client) CreateSecurityGroupPolicies(request *CreateSecurityGroupPolicie return } +func NewCreateSecurityGroupWithPoliciesRequest() (request *CreateSecurityGroupWithPoliciesRequest) { + request = &CreateSecurityGroupWithPoliciesRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "CreateSecurityGroupWithPolicies") + return +} + +func NewCreateSecurityGroupWithPoliciesResponse() (response *CreateSecurityGroupWithPoliciesResponse) { + response = &CreateSecurityGroupWithPoliciesResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(CreateSecurityGroupWithPolicies)用于创建新的安全组(SecurityGroup),并且可以同时添加安全组规则(SecurityGroupPolicy)。 +// * 每个账户下每个地域的每个项目的安全组数量限制。 +// * 新建的安全组的入站和出站规则默认都是全部拒绝,在创建后通常您需要再调用CreateSecurityGroupPolicies将安全组的规则设置为需要的规则。 +// +// 安全组规则说明: +// * Version安全组规则版本号,用户每次更新安全规则版本会自动加1,防止您更新的路由规则已过期,不填不考虑冲突。 +// * Protocol字段支持输入TCP, UDP, ICMP, ICMPV6, GRE, ALL。 +// * CidrBlock字段允许输入符合cidr格式标准的任意字符串。(展开)在基础网络中,如果CidrBlock包含您的账户内的云服务器之外的设备在腾讯云的内网IP,并不代表此规则允许您访问这些设备,租户之间网络隔离规则优先于安全组中的内网规则。 +// * Ipv6CidrBlock字段允许输入符合IPv6 cidr格式标准的任意字符串。(展开)在基础网络中,如果Ipv6CidrBlock包含您的账户内的云服务器之外的设备在腾讯云的内网IPv6,并不代表此规则允许您访问这些设备,租户之间网络隔离规则优先于安全组中的内网规则。 +// * SecurityGroupId字段允许输入与待修改的安全组位于相同项目中的安全组ID,包括这个安全组ID本身,代表安全组下所有云服务器的内网IP。使用这个字段时,这条规则用来匹配网络报文的过程中会随着被使用的这个ID所关联的云服务器变化而变化,不需要重新修改。 +// * Port字段允许输入一个单独端口号,或者用减号分隔的两个端口号代表端口范围,例如80或8000-8010。只有当Protocol字段是TCP或UDP时,Port字段才被接受,即Protocol字段不是TCP或UDP时,Protocol和Port排他关系,不允许同时输入,否则会接口报错。 +// * Action字段只允许输入ACCEPT或DROP。 +// * CidrBlock, Ipv6CidrBlock, SecurityGroupId, AddressTemplate四者是排他关系,不允许同时输入,Protocol + Port和ServiceTemplate二者是排他关系,不允许同时输入。 +// * 一次请求中只能创建单个方向的规则, 如果需要指定索引(PolicyIndex)参数, 多条规则的索引必须一致。 +func (c *Client) CreateSecurityGroupWithPolicies(request *CreateSecurityGroupWithPoliciesRequest) (response *CreateSecurityGroupWithPoliciesResponse, err error) { + if request == nil { + request = NewCreateSecurityGroupWithPoliciesRequest() + } + response = NewCreateSecurityGroupWithPoliciesResponse() + err = c.Send(request, response) + return +} + func NewCreateServiceTemplateRequest() (request *CreateServiceTemplateRequest) { request = &CreateServiceTemplateRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -1023,6 +1276,7 @@ func NewCreateSubnetResponse() (response *CreateSubnetResponse) { // * 您可以创建的最小网段子网掩码为28(有16个IP地址),最大网段子网掩码为16(65,536个IP地址)。 // * 同一个VPC内,多个子网的网段不能重叠。 // * 子网创建后会自动关联到默认路由表。 +// * 创建子网同时可以绑定标签, 应答里的标签列表代表添加成功的标签。 func (c *Client) CreateSubnet(request *CreateSubnetRequest) (response *CreateSubnetResponse, err error) { if request == nil { request = NewCreateSubnetRequest() @@ -1053,6 +1307,7 @@ func NewCreateSubnetsResponse() (response *CreateSubnetsResponse) { // * 您可以创建的最小网段子网掩码为28(有16个IP地址),最大网段子网掩码为16(65,536个IP地址)。 // * 同一个VPC内,多个子网的网段不能重叠。 // * 子网创建后会自动关联到默认路由表。 +// * 创建子网同时可以绑定标签, 应答里的标签列表代表添加成功的标签。 func (c *Client) CreateSubnets(request *CreateSubnetsRequest) (response *CreateSubnetsResponse, err error) { if request == nil { request = NewCreateSubnetsRequest() @@ -1080,6 +1335,7 @@ func NewCreateVpcResponse() (response *CreateVpcResponse) { // 本接口(CreateVpc)用于创建私有网络(VPC)。 // * 用户可以创建的最小网段子网掩码为28(有16个IP地址),最大网段子网掩码为16(65,536个IP地址),如果规划VPC网段请参见VPC网段规划说明。 // * 同一个地域能创建的VPC资源个数也是有限制的,详见 VPC使用限制,如果需要扩充请联系在线客服。 +// * 创建VPC同时可以绑定标签, 应答里的标签列表代表添加成功的标签。 func (c *Client) CreateVpc(request *CreateVpcRequest) (response *CreateVpcResponse, err error) { if request == nil { request = NewCreateVpcRequest() @@ -1189,6 +1445,31 @@ func (c *Client) DeleteAddressTemplateGroup(request *DeleteAddressTemplateGroupR return } +func NewDeleteAssistantCidrRequest() (request *DeleteAssistantCidrRequest) { + request = &DeleteAssistantCidrRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DeleteAssistantCidr") + return +} + +func NewDeleteAssistantCidrResponse() (response *DeleteAssistantCidrResponse) { + response = &DeleteAssistantCidrResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DeleteAssistantCidr)用于删除辅助CIDR。(接口灰度中,如需使用请提工单。) +func (c *Client) DeleteAssistantCidr(request *DeleteAssistantCidrRequest) (response *DeleteAssistantCidrResponse, err error) { + if request == nil { + request = NewDeleteAssistantCidrRequest() + } + response = NewDeleteAssistantCidrResponse() + err = c.Send(request, response) + return +} + func NewDeleteBandwidthPackageRequest() (request *DeleteBandwidthPackageRequest) { request = &DeleteBandwidthPackageRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -1204,7 +1485,7 @@ func NewDeleteBandwidthPackageResponse() (response *DeleteBandwidthPackageRespon return } -// 接口支持删除共享带宽包,包括[设备带宽包](https://cloud.tencent.com/document/product/684/15246#.E8.AE.BE.E5.A4.87.E5.B8.A6.E5.AE.BD.E5.8C.85)和[ip带宽包](https://cloud.tencent.com/document/product/684/15246#ip-.E5.B8.A6.E5.AE.BD.E5.8C.85) +// 接口支持删除共享带宽包,包括[设备带宽包](https://cloud.tencent.com/document/product/684/15246#.E8.AE.BE.E5.A4.87.E5.B8.A6.E5.AE.BD.E5.8C.85)和[IP带宽包](https://cloud.tencent.com/document/product/684/15246#ip-.E5.B8.A6.E5.AE.BD.E5.8C.85) func (c *Client) DeleteBandwidthPackage(request *DeleteBandwidthPackageRequest) (response *DeleteBandwidthPackageResponse, err error) { if request == nil { request = NewDeleteBandwidthPackageRequest() @@ -1472,6 +1753,31 @@ func (c *Client) DeleteNetDetect(request *DeleteNetDetectRequest) (response *Del return } +func NewDeleteNetworkAclRequest() (request *DeleteNetworkAclRequest) { + request = &DeleteNetworkAclRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DeleteNetworkAcl") + return +} + +func NewDeleteNetworkAclResponse() (response *DeleteNetworkAclResponse) { + response = &DeleteNetworkAclResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DeleteNetworkAcl)用于删除网络ACL。 +func (c *Client) DeleteNetworkAcl(request *DeleteNetworkAclRequest) (response *DeleteNetworkAclResponse, err error) { + if request == nil { + request = NewDeleteNetworkAclRequest() + } + response = NewDeleteNetworkAclResponse() + err = c.Send(request, response) + return +} + func NewDeleteNetworkInterfaceRequest() (request *DeleteNetworkInterfaceRequest) { request = &DeleteNetworkInterfaceRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -1882,6 +2188,31 @@ func (c *Client) DescribeAddresses(request *DescribeAddressesRequest) (response return } +func NewDescribeAssistantCidrRequest() (request *DescribeAssistantCidrRequest) { + request = &DescribeAssistantCidrRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeAssistantCidr") + return +} + +func NewDescribeAssistantCidrResponse() (response *DescribeAssistantCidrResponse) { + response = &DescribeAssistantCidrResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DescribeAssistantCidr)用于查询辅助CIDR列表。(接口灰度中,如需使用请提工单。) +func (c *Client) DescribeAssistantCidr(request *DescribeAssistantCidrRequest) (response *DescribeAssistantCidrResponse, err error) { + if request == nil { + request = NewDescribeAssistantCidrRequest() + } + response = NewDescribeAssistantCidrResponse() + err = c.Send(request, response) + return +} + func NewDescribeBandwidthPackageQuotaRequest() (request *DescribeBandwidthPackageQuotaRequest) { request = &DescribeBandwidthPackageQuotaRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2234,6 +2565,31 @@ func (c *Client) DescribeGatewayFlowMonitorDetail(request *DescribeGatewayFlowMo return } +func NewDescribeGatewayFlowQosRequest() (request *DescribeGatewayFlowQosRequest) { + request = &DescribeGatewayFlowQosRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeGatewayFlowQos") + return +} + +func NewDescribeGatewayFlowQosResponse() (response *DescribeGatewayFlowQosResponse) { + response = &DescribeGatewayFlowQosResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DescribeGatewayFlowQos)用于查询网关来访IP流控带宽。 +func (c *Client) DescribeGatewayFlowQos(request *DescribeGatewayFlowQosRequest) (response *DescribeGatewayFlowQosResponse, err error) { + if request == nil { + request = NewDescribeGatewayFlowQosRequest() + } + response = NewDescribeGatewayFlowQosResponse() + err = c.Send(request, response) + return +} + func NewDescribeHaVipsRequest() (request *DescribeHaVipsRequest) { request = &DescribeHaVipsRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2435,6 +2791,31 @@ func (c *Client) DescribeNetDetects(request *DescribeNetDetectsRequest) (respons return } +func NewDescribeNetworkAclsRequest() (request *DescribeNetworkAclsRequest) { + request = &DescribeNetworkAclsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeNetworkAcls") + return +} + +func NewDescribeNetworkAclsResponse() (response *DescribeNetworkAclsResponse) { + response = &DescribeNetworkAclsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DescribeNetworkAcls)用于查询网络ACL列表。 +func (c *Client) DescribeNetworkAcls(request *DescribeNetworkAclsRequest) (response *DescribeNetworkAclsResponse, err error) { + if request == nil { + request = NewDescribeNetworkAclsRequest() + } + response = NewDescribeNetworkAclsResponse() + err = c.Send(request, response) + return +} + func NewDescribeNetworkInterfaceLimitRequest() (request *DescribeNetworkInterfaceLimitRequest) { request = &DescribeNetworkInterfaceLimitRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2450,7 +2831,7 @@ func NewDescribeNetworkInterfaceLimitResponse() (response *DescribeNetworkInterf return } -// 本接口(DescribeNetworkInterfaceLimit)根据CVM实例ID查询弹性网卡配额,返回该CVM实例能绑定的弹性网卡配额,以及每个弹性网卡可以分配的IP配额 +// 本接口(DescribeNetworkInterfaceLimit)根据CVM实例ID或弹性网卡ID查询弹性网卡配额,返回该CVM实例或弹性网卡能绑定的弹性网卡配额,以及弹性网卡可以分配的IP配额 func (c *Client) DescribeNetworkInterfaceLimit(request *DescribeNetworkInterfaceLimitRequest) (response *DescribeNetworkInterfaceLimitResponse, err error) { if request == nil { request = NewDescribeNetworkInterfaceLimitRequest() @@ -2560,6 +2941,31 @@ func (c *Client) DescribeSecurityGroupAssociationStatistics(request *DescribeSec return } +func NewDescribeSecurityGroupLimitsRequest() (request *DescribeSecurityGroupLimitsRequest) { + request = &DescribeSecurityGroupLimitsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeSecurityGroupLimits") + return +} + +func NewDescribeSecurityGroupLimitsResponse() (response *DescribeSecurityGroupLimitsResponse) { + response = &DescribeSecurityGroupLimitsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DescribeSecurityGroupLimits)用于查询用户安全组配额。 +func (c *Client) DescribeSecurityGroupLimits(request *DescribeSecurityGroupLimitsRequest) (response *DescribeSecurityGroupLimitsResponse, err error) { + if request == nil { + request = NewDescribeSecurityGroupLimitsRequest() + } + response = NewDescribeSecurityGroupLimitsResponse() + err = c.Send(request, response) + return +} + func NewDescribeSecurityGroupPoliciesRequest() (request *DescribeSecurityGroupPoliciesRequest) { request = &DescribeSecurityGroupPoliciesRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2585,6 +2991,31 @@ func (c *Client) DescribeSecurityGroupPolicies(request *DescribeSecurityGroupPol return } +func NewDescribeSecurityGroupReferencesRequest() (request *DescribeSecurityGroupReferencesRequest) { + request = &DescribeSecurityGroupReferencesRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeSecurityGroupReferences") + return +} + +func NewDescribeSecurityGroupReferencesResponse() (response *DescribeSecurityGroupReferencesResponse) { + response = &DescribeSecurityGroupReferencesResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DescribeSecurityGroupReferences)用于查询安全组被引用信息。 +func (c *Client) DescribeSecurityGroupReferences(request *DescribeSecurityGroupReferencesRequest) (response *DescribeSecurityGroupReferencesResponse, err error) { + if request == nil { + request = NewDescribeSecurityGroupReferencesRequest() + } + response = NewDescribeSecurityGroupReferencesResponse() + err = c.Send(request, response) + return +} + func NewDescribeSecurityGroupsRequest() (request *DescribeSecurityGroupsRequest) { request = &DescribeSecurityGroupsRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2710,6 +3141,56 @@ func (c *Client) DescribeTaskResult(request *DescribeTaskResultRequest) (respons return } +func NewDescribeTemplateLimitsRequest() (request *DescribeTemplateLimitsRequest) { + request = &DescribeTemplateLimitsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeTemplateLimits") + return +} + +func NewDescribeTemplateLimitsResponse() (response *DescribeTemplateLimitsResponse) { + response = &DescribeTemplateLimitsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DescribeTemplateLimits)用于查询参数模板配额列表。 +func (c *Client) DescribeTemplateLimits(request *DescribeTemplateLimitsRequest) (response *DescribeTemplateLimitsResponse, err error) { + if request == nil { + request = NewDescribeTemplateLimitsRequest() + } + response = NewDescribeTemplateLimitsResponse() + err = c.Send(request, response) + return +} + +func NewDescribeVpcInstancesRequest() (request *DescribeVpcInstancesRequest) { + request = &DescribeVpcInstancesRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeVpcInstances") + return +} + +func NewDescribeVpcInstancesResponse() (response *DescribeVpcInstancesResponse) { + response = &DescribeVpcInstancesResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DescribeVpcInstances)用于查询VPC下的云主机实例列表。 +func (c *Client) DescribeVpcInstances(request *DescribeVpcInstancesRequest) (response *DescribeVpcInstancesResponse, err error) { + if request == nil { + request = NewDescribeVpcInstancesRequest() + } + response = NewDescribeVpcInstancesResponse() + err = c.Send(request, response) + return +} + func NewDescribeVpcIpv6AddressesRequest() (request *DescribeVpcIpv6AddressesRequest) { request = &DescribeVpcIpv6AddressesRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2736,6 +3217,60 @@ func (c *Client) DescribeVpcIpv6Addresses(request *DescribeVpcIpv6AddressesReque return } +func NewDescribeVpcLimitsRequest() (request *DescribeVpcLimitsRequest) { + request = &DescribeVpcLimitsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeVpcLimits") + return +} + +func NewDescribeVpcLimitsResponse() (response *DescribeVpcLimitsResponse) { + response = &DescribeVpcLimitsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 获取私有网络配额,部分私有网络的配额有地域属性。 +// LimitTypes取值范围: +// * appid-max-vpcs (每个开发商每个地域可创建的VPC数) +// * vpc-max-subnets(每个VPC可创建的子网数) +// * vpc-max-route-tables(每个VPC可创建的路由表数) +// * route-table-max-policies(每个路由表可添加的策略数) +// * vpc-max-vpn-gateways(每个VPC可创建的VPN网关数) +// * appid-max-custom-gateways(每个开发商可创建的对端网关数) +// * appid-max-vpn-connections(每个开发商可创建的VPN通道数) +// * custom-gateway-max-vpn-connections(每个对端网关可创建的VPN通道数) +// * vpn-gateway-max-custom-gateways(每个VPNGW可以创建的通道数) +// * vpc-max-network-acls(每个VPC可创建的网络ACL数) +// * network-acl-max-inbound-policies(每个网络ACL可添加的入站规则数) +// * network-acl-max-outbound-policies(每个网络ACL可添加的出站规则数) +// * vpc-max-vpcpeers(每个VPC可创建的对等连接数) +// * vpc-max-available-vpcpeers(每个VPC可创建的有效对等连接数) +// * vpc-max-basic-network-interconnections(每个VPC可创建的基础网络云主机与VPC互通数) +// * direct-connection-max-snats(每个专线网关可创建的SNAT数) +// * direct-connection-max-dnats(每个专线网关可创建的DNAT数) +// * direct-connection-max-snapts(每个专线网关可创建的SNAPT数) +// * direct-connection-max-dnapts(每个专线网关可创建的DNAPT数) +// * vpc-max-nat-gateways(每个VPC可创建的NAT网关数) +// * nat-gateway-max-eips(每个NAT可以购买的外网IP数量) +// * vpc-max-enis(每个VPC可创建弹性网卡数) +// * vpc-max-havips(每个VPC可创建HAVIP数) +// * eni-max-private-ips(每个ENI可以绑定的内网IP数(ENI未绑定子机)) +// * nat-gateway-max-dnapts(每个NAT网关可创建的DNAPT数) +// * vpc-max-ipv6s(每个VPC可分配的IPv6地址数) +// * eni-max-ipv6s(每个ENI可分配的IPv6地址数) +// * vpc-max-assistant_cidrs(每个VPC可分配的辅助CIDR数) +func (c *Client) DescribeVpcLimits(request *DescribeVpcLimitsRequest) (response *DescribeVpcLimitsResponse, err error) { + if request == nil { + request = NewDescribeVpcLimitsRequest() + } + response = NewDescribeVpcLimitsResponse() + err = c.Send(request, response) + return +} + func NewDescribeVpcPrivateIpAddressesRequest() (request *DescribeVpcPrivateIpAddressesRequest) { request = &DescribeVpcPrivateIpAddressesRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2762,6 +3297,31 @@ func (c *Client) DescribeVpcPrivateIpAddresses(request *DescribeVpcPrivateIpAddr return } +func NewDescribeVpcResourceDashboardRequest() (request *DescribeVpcResourceDashboardRequest) { + request = &DescribeVpcResourceDashboardRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DescribeVpcResourceDashboard") + return +} + +func NewDescribeVpcResourceDashboardResponse() (response *DescribeVpcResourceDashboardResponse) { + response = &DescribeVpcResourceDashboardResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 查看VPC资源 +func (c *Client) DescribeVpcResourceDashboard(request *DescribeVpcResourceDashboardRequest) (response *DescribeVpcResourceDashboardResponse, err error) { + if request == nil { + request = NewDescribeVpcResourceDashboardRequest() + } + response = NewDescribeVpcResourceDashboardResponse() + err = c.Send(request, response) + return +} + func NewDescribeVpcsRequest() (request *DescribeVpcsRequest) { request = &DescribeVpcsRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2938,6 +3498,31 @@ func (c *Client) DisableCcnRoutes(request *DisableCcnRoutesRequest) (response *D return } +func NewDisableGatewayFlowMonitorRequest() (request *DisableGatewayFlowMonitorRequest) { + request = &DisableGatewayFlowMonitorRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DisableGatewayFlowMonitor") + return +} + +func NewDisableGatewayFlowMonitorResponse() (response *DisableGatewayFlowMonitorResponse) { + response = &DisableGatewayFlowMonitorResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DisableGatewayFlowMonitor)用于关闭网关流量监控。 +func (c *Client) DisableGatewayFlowMonitor(request *DisableGatewayFlowMonitorRequest) (response *DisableGatewayFlowMonitorResponse, err error) { + if request == nil { + request = NewDisableGatewayFlowMonitorRequest() + } + response = NewDisableGatewayFlowMonitorResponse() + err = c.Send(request, response) + return +} + func NewDisableRoutesRequest() (request *DisableRoutesRequest) { request = &DisableRoutesRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -3017,6 +3602,56 @@ func (c *Client) DisassociateNatGatewayAddress(request *DisassociateNatGatewayAd return } +func NewDisassociateNetworkAclSubnetsRequest() (request *DisassociateNetworkAclSubnetsRequest) { + request = &DisassociateNetworkAclSubnetsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DisassociateNetworkAclSubnets") + return +} + +func NewDisassociateNetworkAclSubnetsResponse() (response *DisassociateNetworkAclSubnetsResponse) { + response = &DisassociateNetworkAclSubnetsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DisassociateNetworkAclSubnets)用于网络ACL解关联vpc下的子网。 +func (c *Client) DisassociateNetworkAclSubnets(request *DisassociateNetworkAclSubnetsRequest) (response *DisassociateNetworkAclSubnetsResponse, err error) { + if request == nil { + request = NewDisassociateNetworkAclSubnetsRequest() + } + response = NewDisassociateNetworkAclSubnetsResponse() + err = c.Send(request, response) + return +} + +func NewDisassociateNetworkInterfaceSecurityGroupsRequest() (request *DisassociateNetworkInterfaceSecurityGroupsRequest) { + request = &DisassociateNetworkInterfaceSecurityGroupsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "DisassociateNetworkInterfaceSecurityGroups") + return +} + +func NewDisassociateNetworkInterfaceSecurityGroupsResponse() (response *DisassociateNetworkInterfaceSecurityGroupsResponse) { + response = &DisassociateNetworkInterfaceSecurityGroupsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(DisassociateNetworkInterfaceSecurityGroups)用于弹性网卡解绑安全组。支持弹性网卡完全解绑安全组。 +func (c *Client) DisassociateNetworkInterfaceSecurityGroups(request *DisassociateNetworkInterfaceSecurityGroupsRequest) (response *DisassociateNetworkInterfaceSecurityGroupsResponse, err error) { + if request == nil { + request = NewDisassociateNetworkInterfaceSecurityGroupsRequest() + } + response = NewDisassociateNetworkInterfaceSecurityGroupsResponse() + err = c.Send(request, response) + return +} + func NewDownloadCustomerGatewayConfigurationRequest() (request *DownloadCustomerGatewayConfigurationRequest) { request = &DownloadCustomerGatewayConfigurationRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -3068,6 +3703,31 @@ func (c *Client) EnableCcnRoutes(request *EnableCcnRoutesRequest) (response *Ena return } +func NewEnableGatewayFlowMonitorRequest() (request *EnableGatewayFlowMonitorRequest) { + request = &EnableGatewayFlowMonitorRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "EnableGatewayFlowMonitor") + return +} + +func NewEnableGatewayFlowMonitorResponse() (response *EnableGatewayFlowMonitorResponse) { + response = &EnableGatewayFlowMonitorResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(EnableGatewayFlowMonitor)用于开启网关流量监控。 +func (c *Client) EnableGatewayFlowMonitor(request *EnableGatewayFlowMonitorRequest) (response *EnableGatewayFlowMonitorResponse, err error) { + if request == nil { + request = NewEnableGatewayFlowMonitorRequest() + } + response = NewEnableGatewayFlowMonitorResponse() + err = c.Send(request, response) + return +} + func NewEnableRoutesRequest() (request *EnableRoutesRequest) { request = &EnableRoutesRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -3374,6 +4034,31 @@ func (c *Client) ModifyAddressesBandwidth(request *ModifyAddressesBandwidthReque return } +func NewModifyAssistantCidrRequest() (request *ModifyAssistantCidrRequest) { + request = &ModifyAssistantCidrRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "ModifyAssistantCidr") + return +} + +func NewModifyAssistantCidrResponse() (response *ModifyAssistantCidrResponse) { + response = &ModifyAssistantCidrResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(ModifyAssistantCidr)用于批量修改辅助CIDR,支持新增和删除。(接口灰度中,如需使用请提工单。) +func (c *Client) ModifyAssistantCidr(request *ModifyAssistantCidrRequest) (response *ModifyAssistantCidrResponse, err error) { + if request == nil { + request = NewModifyAssistantCidrRequest() + } + response = NewModifyAssistantCidrResponse() + err = c.Send(request, response) + return +} + func NewModifyBandwidthPackageAttributeRequest() (request *ModifyBandwidthPackageAttributeRequest) { request = &ModifyBandwidthPackageAttributeRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -3524,6 +4209,31 @@ func (c *Client) ModifyFlowLogAttribute(request *ModifyFlowLogAttributeRequest) return } +func NewModifyGatewayFlowQosRequest() (request *ModifyGatewayFlowQosRequest) { + request = &ModifyGatewayFlowQosRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "ModifyGatewayFlowQos") + return +} + +func NewModifyGatewayFlowQosResponse() (response *ModifyGatewayFlowQosResponse) { + response = &ModifyGatewayFlowQosResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(ModifyGatewayFlowQos)用于调整网关流控带宽。 +func (c *Client) ModifyGatewayFlowQos(request *ModifyGatewayFlowQosRequest) (response *ModifyGatewayFlowQosResponse, err error) { + if request == nil { + request = NewModifyGatewayFlowQosRequest() + } + response = NewModifyGatewayFlowQosResponse() + err = c.Send(request, response) + return +} + func NewModifyHaVipAttributeRequest() (request *ModifyHaVipAttributeRequest) { request = &ModifyHaVipAttributeRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -3724,6 +4434,56 @@ func (c *Client) ModifyNetDetect(request *ModifyNetDetectRequest) (response *Mod return } +func NewModifyNetworkAclAttributeRequest() (request *ModifyNetworkAclAttributeRequest) { + request = &ModifyNetworkAclAttributeRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "ModifyNetworkAclAttribute") + return +} + +func NewModifyNetworkAclAttributeResponse() (response *ModifyNetworkAclAttributeResponse) { + response = &ModifyNetworkAclAttributeResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(ModifyNetworkAclAttribute)用于修改网络ACL属性。 +func (c *Client) ModifyNetworkAclAttribute(request *ModifyNetworkAclAttributeRequest) (response *ModifyNetworkAclAttributeResponse, err error) { + if request == nil { + request = NewModifyNetworkAclAttributeRequest() + } + response = NewModifyNetworkAclAttributeResponse() + err = c.Send(request, response) + return +} + +func NewModifyNetworkAclEntriesRequest() (request *ModifyNetworkAclEntriesRequest) { + request = &ModifyNetworkAclEntriesRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("vpc", APIVersion, "ModifyNetworkAclEntries") + return +} + +func NewModifyNetworkAclEntriesResponse() (response *ModifyNetworkAclEntriesResponse) { + response = &ModifyNetworkAclEntriesResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// 本接口(ModifyNetworkAclEntries)用于修改(包括添加和删除)网络ACL的入站规则和出站规则。 +func (c *Client) ModifyNetworkAclEntries(request *ModifyNetworkAclEntriesRequest) (response *ModifyNetworkAclEntriesResponse, err error) { + if request == nil { + request = NewModifyNetworkAclEntriesRequest() + } + response = NewModifyNetworkAclEntriesResponse() + err = c.Send(request, response) + return +} + func NewModifyNetworkInterfaceAttributeRequest() (request *ModifyNetworkInterfaceAttributeRequest) { request = &ModifyNetworkInterfaceAttributeRequest{ BaseRequest: &tchttp.BaseRequest{}, diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312/models.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312/models.go index 7aece657c..9635cfbc3 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312/models.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312/models.go @@ -195,6 +195,9 @@ type Address struct { // eip是否在解绑后自动释放。true表示eip将会在解绑后自动释放,false表示eip在解绑后不会自动释放 CascadeRelease *bool `json:"CascadeRelease,omitempty" name:"CascadeRelease"` + + // EIP ALG开启的协议类型。 + EipAlgType *AlgType `json:"EipAlgType,omitempty" name:"EipAlgType"` } type AddressTemplate struct { @@ -225,6 +228,18 @@ type AddressTemplateGroup struct { // 创建时间。 CreatedTime *string `json:"CreatedTime,omitempty" name:"CreatedTime"` + + // IP地址模板实例。 + AddressTemplateSet []*AddressTemplateItem `json:"AddressTemplateSet,omitempty" name:"AddressTemplateSet" list` +} + +type AddressTemplateItem struct { + + // 起始地址。 + From *string `json:"From,omitempty" name:"From"` + + // 结束地址。 + To *string `json:"To,omitempty" name:"To"` } type AddressTemplateSpecification struct { @@ -236,6 +251,15 @@ type AddressTemplateSpecification struct { AddressGroupId *string `json:"AddressGroupId,omitempty" name:"AddressGroupId"` } +type AlgType struct { + + // Ftp协议Alg功能是否开启 + Ftp *bool `json:"Ftp,omitempty" name:"Ftp"` + + // Sip协议Alg功能是否开启 + Sip *bool `json:"Sip,omitempty" name:"Sip"` +} + type AllocateAddressesRequest struct { *tchttp.BaseRequest @@ -275,6 +299,12 @@ type AllocateAddressesRequest struct { // ApplicableForCLB *bool `json:"ApplicableForCLB,omitempty" name:"ApplicableForCLB"` + + // 需要关联的标签列表。 + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` + + // BGP带宽包唯一ID参数。设定该参数且InternetChargeType为BANDWIDTH_PACKAGE,则表示创建的EIP加入该BGP带宽包并采用带宽包计费 + BandwidthPackageId *string `json:"BandwidthPackageId,omitempty" name:"BandwidthPackageId"` } func (r *AllocateAddressesRequest) ToJsonString() string { @@ -362,10 +392,10 @@ type AssignIpv6AddressesRequest struct { // 弹性网卡实例`ID`,形如:`eni-m6dyj72l`。 NetworkInterfaceId *string `json:"NetworkInterfaceId,omitempty" name:"NetworkInterfaceId"` - // 指定的`IPv6`地址列表,单次最多指定10个。与入参`Ipv6AddressCount`合并计算配额。 + // 指定的`IPv6`地址列表,单次最多指定10个。与入参`Ipv6AddressCount`合并计算配额。与Ipv6AddressCount必填一个。 Ipv6Addresses []*Ipv6Address `json:"Ipv6Addresses,omitempty" name:"Ipv6Addresses" list` - // 自动分配`IPv6`地址个数,内网IP地址个数总和不能超过配数。与入参`Ipv6Addresses`合并计算配额。 + // 自动分配`IPv6`地址个数,内网IP地址个数总和不能超过配数。与入参`Ipv6Addresses`合并计算配额。与Ipv6Addresses必填一个。 Ipv6AddressCount *uint64 `json:"Ipv6AddressCount,omitempty" name:"Ipv6AddressCount"` } @@ -482,10 +512,10 @@ type AssignPrivateIpAddressesRequest struct { // 弹性网卡实例ID,例如:eni-m6dyj72l。 NetworkInterfaceId *string `json:"NetworkInterfaceId,omitempty" name:"NetworkInterfaceId"` - // 指定的内网IP信息,单次最多指定10个。 + // 指定的内网IP信息,单次最多指定10个。与SecondaryPrivateIpAddressCount至少提供一个。 PrivateIpAddresses []*PrivateIpAddressSpecification `json:"PrivateIpAddresses,omitempty" name:"PrivateIpAddresses" list` - // 新申请的内网IP地址个数,内网IP地址个数总和不能超过配额数,详见弹性网卡使用限制。 + // 新申请的内网IP地址个数,与PrivateIpAddresses至少提供一个。内网IP地址个数总和不能超过配额数,详见弹性网卡使用限制。 SecondaryPrivateIpAddressCount *uint64 `json:"SecondaryPrivateIpAddressCount,omitempty" name:"SecondaryPrivateIpAddressCount"` } @@ -624,6 +654,80 @@ func (r *AssociateNatGatewayAddressResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type AssociateNetworkAclSubnetsRequest struct { + *tchttp.BaseRequest + + // 网络ACL实例ID。例如:acl-12345678。 + NetworkAclId *string `json:"NetworkAclId,omitempty" name:"NetworkAclId"` + + // 子网实例ID数组。例如:[subnet-12345678] + SubnetIds []*string `json:"SubnetIds,omitempty" name:"SubnetIds" list` +} + +func (r *AssociateNetworkAclSubnetsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *AssociateNetworkAclSubnetsRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type AssociateNetworkAclSubnetsResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *AssociateNetworkAclSubnetsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *AssociateNetworkAclSubnetsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type AssociateNetworkInterfaceSecurityGroupsRequest struct { + *tchttp.BaseRequest + + // 弹性网卡实例ID。形如:eni-pxir56ns。每次请求的实例的上限为100。 + NetworkInterfaceIds []*string `json:"NetworkInterfaceIds,omitempty" name:"NetworkInterfaceIds" list` + + // 安全组实例ID,例如:sg-33ocnj9n,可通过DescribeSecurityGroups获取。每次请求的实例的上限为100。 + SecurityGroupIds []*string `json:"SecurityGroupIds,omitempty" name:"SecurityGroupIds" list` +} + +func (r *AssociateNetworkInterfaceSecurityGroupsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *AssociateNetworkInterfaceSecurityGroupsRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type AssociateNetworkInterfaceSecurityGroupsResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *AssociateNetworkInterfaceSecurityGroupsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *AssociateNetworkInterfaceSecurityGroupsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type AttachCcnInstancesRequest struct { *tchttp.BaseRequest @@ -795,6 +899,9 @@ type CCN struct { // 限速类型,INTER_REGION_LIMIT为地域间限速;OUTER_REGION_LIMIT为地域出口限速。 // 注意:此字段可能返回 null,表示取不到有效值。 BandwidthLimitType *string `json:"BandwidthLimitType,omitempty" name:"BandwidthLimitType"` + + // 标签键值对。 + TagSet []*Tag `json:"TagSet,omitempty" name:"TagSet" list` } type CcnAttachedInstance struct { @@ -906,6 +1013,86 @@ type CcnRoute struct { InstanceUin *string `json:"InstanceUin,omitempty" name:"InstanceUin"` } +type CheckAssistantCidrRequest struct { + *tchttp.BaseRequest + + // `VPC`实例`ID`。形如:`vpc-6v2ht8q5` + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 待添加的负载CIDR。CIDR数组,格式如["10.0.0.0/16", "172.16.0.0/16"] + NewCidrBlocks []*string `json:"NewCidrBlocks,omitempty" name:"NewCidrBlocks" list` + + // 待删除的负载CIDR。CIDR数组,格式如["10.0.0.0/16", "172.16.0.0/16"] + OldCidrBlocks []*string `json:"OldCidrBlocks,omitempty" name:"OldCidrBlocks" list` +} + +func (r *CheckAssistantCidrRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CheckAssistantCidrRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CheckAssistantCidrResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 冲突资源信息数组。 + ConflictSourceSet []*ConflictSource `json:"ConflictSourceSet,omitempty" name:"ConflictSourceSet" list` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CheckAssistantCidrResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CheckAssistantCidrResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CheckDefaultSubnetRequest struct { + *tchttp.BaseRequest + + // 子网所在的可用区ID,不同子网选择不同可用区可以做跨可用区灾备。 + Zone *string `json:"Zone,omitempty" name:"Zone"` +} + +func (r *CheckDefaultSubnetRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CheckDefaultSubnetRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CheckDefaultSubnetResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 检查结果。true为可以创建默认子网,false为不可以创建默认子网。 + Result *bool `json:"Result,omitempty" name:"Result"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CheckDefaultSubnetResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CheckDefaultSubnetResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type CheckNetDetectStateRequest struct { *tchttp.BaseRequest @@ -928,16 +1115,16 @@ type CheckNetDetectStateRequest struct { // 下一跳类型为NORMAL_CVM,取值云服务器IPv4地址,形如:10.0.0.12; NextHopDestination *string `json:"NextHopDestination,omitempty" name:"NextHopDestination"` - // 网络探测实例ID。形如:netd-12345678。 + // 网络探测实例ID。形如:netd-12345678。该参数与(VpcId,SubnetId,NetDetectName),至少要有一个。当NetDetectId存在时,使用NetDetectId。 NetDetectId *string `json:"NetDetectId,omitempty" name:"NetDetectId"` - // `VPC`实例`ID`。形如:`vpc-12345678` + // `VPC`实例`ID`。形如:`vpc-12345678`。该参数与(SubnetId,NetDetectName)配合使用,与NetDetectId至少要有一个。当NetDetectId存在时,使用NetDetectId。 VpcId *string `json:"VpcId,omitempty" name:"VpcId"` - // 子网实例ID。形如:subnet-12345678。 + // 子网实例ID。形如:subnet-12345678。该参数与(VpcId,NetDetectName)配合使用,与NetDetectId至少要有一个。当NetDetectId存在时,使用NetDetectId。 SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` - // 网络探测名称,最大长度不能超过60个字节。 + // 网络探测名称,最大长度不能超过60个字节。该参数与(VpcId,SubnetId)配合使用,与NetDetectId至少要有一个。当NetDetectId存在时,使用NetDetectId。 NetDetectName *string `json:"NetDetectName,omitempty" name:"NetDetectName"` } @@ -980,6 +1167,27 @@ type ClassicLinkInstance struct { InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` } +type ConflictItem struct { + + // 冲突资源的ID + ConfilctId *string `json:"ConfilctId,omitempty" name:"ConfilctId"` + + // 冲突目的资源 + DestinationItem *string `json:"DestinationItem,omitempty" name:"DestinationItem"` +} + +type ConflictSource struct { + + // 冲突资源ID + ConflictSourceId *string `json:"ConflictSourceId,omitempty" name:"ConflictSourceId"` + + // 冲突资源 + SourceItem *string `json:"SourceItem,omitempty" name:"SourceItem"` + + // 冲突资源条目信息 + ConflictItemSet []*ConflictItem `json:"ConflictItemSet,omitempty" name:"ConflictItemSet" list` +} + type CreateAddressTemplateGroupRequest struct { *tchttp.BaseRequest @@ -1060,6 +1268,108 @@ func (r *CreateAddressTemplateResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type CreateAndAttachNetworkInterfaceRequest struct { + *tchttp.BaseRequest + + // VPC实例ID。可通过DescribeVpcs接口返回值中的VpcId获取。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 弹性网卡名称,最大长度不能超过60个字节。 + NetworkInterfaceName *string `json:"NetworkInterfaceName,omitempty" name:"NetworkInterfaceName"` + + // 弹性网卡所在的子网实例ID,例如:subnet-0ap8nwca。 + SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + + // 云主机实例ID。 + InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + + // 指定的内网IP信息,单次最多指定10个。 + PrivateIpAddresses []*PrivateIpAddressSpecification `json:"PrivateIpAddresses,omitempty" name:"PrivateIpAddresses" list` + + // 新申请的内网IP地址个数,内网IP地址个数总和不能超过配数。 + SecondaryPrivateIpAddressCount *uint64 `json:"SecondaryPrivateIpAddressCount,omitempty" name:"SecondaryPrivateIpAddressCount"` + + // 指定绑定的安全组,例如:['sg-1dd51d']。 + SecurityGroupIds []*string `json:"SecurityGroupIds,omitempty" name:"SecurityGroupIds" list` + + // 弹性网卡描述,可任意命名,但不得超过60个字符。 + NetworkInterfaceDescription *string `json:"NetworkInterfaceDescription,omitempty" name:"NetworkInterfaceDescription"` + + // 指定绑定的标签列表,例如:[{"Key": "city", "Value": "shanghai"}] + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` +} + +func (r *CreateAndAttachNetworkInterfaceRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateAndAttachNetworkInterfaceRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CreateAndAttachNetworkInterfaceResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 弹性网卡实例。 + NetworkInterface *NetworkInterface `json:"NetworkInterface,omitempty" name:"NetworkInterface"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CreateAndAttachNetworkInterfaceResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateAndAttachNetworkInterfaceResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CreateAssistantCidrRequest struct { + *tchttp.BaseRequest + + // `VPC`实例`ID`。形如:`vpc-6v2ht8q5` + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // CIDR数组,格式如["10.0.0.0/16", "172.16.0.0/16"] + CidrBlocks []*string `json:"CidrBlocks,omitempty" name:"CidrBlocks" list` +} + +func (r *CreateAssistantCidrRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateAssistantCidrRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CreateAssistantCidrResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 辅助CIDR数组。 + // 注意:此字段可能返回 null,表示取不到有效值。 + AssistantCidrSet []*AssistantCidr `json:"AssistantCidrSet,omitempty" name:"AssistantCidrSet" list` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CreateAssistantCidrResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateAssistantCidrResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type CreateBandwidthPackageRequest struct { *tchttp.BaseRequest @@ -1135,6 +1445,9 @@ type CreateCcnRequest struct { // 限速类型,OUTER_REGION_LIMIT表示地域出口限速,INTER_REGION_LIMIT为地域间限速,默认为OUTER_REGION_LIMIT BandwidthLimitType *string `json:"BandwidthLimitType,omitempty" name:"BandwidthLimitType"` + + // 指定绑定的标签列表,例如:[{"Key": "city", "Value": "shanghai"}] + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` } func (r *CreateCcnRequest) ToJsonString() string { @@ -1207,6 +1520,43 @@ func (r *CreateCustomerGatewayResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type CreateDefaultSecurityGroupRequest struct { + *tchttp.BaseRequest + + // 项目ID,默认0。可在qcloud控制台项目管理页面查询到。 + ProjectId *string `json:"ProjectId,omitempty" name:"ProjectId"` +} + +func (r *CreateDefaultSecurityGroupRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateDefaultSecurityGroupRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CreateDefaultSecurityGroupResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 安全组对象。 + SecurityGroup *SecurityGroup `json:"SecurityGroup,omitempty" name:"SecurityGroup"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CreateDefaultSecurityGroupResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateDefaultSecurityGroupResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type CreateDefaultVpcRequest struct { *tchttp.BaseRequest @@ -1539,6 +1889,9 @@ type CreateNatGatewayRequest struct { // 可用区,形如:`ap-guangzhou-1`。 Zone *string `json:"Zone,omitempty" name:"Zone"` + + // 指定绑定的标签列表,例如:[{"Key": "city", "Value": "shanghai"}] + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` } func (r *CreateNatGatewayRequest) ToJsonString() string { @@ -1639,6 +1992,46 @@ func (r *CreateNetDetectResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type CreateNetworkAclRequest struct { + *tchttp.BaseRequest + + // VPC实例ID。可通过DescribeVpcs接口返回值中的VpcId获取。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 网络ACL名称,最大长度不能超过60个字节。 + NetworkAclName *string `json:"NetworkAclName,omitempty" name:"NetworkAclName"` +} + +func (r *CreateNetworkAclRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateNetworkAclRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CreateNetworkAclResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 网络ACL实例。 + NetworkAcl *NetworkAcl `json:"NetworkAcl,omitempty" name:"NetworkAcl"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CreateNetworkAclResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateNetworkAclResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type CreateNetworkInterfaceRequest struct { *tchttp.BaseRequest @@ -1705,6 +2098,9 @@ type CreateRouteTableRequest struct { // 路由表名称,最大长度不能超过60个字节。 RouteTableName *string `json:"RouteTableName,omitempty" name:"RouteTableName"` + + // 指定绑定的标签列表,例如:[{"Key": "city", "Value": "shanghai"}] + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` } func (r *CreateRouteTableRequest) ToJsonString() string { @@ -1828,6 +2224,9 @@ type CreateSecurityGroupRequest struct { // 项目ID,默认0。可在qcloud控制台项目管理页面查询到。 ProjectId *string `json:"ProjectId,omitempty" name:"ProjectId"` + + // 指定绑定的标签列表,例如:[{"Key": "city", "Value": "shanghai"}] + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` } func (r *CreateSecurityGroupRequest) ToJsonString() string { @@ -1860,6 +2259,52 @@ func (r *CreateSecurityGroupResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type CreateSecurityGroupWithPoliciesRequest struct { + *tchttp.BaseRequest + + // 安全组名称,可任意命名,但不得超过60个字符。 + GroupName *string `json:"GroupName,omitempty" name:"GroupName"` + + // 安全组备注,最多100个字符。 + GroupDescription *string `json:"GroupDescription,omitempty" name:"GroupDescription"` + + // 项目ID,默认0。可在qcloud控制台项目管理页面查询到。 + ProjectId *string `json:"ProjectId,omitempty" name:"ProjectId"` + + // 安全组规则集合。 + SecurityGroupPolicySet *SecurityGroupPolicySet `json:"SecurityGroupPolicySet,omitempty" name:"SecurityGroupPolicySet"` +} + +func (r *CreateSecurityGroupWithPoliciesRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateSecurityGroupWithPoliciesRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type CreateSecurityGroupWithPoliciesResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 安全组对象。 + SecurityGroup *SecurityGroup `json:"SecurityGroup,omitempty" name:"SecurityGroup"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CreateSecurityGroupWithPoliciesResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *CreateSecurityGroupWithPoliciesResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type CreateServiceTemplateGroupRequest struct { *tchttp.BaseRequest @@ -1954,6 +2399,9 @@ type CreateSubnetRequest struct { // 子网所在的可用区ID,不同子网选择不同可用区可以做跨可用区灾备。 Zone *string `json:"Zone,omitempty" name:"Zone"` + + // 指定绑定的标签列表,例如:[{"Key": "city", "Value": "shanghai"}] + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` } func (r *CreateSubnetRequest) ToJsonString() string { @@ -1994,6 +2442,9 @@ type CreateSubnetsRequest struct { // 子网对象列表。 Subnets []*SubnetInput `json:"Subnets,omitempty" name:"Subnets" list` + + // 指定绑定的标签列表,注意这里的标签集合为列表中所有子网对象所共享,不能为每个子网对象单独指定标签,例如:[{"Key": "city", "Value": "shanghai"}] + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` } func (r *CreateSubnetsRequest) ToJsonString() string { @@ -2043,6 +2494,9 @@ type CreateVpcRequest struct { // 域名 DomainName *string `json:"DomainName,omitempty" name:"DomainName"` + + // 指定绑定的标签列表,例如:[{"Key": "city", "Value": "shanghai"}] + Tags []*Tag `json:"Tags,omitempty" name:"Tags" list` } func (r *CreateVpcRequest) ToJsonString() string { @@ -2212,6 +2666,45 @@ type CustomerGatewayVendor struct { VendorName *string `json:"VendorName,omitempty" name:"VendorName"` } +type CvmInstance struct { + + // VPC实例ID。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 子网实例ID。 + SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + + // 云主机实例ID + InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + + // 云主机名称。 + InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"` + + // 云主机状态。 + InstanceState *string `json:"InstanceState,omitempty" name:"InstanceState"` + + // 实例的CPU核数,单位:核。 + CPU *uint64 `json:"CPU,omitempty" name:"CPU"` + + // 实例内存容量,单位:GB。 + Memory *uint64 `json:"Memory,omitempty" name:"Memory"` + + // 创建时间。 + CreatedTime *string `json:"CreatedTime,omitempty" name:"CreatedTime"` + + // 实例机型。 + InstanceType *string `json:"InstanceType,omitempty" name:"InstanceType"` + + // 实例弹性网卡配额(包含主网卡)。 + EniLimit *uint64 `json:"EniLimit,omitempty" name:"EniLimit"` + + // 实例弹性网卡内网IP配额(包含主网卡)。 + EniIpLimit *uint64 `json:"EniIpLimit,omitempty" name:"EniIpLimit"` + + // 实例已绑定弹性网卡的个数(包含主网卡)。 + InstanceEniCount *uint64 `json:"InstanceEniCount,omitempty" name:"InstanceEniCount"` +} + type DefaultVpcSubnet struct { // 默认VpcId @@ -2289,6 +2782,43 @@ func (r *DeleteAddressTemplateResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DeleteAssistantCidrRequest struct { + *tchttp.BaseRequest + + // `VPC`实例`ID`。形如:`vpc-6v2ht8q5` + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // CIDR数组,格式如["10.0.0.0/16", "172.16.0.0/16"] + CidrBlocks []*string `json:"CidrBlocks,omitempty" name:"CidrBlocks" list` +} + +func (r *DeleteAssistantCidrRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DeleteAssistantCidrRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DeleteAssistantCidrResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DeleteAssistantCidrResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DeleteAssistantCidrResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DeleteBandwidthPackageRequest struct { *tchttp.BaseRequest @@ -2672,6 +3202,40 @@ func (r *DeleteNetDetectResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DeleteNetworkAclRequest struct { + *tchttp.BaseRequest + + // 网络ACL实例ID。例如:acl-12345678。 + NetworkAclId *string `json:"NetworkAclId,omitempty" name:"NetworkAclId"` +} + +func (r *DeleteNetworkAclRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DeleteNetworkAclRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DeleteNetworkAclResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DeleteNetworkAclResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DeleteNetworkAclResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DeleteNetworkInterfaceRequest struct { *tchttp.BaseRequest @@ -3276,6 +3840,57 @@ func (r *DescribeAddressesResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DescribeAssistantCidrRequest struct { + *tchttp.BaseRequest + + // `VPC`实例`ID`数组。形如:[`vpc-6v2ht8q5`] + VpcIds []*string `json:"VpcIds,omitempty" name:"VpcIds" list` + + // 过滤条件,参数不支持同时指定NetworkInterfaceIds和Filters。 + //
  • vpc-id - String - (过滤条件)VPC实例ID,形如:vpc-f49l6u0z。
  • + Filters []*Filter `json:"Filters,omitempty" name:"Filters" list` + + // 偏移量,默认为0。 + Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + + // 返回数量,默认为20,最大值为100。 + Limit *uint64 `json:"Limit,omitempty" name:"Limit"` +} + +func (r *DescribeAssistantCidrRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeAssistantCidrRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeAssistantCidrResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 符合条件的辅助CIDR数组。 + // 注意:此字段可能返回 null,表示取不到有效值。 + AssistantCidrSet []*AssistantCidr `json:"AssistantCidrSet,omitempty" name:"AssistantCidrSet" list` + + // 符合条件的实例数量。 + TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeAssistantCidrResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeAssistantCidrResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeBandwidthPackageQuotaRequest struct { *tchttp.BaseRequest } @@ -4003,6 +4618,58 @@ func (r *DescribeGatewayFlowMonitorDetailResponse) FromJsonString(s string) erro return json.Unmarshal([]byte(s), &r) } +type DescribeGatewayFlowQosRequest struct { + *tchttp.BaseRequest + + // 网关实例ID,目前我们支持的网关实例类型有, + // 专线网关实例ID,形如,`dcg-ltjahce6`; + // Nat网关实例ID,形如,`nat-ltjahce6`; + // VPN网关实例ID,形如,`vpn-ltjahce6`。 + GatewayId *string `json:"GatewayId,omitempty" name:"GatewayId"` + + // 限流的云服务器内网IP。 + IpAddresses []*string `json:"IpAddresses,omitempty" name:"IpAddresses" list` + + // 偏移量,默认为0。 + Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + + // 返回数量,默认为20,最大值为100。 + Limit *uint64 `json:"Limit,omitempty" name:"Limit"` +} + +func (r *DescribeGatewayFlowQosRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeGatewayFlowQosRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeGatewayFlowQosResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 实例详细信息列表。 + GatewayQosSet []*GatewayQos `json:"GatewayQosSet,omitempty" name:"GatewayQosSet" list` + + // 符合条件的实例数量。 + TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeGatewayFlowQosResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeGatewayFlowQosResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeHaVipsRequest struct { *tchttp.BaseRequest @@ -4415,10 +5082,62 @@ func (r *DescribeNetDetectsResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DescribeNetworkAclsRequest struct { + *tchttp.BaseRequest + + // 网络ACL实例ID数组。形如:[acl-12345678]。每次请求的实例的上限为100。参数不支持同时指定NetworkAclIds和Filters。 + NetworkAclIds []*string `json:"NetworkAclIds,omitempty" name:"NetworkAclIds" list` + + // 过滤条件,参数不支持同时指定NetworkAclIds和Filters。 + //
  • vpc-id - String - (过滤条件)VPC实例ID,形如:vpc-12345678。
  • + //
  • network-acl-id - String - (过滤条件)网络ACL实例ID,形如:acl-12345678。
  • + //
  • network-acl-name - String - (过滤条件)网络ACL实例名称。
  • + Filters []*Filter `json:"Filters,omitempty" name:"Filters" list` + + // 偏移量,默认为0。 + Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + + // 返回数量,默认为20,最小值为1,最大值为100。 + Limit *uint64 `json:"Limit,omitempty" name:"Limit"` +} + +func (r *DescribeNetworkAclsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeNetworkAclsRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeNetworkAclsResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 实例详细信息列表。 + NetworkAclSet []*NetworkAcl `json:"NetworkAclSet,omitempty" name:"NetworkAclSet" list` + + // 符合条件的实例数量。 + TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeNetworkAclsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeNetworkAclsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeNetworkInterfaceLimitRequest struct { *tchttp.BaseRequest - // 要查询的CVM实例ID + // 要查询的CVM实例ID或弹性网卡ID InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` } @@ -4647,6 +5366,40 @@ func (r *DescribeSecurityGroupAssociationStatisticsResponse) FromJsonString(s st return json.Unmarshal([]byte(s), &r) } +type DescribeSecurityGroupLimitsRequest struct { + *tchttp.BaseRequest +} + +func (r *DescribeSecurityGroupLimitsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeSecurityGroupLimitsRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeSecurityGroupLimitsResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 用户安全组配额限制。 + SecurityGroupLimitSet *SecurityGroupLimitSet `json:"SecurityGroupLimitSet,omitempty" name:"SecurityGroupLimitSet"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeSecurityGroupLimitsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeSecurityGroupLimitsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeSecurityGroupPoliciesRequest struct { *tchttp.BaseRequest @@ -4684,6 +5437,43 @@ func (r *DescribeSecurityGroupPoliciesResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DescribeSecurityGroupReferencesRequest struct { + *tchttp.BaseRequest + + // 安全组实例ID数组。格式如:['sg-12345678'] + SecurityGroupIds []*string `json:"SecurityGroupIds,omitempty" name:"SecurityGroupIds" list` +} + +func (r *DescribeSecurityGroupReferencesRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeSecurityGroupReferencesRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeSecurityGroupReferencesResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 安全组被引用信息。 + ReferredSecurityGroupSet []*ReferredSecurityGroup `json:"ReferredSecurityGroupSet,omitempty" name:"ReferredSecurityGroupSet" list` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeSecurityGroupReferencesResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeSecurityGroupReferencesResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeSecurityGroupsRequest struct { *tchttp.BaseRequest @@ -4852,10 +5642,10 @@ type DescribeSubnetsRequest struct { //
  • tag:tag-key - String - 是否必填:否 - (过滤条件)按照标签键值对进行过滤。 tag-key使用具体的标签键进行替换。使用请参考示例2。
  • Filters []*Filter `json:"Filters,omitempty" name:"Filters" list` - // 偏移量 + // 偏移量,默认为0。 Offset *string `json:"Offset,omitempty" name:"Offset"` - // 返回数量 + // 返回数量,默认为20,最大值为100。 Limit *string `json:"Limit,omitempty" name:"Limit"` } @@ -4895,10 +5685,10 @@ func (r *DescribeSubnetsResponse) FromJsonString(s string) error { type DescribeTaskResultRequest struct { *tchttp.BaseRequest - // 异步任务ID + // 异步任务ID。TaskId和DealName必填一个参数 TaskId *uint64 `json:"TaskId,omitempty" name:"TaskId"` - // 计费订单号 + // 计费订单号。TaskId和DealName必填一个参数 DealName *string `json:"DealName,omitempty" name:"DealName"` } @@ -4935,6 +5725,89 @@ func (r *DescribeTaskResultResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DescribeTemplateLimitsRequest struct { + *tchttp.BaseRequest +} + +func (r *DescribeTemplateLimitsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeTemplateLimitsRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeTemplateLimitsResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 参数模板配额对象。 + TemplateLimit *TemplateLimit `json:"TemplateLimit,omitempty" name:"TemplateLimit"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeTemplateLimitsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeTemplateLimitsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeVpcInstancesRequest struct { + *tchttp.BaseRequest + + // 过滤条件,参数不支持同时指定RouteTableIds和Filters。 + //
  • vpc-id - String - (过滤条件)VPC实例ID,形如:vpc-f49l6u0z。
  • + //
  • instance-id - String - (过滤条件)云主机实例ID。
  • + //
  • instance-name - String - (过滤条件)云主机名称。
  • + Filters []*Filter `json:"Filters,omitempty" name:"Filters" list` + + // 偏移量。 + Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + + // 请求对象个数。 + Limit *uint64 `json:"Limit,omitempty" name:"Limit"` +} + +func (r *DescribeVpcInstancesRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeVpcInstancesRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeVpcInstancesResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 云主机实例列表。 + InstanceSet []*CvmInstance `json:"InstanceSet,omitempty" name:"InstanceSet" list` + + // 满足条件的云主机实例个数。 + TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeVpcInstancesResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeVpcInstancesResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeVpcIpv6AddressesRequest struct { *tchttp.BaseRequest @@ -4984,6 +5857,43 @@ func (r *DescribeVpcIpv6AddressesResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DescribeVpcLimitsRequest struct { + *tchttp.BaseRequest + + // 配额名称。每次最大查询100个配额类型。 + LimitTypes []*string `json:"LimitTypes,omitempty" name:"LimitTypes" list` +} + +func (r *DescribeVpcLimitsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeVpcLimitsRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeVpcLimitsResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 私有网络配额 + VpcLimitSet []*VpcLimit `json:"VpcLimitSet,omitempty" name:"VpcLimitSet" list` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeVpcLimitsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeVpcLimitsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeVpcPrivateIpAddressesRequest struct { *tchttp.BaseRequest @@ -5024,6 +5934,43 @@ func (r *DescribeVpcPrivateIpAddressesResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DescribeVpcResourceDashboardRequest struct { + *tchttp.BaseRequest + + // Vpc实例ID,例如:vpc-f1xjkw1b。 + VpcIds []*string `json:"VpcIds,omitempty" name:"VpcIds" list` +} + +func (r *DescribeVpcResourceDashboardRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeVpcResourceDashboardRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DescribeVpcResourceDashboardResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 资源对象列表。 + ResourceDashboardSet []*ResourceDashboard `json:"ResourceDashboardSet,omitempty" name:"ResourceDashboardSet" list` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeVpcResourceDashboardResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DescribeVpcResourceDashboardResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeVpcsRequest struct { *tchttp.BaseRequest @@ -5085,7 +6032,7 @@ type DescribeVpnConnectionsRequest struct { // VPN通道实例ID。形如:vpnx-f49l6u0z。每次请求的实例的上限为100。参数不支持同时指定VpnConnectionIds和Filters。 VpnConnectionIds []*string `json:"VpnConnectionIds,omitempty" name:"VpnConnectionIds" list` - // 过滤条件,详见下表:实例过滤条件表。每次请求的Filters的上限为10,Filter.Values的上限为5。参数不支持同时指定VpnConnectionIds和Filters。 + // 过滤条件。每次请求的Filters的上限为10,Filter.Values的上限为5。参数不支持同时指定VpnConnectionIds和Filters。 //
  • vpc-id - String - VPC实例ID,形如:`vpc-0a36uwkr`。
  • //
  • vpn-gateway-id - String - VPN网关实例ID,形如:`vpngw-p4lmqawn`。
  • //
  • customer-gateway-id - String - 对端网关实例ID,形如:`cgw-l4rblw63`。
  • @@ -5418,6 +6365,43 @@ func (r *DisableCcnRoutesResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DisableGatewayFlowMonitorRequest struct { + *tchttp.BaseRequest + + // 网关实例ID,目前我们支持的网关实例类型有, + // 专线网关实例ID,形如,`dcg-ltjahce6`; + // Nat网关实例ID,形如,`nat-ltjahce6`; + // VPN网关实例ID,形如,`vpn-ltjahce6`。 + GatewayId *string `json:"GatewayId,omitempty" name:"GatewayId"` +} + +func (r *DisableGatewayFlowMonitorRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DisableGatewayFlowMonitorRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DisableGatewayFlowMonitorResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DisableGatewayFlowMonitorResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DisableGatewayFlowMonitorResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DisableRoutesRequest struct { *tchttp.BaseRequest @@ -5532,6 +6516,80 @@ func (r *DisassociateNatGatewayAddressResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DisassociateNetworkAclSubnetsRequest struct { + *tchttp.BaseRequest + + // 网络ACL实例ID。例如:acl-12345678。 + NetworkAclId *string `json:"NetworkAclId,omitempty" name:"NetworkAclId"` + + // 子网实例ID数组。例如:[subnet-12345678] + SubnetIds []*string `json:"SubnetIds,omitempty" name:"SubnetIds" list` +} + +func (r *DisassociateNetworkAclSubnetsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DisassociateNetworkAclSubnetsRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DisassociateNetworkAclSubnetsResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DisassociateNetworkAclSubnetsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DisassociateNetworkAclSubnetsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DisassociateNetworkInterfaceSecurityGroupsRequest struct { + *tchttp.BaseRequest + + // 弹性网卡实例ID。形如:eni-pxir56ns。每次请求的实例的上限为100。 + NetworkInterfaceIds []*string `json:"NetworkInterfaceIds,omitempty" name:"NetworkInterfaceIds" list` + + // 安全组实例ID,例如:sg-33ocnj9n,可通过DescribeSecurityGroups获取。每次请求的实例的上限为100。 + SecurityGroupIds []*string `json:"SecurityGroupIds,omitempty" name:"SecurityGroupIds" list` +} + +func (r *DisassociateNetworkInterfaceSecurityGroupsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DisassociateNetworkInterfaceSecurityGroupsRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DisassociateNetworkInterfaceSecurityGroupsResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DisassociateNetworkInterfaceSecurityGroupsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *DisassociateNetworkInterfaceSecurityGroupsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DownloadCustomerGatewayConfigurationRequest struct { *tchttp.BaseRequest @@ -5615,6 +6673,43 @@ func (r *EnableCcnRoutesResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type EnableGatewayFlowMonitorRequest struct { + *tchttp.BaseRequest + + // 网关实例ID,目前我们支持的网关实例有, + // 专线网关实例ID,形如,`dcg-ltjahce6`; + // Nat网关实例ID,形如,`nat-ltjahce6`; + // VPN网关实例ID,形如,`vpn-ltjahce6`。 + GatewayId *string `json:"GatewayId,omitempty" name:"GatewayId"` +} + +func (r *EnableGatewayFlowMonitorRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *EnableGatewayFlowMonitorRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type EnableGatewayFlowMonitorResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *EnableGatewayFlowMonitorResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *EnableGatewayFlowMonitorResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type EnableRoutesRequest struct { *tchttp.BaseRequest @@ -5721,6 +6816,21 @@ type GatewayFlowMonitorDetail struct { OutTraffic *uint64 `json:"OutTraffic,omitempty" name:"OutTraffic"` } +type GatewayQos struct { + + // VPC实例ID。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 云服务器内网IP。 + IpAddress *string `json:"IpAddress,omitempty" name:"IpAddress"` + + // 流控带宽值。 + Bandwidth *uint64 `json:"Bandwidth,omitempty" name:"Bandwidth"` + + // 创建时间。 + CreateTime *string `json:"CreateTime,omitempty" name:"CreateTime"` +} + type HaVip struct { // `HAVIP`的`ID`,是`HAVIP`的唯一标识。 @@ -6395,6 +7505,50 @@ func (r *ModifyAddressesBandwidthResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type ModifyAssistantCidrRequest struct { + *tchttp.BaseRequest + + // `VPC`实例`ID`。形如:`vpc-6v2ht8q5` + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 待添加的负载CIDR。CIDR数组,格式如["10.0.0.0/16", "172.16.0.0/16"] + NewCidrBlocks []*string `json:"NewCidrBlocks,omitempty" name:"NewCidrBlocks" list` + + // 待删除的负载CIDR。CIDR数组,格式如["10.0.0.0/16", "172.16.0.0/16"] + OldCidrBlocks []*string `json:"OldCidrBlocks,omitempty" name:"OldCidrBlocks" list` +} + +func (r *ModifyAssistantCidrRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *ModifyAssistantCidrRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type ModifyAssistantCidrResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 辅助CIDR数组。 + // 注意:此字段可能返回 null,表示取不到有效值。 + AssistantCidrSet []*AssistantCidr `json:"AssistantCidrSet,omitempty" name:"AssistantCidrSet" list` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *ModifyAssistantCidrResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *ModifyAssistantCidrResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type ModifyBandwidthPackageAttributeRequest struct { *tchttp.BaseRequest @@ -6632,6 +7786,49 @@ func (r *ModifyFlowLogAttributeResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type ModifyGatewayFlowQosRequest struct { + *tchttp.BaseRequest + + // 网关实例ID,目前我们支持的网关实例类型有, + // 专线网关实例ID,形如,`dcg-ltjahce6`; + // Nat网关实例ID,形如,`nat-ltjahce6`; + // VPN网关实例ID,形如,`vpn-ltjahce6`。 + GatewayId *string `json:"GatewayId,omitempty" name:"GatewayId"` + + // 流控带宽值。 + Bandwidth *uint64 `json:"Bandwidth,omitempty" name:"Bandwidth"` + + // 限流的云服务器内网IP。 + IpAddresses []*string `json:"IpAddresses,omitempty" name:"IpAddresses" list` +} + +func (r *ModifyGatewayFlowQosRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *ModifyGatewayFlowQosRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type ModifyGatewayFlowQosResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *ModifyGatewayFlowQosResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *ModifyGatewayFlowQosResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type ModifyHaVipAttributeRequest struct { *tchttp.BaseRequest @@ -6968,6 +8165,80 @@ func (r *ModifyNetDetectResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type ModifyNetworkAclAttributeRequest struct { + *tchttp.BaseRequest + + // 网络ACL实例ID。例如:acl-12345678。 + NetworkAclId *string `json:"NetworkAclId,omitempty" name:"NetworkAclId"` + + // 网络ACL名称,最大长度不能超过60个字节。 + NetworkAclName *string `json:"NetworkAclName,omitempty" name:"NetworkAclName"` +} + +func (r *ModifyNetworkAclAttributeRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *ModifyNetworkAclAttributeRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type ModifyNetworkAclAttributeResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *ModifyNetworkAclAttributeResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *ModifyNetworkAclAttributeResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type ModifyNetworkAclEntriesRequest struct { + *tchttp.BaseRequest + + // 网络ACL实例ID。例如:acl-12345678。 + NetworkAclId *string `json:"NetworkAclId,omitempty" name:"NetworkAclId"` + + // 网络ACL规则集。 + NetworkAclEntrySet *NetworkAclEntrySet `json:"NetworkAclEntrySet,omitempty" name:"NetworkAclEntrySet"` +} + +func (r *ModifyNetworkAclEntriesRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *ModifyNetworkAclEntriesRequest) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type ModifyNetworkAclEntriesResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *ModifyNetworkAclEntriesResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +func (r *ModifyNetworkAclEntriesResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type ModifyNetworkInterfaceAttributeRequest struct { *tchttp.BaseRequest @@ -7587,6 +8858,63 @@ type NetDetectState struct { NetDetectIpStateSet []*NetDetectIpState `json:"NetDetectIpStateSet,omitempty" name:"NetDetectIpStateSet" list` } +type NetworkAcl struct { + + // `VPC`实例`ID`。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 网络ACL实例`ID`。 + NetworkAclId *string `json:"NetworkAclId,omitempty" name:"NetworkAclId"` + + // 网络ACL名称,最大长度为60。 + NetworkAclName *string `json:"NetworkAclName,omitempty" name:"NetworkAclName"` + + // 创建时间。 + CreatedTime *string `json:"CreatedTime,omitempty" name:"CreatedTime"` + + // 网络ACL关联的子网数组。 + SubnetSet []*Subnet `json:"SubnetSet,omitempty" name:"SubnetSet" list` + + // 网络ACl入站规则。 + IngressEntries []*NetworkAclEntry `json:"IngressEntries,omitempty" name:"IngressEntries" list` + + // 网络ACL出站规则。 + EgressEntries []*NetworkAclEntry `json:"EgressEntries,omitempty" name:"EgressEntries" list` +} + +type NetworkAclEntry struct { + + // 修改时间。 + ModifyTime *string `json:"ModifyTime,omitempty" name:"ModifyTime"` + + // 协议, 取值: TCP,UDP, ICMP。 + Protocol *string `json:"Protocol,omitempty" name:"Protocol"` + + // 端口(all, 单个port, range)。 + Port *string `json:"Port,omitempty" name:"Port"` + + // 网段或IP(互斥)。 + CidrBlock *string `json:"CidrBlock,omitempty" name:"CidrBlock"` + + // 网段或IPv6(互斥)。 + Ipv6CidrBlock *string `json:"Ipv6CidrBlock,omitempty" name:"Ipv6CidrBlock"` + + // ACCEPT 或 DROP。 + Action *string `json:"Action,omitempty" name:"Action"` + + // 规则描述,最大长度100。 + Description *string `json:"Description,omitempty" name:"Description"` +} + +type NetworkAclEntrySet struct { + + // 入站规则。 + Ingress []*NetworkAclEntry `json:"Ingress,omitempty" name:"Ingress" list` + + // 出站规则。 + Egress []*NetworkAclEntry `json:"Egress,omitempty" name:"Egress" list` +} + type NetworkInterface struct { // 弹性网卡实例ID,例如:eni-f1xjkw1b。 @@ -7708,6 +9036,15 @@ type Quota struct { QuotaLimit *int64 `json:"QuotaLimit,omitempty" name:"QuotaLimit"` } +type ReferredSecurityGroup struct { + + // 安全组实例ID。 + SecurityGroupId *string `json:"SecurityGroupId,omitempty" name:"SecurityGroupId"` + + // 引用安全组实例ID(SecurityGroupId)的所有安全组实例ID。 + ReferredSecurityGroupIds []*string `json:"ReferredSecurityGroupIds,omitempty" name:"ReferredSecurityGroupIds" list` +} + type RejectAttachCcnInstancesRequest struct { *tchttp.BaseRequest @@ -8287,6 +9624,135 @@ type Resource struct { AddressIp *string `json:"AddressIp,omitempty" name:"AddressIp"` } +type ResourceDashboard struct { + + // Vpc实例ID,例如:vpc-f1xjkw1b。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 子网实例ID,例如:subnet-bthucmmy。 + SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + + // 基础网络互通。 + Classiclink *uint64 `json:"Classiclink,omitempty" name:"Classiclink"` + + // 专线网关。 + Dcg *uint64 `json:"Dcg,omitempty" name:"Dcg"` + + // 对等连接。 + Pcx *uint64 `json:"Pcx,omitempty" name:"Pcx"` + + // 当前已使用的IP总数。 + Ip *uint64 `json:"Ip,omitempty" name:"Ip"` + + // NAT网关。 + Nat *uint64 `json:"Nat,omitempty" name:"Nat"` + + // VPN网关。 + Vpngw *uint64 `json:"Vpngw,omitempty" name:"Vpngw"` + + // 流日志。 + FlowLog *uint64 `json:"FlowLog,omitempty" name:"FlowLog"` + + // 网络探测。 + NetworkDetect *uint64 `json:"NetworkDetect,omitempty" name:"NetworkDetect"` + + // 网络ACL。 + NetworkACL *uint64 `json:"NetworkACL,omitempty" name:"NetworkACL"` + + // 云主机。 + CVM *uint64 `json:"CVM,omitempty" name:"CVM"` + + // 负载均衡。 + LB *uint64 `json:"LB,omitempty" name:"LB"` + + // 关系型数据库。 + CDB *uint64 `json:"CDB,omitempty" name:"CDB"` + + // 云数据库 TencentDB for Memcached。 + Cmem *uint64 `json:"Cmem,omitempty" name:"Cmem"` + + // 时序数据库。 + CTSDB *uint64 `json:"CTSDB,omitempty" name:"CTSDB"` + + // 数据库 TencentDB for MariaDB(TDSQL)。 + MariaDB *uint64 `json:"MariaDB,omitempty" name:"MariaDB"` + + // 数据库 TencentDB for SQL Server。 + SQLServer *uint64 `json:"SQLServer,omitempty" name:"SQLServer"` + + // 云数据库 TencentDB for PostgreSQL。 + Postgres *uint64 `json:"Postgres,omitempty" name:"Postgres"` + + // 网络附加存储。 + NAS *uint64 `json:"NAS,omitempty" name:"NAS"` + + // Snova云数据仓库。 + Greenplumn *uint64 `json:"Greenplumn,omitempty" name:"Greenplumn"` + + // 消息队列 CKAFKA。 + Ckafka *uint64 `json:"Ckafka,omitempty" name:"Ckafka"` + + // Grocery。 + Grocery *uint64 `json:"Grocery,omitempty" name:"Grocery"` + + // 数据加密服务。 + HSM *uint64 `json:"HSM,omitempty" name:"HSM"` + + // 游戏存储 Tcaplus。 + Tcaplus *uint64 `json:"Tcaplus,omitempty" name:"Tcaplus"` + + // Cnas。 + Cnas *uint64 `json:"Cnas,omitempty" name:"Cnas"` + + // HTAP 数据库 TiDB。 + TiDB *uint64 `json:"TiDB,omitempty" name:"TiDB"` + + // EMR 集群。 + Emr *uint64 `json:"Emr,omitempty" name:"Emr"` + + // SEAL。 + SEAL *uint64 `json:"SEAL,omitempty" name:"SEAL"` + + // 文件存储 CFS。 + CFS *uint64 `json:"CFS,omitempty" name:"CFS"` + + // Oracle。 + Oracle *uint64 `json:"Oracle,omitempty" name:"Oracle"` + + // ElasticSearch服务。 + ElasticSearch *uint64 `json:"ElasticSearch,omitempty" name:"ElasticSearch"` + + // 区块链服务。 + TBaaS *uint64 `json:"TBaaS,omitempty" name:"TBaaS"` + + // Itop。 + Itop *uint64 `json:"Itop,omitempty" name:"Itop"` + + // 云数据库审计。 + DBAudit *uint64 `json:"DBAudit,omitempty" name:"DBAudit"` + + // 企业级云数据库 CynosDB for Postgres。 + CynosDBPostgres *uint64 `json:"CynosDBPostgres,omitempty" name:"CynosDBPostgres"` + + // 数据库 TencentDB for Redis。 + Redis *uint64 `json:"Redis,omitempty" name:"Redis"` + + // 数据库 TencentDB for MongoDB。 + MongoDB *uint64 `json:"MongoDB,omitempty" name:"MongoDB"` + + // 分布式数据库 TencentDB for TDSQL。 + DCDB *uint64 `json:"DCDB,omitempty" name:"DCDB"` + + // 企业级云数据库 CynosDB for MySQL。 + CynosDBMySQL *uint64 `json:"CynosDBMySQL,omitempty" name:"CynosDBMySQL"` + + // 子网。 + Subnet *uint64 `json:"Subnet,omitempty" name:"Subnet"` + + // 路由表。 + RouteTable *uint64 `json:"RouteTable,omitempty" name:"RouteTable"` +} + type Route struct { // 目的网段,取值不能在私有网络网段内,例如:112.20.51.0/24。 @@ -8323,6 +9789,9 @@ type Route struct { // CCN:云联网路由,系统默认下发,不可编辑与删除。 // 用户只能添加和操作 USER 类型的路由。 RouteType *string `json:"RouteType,omitempty" name:"RouteType"` + + // 路由表实例ID,例如:rtb-azd4dt1c。 + RouteTableId *string `json:"RouteTableId,omitempty" name:"RouteTableId"` } type RouteConflict struct { @@ -8359,6 +9828,9 @@ type RouteTable struct { // 创建时间。 CreatedTime *string `json:"CreatedTime,omitempty" name:"CreatedTime"` + + // 标签键值对。 + TagSet []*Tag `json:"TagSet,omitempty" name:"TagSet" list` } type RouteTableAssociation struct { @@ -8418,6 +9890,24 @@ type SecurityGroupAssociationStatistics struct { InstanceStatistics []*InstanceStatistic `json:"InstanceStatistics,omitempty" name:"InstanceStatistics" list` } +type SecurityGroupLimitSet struct { + + // 每个项目每个地域可创建安全组数 + SecurityGroupLimit *uint64 `json:"SecurityGroupLimit,omitempty" name:"SecurityGroupLimit"` + + // 安全组下的最大规则数 + SecurityGroupPolicyLimit *uint64 `json:"SecurityGroupPolicyLimit,omitempty" name:"SecurityGroupPolicyLimit"` + + // 安全组下嵌套安全组规则数 + ReferedSecurityGroupLimit *uint64 `json:"ReferedSecurityGroupLimit,omitempty" name:"ReferedSecurityGroupLimit"` + + // 单安全组关联实例数 + SecurityGroupInstanceLimit *uint64 `json:"SecurityGroupInstanceLimit,omitempty" name:"SecurityGroupInstanceLimit"` + + // 实例关联安全组数 + InstanceSecurityGroupLimit *uint64 `json:"InstanceSecurityGroupLimit,omitempty" name:"InstanceSecurityGroupLimit"` +} + type SecurityGroupPolicy struct { // 安全组规则索引号。 @@ -8503,6 +9993,9 @@ type ServiceTemplateGroup struct { // 创建时间。 CreatedTime *string `json:"CreatedTime,omitempty" name:"CreatedTime"` + + // 协议端口模板实例信息。 + ServiceTemplateSet []*ServiceTemplate `json:"ServiceTemplateSet,omitempty" name:"ServiceTemplateSet" list` } type ServiceTemplateSpecification struct { @@ -8591,6 +10084,12 @@ type Subnet struct { // 是否为 `SNAT` 地址池子网。 IsRemoteVpcSnat *bool `json:"IsRemoteVpcSnat,omitempty" name:"IsRemoteVpcSnat"` + + // 子网`IP`总数。 + TotalIpAddressCount *uint64 `json:"TotalIpAddressCount,omitempty" name:"TotalIpAddressCount"` + + // 标签键值对。 + TagSet []*Tag `json:"TagSet,omitempty" name:"TagSet" list` } type SubnetInput struct { @@ -8619,6 +10118,21 @@ type Tag struct { Value *string `json:"Value,omitempty" name:"Value"` } +type TemplateLimit struct { + + // 参数模板IP地址成员配额。 + AddressTemplateMemberLimit *uint64 `json:"AddressTemplateMemberLimit,omitempty" name:"AddressTemplateMemberLimit"` + + // 参数模板IP地址组成员配额。 + AddressTemplateGroupMemberLimit *uint64 `json:"AddressTemplateGroupMemberLimit,omitempty" name:"AddressTemplateGroupMemberLimit"` + + // 参数模板I协议端口成员配额。 + ServiceTemplateMemberLimit *uint64 `json:"ServiceTemplateMemberLimit,omitempty" name:"ServiceTemplateMemberLimit"` + + // 参数模板协议端口组成员配额。 + ServiceTemplateGroupMemberLimit *uint64 `json:"ServiceTemplateGroupMemberLimit,omitempty" name:"ServiceTemplateGroupMemberLimit"` +} + type TransformAddressRequest struct { *tchttp.BaseRequest @@ -8859,6 +10373,15 @@ type VpcIpv6Address struct { CreatedTime *string `json:"CreatedTime,omitempty" name:"CreatedTime"` } +type VpcLimit struct { + + // 私有网络配额描述 + LimitType *string `json:"LimitType,omitempty" name:"LimitType"` + + // 私有网络配额值 + LimitValue *uint64 `json:"LimitValue,omitempty" name:"LimitValue"` +} + type VpcPrivateIpAddress struct { // `VPC`内网`IP`。 @@ -8933,7 +10456,7 @@ type VpnGateway struct { // 网关实例名称。 VpnGatewayName *string `json:"VpnGatewayName,omitempty" name:"VpnGatewayName"` - // 网关实例类型:'IPSEC', 'SSL'。 + // 网关实例类型:'IPSEC', 'SSL','CCN'。 Type *string `json:"Type,omitempty" name:"Type"` // 网关实例状态, 'PENDING':生产中,'DELETING':删除中,'AVAILABLE':运行中。 @@ -8974,6 +10497,9 @@ type VpnGateway struct { // 网关实例版本信息 Version *string `json:"Version,omitempty" name:"Version"` + + // Type值为CCN时,该值表示云联网实例ID + NetworkInstanceId *string `json:"NetworkInstanceId,omitempty" name:"NetworkInstanceId"` } type VpnGatewayQuota struct { diff --git a/vendor/modules.txt b/vendor/modules.txt index 1a6b5734a..223e425a2 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -531,7 +531,7 @@ github.com/stretchr/testify/assert github.com/stretchr/testify/require # github.com/temoto/robotstxt v1.1.1 github.com/temoto/robotstxt -# github.com/tencentcloud/tencentcloud-sdk-go v3.0.121+incompatible +# github.com/tencentcloud/tencentcloud-sdk-go v3.0.155+incompatible github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http