From 6c5ba6a7dccf066f666b4144425ce4be65ad700b Mon Sep 17 00:00:00 2001 From: wenqian Date: Thu, 28 Apr 2022 13:41:36 +0800 Subject: [PATCH] update (#4) --- Makefile | 6 +- lib/core/middlewares.js | 2 +- lib/services/cube/index.d.ts | 142 +- lib/services/cube/index.js | 36 + lib/services/index.d.ts | 1 + lib/services/index.js | 7 + lib/services/ipsecvpn/index.d.ts | 18 +- lib/services/pathx/index.d.ts | 1046 +++++++++++++- lib/services/pathx/index.js | 144 ++ lib/services/uaccount/index.d.ts | 24 - lib/services/uaccount/index.js | 9 - lib/services/ubill/index.d.ts | 288 +++- lib/services/ubill/index.js | 18 + lib/services/ucdn/index.d.ts | 2031 +++++++++++++++------------- lib/services/ucdn/index.js | 117 +- lib/services/udb/index.d.ts | 101 +- lib/services/udb/index.js | 24 +- lib/services/udisk/index.d.ts | 40 +- lib/services/uec/index.d.ts | 76 +- lib/services/uec/index.js | 9 + lib/services/ufile/index.d.ts | 288 ++++ lib/services/ufile/index.js | 45 + lib/services/ufs/index.d.ts | 204 ++- lib/services/ufs/index.js | 45 + lib/services/uhost/index.d.ts | 117 +- lib/services/uk8s/index.d.ts | 699 +++++++++- lib/services/uk8s/index.js | 45 + lib/services/ulb/index.d.ts | 50 +- lib/services/ulb/index.js | 9 + lib/services/umem/index.d.ts | 346 ++++- lib/services/umem/index.js | 27 + lib/services/unet/index.d.ts | 181 ++- lib/services/unet/index.js | 36 + lib/services/uphost/index.d.ts | 246 +++- lib/services/uphost/index.js | 36 + lib/services/usms/index.d.ts | 26 +- lib/services/uvms/index.d.ts | 64 + lib/services/uvms/index.js | 25 + lib/services/vpc/index.d.ts | 409 +++++- lib/services/vpc/index.js | 54 + src/services/cube/index.ts | 179 ++- src/services/index.ts | 9 + src/services/ipsecvpn/index.ts | 18 +- src/services/pathx/index.ts | 1169 +++++++++++++++- src/services/uaccount/index.ts | 34 - src/services/ubill/index.ts | 308 ++++- src/services/ucdn/index.ts | 2171 ++++++++++++++++-------------- src/services/udb/index.ts | 120 +- src/services/udisk/index.ts | 40 +- src/services/uec/index.ts | 86 +- src/services/ufile/index.ts | 336 +++++ src/services/ufs/index.ts | 251 +++- src/services/uhost/index.ts | 117 +- src/services/uk8s/index.ts | 748 +++++++++- src/services/ulb/index.ts | 59 +- src/services/umem/index.ts | 373 ++++- src/services/unet/index.ts | 226 +++- src/services/uphost/index.ts | 284 +++- src/services/usms/index.ts | 26 +- src/services/uvms/index.ts | 81 ++ src/services/vpc/index.ts | 469 ++++++- 61 files changed, 11593 insertions(+), 2602 deletions(-) create mode 100644 lib/services/uvms/index.d.ts create mode 100644 lib/services/uvms/index.js create mode 100644 src/services/uvms/index.ts diff --git a/Makefile b/Makefile index 8c3e953..e13a0f7 100644 --- a/Makefile +++ b/Makefile @@ -41,6 +41,8 @@ gen: --only "UFile" \ --only "USMS" \ --only "UEC" \ + --only "UVMS" \ --public \ - -s https://git.ucloudadmin.com/apispec/apispec.git \ - /Users/user/code/oas/plugins/template-opensdk-js . + -s $(HOME)/.oas/vcs/git.ucloudadmin.com/apispec/apispec/specification \ + $(HOME)/.oas/vcs/git.ucloudadmin.com/apispec/template-opensdk-js . + diff --git a/lib/core/middlewares.js b/lib/core/middlewares.js index 8605cb5..189d7e3 100644 --- a/lib/core/middlewares.js +++ b/lib/core/middlewares.js @@ -43,7 +43,7 @@ exports.logMiddleware = { }, error: function (ctx) { var _a; - console.log("debug", !ctx.config.logger); + console.log('debug', !ctx.config.logger); if (!ctx.config.logger) { return; } diff --git a/lib/services/cube/index.d.ts b/lib/services/cube/index.d.ts index 34ebe83..3391046 100644 --- a/lib/services/cube/index.d.ts +++ b/lib/services/cube/index.d.ts @@ -39,6 +39,12 @@ export default class CubeClient extends Client { * See also: https://docs.ucloud.cn/api/cube-api/get_cube_deployment */ getCubeDeployment(request?: GetCubeDeploymentRequest): Promise; + /** + * GetCubeExecToken - 获取登录容器的token + * + * See also: https://docs.ucloud.cn/api/cube-api/get_cube_exec_token + */ + getCubeExecToken(request?: GetCubeExecTokenRequest): Promise; /** * GetCubeExtendInfo - 获取Cube的额外信息 * @@ -63,6 +69,18 @@ export default class CubeClient extends Client { * See also: https://docs.ucloud.cn/api/cube-api/get_cube_price */ getCubePrice(request?: GetCubePriceRequest): Promise; + /** + * GetCubeToken - 获取Cube的token,可用于terminal登录、log获取 + * + * See also: https://docs.ucloud.cn/api/cube-api/get_cube_token + */ + getCubeToken(request?: GetCubeTokenRequest): Promise; + /** + * ListCubeDeployment - 获取Cube的Deployment列表 + * + * See also: https://docs.ucloud.cn/api/cube-api/list_cube_deployment + */ + listCubeDeployment(request?: ListCubeDeploymentRequest): Promise; /** * ListCubePod - 获取Pods列表 * @@ -81,6 +99,12 @@ export default class CubeClient extends Client { * See also: https://docs.ucloud.cn/api/cube-api/modify_cube_tag */ modifyCubeTag(request?: ModifyCubeTagRequest): Promise; + /** + * RebootCubePod - 重启Cube Pod + * + * See also: https://docs.ucloud.cn/api/cube-api/reboot_cube_pod + */ + rebootCubePod(request?: RebootCubePodRequest): Promise; /** * RenewCubePod - 更新Pod * @@ -284,6 +308,40 @@ export interface GetCubeDeploymentResponse { */ Deployment: string; } +/** + * GetCubeExecToken - 获取登录容器的token + */ +export interface GetCubeExecTokenRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 容器名称 + */ + ContainerName: string; + /** + * CubeId 和 Uid 中必须填写任意一个。CubeId 是所有 Cube 资源的唯一 ID,如非在 UK8S 通过 Virtual Kubelet 插件创建的 Cube, 则必填 CubeId + */ + CubeId?: string; + /** + * CubeId 和 Uid 中必须填写任意一个。Uid 是在 UK8S 中通过 Virtual Kubelet 插件创建出的 Cube 的唯一标识 + */ + Uid?: string; +} +/** + * GetCubeExecToken - 获取登录容器的token + */ +export interface GetCubeExecTokenResponse { + /** + * 有效时间5min + */ + Token: string; + /** + * terminal的登录连接地址,限单点登录,有效时间5min + */ + TerminalUrl?: string; +} /** * GetCubeExtendInfo - 获取Cube的额外信息 */ @@ -497,12 +555,72 @@ export interface GetCubePriceResponse { */ OriginalPrice: number; } +/** + * GetCubeToken - 获取Cube的token,可用于terminal登录、log获取 + */ +export interface GetCubeTokenRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 容器名称 + */ + ContainerName: string; + /** + * CubeId 和 Uid 中必须填写任意一个。CubeId 是所有 Cube 资源的唯一 ID,如非在 UK8S 通过 Virtual Kubelet 插件创建的 Cube, 则必填 CubeId + */ + CubeId?: string; + /** + * CubeId 和 Uid 中必须填写任意一个。Uid 是在 UK8S 中通过 Virtual Kubelet 插件创建出的 Cube 的唯一标识 + */ + Uid?: string; +} +/** + * GetCubeToken - 获取Cube的token,可用于terminal登录、log获取 + */ +export interface GetCubeTokenResponse { + /** + * 有效时间5min + */ + Token: string; +} +/** + * ListCubeDeployment - 获取Cube的Deployment列表 + */ +export interface ListCubeDeploymentRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 默认0 + */ + Offset: number; + /** + * 默认20 + */ + Limit: number; +} +/** + * ListCubeDeployment - 获取Cube的Deployment列表 + */ +export interface ListCubeDeploymentResponse { + /** + * + */ + TotalCount: number; + /** + * DeploymentInfo + */ + Deployments: string[]; +} /** * ListCubePod - 获取Pods列表 */ export interface ListCubePodRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -525,6 +643,10 @@ export interface ListCubePodRequest { * 默认20 */ Limit?: number; + /** + * Deployment的Id + */ + DeploymentId?: string; } /** * ListCubePod - 获取Pods列表 @@ -587,6 +709,24 @@ export interface ModifyCubeTagResponse { */ CubeId: string; } +/** + * RebootCubePod - 重启Cube Pod + */ +export interface RebootCubePodRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * cube资源id(cube-xxxxxx) + */ + CubeId: string; +} +/** + * RebootCubePod - 重启Cube Pod + */ +export interface RebootCubePodResponse { +} /** * RenewCubePod - 更新Pod */ diff --git a/lib/services/cube/index.js b/lib/services/cube/index.js index 7d12dd3..cb0ad69 100644 --- a/lib/services/cube/index.js +++ b/lib/services/cube/index.js @@ -57,6 +57,15 @@ class CubeClient extends client_1.default { const args = Object.assign({ Action: 'GetCubeDeployment' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * GetCubeExecToken - 获取登录容器的token + * + * See also: https://docs.ucloud.cn/api/cube-api/get_cube_exec_token + */ + getCubeExecToken(request) { + const args = Object.assign({ Action: 'GetCubeExecToken' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * GetCubeExtendInfo - 获取Cube的额外信息 * @@ -93,6 +102,24 @@ class CubeClient extends client_1.default { const args = Object.assign({ Action: 'GetCubePrice' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * GetCubeToken - 获取Cube的token,可用于terminal登录、log获取 + * + * See also: https://docs.ucloud.cn/api/cube-api/get_cube_token + */ + getCubeToken(request) { + const args = Object.assign({ Action: 'GetCubeToken' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * ListCubeDeployment - 获取Cube的Deployment列表 + * + * See also: https://docs.ucloud.cn/api/cube-api/list_cube_deployment + */ + listCubeDeployment(request) { + const args = Object.assign({ Action: 'ListCubeDeployment' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ListCubePod - 获取Pods列表 * @@ -120,6 +147,15 @@ class CubeClient extends client_1.default { const args = Object.assign({ Action: 'ModifyCubeTag' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * RebootCubePod - 重启Cube Pod + * + * See also: https://docs.ucloud.cn/api/cube-api/reboot_cube_pod + */ + rebootCubePod(request) { + const args = Object.assign({ Action: 'RebootCubePod' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * RenewCubePod - 更新Pod * diff --git a/lib/services/index.d.ts b/lib/services/index.d.ts index 6bc92d1..67582a9 100644 --- a/lib/services/index.d.ts +++ b/lib/services/index.d.ts @@ -26,6 +26,7 @@ export declare class Client extends BaseClient { unet(): any; uphost(): any; usms(): any; + uvms(): any; vpc(): any; } export {}; diff --git a/lib/services/index.js b/lib/services/index.js index 7753eb3..5f65149 100644 --- a/lib/services/index.js +++ b/lib/services/index.js @@ -22,6 +22,7 @@ const UMemClient = require('./umem').default; const UNetClient = require('./unet').default; const UPHostClient = require('./uphost').default; const USMSClient = require('./usms').default; +const UVMSClient = require('./uvms').default; const VPCClient = require('./vpc').default; class Client extends BaseClient { constructor({ config, credential, }) { @@ -111,8 +112,14 @@ class Client extends BaseClient { usms() { return new USMSClient({ config: this.config, credential: this.credential }); } + uvms() { + return new UVMSClient({ config: this.config, credential: this.credential }); + } vpc() { return new VPCClient({ config: this.config, credential: this.credential }); } } exports.Client = Client; +module.exports = { + Client: Client, +}; diff --git a/lib/services/ipsecvpn/index.d.ts b/lib/services/ipsecvpn/index.d.ts index 567837f..43bfe59 100644 --- a/lib/services/ipsecvpn/index.d.ts +++ b/lib/services/ipsecvpn/index.d.ts @@ -196,6 +196,10 @@ export interface CreateVPNTunnelRequest { * vpcId */ VPCId: string; + /** + * ike版本,枚举值: "IKE V1","IKE V2",默认v1 + */ + IKEVersion: string; /** * 指定VPN连接的本地子网的资源ID,最多可填写10个。 */ @@ -204,10 +208,6 @@ export interface CreateVPNTunnelRequest { * 指定VPN连接的客户网段,最多可填写20个。 */ IPSecRemoteSubnets: string[]; - /** - * ike版本,枚举值: "IKE V1","IKE V2",默认v1 - */ - IKEVersion: string; /** * 业务组,默认为“Default” */ @@ -253,7 +253,7 @@ export interface CreateVPNTunnelRequest { */ IPSecEncryptionAlgorithm?: string; /** - * IPSec隧道中使用的认证算法,枚举值,"md5", "sha1"。默认值为“sha1” + * IPSec隧道中使用的认证算法,枚举值,"md5", "sha1","sha2-256"。默认值为“sha1” */ IPSecAuthenticationAlgorithm?: string; /** @@ -268,6 +268,10 @@ export interface CreateVPNTunnelRequest { * IPSec的PFS是否开启,枚举值,,不开启,"disable";数字表示DH组, "1", "2", "5", "14", "15", "16"。默认为“disable”。 */ IPSecPFSDhGroup?: string; + /** + * IPSec隧道关闭后的处理动作,枚举值:“none”,流量触发;“restart”,自动重联,默认为none + */ + IPSecCloseAction?: string; } /** * CreateVPNTunnel - 创建VPN隧道 @@ -794,6 +798,10 @@ export interface UpdateVPNTunnelAttributeRequest { * 枚举值:"IKE V1","IKE V2" */ IKEVersion?: string; + /** + * IPSec隧道关闭后的处理动作,默认与原本一致,若原本为空,必传。枚举值:“none”,不处理(推荐为none,流量会自动触发隧道重建);“restart”重建 + */ + IPSecCloseAction?: string; } /** * UpdateVPNTunnelAttribute - 更新VPN隧道属性 diff --git a/lib/services/pathx/index.d.ts b/lib/services/pathx/index.d.ts index 4fa85cf..e78f9bc 100644 --- a/lib/services/pathx/index.d.ts +++ b/lib/services/pathx/index.d.ts @@ -27,6 +27,18 @@ export default class PathXClient extends Client { * See also: https://docs.ucloud.cn/api/pathx-api/create_path_xssl */ createPathXSSL(request?: CreatePathXSSLRequest): Promise; + /** + * CreateUGA3Instance - 创建全球统一接入加速配置项 + * + * See also: https://docs.ucloud.cn/api/pathx-api/create_uga3_instance + */ + createUGA3Instance(request?: CreateUGA3InstanceRequest): Promise; + /** + * CreateUGA3Port - 创建统一接入加速实例端口,目前仅支持四层TCP端口 + * + * See also: https://docs.ucloud.cn/api/pathx-api/create_uga3_port + */ + createUGA3Port(request?: CreateUGA3PortRequest): Promise; /** * CreateUGAForwarder - 创建加速实例转发器,支持HTTPS接入HTTPS回源、HTTPS接入HTTP回源、HTTP接入HTTP回源、TCP接入TCP回源、UDP接入UDP回源、 支持WSS接入WSS回源、WSS接入WS回源、WS接入WS回源 * @@ -57,6 +69,18 @@ export default class PathXClient extends Client { * See also: https://docs.ucloud.cn/api/pathx-api/delete_path_xssl */ deletePathXSSL(request?: DeletePathXSSLRequest): Promise; + /** + * DeleteUGA3Instance - 删除全球统一接入转发实例 + * + * See also: https://docs.ucloud.cn/api/pathx-api/delete_uga3_instance + */ + deleteUGA3Instance(request?: DeleteUGA3InstanceRequest): Promise; + /** + * DeleteUGA3Port - 删除统一接入加速实例转发器 按接入端口删除 + * + * See also: https://docs.ucloud.cn/api/pathx-api/delete_uga3_port + */ + deleteUGA3Port(request?: DeleteUGA3PortRequest): Promise; /** * DeleteUGAForwarder - 删除加速实例转发器 按接入端口删除 * @@ -93,6 +117,24 @@ export default class PathXClient extends Client { * See also: https://docs.ucloud.cn/api/pathx-api/describe_path_xssl */ describePathXSSL(request?: DescribePathXSSLRequest): Promise; + /** + * DescribeUGA3Area - 获取全球接入源站可选列表 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_area + */ + describeUGA3Area(request?: DescribeUGA3AreaRequest): Promise; + /** + * DescribeUGA3Instance - 获取全球统一接入加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_instance + */ + describeUGA3Instance(request?: DescribeUGA3InstanceRequest): Promise; + /** + * DescribeUGA3Optimization - 获取全球接入UGA3线路加速化情况 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_optimization + */ + describeUGA3Optimization(request?: DescribeUGA3OptimizationRequest): Promise; /** * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 * @@ -129,18 +171,66 @@ export default class PathXClient extends Client { * See also: https://docs.ucloud.cn/api/pathx-api/get_path_x_metric */ getPathXMetric(request?: GetPathXMetricRequest): Promise; + /** + * GetUGA3Metric - 获取全地域加速监控信息 + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_metric + */ + getUGA3Metric(request?: GetUGA3MetricRequest): Promise; + /** + * GetUGA3Price - 获取全球统一接入转发实例价格 + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_price + */ + getUGA3Price(request?: GetUGA3PriceRequest): Promise; + /** + * GetUGA3UpdatePrice - 全球统一接入获取实例更新价格(增加、删退) + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_update_price + */ + getUGA3UpdatePrice(request?: GetUGA3UpdatePriceRequest): Promise; /** * ModifyGlobalSSHPort - 修改GlobalSSH端口 * * See also: https://docs.ucloud.cn/api/pathx-api/modify_global_ssh_port */ modifyGlobalSSHPort(request?: ModifyGlobalSSHPortRequest): Promise; + /** + * ModifyGlobalSSHRemark - 修改GlobalSSH备注 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_global_ssh_remark + */ + modifyGlobalSSHRemark(request?: ModifyGlobalSSHRemarkRequest): Promise; /** * ModifyGlobalSSHType - 修改GlobalSSH实例类型,仅支持低版本升级到高版本,不支持高版本降级到低版本 * * See also: https://docs.ucloud.cn/api/pathx-api/modify_global_ssh_type */ modifyGlobalSSHType(request?: ModifyGlobalSSHTypeRequest): Promise; + /** + * ModifyUGA3Bandwidth - 修改统一接入加速配置带宽 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_bandwidth + */ + modifyUGA3Bandwidth(request?: ModifyUGA3BandwidthRequest): Promise; + /** + * ModifyUGA3Instance - 修改统一接入加速配置属性,如Name,ReMark + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_instance + */ + modifyUGA3Instance(request?: ModifyUGA3InstanceRequest): Promise; + /** + * ModifyUGA3OriginInfo - Domain, IPList注意:修改Domain或IPList时, 请确保源站服务端口已经开启且外网防火墙允许pathx出口ip访问。 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_origin_info + */ + modifyUGA3OriginInfo(request?: ModifyUGA3OriginInfoRequest): Promise; + /** + * ModifyUGA3Port - 修改统一接入加速实例端口,目前仅支持四层TCP端口 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_port + */ + modifyUGA3Port(request?: ModifyUGA3PortRequest): Promise; /** * ModifyUPathBandwidth - 修改加速线路带宽 * @@ -171,6 +261,12 @@ export default class PathXClient extends Client { * See also: https://docs.ucloud.cn/api/pathx-api/un_bind_path_xssl */ unBindPathXSSL(request?: UnBindPathXSSLRequest): Promise; + /** + * UpdatePathXWhitelist - 更新入口白名单,仅限GlobalSSH 实例使用。其他uga-实例不生效 + * + * See also: https://docs.ucloud.cn/api/pathx-api/update_path_x_whitelist + */ + updatePathXWhitelist(request?: UpdatePathXWhitelistRequest): Promise; } /** * BindPathXSSL - 绑定PathX SSL证书 @@ -199,7 +295,7 @@ export interface BindPathXSSLResponse { */ export interface CreateGlobalSSHInstanceRequest { /** - * 填写支持SSH访问IP的地区名称,如“洛杉矶”,“新加坡”,“香港”,“东京”,“华盛顿”,“法兰克福”。Area和AreaCode两者必填一个 + * 填写支持SSH访问IP的地区名称,如“洛杉矶”,“新加坡”,“香港”,“东京”,“华盛顿”,“法兰克福”,“首尔”。Area和AreaCode两者必填一个 */ Area: string; /** @@ -219,15 +315,15 @@ export interface CreateGlobalSSHInstanceRequest { */ Remark?: string; /** - * 支付方式,如按月、按年、按时 + * 支付方式,如按月:Month、 按年:Year、按时:Dynamic */ ChargeType?: string; /** - * 购买数量 + * 购买数量按月购买至月底请传0 */ Quantity?: number; /** - * 枚举值:["Enterprise","Basic","Free"], 分别代表企业版,基础版,免费版 + * 枚举值:["Ultimate","Enterprise","Basic","Primary"], 分别代表旗舰版,企业版,基础版,入门版 */ InstanceType?: string; /** @@ -235,7 +331,7 @@ export interface CreateGlobalSSHInstanceRequest { */ BandwidthPackage?: number; /** - * InstanceType等于Basic时可以在["cn-bj2","cn-sh2","cn-gd"]中选择1个作为转发机房,Free版本固定为cn-bj2,其他付费版默认配置三个转发机房 + * InstanceType等于Basic时可以在["cn-bj2","cn-sh2","cn-gd"]中选择1个作为转发机房,其他付费版默认配置三个转发机房 */ ForwardRegion?: string; /** @@ -294,6 +390,86 @@ export interface CreatePathXSSLResponse { */ SSLId: string; } +/** + * CreateUGA3Instance - 创建全球统一接入加速配置项 + */ +export interface CreateUGA3InstanceRequest { + /** + * 实例的共享带宽大小,单位Mbps + */ + Bandwidth: number; + /** + * 加速配置实例名称,默认PathX + */ + Name?: string; + /** + * 非必填,如果不填,会根据Domain 和IPList 去选一个最近的源站区域BKK表示AreaCode;曼谷表示Area["BKK":"曼谷","DXB":"迪拜","FRA":"法兰克福","SGN":"胡志明市","HKG":"香港",CGK":"雅加达","LOS":"拉各斯","LHR":"伦敦","LAX":"洛杉矶","MNL":"马尼拉","DME":"莫斯科","BOM":"孟买","MSP":"圣保罗","ICN":"首尔","PVG":"上海","SIN":"新加坡","NRT":"东京","IAD":"华盛顿","TPE": "台北"] + */ + AreaCode?: string; + /** + * 备注项 + */ + Remark?: string; + /** + * 支付方式,如按月、按年、按时[Year,Month,Dynamic] + */ + ChargeType?: string; + /** + * 购买周期 + */ + Quantity?: number; + /** + * 加速大区,默认Global,[ "Global":"全球", "AP":"亚太", "EU":"欧洲", "ME":"中东", "OA":"大洋洲", "AF":"非洲", "NA":"北美洲", "SA":"南美洲"] + */ + AccelerationArea?: string; + /** + * 加速源IP,多个IP用英文半角逗号(,)隔开;IPList和Domain二选一必填 + */ + OriginIPList?: string; + /** + * 加速源域名,IPList和Domain二选一必填 + */ + OriginDomain?: string; + /** + * 使用代金券可冲抵部分费用,仅全地域可用的代金券 + */ + CouponId?: string; +} +/** + * CreateUGA3Instance - 创建全球统一接入加速配置项 + */ +export interface CreateUGA3InstanceResponse { + /** + * 加速配置ID + */ + InstanceId: string; + /** + * 加速域名 用户可把业务域名CName到此域名上 + */ + CName?: string; +} +/** + * CreateUGA3Port - 创建统一接入加速实例端口,目前仅支持四层TCP端口 + */ +export interface CreateUGA3PortRequest { + /** + * 加速配置实例ID + */ + InstanceId: string; + /** + * TCP接入端口,禁用65123端口 + */ + TCP?: number[]; + /** + * TCP回源端口 + */ + TCPRS?: number[]; +} +/** + * CreateUGA3Port - 创建统一接入加速实例端口,目前仅支持四层TCP端口 + */ +export interface CreateUGA3PortResponse { +} /** * CreateUGAForwarder - 创建加速实例转发器,支持HTTPS接入HTTPS回源、HTTPS接入HTTP回源、HTTP接入HTTP回源、TCP接入TCP回源、UDP接入UDP回源、 支持WSS接入WSS回源、WSS接入WS回源、WS接入WS回源 */ @@ -327,7 +503,7 @@ export interface CreateUGAForwarderRequest { */ HTTPSHTTPSRS?: number[]; /** - * TCP接入端口 + * TCP接入端口,禁用65123端口 */ TCP?: number[]; /** @@ -335,13 +511,37 @@ export interface CreateUGAForwarderRequest { */ TCPRS?: number[]; /** - * UDP接入端口 + * UDP接入端口,禁用65123端口 */ UDP?: number[]; /** * UDP回源端口 */ UDPRS?: number[]; + /** + * WebSocket接入WebSocket回源转发,接入端口。禁用65123。 + */ + WSWS?: number[]; + /** + * WebSocket接入WebSocket回源转发,源站监听端口 + */ + WSWSRS?: number[]; + /** + * WebSocketS接入WebSocketS回源转发,接入端口。禁用65123。 + */ + WSSWSS?: number[]; + /** + * WebSocketS接入WebSocketS回源转发,源站监听端口。 + */ + WSSWSSRS?: number[]; + /** + * WebSocketS接入WebSocket回源转发,接入端口。禁用65123。 + */ + WSSWS?: number[]; + /** + * WebSocketS接入WebSocket回源转发,源站监听端口。 + */ + WSSWSRS?: number[]; } /** * CreateUGAForwarder - 创建加速实例转发器,支持HTTPS接入HTTPS回源、HTTPS接入HTTP回源、HTTP接入HTTP回源、TCP接入TCP回源、UDP接入UDP回源、 支持WSS接入WSS回源、WSS接入WS回源、WS接入WS回源 @@ -391,15 +591,15 @@ export interface CreateUGAInstanceResponse { */ export interface CreateUPathRequest { /** - * UPath名字 + * 名字,便于记忆区分 */ Name: string; /** - * 选择的线路 + * 选择的线路,由DescribePathXLineConfig接口提供 */ LineId: string; /** - * 线路带宽,最小1Mbps,最大带宽由 DescribePathXLineConfig 接口获得。如需更大带宽,请联系产品团队。 + * 当PostPaid为false时,该值为预付费固定带宽;当PostPaid为true时,该值为后付费保底带宽,保底带宽越大可用的上限带宽越大。最小1Mbps,最大带宽由 DescribePathXLineConfig 接口获得。可联系产品团队咨询最大带宽。 */ Bandwidth: number; /** @@ -411,9 +611,13 @@ export interface CreateUPathRequest { */ Quantity?: number; /** - * 是否开启后付费, 默认为false + * 是否开启后付费, 默认为false ,不开启后付费。当ChargeType为Dynamic时不能开启后付费。 */ PostPaid?: boolean; + /** + * private:专线线路;public:海外SD-WAN。默认为private。 + */ + PathType?: string; /** * 代金券Id */ @@ -426,7 +630,7 @@ export interface CreateUPathResponse { /** * 加速线路实例Id */ - UPathId: string; + PathId: string; } /** * DeleteGlobalSSHInstance - 删除GlobalSSH实例 @@ -456,6 +660,38 @@ export interface DeletePathXSSLRequest { */ export interface DeletePathXSSLResponse { } +/** + * DeleteUGA3Instance - 删除全球统一接入转发实例 + */ +export interface DeleteUGA3InstanceRequest { + /** + * 实例Id,资源的唯一标识 + */ + InstanceId: string; +} +/** + * DeleteUGA3Instance - 删除全球统一接入转发实例 + */ +export interface DeleteUGA3InstanceResponse { +} +/** + * DeleteUGA3Port - 删除统一接入加速实例转发器 按接入端口删除 + */ +export interface DeleteUGA3PortRequest { + /** + * 加速配置实例ID + */ + InstanceId: string; + /** + * TCP接入端口 + */ + TCP?: number[]; +} +/** + * DeleteUGA3Port - 删除统一接入加速实例转发器 按接入端口删除 + */ +export interface DeleteUGA3PortResponse { +} /** * DeleteUGAForwarder - 删除加速实例转发器 按接入端口删除 */ @@ -476,6 +712,18 @@ export interface DeleteUGAForwarderRequest { * HTTPS接入HTTPS回源, 接入端口。禁用65123端口 */ HTTPSHTTPS?: number[]; + /** + * WebSocketS接入WebSocketS回源, 接入端口。禁用65123端口 + */ + WSSWSS?: number[]; + /** + * WebSocket接入WebSocket回源, 接入端口。禁用65123端口 + */ + WSWS?: number[]; + /** + * WebSocketS接入WebSocket回源, 接入端口。禁用65123端口。 + */ + WSSWS?: number[]; /** * TCP接入端口 */ @@ -738,13 +986,60 @@ export interface DescribePathXSSLResponse { TotalCount?: number; } /** - * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + * DescribeUGA3Area - 获取全球接入源站可选列表 */ -export interface DescribeUGAInstanceRequest { +export interface DescribeUGA3AreaRequest { + /** + * IP集合,非必填。如果填IP或者域名,会推荐一个地域在返回列表的第一个,源站IP集合,以逗号分隔[127.0.0.1,127.0.0.2] + */ + IPList?: string; + /** + * 域名,非必填。如果填IP或者域名,会推荐一个地域在返回列表的第一个 + */ + Domain?: string; +} +/** + * DescribeUGA3Area - 获取全球接入源站可选列表 + */ +export interface DescribeUGA3AreaResponse { + /** + * 支持源站的地区,比如:AreaSet[{ "Area": "首尔", "AreaCode": "ICN", "CountryCode": "CN", "ContinentCode": "CN" }]ContinentCode:["CN","NA","OT"];"CN":表示国内,"NA":表示美洲,“OT":表示欧洲等其他地区 + */ + AreaSet?: { + /** + * 源站区域代码 + */ + AreaCode: string; + /** + * 源站区域中文 + */ + Area: string; + /** + * 国家代码 + */ + CountryCode: string; + /** + * 国旗unicode + */ + FlagUnicode: string; + /** + * 国旗 emoji + */ + FlagEmoji: string; + /** + * 大陆代码 + */ + ContinentCode: string; + }[]; +} +/** + * DescribeUGA3Instance - 获取全球统一接入加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + */ +export interface DescribeUGA3InstanceRequest { /** * 加速配置实例ID,如果传了实例ID 则返回匹配实例ID的记录;如果没传则返回 ProjectId 下全部实例且符合分页要求 */ - UGAId?: string; + InstanceId?: string; /** * 返回的最大条数,默认为100,最大值400 */ @@ -755,81 +1050,312 @@ export interface DescribeUGAInstanceRequest { Offset?: number; } /** - * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + * DescribeUGA3Instance - 获取全球统一接入加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 */ -export interface DescribeUGAInstanceResponse { +export interface DescribeUGA3InstanceResponse { /** * 全球加速实例信息列表 */ - UGAList?: { + ForwardInstanceInfos?: { /** - * 加速配置实例ID + * 加速配置ID */ - UGAId: string; + InstanceId: string; /** - * 加速域名,请在加速区域配置您的业务域名的CName记录值为加速域名 + * 加速域名 */ CName: string; /** - * 加速配置名称 - */ - UGAName: string; - /** - * 源站IP列表,多个值由半角英文逗号相隔 + * 加速实例名称 */ - IPList?: string[]; + Name: string; /** - * 源站域名 + * 加速大区代码 */ - Domain?: string; + AccelerationArea: string; /** - * 源站所在区域,加速实例在绑定线路后会自动设置该值。console页面上通过该值过滤加速实例可以绑定的upath实例。注意:缺少该值会导致在console上无法修改线路 + * 加速大区名称 */ - Location?: string; + AccelerationAreaName: string; /** - * 绑定的加速线路 + * 加速节点列表 */ - UPathSet?: { - /** - * UPath名字 - */ - UPathName?: string; + AccelerationAreaInfos: { /** - * UPath 实例ID + * 加速区code */ - UPathId?: string; + AccelerationArea: string; /** - * 带宽 Mbps, 1~800Mbps + * 加速节点信息 */ - Bandwidth?: number; + AccelerationNodes: { + /** + * AreaCode ,城市机场代码 + */ + AreaCode: string; + /** + * AreaCode对应城市名 + */ + Area: string; + /** + * 国旗Emoji + */ + FlagEmoji: string; + /** + * 国旗Unicode + */ + FlagUnicode: string; + }[]; + }[]; + /** + * 回源出口IP地址 + */ + EgressIpList: { /** - * 线路ID + * 线路回源节点EIP */ - LineId?: string; + IP?: string; /** - * 线路起点中文名字,加速区域 + * 线路回源节点机房代号 */ - LineFromName?: string; + Area?: string; + }[]; + /** + * 购买的带宽值 + */ + Bandwidth: number; + /** + * 源站中文名 + */ + OriginArea: string; + /** + * 源站AreaCode + */ + OriginAreaCode: string; + /** + * 资源创建时间 + */ + CreateTime: number; + /** + * 资源过期时间 + */ + ExpireTime: number; + /** + * 计费方式 + */ + ChargeType: string; + /** + * 备注 + */ + Remark?: string; + /** + * 端口列表 + */ + PortSets?: { /** - * 线路对端中文名字,源站区域 + * 转发协议,枚举值["TCP","UDP","HTTPHTTP","HTTPSHTTP","HTTPSHTTPS","WSWS","WSSWS","WSSWSS"]。TCP和UDP代表四层转发,其余为七层转发。 */ - LineToName?: string; + Protocol: string; /** - * 线路起点英文代号,加速区域 + * 源站服务器监听的端口号 */ - LineFrom?: string; + RSPort: number; /** - * 线路对端英文代号,源站区域 + * 加速端口 */ - LineTo?: string; + Port: number; }[]; /** - * 端口配置信息(不再维护,建议使用ForwarderSet) + * 源站IP列表,多个值由半角英文逗号相隔 */ - TaskSet?: { - /** - * 接入端口 - */ + IPList?: string[]; + /** + * 源站域名 + */ + Domain?: string; + }[]; + /** + * 符合条件的总数 + */ + TotalCount?: number; +} +/** + * DescribeUGA3Optimization - 获取全球接入UGA3线路加速化情况 + */ +export interface DescribeUGA3OptimizationRequest { + /** + * 源站AreaCode + */ + AreaCode: string; + /** + * 默认一天 ,枚举类型["Hour","Day","Week"] + */ + TimeRange?: string; + /** + * 加速大区,默认Global,[ "Global":"全球", "AP":"亚太", "EU":"欧洲", "ME":"中东", "OA":"大洋洲", "AF":"非洲", "NA":"北美洲", "SA":"南美洲"] + */ + AccelerationArea?: string; +} +/** + * DescribeUGA3Optimization - 获取全球接入UGA3线路加速化情况 + */ +export interface DescribeUGA3OptimizationResponse { + /** + * 加速详情 + */ + AccelerationInfos?: { + /** + * 加速大区代码 + */ + AccelerationArea: string; + /** + * 加速大区名称 + */ + AccelerationName: string; + /** + * 加速提升情况 + */ + NodeInfo: { + /** + * 加速区域 + */ + Area: string; + /** + * 加速区域Code + */ + AreaCode: string; + /** + * 国家代码 + */ + CountryCode: string; + /** + * 国旗Code + */ + FlagUnicode: string; + /** + * 国旗Emoji + */ + FlagEmoji: string; + /** + * 加速延迟 + */ + Latency: number; + /** + * 公网延迟 + */ + LatencyInternet: number; + /** + * 加速提升比例 + */ + LatencyOptimization: number; + /** + * 加速后丢包率 + */ + Loss: number; + /** + * 原始丢包率 + */ + LossInternet: number; + /** + * 丢包下降比例 + */ + LossOptimization: number; + }[]; + }[]; +} +/** + * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + */ +export interface DescribeUGAInstanceRequest { + /** + * 加速配置实例ID,如果传了实例ID 则返回匹配实例ID的记录;如果没传则返回 ProjectId 下全部实例且符合分页要求 + */ + UGAId?: string; + /** + * 返回的最大条数,默认为100,最大值400 + */ + Limit?: number; + /** + * 偏移量,默认为0 + */ + Offset?: number; +} +/** + * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + */ +export interface DescribeUGAInstanceResponse { + /** + * 全球加速实例信息列表 + */ + UGAList?: { + /** + * 加速配置实例ID + */ + UGAId: string; + /** + * 加速域名,请在加速区域配置您的业务域名的CName记录值为加速域名 + */ + CName: string; + /** + * 加速配置名称 + */ + UGAName: string; + /** + * 源站IP列表,多个值由半角英文逗号相隔 + */ + IPList?: string[]; + /** + * 源站域名 + */ + Domain?: string; + /** + * 源站所在区域,加速实例在绑定线路后会自动设置该值。console页面上通过该值过滤加速实例可以绑定的upath实例。注意:缺少该值会导致在console上无法修改线路 + */ + Location?: string; + /** + * 绑定的加速线路 + */ + UPathSet?: { + /** + * UPath名字 + */ + UPathName?: string; + /** + * UPath 实例ID + */ + UPathId?: string; + /** + * 带宽 Mbps, 1~800Mbps + */ + Bandwidth?: number; + /** + * 线路ID + */ + LineId?: string; + /** + * 线路起点中文名字,加速区域 + */ + LineFromName?: string; + /** + * 线路对端中文名字,源站区域 + */ + LineToName?: string; + /** + * 线路起点英文代号,加速区域 + */ + LineFrom?: string; + /** + * 线路对端英文代号,源站区域 + */ + LineTo?: string; + }[]; + /** + * 端口配置信息(不再维护,建议使用ForwarderSet) + */ + TaskSet?: { + /** + * 接入端口 + */ Port: number; /** * 转发协议,枚举值["TCP","UDP","HTTPHTTP","HTTPSHTTP","HTTPSHTTPS"]。TCP和UDP代表四层转发,其余为七层转发 @@ -883,11 +1409,11 @@ export interface DescribeUGAInstanceResponse { */ OutPublicIpList?: { /** - * 线路出口EIP + * 线路回源节点EIP */ IP?: string; /** - * 线路出口机房代号 + * 线路回源节点机房代号 */ Area?: string; }[]; @@ -976,11 +1502,11 @@ export interface DescribeUPathResponse { */ OutPublicIpList?: { /** - * 线路出口EIP + * 线路回源节点EIP */ IP?: string; /** - * 线路出口机房代号 + * 线路回源节点机房代号 */ Area?: string; }[]; @@ -1188,6 +1714,282 @@ export interface GetPathXMetricResponse { }[]; }; } +/** + * GetUGA3Metric - 获取全地域加速监控信息 + */ +export interface GetUGA3MetricRequest { + /** + * 资源ID + */ + InstanceId: string; + /** + * 查询起始时间,10位长度时间戳 + */ + BeginTime: number; + /** + * 查询结束时间,10位长度时间戳 + */ + EndTime: number; + /** + * 查询监控的指标项。可不传 NetworkOut:出口总带宽 NetworkIn:入口总带宽 NetworkOutUsage:出口带宽使用率 NetworkInUsage:入口总带宽使用率 NetworkOutSubline :子线路出口带宽 NetworkInSubline:子线路入口带宽 Delay:线路平均延迟 DelaySubline:子线路延迟 ConnectCount:当前连接数 ConnectCountSubline:子线路当前连接数 DelayPromote:延迟提升 DelayPromoteSubline:子线路延迟提升 + */ + MetricName?: string[]; + /** + * 是否为子线路。为了简化查询,true 会返回所有子线路监控项可以,false:返回所有汇总的监控数据 + */ + IsSubline?: boolean; + /** + * 子线路AreaCode ,子线路的时候传,不是子线路可以不传 + */ + AreaCode?: string; +} +/** + * GetUGA3Metric - 获取全地域加速监控信息 + */ +export interface GetUGA3MetricResponse { + /** + * 监控数据结果集 + */ + DataSet?: { + /** + * 出向带宽 + */ + NetworkOut?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 入向带宽 + */ + NetworkIn?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 出向带宽使用率 + */ + NetworkOutUsage?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 入向带宽使用率 + */ + NetworkInUsage?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路出口带宽 + */ + NetworkOutSubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路入口带宽 + */ + NetworkInSubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 线路平均延迟 + */ + Delay?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路延迟 + */ + DelaySubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 延迟提升 + */ + DelayPromote?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路延迟提升 + */ + DelayPromoteSubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 当前连接数 + */ + ConnectCount?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路当前连接数 + */ + ConnectCountSubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + }; +} +/** + * GetUGA3Price - 获取全球统一接入转发实例价格 + */ +export interface GetUGA3PriceRequest { + /** + * 共享带宽大小 + */ + Bandwidth: number; + /** + * 源站区域 + */ + AreaCode: string; + /** + * 购买时间数量,当ChargeType为Month时 Quantity默认为0,代表购买至月底。按年按小时必须为大于0 + */ + Quantity?: number; + /** + * 计费方式,默认按月支付。Month: 按月; Year: 按年; Dynamic: 按小时收 + */ + ChargeType?: string; + /** + * 加速大区,默认返回所有加速大区价格 + */ + AccelerationArea?: string; +} +/** + * GetUGA3Price - 获取全球统一接入转发实例价格 + */ +export interface GetUGA3PriceResponse { + /** + * 加速大区对应价格 + */ + UGA3Price: { + /** + * 加速大区代码 + */ + AccelerationArea: string; + /** + * 加速大区名称 + */ + AccelerationAreaName: string; + /** + * 转发配置价格 + */ + AccelerationForwarderPrice: number; + /** + * 加速配置带宽价格 + */ + AccelerationBandwidthPrice: number; + }[]; +} +/** + * GetUGA3UpdatePrice - 全球统一接入获取实例更新价格(增加、删退) + */ +export interface GetUGA3UpdatePriceRequest { + /** + * 资源ID + */ + InstanceId: string; + /** + * 只有升级带宽的时候有价格变化 + */ + Bandwidth?: number; + /** + * 暂未支持,加速大区,在更换加速大区的时候使用 + */ + AccelerationArea?: string; + /** + * 暂未支持,源站区域 + */ + AreaCode?: string; +} +/** + * GetUGA3UpdatePrice - 全球统一接入获取实例更新价格(增加、删退) + */ +export interface GetUGA3UpdatePriceResponse { + /** + * 价格 元。大于0需付费,小于0则退费。 + */ + Price: number; +} /** * ModifyGlobalSSHPort - 修改GlobalSSH端口 */ @@ -1206,6 +2008,24 @@ export interface ModifyGlobalSSHPortRequest { */ export interface ModifyGlobalSSHPortResponse { } +/** + * ModifyGlobalSSHRemark - 修改GlobalSSH备注 + */ +export interface ModifyGlobalSSHRemarkRequest { + /** + * 实例ID,资源唯一标识 + */ + InstanceId: string; + /** + * 备注信息,不填默认为空字符串 + */ + Remark?: string; +} +/** + * ModifyGlobalSSHRemark - 修改GlobalSSH备注 + */ +export interface ModifyGlobalSSHRemarkResponse { +} /** * ModifyGlobalSSHType - 修改GlobalSSH实例类型,仅支持低版本升级到高版本,不支持高版本降级到低版本 */ @@ -1236,6 +2056,94 @@ export interface ModifyGlobalSSHTypeRequest { */ export interface ModifyGlobalSSHTypeResponse { } +/** + * ModifyUGA3Bandwidth - 修改统一接入加速配置带宽 + */ +export interface ModifyUGA3BandwidthRequest { + /** + * 加速配置实例ID,格式uga3-xxxx + */ + InstanceId: string; + /** + * 带宽大小,范围[1,100],不传则不更新 + */ + Bandwidth?: number; + /** + * 需要全地域可用的代金券 + */ + CouponId?: string; +} +/** + * ModifyUGA3Bandwidth - 修改统一接入加速配置带宽 + */ +export interface ModifyUGA3BandwidthResponse { +} +/** + * ModifyUGA3Instance - 修改统一接入加速配置属性,如Name,ReMark + */ +export interface ModifyUGA3InstanceRequest { + /** + * 加速配置实例ID,格式uga-xxxx。不支持GlobalSSH实例。 + */ + InstanceId: string; + /** + * 加速配置实例名称,不填或空字符串则不更新 + */ + Name?: string; + /** + * 备注信息,暂时前端为使用 + */ + Remark?: string; +} +/** + * ModifyUGA3Instance - 修改统一接入加速配置属性,如Name,ReMark + */ +export interface ModifyUGA3InstanceResponse { +} +/** + * ModifyUGA3OriginInfo - Domain, IPList注意:修改Domain或IPList时, 请确保源站服务端口已经开启且外网防火墙允许pathx出口ip访问。 + */ +export interface ModifyUGA3OriginInfoRequest { + /** + * 加速配置实例ID,格式uga3-xxxx。 + */ + InstanceId: string; + /** + * 加速源域名,仅支持1个域名。修改源站时 OriginIPList和OriginDomain至少填一个。OriginIPList和OriginDomain都填时 以Domain为准,如果两个都不填,不修改 + */ + OriginDomain: string; + /** + * ,加速源IP,多个IP用英文半角逗号(,)隔开。修改源站时 ,OriginIPList和OriginDomain至少填一个。OriginIPList和OriginDomain都填时 以OriginDomain为准。如果两个都不填,不修改 + */ + OriginIPList: string; +} +/** + * ModifyUGA3OriginInfo - Domain, IPList注意:修改Domain或IPList时, 请确保源站服务端口已经开启且外网防火墙允许pathx出口ip访问。 + */ +export interface ModifyUGA3OriginInfoResponse { +} +/** + * ModifyUGA3Port - 修改统一接入加速实例端口,目前仅支持四层TCP端口 + */ +export interface ModifyUGA3PortRequest { + /** + * 加速配置实例ID + */ + InstanceId: string; + /** + * TCP接入端口,禁用65123端口 + */ + TCP?: number[]; + /** + * TCP回源端口 + */ + TCPRS?: number[]; +} +/** + * ModifyUGA3Port - 修改统一接入加速实例端口,目前仅支持四层TCP端口 + */ +export interface ModifyUGA3PortResponse { +} /** * ModifyUPathBandwidth - 修改加速线路带宽 */ @@ -1358,3 +2266,21 @@ export interface UnBindPathXSSLRequest { */ export interface UnBindPathXSSLResponse { } +/** + * UpdatePathXWhitelist - 更新入口白名单,仅限GlobalSSH 实例使用。其他uga-实例不生效 + */ +export interface UpdatePathXWhitelistRequest { + /** + * GlobalSSH实例ID,资源唯一标识 + */ + InstanceId: string; + /** + * 白名单规则,例如 "Whitelist.0": "192.168.1.1/24|tcp|22","Whitelist.1": "192.168.1.2|tcp|8080:8090",第一个参数为ip或ip段,第二个参数代表协议(tcp/udp),第三个参数代表端口号或端口范围(使用 ':' 隔开);可以添加多条规则(递增Whitelist.n字段内的n值);此接口需要列出全部规则,例如不填则为清空白名单规则,如若需要增量添加,使用InsertPathXWhitelist接口,globalssh 没有端口范围:端口设置成加速端口,协议设置成tcp:ip|tcp|加速端口 + */ + Whitelist?: string[]; +} +/** + * UpdatePathXWhitelist - 更新入口白名单,仅限GlobalSSH 实例使用。其他uga-实例不生效 + */ +export interface UpdatePathXWhitelistResponse { +} diff --git a/lib/services/pathx/index.js b/lib/services/pathx/index.js index 17a01f4..cf52f45 100644 --- a/lib/services/pathx/index.js +++ b/lib/services/pathx/index.js @@ -39,6 +39,24 @@ class PathXClient extends client_1.default { const args = Object.assign({ Action: 'CreatePathXSSL' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * CreateUGA3Instance - 创建全球统一接入加速配置项 + * + * See also: https://docs.ucloud.cn/api/pathx-api/create_uga3_instance + */ + createUGA3Instance(request) { + const args = Object.assign({ Action: 'CreateUGA3Instance' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * CreateUGA3Port - 创建统一接入加速实例端口,目前仅支持四层TCP端口 + * + * See also: https://docs.ucloud.cn/api/pathx-api/create_uga3_port + */ + createUGA3Port(request) { + const args = Object.assign({ Action: 'CreateUGA3Port' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * CreateUGAForwarder - 创建加速实例转发器,支持HTTPS接入HTTPS回源、HTTPS接入HTTP回源、HTTP接入HTTP回源、TCP接入TCP回源、UDP接入UDP回源、 支持WSS接入WSS回源、WSS接入WS回源、WS接入WS回源 * @@ -84,6 +102,24 @@ class PathXClient extends client_1.default { const args = Object.assign({ Action: 'DeletePathXSSL' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DeleteUGA3Instance - 删除全球统一接入转发实例 + * + * See also: https://docs.ucloud.cn/api/pathx-api/delete_uga3_instance + */ + deleteUGA3Instance(request) { + const args = Object.assign({ Action: 'DeleteUGA3Instance' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * DeleteUGA3Port - 删除统一接入加速实例转发器 按接入端口删除 + * + * See also: https://docs.ucloud.cn/api/pathx-api/delete_uga3_port + */ + deleteUGA3Port(request) { + const args = Object.assign({ Action: 'DeleteUGA3Port' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DeleteUGAForwarder - 删除加速实例转发器 按接入端口删除 * @@ -138,6 +174,33 @@ class PathXClient extends client_1.default { const args = Object.assign({ Action: 'DescribePathXSSL' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeUGA3Area - 获取全球接入源站可选列表 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_area + */ + describeUGA3Area(request) { + const args = Object.assign({ Action: 'DescribeUGA3Area' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * DescribeUGA3Instance - 获取全球统一接入加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_instance + */ + describeUGA3Instance(request) { + const args = Object.assign({ Action: 'DescribeUGA3Instance' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * DescribeUGA3Optimization - 获取全球接入UGA3线路加速化情况 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_optimization + */ + describeUGA3Optimization(request) { + const args = Object.assign({ Action: 'DescribeUGA3Optimization' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 * @@ -192,6 +255,33 @@ class PathXClient extends client_1.default { const args = Object.assign({ Action: 'GetPathXMetric' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * GetUGA3Metric - 获取全地域加速监控信息 + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_metric + */ + getUGA3Metric(request) { + const args = Object.assign({ Action: 'GetUGA3Metric' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * GetUGA3Price - 获取全球统一接入转发实例价格 + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_price + */ + getUGA3Price(request) { + const args = Object.assign({ Action: 'GetUGA3Price' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * GetUGA3UpdatePrice - 全球统一接入获取实例更新价格(增加、删退) + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_update_price + */ + getUGA3UpdatePrice(request) { + const args = Object.assign({ Action: 'GetUGA3UpdatePrice' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ModifyGlobalSSHPort - 修改GlobalSSH端口 * @@ -201,6 +291,15 @@ class PathXClient extends client_1.default { const args = Object.assign({ Action: 'ModifyGlobalSSHPort' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * ModifyGlobalSSHRemark - 修改GlobalSSH备注 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_global_ssh_remark + */ + modifyGlobalSSHRemark(request) { + const args = Object.assign({ Action: 'ModifyGlobalSSHRemark' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ModifyGlobalSSHType - 修改GlobalSSH实例类型,仅支持低版本升级到高版本,不支持高版本降级到低版本 * @@ -210,6 +309,42 @@ class PathXClient extends client_1.default { const args = Object.assign({ Action: 'ModifyGlobalSSHType' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * ModifyUGA3Bandwidth - 修改统一接入加速配置带宽 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_bandwidth + */ + modifyUGA3Bandwidth(request) { + const args = Object.assign({ Action: 'ModifyUGA3Bandwidth' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * ModifyUGA3Instance - 修改统一接入加速配置属性,如Name,ReMark + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_instance + */ + modifyUGA3Instance(request) { + const args = Object.assign({ Action: 'ModifyUGA3Instance' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * ModifyUGA3OriginInfo - Domain, IPList注意:修改Domain或IPList时, 请确保源站服务端口已经开启且外网防火墙允许pathx出口ip访问。 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_origin_info + */ + modifyUGA3OriginInfo(request) { + const args = Object.assign({ Action: 'ModifyUGA3OriginInfo' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * ModifyUGA3Port - 修改统一接入加速实例端口,目前仅支持四层TCP端口 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_port + */ + modifyUGA3Port(request) { + const args = Object.assign({ Action: 'ModifyUGA3Port' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ModifyUPathBandwidth - 修改加速线路带宽 * @@ -255,5 +390,14 @@ class PathXClient extends client_1.default { const args = Object.assign({ Action: 'UnBindPathXSSL' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * UpdatePathXWhitelist - 更新入口白名单,仅限GlobalSSH 实例使用。其他uga-实例不生效 + * + * See also: https://docs.ucloud.cn/api/pathx-api/update_path_x_whitelist + */ + updatePathXWhitelist(request) { + const args = Object.assign({ Action: 'UpdatePathXWhitelist' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } } exports.default = PathXClient; diff --git a/lib/services/uaccount/index.d.ts b/lib/services/uaccount/index.d.ts index 1d3fbde..4ea785a 100644 --- a/lib/services/uaccount/index.d.ts +++ b/lib/services/uaccount/index.d.ts @@ -15,12 +15,6 @@ export default class UAccountClient extends Client { * See also: https://docs.ucloud.cn/api/uaccount-api/add_member_to_project */ addMemberToProject(request?: AddMemberToProjectRequest): Promise; - /** - * CreateProject - 创建项目 - * - * See also: https://docs.ucloud.cn/api/uaccount-api/create_project - */ - createProject(request?: CreateProjectRequest): Promise; /** * FreezeMember - 冻结成员 * @@ -82,24 +76,6 @@ export interface AddMemberToProjectRequest { */ export interface AddMemberToProjectResponse { } -/** - * CreateProject - 创建项目 - */ -export interface CreateProjectRequest { - /** - * 项目名称,不得与现有项目重名 - */ - ProjectName: string; -} -/** - * CreateProject - 创建项目 - */ -export interface CreateProjectResponse { - /** - * 所创建项目的Id - */ - ProjectId: string; -} /** * FreezeMember - 冻结成员 */ diff --git a/lib/services/uaccount/index.js b/lib/services/uaccount/index.js index 9039c8d..f76369d 100644 --- a/lib/services/uaccount/index.js +++ b/lib/services/uaccount/index.js @@ -21,15 +21,6 @@ class UAccountClient extends client_1.default { const args = Object.assign({ Action: 'AddMemberToProject' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } - /** - * CreateProject - 创建项目 - * - * See also: https://docs.ucloud.cn/api/uaccount-api/create_project - */ - createProject(request) { - const args = Object.assign({ Action: 'CreateProject' }, (request || {})); - return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); - } /** * FreezeMember - 冻结成员 * diff --git a/lib/services/ubill/index.d.ts b/lib/services/ubill/index.d.ts index 611fbcb..165b93e 100644 --- a/lib/services/ubill/index.d.ts +++ b/lib/services/ubill/index.d.ts @@ -21,6 +21,18 @@ export default class UBillClient extends Client { * See also: https://docs.ucloud.cn/api/ubill-api/get_bill_data_file_url */ getBillDataFileUrl(request?: GetBillDataFileUrlRequest): Promise; + /** + * ListUBillDetail - 获取某个账期内的所有消费。 + * + * See also: https://docs.ucloud.cn/api/ubill-api/list_u_bill_detail + */ + listUBillDetail(request?: ListUBillDetailRequest): Promise; + /** + * ListUBillOverview - 账单总览。可按产品/项目/用户纬度获取某个账期内账单总览信息。 + * + * See also: https://docs.ucloud.cn/api/ubill-api/list_u_bill_overview + */ + listUBillOverview(request?: ListUBillOverviewRequest): Promise; } /** * GetBalance - 获取账户余额 @@ -61,14 +73,18 @@ export interface GetBalanceResponse { * GetBillDataFileUrl - 生成账单数据文件下载的 url */ export interface GetBillDataFileUrlRequest { - /** - * 账期(时间戳格式) - */ - BillPeriod: number; /** * 账单类型,传 0 时获取账单总览报表,传 1 获取账单明细报表 */ BillType: number; + /** + * 账期(字符串格式,YYYY-MM,例如2021-08). 若BillingCycle 和 BillPeriod同时存在,BillingCycle 优先 + */ + BillingCycle: string; + /** + * 此字段不推荐使用,建议使用BillingCycle. 若BillingCycle 和 BillPeriod同时存在,BillingCycle 优先 + */ + BillPeriod?: number; /** * 获取账单总览报表时,账单的支付状态,传 0 时获取待支付账单,传 1 时获取已支付账单。获取账单明细报表时该参数无效 */ @@ -77,6 +93,10 @@ export interface GetBillDataFileUrlRequest { * 如需求其他语言版本的账单则使用此参数。默认中文。如 RequireVersion = "EN",则提供英文版本账单。 */ RequireVersion?: string; + /** + * 文件版本,若为"v1"表示获取带有子用户信息的账单,可以为空 + */ + Version?: string; } /** * GetBillDataFileUrl - 生成账单数据文件下载的 url @@ -91,3 +111,263 @@ export interface GetBillDataFileUrlResponse { */ IsValid?: string; } +/** + * ListUBillDetail - 获取某个账期内的所有消费。 + */ +export interface ListUBillDetailRequest { + /** + * 账期,YYYY-MM,比如2021-08,只支持2018-05之后的查询 + */ + BillingCycle: string; + /** + * 项目名称 (筛选项, 默认全部) + */ + ProjectName?: string; + /** + * 资源ID(筛选项, 默认全部) 支持多筛选,多筛选请在请求参数中添加多个字段例ResourceIds.0: uhost-bzgf1gh5,ResourceIds.1: uhost-gu1xpspa, + */ + ResourceIds?: string[]; + /** + * 订单类型 (筛选项, 默认全部) 。枚举值:\\ > OT_BUY:新购 \\ > OT_RENEW:续费 \\ > OT_UPGRADE:升级 \\ > OT_REFUND:退费 \\ > OT_DOWNGRADE:降级 \\ > OT_SUSPEND:结算 \\ > OT_PAYMENT:删除资源回款 \\ > OT_POSTPAID_PAYMENT:后付费回款 \\ > OT_RECOVER:删除恢复 \\ > OT_POSTPAID_RENEW:过期续费回款 + */ + OrderType?: string; + /** + * 计费方式 (筛选项, 默认全部)。枚举值:\\ > Dynamic:按时 \\ > Month:按月 \\ > Year:按年 \\ > Once:一次性按量 \\ > Used:按量 \\ > Post:后付费 + */ + ChargeType?: string; + /** + * 是否显示0元订单 (0 不显示, 1 显示, 默认0) + */ + ShowZero?: number; + /** + * 支付状态 (筛选项, 1:仅显示未支付订单; 2:仅显示已支付订单; 0:两者都显示) + */ + PaidState?: number; + /** + * 用户邮箱,可以根据用户邮箱来进行筛选 + */ + UserEmail?: string; + /** + * 每页数量,默认值25,最大值:100。 + */ + Limit?: number; + /** + * 数据偏移量 (默认0) + */ + Offset?: number; + /** + * 产品类型 (筛选项, 默认全部),支持多筛选,多筛选请在请求参数中添加多个字段。枚举值:\\ > uhost:云主机 \\ > udisk:普通云硬盘 \\ > udb:云数据库 \\ > eip:弹性IP \\ > ufile:对象存储 \\ > fortress_host:堡垒机 \\ > ufs:文件存储 \\ > waf:WEB应用防火墙 \\ > ues:弹性搜索 \\ > udisk_ssd:SSD云硬盘 \\ > rssd:RSSD云硬盘 + */ + ResourceTypes?: string[]; +} +/** + * ListUBillDetail - 获取某个账期内的所有消费。 + */ +export interface ListUBillDetailResponse { + /** + * 账单明细数组 + */ + Items: { + /** + * 订单总金额 + */ + Amount: string; + /** + * 现金账户支付 + */ + AmountReal: string; + /** + * 赠送金额抵扣 + */ + AmountFree: string; + /** + * 代金券抵扣 + */ + AmountCoupon: string; + /** + * 可用区 + */ + AzGroupCName: string; + /** + * 计费方式 (筛选项, 默认全部)。枚举值:\\ > Dynamic:按时 \\ > Month:按月 \\ > Year:按年 \\ > Once:一次性按量 \\ > Used:按量 \\ > Post:后付费 + */ + ChargeType: string; + /** + * 创建时间(时间戳) + */ + CreateTime: number; + /** + * 开始时间(时间戳) + */ + StartTime: number; + /** + * 订单号 + */ + OrderNo: string; + /** + * 订单类型 (筛选项, 默认全部) 。枚举值:\\ > OT_BUY:新购 \\ > OT_RENEW:续费 \\ > OT_UPGRADE:升级 \\ > OT_REFUND:退费 \\ > OT_DOWNGRADE:降级 \\ > OT_SUSPEND:结算 \\ > OT_PAYMENT:删除资源回款 \\ > OT_POSTPAID_PAYMENT:后付费回款 \\ > OT_RECOVER:删除恢复 \\ > OT_POSTPAID_RENEW:过期续费回款 + */ + OrderType: string; + /** + * 项目名称 + */ + ProjectName: string; + /** + * 资源ID + */ + ResourceId: string; + /** + * 产品类型。枚举值:\\ > uhost:云主机 \\ > udisk:普通云硬盘 \\ > udb:云数据库 \\ > eip:弹性IP \\ > ufile:对象存储 \\ > fortress_host:堡垒机 \\ > ufs:文件存储 \\ > waf:WEB应用防火墙 \\ > ues:弹性搜索 \\ > udisk_ssd:SSD云硬盘 \\ > rssd:RSSD云硬盘 + */ + ResourceType: string; + /** + * 产品类型代码 + */ + ResourceTypeCode: number; + /** + * 产品配置 + */ + ItemDetails: { + /** + * 产品小类名称 + */ + ProductName: string; + /** + * 产品小类规格 + */ + Value: string; + }[]; + /** + * 资源标识 + */ + ResourceExtendInfo: { + /** + * 资源标识健 + */ + KeyId: string; + /** + * 资源标识值 + */ + Value: string; + }[]; + /** + * 订单支付状态。枚举值:\\> 0:未支付 \\ > 1:已支付 + */ + ShowHover: number; + /** + * 账户邮箱 + */ + UserEmail: string; + /** + * 账户名 + */ + UserName: string; + /** + * 账户昵称 + */ + UserDisplayName: string; + /** + * 是否为主账号。枚举值:\\ > 0:子账号 \\ > 1:主账号 + */ + Admin: number; + }[]; + /** + * 账单明细总长度 + */ + TotalCount: number; +} +/** + * ListUBillOverview - 账单总览。可按产品/项目/用户纬度获取某个账期内账单总览信息。 + */ +export interface ListUBillOverviewRequest { + /** + * 账期,YYYY-MM格式,例如2022-02,只支持2018-05之后的查询 + */ + BillingCycle: string; + /** + * 账单维度, product 按产品聚合,project 按项目聚合,user 按子账号聚合 + */ + Dimension: string; + /** + * 是否显示已入账账单, 1 已入账, 0 待入账 (默认0 ) + */ + HideUnpaid?: number; +} +/** + * ListUBillOverview - 账单总览。可按产品/项目/用户纬度获取某个账期内账单总览信息。 + */ +export interface ListUBillOverviewResponse { + /** + * 账单总览数据总数 + */ + TotalCount: number; + /** + * 已入账订单总额(已入账时显示) + */ + TotalPaidAmount?: string; + /** + * 现金账户扣款总额 (已入账时显示) + */ + TotalPaidAmountReal?: string; + /** + * 待入账订单总额(待入账时显示) + */ + TotalUnpaidAmount?: string; + /** + * 账单聚合数据 + */ + Items: { + /** + * 账单维度, product 按产品维度聚合,project 按项目维度聚合,user 按子账号维度聚合 + */ + Dimension: string; + /** + * 订单总金额 + */ + Amount: string; + /** + * 代金券抵扣(已入账时显示) + */ + AmountCoupon?: string; + /** + * 赠送金额抵扣(已入账时显示) + */ + AmountFree?: string; + /** + * 现金账户支付(已入账时显示) + */ + AmountReal?: string; + /** + * 产品分类 (账单维度按产品筛选时显示) + */ + ProductCategory?: string; + /** + * 产品类型 (账单维度按产品筛选时显示) + */ + ResourceType?: string; + /** + * 产品类型代码(账单维度按产品筛选时显示) + */ + ResourceTypeCode?: number; + /** + * 项目名称(账单维度按项目筛选时显示) + */ + ProjectName?: string; + /** + * 账户邮箱(账单维度按子账号筛选时显示) + */ + UserEmail?: string; + /** + * 账户名 (账单维度按子账号筛选时显示) + */ + UserName?: string; + /** + * 账户昵称(账单维度按子账号筛选时显示) + */ + UserDisplayName?: string; + /** + * 该账户是否为主账号,1 主账号,0 子账号(账单维度按子账号筛选时显示) + */ + Admin?: number; + }[]; +} diff --git a/lib/services/ubill/index.js b/lib/services/ubill/index.js index ae9f7c8..81c475d 100644 --- a/lib/services/ubill/index.js +++ b/lib/services/ubill/index.js @@ -30,5 +30,23 @@ class UBillClient extends client_1.default { const args = Object.assign({ Action: 'GetBillDataFileUrl' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * ListUBillDetail - 获取某个账期内的所有消费。 + * + * See also: https://docs.ucloud.cn/api/ubill-api/list_u_bill_detail + */ + listUBillDetail(request) { + const args = Object.assign({ Action: 'ListUBillDetail' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * ListUBillOverview - 账单总览。可按产品/项目/用户纬度获取某个账期内账单总览信息。 + * + * See also: https://docs.ucloud.cn/api/ubill-api/list_u_bill_overview + */ + listUBillOverview(request) { + const args = Object.assign({ Action: 'ListUBillOverview' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } } exports.default = UBillClient; diff --git a/lib/services/ucdn/index.d.ts b/lib/services/ucdn/index.d.ts index 30bf268..04fedba 100644 --- a/lib/services/ucdn/index.d.ts +++ b/lib/services/ucdn/index.d.ts @@ -9,6 +9,24 @@ export default class UCDNClient extends Client { config: ConfigOptions; credential: CredentialOptions; }); + /** + * AddCertificate - 添加证书 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/add_certificate + */ + addCertificate(request?: AddCertificateRequest): Promise; + /** + * ControlUcdnDomainCacheAccess - 封禁解封缓存访问 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/control_ucdn_domain_cache_access + */ + controlUcdnDomainCacheAccess(request?: ControlUcdnDomainCacheAccessRequest): Promise; + /** + * DeleteCertificate - 删除证书 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/delete_certificate + */ + deleteCertificate(request?: DeleteCertificateRequest): Promise; /** * DescribeNewUcdnPrefetchCacheTask - 获取预取任务状态 * @@ -22,11 +40,11 @@ export default class UCDNClient extends Client { */ describeNewUcdnRefreshCacheTask(request?: DescribeNewUcdnRefreshCacheTaskRequest): Promise; /** - * GetNewUcdnDomainBandwidth - 获取域名带宽数据 + * GetCertificateV2 - 获取证书列表(新) * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_bandwidth + * See also: https://docs.ucloud.cn/api/ucdn-api/get_certificate_v2 */ - getNewUcdnDomainBandwidth(request?: GetNewUcdnDomainBandwidthRequest): Promise; + getCertificateV2(request?: GetCertificateV2Request): Promise; /** * GetNewUcdnDomainHitRate - 获取域名命中率 * @@ -34,17 +52,17 @@ export default class UCDNClient extends Client { */ getNewUcdnDomainHitRate(request?: GetNewUcdnDomainHitRateRequest): Promise; /** - * GetNewUcdnDomainHttpCode - 获取域名状态码监控 + * GetNewUcdnLogRefererStatistics - 获取热点referer统计 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_http_code + * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_log_referer_statistics */ - getNewUcdnDomainHttpCode(request?: GetNewUcdnDomainHttpCodeRequest): Promise; + getNewUcdnLogRefererStatistics(request?: GetNewUcdnLogRefererStatisticsRequest): Promise; /** - * GetNewUcdnDomainHttpCodeV2 - 获取域名详细状态码监控 + * GetNewUcdnLogUrlStatistics - 获取日志url统计 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_http_code_v2 + * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_log_url_statistics */ - getNewUcdnDomainHttpCodeV2(request?: GetNewUcdnDomainHttpCodeV2Request): Promise; + getNewUcdnLogUrlStatistics(request?: GetNewUcdnLogUrlStatisticsRequest): Promise; /** * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 * @@ -88,41 +106,41 @@ export default class UCDNClient extends Client { */ getUcdnDomainLog(request?: GetUcdnDomainLogRequest): Promise; /** - * GetUcdnDomainOriginRequestNum - 获取域名回源请求数 + * GetUcdnDomainLogV2 - 获取域名5分钟日志 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_request_num + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_log_v2 */ - getUcdnDomainOriginRequestNum(request?: GetUcdnDomainOriginRequestNumRequest): Promise; + getUcdnDomainLogV2(request?: GetUcdnDomainLogV2Request): Promise; /** - * GetUcdnDomainPrefetchEnable - 获取域名预取开启状态 + * GetUcdnDomainOriginHttpCode - 获取域名源站状态码监控 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_prefetch_enable + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_http_code */ - getUcdnDomainPrefetchEnable(request?: GetUcdnDomainPrefetchEnableRequest): Promise; + getUcdnDomainOriginHttpCode(request?: GetUcdnDomainOriginHttpCodeRequest): Promise; /** - * GetUcdnDomainRequestNumV2 - 获取域名请求数 + * GetUcdnDomainOriginHttpCodeDetail - 获取域名源站详细状态码监控 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_request_num_v2 + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_http_code_detail */ - getUcdnDomainRequestNumV2(request?: GetUcdnDomainRequestNumV2Request): Promise; + getUcdnDomainOriginHttpCodeDetail(request?: GetUcdnDomainOriginHttpCodeDetailRequest): Promise; /** - * GetUcdnDomainRequestNumV3 - 获取域名请求数 + * GetUcdnDomainOriginRequestNum - 获取域名回源请求数 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_request_num_v3 + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_request_num */ - getUcdnDomainRequestNumV3(request?: GetUcdnDomainRequestNumV3Request): Promise; + getUcdnDomainOriginRequestNum(request?: GetUcdnDomainOriginRequestNumRequest): Promise; /** - * GetUcdnDomainTraffic - 获取加速域名流量使用信息 + * GetUcdnDomainPrefetchEnable - 获取域名预取开启状态 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_traffic + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_prefetch_enable */ - getUcdnDomainTraffic(request?: GetUcdnDomainTrafficRequest): Promise; + getUcdnDomainPrefetchEnable(request?: GetUcdnDomainPrefetchEnableRequest): Promise; /** - * GetUcdnPassBandwidth - 获取回源带宽数据(cdn回客户源站部分) + * GetUcdnDomainRequestNumV3 - 获取域名请求数 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_pass_bandwidth + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_request_num_v3 */ - getUcdnPassBandwidth(request?: GetUcdnPassBandwidthRequest): Promise; + getUcdnDomainRequestNumV3(request?: GetUcdnDomainRequestNumV3Request): Promise; /** * GetUcdnPassBandwidthV2 - 获取回源带宽数据(cdn回客户源站部分) * @@ -141,12 +159,6 @@ export default class UCDNClient extends Client { * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_pro_isp_request_num_v2 */ getUcdnProIspRequestNumV2(request?: GetUcdnProIspRequestNumV2Request): Promise; - /** - * GetUcdnTraffic - 获取流量信息 - * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_traffic - */ - getUcdnTraffic(request?: GetUcdnTrafficRequest): Promise; /** * GetUcdnTrafficV2 - 获取流量信息 * @@ -159,6 +171,12 @@ export default class UCDNClient extends Client { * See also: https://docs.ucloud.cn/api/ucdn-api/prefetch_new_ucdn_domain_cache */ prefetchNewUcdnDomainCache(request?: PrefetchNewUcdnDomainCacheRequest): Promise; + /** + * QueryIpLocation - 查询IP信息 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/query_ip_location + */ + queryIpLocation(request?: QueryIpLocationRequest): Promise; /** * RefreshNewUcdnDomainCache - 刷新缓存 * @@ -172,6 +190,64 @@ export default class UCDNClient extends Client { */ switchUcdnChargeType(request?: SwitchUcdnChargeTypeRequest): Promise; } +/** + * AddCertificate - 添加证书 + */ +export interface AddCertificateRequest { + /** + * 证书名称 + */ + CertName: string; + /** + * 用户证书 + */ + UserCert: string; + /** + * 用户私钥 + */ + PrivateKey: string; + /** + * Ca证书,默认为空 + */ + CaCert?: string; +} +/** + * AddCertificate - 添加证书 + */ +export interface AddCertificateResponse { +} +/** + * ControlUcdnDomainCacheAccess - 封禁解封缓存访问 + */ +export interface ControlUcdnDomainCacheAccessRequest { + /** + * 待封禁的Url,一次封禁多个Url时最多一次30条,只能对表示文件的Url进行操作 + */ + UrlList: string[]; + /** + * forbid=封禁 unforbid=解封 其他值非法 + */ + Type: string; +} +/** + * ControlUcdnDomainCacheAccess - 封禁解封缓存访问 + */ +export interface ControlUcdnDomainCacheAccessResponse { +} +/** + * DeleteCertificate - 删除证书 + */ +export interface DeleteCertificateRequest { + /** + * 证书名称 + */ + CertName: string; +} +/** + * DeleteCertificate - 删除证书 + */ +export interface DeleteCertificateResponse { +} /** * DescribeNewUcdnPrefetchCacheTask - 获取预取任务状态 */ @@ -333,51 +409,67 @@ export interface DescribeNewUcdnRefreshCacheTaskResponse { }[]; } /** - * GetNewUcdnDomainBandwidth - 获取域名带宽数据 + * GetCertificateV2 - 获取证书列表(新) */ -export interface GetNewUcdnDomainBandwidthRequest { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度) - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 - */ - Areacode?: string; +export interface GetCertificateV2Request { /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 + * 偏移,默认为0,非负整数 */ - BeginTime?: number; + Offset?: number; /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + * 长度,默认为全部,非负整数 */ - EndTime?: number; + Limit?: number; } /** - * GetNewUcdnDomainBandwidth - 获取域名带宽数据 + * GetCertificateV2 - 获取证书列表(新) */ -export interface GetNewUcdnDomainBandwidthResponse { +export interface GetCertificateV2Response { /** - * 带宽信息列表,参见BandwidthInfo + * 证书数量 */ - BandwidthList?: { + TotalCount: number; + /** + * 证书信息列表 + */ + CertList: { /** - * 带宽获取的时间点。格式:时间戳 + * 证书名 */ - Time?: number; + CertName: string; /** - * 返回值返回指定时间区间内CDN的带宽峰值,单位Mbps(如果请求参数Type为0,则Value是五分钟粒度的带宽值,如果Type为1,则Value是1小时的带宽峰值,如果Type为2,则Value是一天内的带宽峰值) + * 通用名 + */ + CommonName: string; + /** + * dns名称 + */ + DnsName: string; + /** + * 证书开始时间 + */ + BeginTime: number; + /** + * 证书获取时间 + */ + EndTime: number; + /** + * 已配置域名个数 + */ + DomainCount: number; + /** + * 证书内容 + */ + UserCert: string; + /** + * ca证内容 + */ + CaCert: string; + /** + * 已配置的域名列表 */ - CdnBandwidth?: number; + Domains?: string[]; }[]; - /** - * 从起始时间到结束时间内的所使用的CDN总流量,单位GB - */ - Traffic?: number; } /** * GetNewUcdnDomainHitRate - 获取域名命中率 @@ -417,7 +509,7 @@ export interface GetNewUcdnDomainHitRateResponse { */ Time?: number; /** - * 流量命中率,单位% + * 总流量命中率,单位% */ FlowHitRate?: number; /** @@ -427,78 +519,139 @@ export interface GetNewUcdnDomainHitRateResponse { }[]; } /** - * GetNewUcdnDomainHttpCode - 获取域名状态码监控 + * GetNewUcdnLogRefererStatistics - 获取热点referer统计 */ -export interface GetNewUcdnDomainHttpCodeRequest { +export interface GetNewUcdnLogRefererStatisticsRequest { /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度) - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 + * 域名id,创建域名时生成的id */ - DomainId?: string[]; + DomainId?: string; /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 + * 查询带宽区域 cn代表国内 abroad代表海外 ;目前只支持国内 */ Areacode?: string; /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 + * 查询带宽的起始时间,格式:时间戳 */ BeginTime?: number; /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + * 查询统计日志的结束时间,格式:时间戳。最大时间间隔30天 */ EndTime?: number; + /** + * 0表示按流量降序排列,1表示按照下载次数降序排列,默认为0 + */ + OrderBy?: number; + /** + * 返回的结果数量限制,默认1000 + */ + Limit?: number; } /** - * GetNewUcdnDomainHttpCode - 获取域名状态码监控 + * GetNewUcdnLogRefererStatistics - 获取热点referer统计 */ -export interface GetNewUcdnDomainHttpCodeResponse { +export interface GetNewUcdnLogRefererStatisticsResponse { /** - * 状态码实例表。详细见HttpCodeInfo + * 按天统计实例 */ - HttpCodeDetail?: { - /** - * 带宽获取的时间点。格式:时间戳 - */ - Time?: number; - /** - * 1xx数量 - */ - HttpOneXX?: number; + RefererStatistics?: { /** - * 2xx数量 + * 日期 */ - HttpTwoXX?: number; + Date?: string; /** - * 3xx数量 + * Referer实例表 */ - HttpThreeXX?: number; + RefererList?: { + /** + * 客户端请求的referer + */ + Referer?: string; + /** + * 次数 + */ + RequestTimes?: number; + /** + * 次数占比,单位% + */ + Percent?: number; + }[]; + }[]; +} +/** + * GetNewUcdnLogUrlStatistics - 获取日志url统计 + */ +export interface GetNewUcdnLogUrlStatisticsRequest { + /** + * 域名Id + */ + DomainId: string; + /** + * 查询带宽区域 cn代表国内 abroad代表海外 只支持国内 + */ + Areacode?: string; + /** + * 查询带宽的起始时间,格式:时间戳。BeginTime和EndTime必须同时赋值 + */ + BeginTime?: number; + /** + * 查询统计日志的结束时间,格式:时间戳,最多可拉取30天 + */ + EndTime?: number; + /** + * 0表示按流量降序排列,1表示按照下载次数降序排列,默认为0 + */ + OrderBy?: number; + /** + * 返回的结果数量限制,默认1000 + */ + Limit?: number; +} +/** + * GetNewUcdnLogUrlStatistics - 获取日志url统计 + */ +export interface GetNewUcdnLogUrlStatisticsResponse { + /** + * 按天统计实例。 + */ + UrlStatisticsList?: { /** - * 4xx数量 + * */ - HttpFourXX?: number; + UrlList?: { + /** + * 下载链接的url + */ + Url?: string; + /** + * 流量(单位为G) + */ + Traffic?: number; + /** + * 下载次数 + */ + DownloadTimes?: number; + /** + * 流量占比,单位% + */ + Percent?: number; + }[]; /** - * 5xx数量 + * 日期 */ - HttpFiveXX?: number; + Date?: string; }[]; } /** - * GetNewUcdnDomainHttpCodeV2 - 获取域名详细状态码监控 + * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 */ -export interface GetNewUcdnDomainHttpCodeV2Request { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天粒度,3表示按照一分钟粒度) - */ - Type: number; +export interface GetUcdnDomain95BandwidthV2Request { /** - * 查询的起始时间,格式为Unix Timestamp。 + * 查询的起始日期,格式为Unix Timestamp */ BeginTime: number; /** - * 查询的结束时间,格式为Unix Timestamp。 + * 查询的结束日期,格式为Unix Timestamp */ EndTime: number; /** @@ -506,292 +659,347 @@ export interface GetNewUcdnDomainHttpCodeV2Request { */ DomainId?: string[]; /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 + * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 */ Areacode?: string; } /** - * GetNewUcdnDomainHttpCodeV2 - 获取域名详细状态码监控 + * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 */ -export interface GetNewUcdnDomainHttpCodeV2Response { +export interface GetUcdnDomain95BandwidthV2Response { /** - * 状态码详情 + * 查询时间期间的95带宽时间点 Unix时间戳 */ - HttpCodeV2Detail?: { + Time: number; + /** + * 查询期间的CDN的95带宽值,单位Mbps + */ + CdnBandwidth?: number; +} +/** + * GetUcdnDomainBandwidthV2 - 获取域名带宽数据(新) + */ +export interface GetUcdnDomainBandwidthV2Request { + /** + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照1分钟粒度) + */ + Type?: number; + /** + * 域名id,创建域名时生成的id。默认全部域名 + */ + DomainId?: string[]; + /** + * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 + */ + Areacode?: string; + /** + * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 + */ + BeginTime?: number; + /** + * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + */ + EndTime?: number; + /** + * 协议,http、https 不传则查所有协议的带宽 + */ + Protocol?: string; + /** + * 原始带宽,不为0则获取原始带宽,默认为0 + */ + Primeval?: number; +} +/** + * GetUcdnDomainBandwidthV2 - 获取域名带宽数据(新) + */ +export interface GetUcdnDomainBandwidthV2Response { + /** + * 带宽信息列表,参见BandwidthTrafficInfo + */ + BandwidthTrafficList?: { /** - * 时间 + * 带宽获取的时间点。格式:时间戳 */ - Time?: number; + Time: number; /** - * 当前分组的总状态码数 + * 返回值返回指定时间区间内CDN的带宽峰值,单位Mbps(如果请求参数Type为0,则Value是五分钟粒度的带宽值,如果Type为1,则Value是1小时的带宽峰值,如果Type为2,则Value是一天内的带宽峰值) */ - Total?: number; + CdnBandwidth: number; /** - * http100数量 + * 对应时间粒度的流量,单位字节 */ - Http100?: number; - /** - * http101数量 - */ - Http101?: number; - /** - * http102数量 - */ - Http102?: number; - /** - * http200数量 - */ - Http200?: number; + Traffic: number; + }[]; +} +/** + * GetUcdnDomainConfig - 批量获取加速域名配置 + */ +export interface GetUcdnDomainConfigRequest { + /** + * 数据偏移量,默认0,非负整数 + */ + Offset?: number; + /** + * 返回数据长度, 默认全部,非负整数 + */ + Limit?: number; + /** + * 域名id,创建域名时生成的id。默认获取账号下的所有域名信息,n为自然数,从DomainId.0开始。 + */ + DomainId?: string[]; + /** + * 产品类型ucdn,可不填,默认为ucdn + */ + ChannelType?: string; +} +/** + * GetUcdnDomainConfig - 批量获取加速域名配置 + */ +export interface GetUcdnDomainConfigResponse { + /** + * 获取的域名信息,具体参考下面DomainConfig + */ + DomainList: { /** - * http201数量 + * 查询带宽区域 cn代表国内 abroad代表海外 all表示全部区域 */ - Http201?: number; + AreaCode: string; /** - * http202数量 + * 加速域名的业务类型,web代表网站,stream代表视频 ,download 代表下载 */ - Http202?: number; + CdnType: string; /** - * http203数量 + * 创建的加速域名的当前的状态。check代表审核中,checkSuccess代表审核通过,checkFail代表审核失败,enable代表加速中,disable代表停止加速,delete代表删除加速enableing代表正在开启加速,disableing代表正在停止加速中,deleteing代表删除中 */ - Http203?: number; + Status: string; /** - * http204数量 + * cdn域名。创建加速域名生成的cdn域名,用于设置CNAME记录 */ - Http204?: number; + Cname: string; /** - * http205数量 + * 域名创建的时间。格式:时间戳 */ - Http205?: number; + CreateTime: number; /** - * http206数量 + * 测试url。用于域名创建加速时的测试 */ - Http206?: number; + TestUrl: string; /** - * http207数量 + * 国内https状态 enableing-开启中 fail-开启失败 enable-启用 disable-未启用 */ - Http207?: number; + HttpsStatusCn: string; /** - * http300数量 + * 国外https状态 enableing-开启中 fail-开启失败 enable-启用 disable-未启用 */ - Http300?: number; + HttpsStatusAbroad: string; /** - * http301数量 + * 国内证书名称 */ - Http301?: number; + CertNameCn: string; /** - * http302数量 + * 国外证书名称 */ - Http302?: number; + CertNameAbroad: string; /** - * http303数量 + * 业务组:Default */ - Http303?: number; + Tag: string; /** - * http304数量 + * 域名Id */ - Http304?: number; + DomainId?: string; /** - * http305数量 + * 域名 */ - Http305?: number; + Domain?: string; /** - * http306数量 + * 源站配置 参考OriginConf */ - Http306?: number; + OriginConf?: { + /** + * 源站ip即cdn服务器回源访问的ip地址。多个源站ip,可以这样表述,如:["1.1.1.1","2.2.2.2"] + */ + OriginIpList?: string[]; + /** + * 回源Http请求头部Host,默认是加速域名 + */ + OriginHost?: string; + /** + * 回源端口 + */ + OriginPort?: number; + /** + * 1如果为false表示BackupOriginIp为空,表示没有备份源站,忽略BackupOriginIp,BackupOriginHost字段2如果为true表示BackupOriginIp.n必须至少有一个备份源站地址 + */ + BackupOriginEnable?: boolean; + /** + * 备份源站ip即cdn服务器回源访问的ip地址。多个源站ip,可以这样表述,如:["1.1.1.1","2.2.2.2"] + */ + BackupOriginIpList?: string[]; + /** + * 备份回源Http请求头部Host,默认是加速域名 + */ + BackupOriginHost?: string; + /** + * 主源响应的回源错误码(如:404|500),默认空字符串 + */ + OriginErrorCode?: string; + /** + * 回主源的回源失败数,默认1 + */ + OriginErrorNum?: number; + /** + * 源站协议http,http|https 默认http + */ + OriginProtocol?: string; + /** + * 跟随301跳转 0=不跟随 1=跟随 + */ + OriginFollow301?: number; + }; /** - * http307数量 + * 访问控制配置 参考AccessControlConf */ - Http307?: number; + AccessControlConf?: { + /** + * ip黑名单,多个ip,可表示为:IpBlackList.0=1.1.1.1,IpBlackList.1=2.2.2.2 + */ + IpBlackList?: string[]; + /** + * refer配置 + */ + ReferConf?: { + /** + * Refer防盗链配置 0白名单,1黑名单 + */ + ReferType?: number; + /** + * ReferType为白名单时(删除),NullRefer为0代表不允许NULL refer访问,为1代表允许Null refer访问 + */ + NullRefer?: number; + /** + * Refer防盗链规则列表,支持正则表达式 + */ + ReferList?: string[]; + }; + }; /** - * http400数量 + * 缓存配置 参考CacheAllConfig */ - Http400?: number; + CacheConf?: { + /** + * 缓存Host,不同的域名可以配置为同一个CacheHost来实现缓存共享,默认为加速域名 + */ + CacheHost?: string; + /** + * 缓存配置列表,参见CacheConf + */ + CacheList?: { + /** + * 路径模式,支持正则 + */ + PathPattern: string; + /** + * 缓存时间 + */ + CacheTTL: number; + /** + * 缓存时间的单位。sec(秒),min(分钟),hour(小时),day(天)。上限1年。 + */ + CacheUnit: string; + /** + * 是否缓存,true为缓存,flase为不缓存。为flase的情况下,CacheTTL和CacheUnit强制不生效 + */ + CacheBehavior: boolean; + /** + * 状态码模式,非200,206状态码,多个状态码用竖线(|)分隔,该属性仅仅在状态码缓存配置列表中返回 + */ + HttpCodePattern?: string; + /** + * 缓存规则描述 + */ + Description?: string; + /** + * 是否优先遵循源站头部缓存策略,false为不优先遵循源站,true为优先遵循源站缓存头部。默认为0 + */ + FollowOriginRule?: boolean; + }[]; + /** + * 状态码缓存配置列表,参见CacheConf + */ + HttpCodeCacheList?: { + /** + * 路径模式,支持正则 + */ + PathPattern: string; + /** + * 缓存时间 + */ + CacheTTL: number; + /** + * 缓存时间的单位。sec(秒),min(分钟),hour(小时),day(天)。上限1年。 + */ + CacheUnit: string; + /** + * 是否缓存,true为缓存,flase为不缓存。为flase的情况下,CacheTTL和CacheUnit强制不生效 + */ + CacheBehavior: boolean; + /** + * 状态码模式,非200,206状态码,多个状态码用竖线(|)分隔,该属性仅仅在状态码缓存配置列表中返回 + */ + HttpCodePattern?: string; + /** + * 缓存规则描述 + */ + Description?: string; + /** + * 是否优先遵循源站头部缓存策略,false为不优先遵循源站,true为优先遵循源站缓存头部。默认为0 + */ + FollowOriginRule?: boolean; + }[]; + /** + * 忽略参数缓存配置列表,参见CacheKeyInfo + */ + CacheKeyList?: { + /** + * 是否忽略 + */ + Ignore?: boolean; + /** + * 路径模式,支持正则 + */ + PathPattern?: string; + /** + * 自定义变量,以$符号开头,多个变量用加号(+)连接,$querystring表示所有变量 + */ + QueryString?: string; + }[]; + }; /** - * http401数量 + * 高级配置 参考AdvancedConf */ - Http401?: number; - /** - * http402数量 - */ - Http402?: number; - /** - * http403数量 - */ - Http403?: number; - /** - * http404数量 - */ - Http404?: number; - /** - * http405数量 - */ - Http405?: number; - /** - * http406数量 - */ - Http406?: number; - /** - * http407数量 - */ - Http407?: number; - /** - * http408数量 - */ - Http408?: number; - /** - * http409数量 - */ - Http409?: number; - /** - * http410数量 - */ - Http410?: number; - /** - * http411数量 - */ - Http411?: number; - /** - * http412数量 - */ - Http412?: number; - /** - * http413数量 - */ - Http413?: number; - /** - * http414数量 - */ - Http414?: number; - /** - * http415数量 - */ - Http415?: number; - /** - * http416数量 - */ - Http416?: number; - /** - * http417数量 - */ - Http417?: number; - /** - * http418数量 - */ - Http418?: number; - /** - * http421数量 - */ - Http421?: number; - /** - * http422数量 - */ - Http422?: number; - /** - * http423数量 - */ - Http423?: number; - /** - * http424数量 - */ - Http424?: number; - /** - * http425数量 - */ - Http425?: number; - /** - * http426数量 - */ - Http426?: number; - /** - * http449数量 - */ - Http449?: number; - /** - * http451数量 - */ - Http451?: number; - /** - * http500数量 - */ - Http500?: number; - /** - * http501数量 - */ - Http501?: number; - /** - * http502数量 - */ - Http502?: number; - /** - * http503数量 - */ - Http503?: number; - /** - * http504数量 - */ - Http504?: number; - /** - * http505数量 - */ - Http505?: number; - /** - * http506数量 - */ - Http506?: number; - /** - * http507数量 - */ - Http507?: number; - /** - * http509数量 - */ - Http509?: number; - /** - * http510数量 - */ - Http510?: number; + AdvancedConf?: { + /** + * 客户端响应http头列表 + */ + HttpClientHeader?: string[]; + /** + * 源站http头列表 + */ + HttpOriginHeader?: string[]; + /** + * http转https回源 true是,false否 + */ + Http2Https?: boolean; + }; }[]; } /** - * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 - */ -export interface GetUcdnDomain95BandwidthV2Request { - /** - * 查询的起始日期,格式为Unix Timestamp - */ - BeginTime: number; - /** - * 查询的结束日期,格式为Unix Timestamp - */ - EndTime: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 - */ - Areacode?: string; -} -/** - * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 - */ -export interface GetUcdnDomain95BandwidthV2Response { - /** - * 查询时间期间的95带宽时间点 Unix时间戳 - */ - Time: number; - /** - * 查询期间的CDN的95带宽值,单位Mbps - */ - CdnBandwidth?: number; -} -/** - * GetUcdnDomainBandwidthV2 - 获取域名带宽数据(新) + * GetUcdnDomainHitRate - 获取域名命中率 */ -export interface GetUcdnDomainBandwidthV2Request { +export interface GetUcdnDomainHitRateRequest { /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照1分钟粒度) + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照一分钟的粒度)默认5分钟 */ Type: number; /** @@ -799,7 +1007,7 @@ export interface GetUcdnDomainBandwidthV2Request { */ DomainId?: string[]; /** - * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 + * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 */ Areacode?: string; /** @@ -811,465 +1019,151 @@ export interface GetUcdnDomainBandwidthV2Request { */ EndTime?: number; /** - * 协议,http、https 不传则查所有协议的带宽 + * 命中类型:0=整体命中 1=边缘命中 默认是0 */ - Protocol?: string; + HitType?: number; } /** - * GetUcdnDomainBandwidthV2 - 获取域名带宽数据(新) + * GetUcdnDomainHitRate - 获取域名命中率 */ -export interface GetUcdnDomainBandwidthV2Response { +export interface GetUcdnDomainHitRateResponse { /** - * 带宽信息列表,参见BandwidthTrafficInfo + * 请求数实例表。 */ - BandwidthTrafficList?: { + HitRateList?: { /** * 带宽获取的时间点。格式:时间戳 */ - Time: number; + Time?: number; /** - * 返回值返回指定时间区间内CDN的带宽峰值,单位Mbps(如果请求参数Type为0,则Value是五分钟粒度的带宽值,如果Type为1,则Value是1小时的带宽峰值,如果Type为2,则Value是一天内的带宽峰值) + * 总流量命中率,单位% */ - CdnBandwidth: number; + FlowHitRate?: number; /** - * 对应时间粒度的流量,单位字节 + * 请求数命中率,单位% */ - Traffic: number; + RequestHitRate?: number; }[]; } /** - * GetUcdnDomainConfig - 批量获取加速域名配置 + * GetUcdnDomainHttpCodeV2 - 获取域名状态码信息 */ -export interface GetUcdnDomainConfigRequest { +export interface GetUcdnDomainHttpCodeV2Request { /** - * 数据偏移量,默认0,非负整数 + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示1分钟粒度) */ - Offset?: number; + Type: number; /** - * 返回数据长度, 默认全部,非负整数 + * 域名id,创建域名时生成的id。默认全部域名 */ - Limit?: number; + DomainId?: string[]; /** - * 域名id,创建域名时生成的id。默认获取账号下的所有域名信息,n为自然数,从DomainId.0开始。 + * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 */ - DomainId?: string[]; + Areacode?: string; /** - * 产品类型ucdn,可不填,默认为ucdn + * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 */ - ChannelType?: string; + BeginTime?: number; + /** + * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + */ + EndTime?: number; + /** + * 指定获取的状态码是边缘还是上层 edge 表示边缘 layer 表示上层 + */ + Layer?: string; } /** - * GetUcdnDomainConfig - 批量获取加速域名配置 + * GetUcdnDomainHttpCodeV2 - 获取域名状态码信息 */ -export interface GetUcdnDomainConfigResponse { +export interface GetUcdnDomainHttpCodeV2Response { /** - * 获取的域名信息,具体参考下面DomainConfig + * 状态码实例表。详细见HttpCodeInfoV2 */ - DomainList: { + HttpCodeDetail?: { /** - * 查询带宽区域 cn代表国内 abroad代表海外 all表示全部区域 + * 带宽获取的时间点。格式:时间戳 */ - AreaCode: string; + Time?: number; /** - * 加速域名的业务类型,web代表网站,stream代表视频 ,download 代表下载 - */ - CdnType: string; - /** - * 创建的加速域名的当前的状态。check代表审核中,checkSuccess代表审核通过,checkFail代表审核失败,enable代表加速中,disable代表停止加速,delete代表删除加速enableing代表正在开启加速,disableing代表正在停止加速中,deleteing代表删除中 - */ - Status: string; - /** - * cdn域名。创建加速域名生成的cdn域名,用于设置CNAME记录 - */ - Cname: string; - /** - * 域名创建的时间。格式:时间戳 - */ - CreateTime: number; - /** - * 测试url。用于域名创建加速时的测试 - */ - TestUrl: string; - /** - * 国内https状态 enableing-开启中 fail-开启失败 enable-启用 disable-未启用 - */ - HttpsStatusCn: string; - /** - * 国外https状态 enableing-开启中 fail-开启失败 enable-启用 disable-未启用 - */ - HttpsStatusAbroad: string; - /** - * 国内证书名称 - */ - CertNameCn: string; - /** - * 国外证书名称 - */ - CertNameAbroad: string; - /** - * 业务组:Default - */ - Tag: string; - /** - * 域名Id - */ - DomainId?: string; - /** - * 域名 - */ - Domain?: string; - /** - * 源站配置 参考OriginConf + * 1xx信息,参考HttpCodeV2Detail结构 */ - OriginConf?: { + Http1XX?: { /** - * 源站ip即cdn服务器回源访问的ip地址。多个源站ip,可以这样表述,如:["1.1.1.1","2.2.2.2"] + * 时间 */ - OriginIpList?: string[]; + Time?: number; /** - * 回源Http请求头部Host,默认是加速域名 + * 当前分组的总状态码数 */ - OriginHost?: string; + Total?: number; /** - * 回源端口 + * http100数量 */ - OriginPort?: number; + Http100?: number; /** - * 1如果为false表示BackupOriginIp为空,表示没有备份源站,忽略BackupOriginIp,BackupOriginHost字段2如果为true表示BackupOriginIp.n必须至少有一个备份源站地址 + * http101数量 */ - BackupOriginEnable?: boolean; + Http101?: number; /** - * 备份源站ip即cdn服务器回源访问的ip地址。多个源站ip,可以这样表述,如:["1.1.1.1","2.2.2.2"] + * http102数量 */ - BackupOriginIpList?: string[]; + Http102?: number; /** - * 备份回源Http请求头部Host,默认是加速域名 + * http200数量 */ - BackupOriginHost?: string; + Http200?: number; /** - * 主源响应的回源错误码(如:404|500),默认空字符串 + * http201数量 */ - OriginErrorCode?: string; + Http201?: number; /** - * 回主源的回源失败数,默认1 + * http202数量 */ - OriginErrorNum?: number; + Http202?: number; /** - * 源站协议http,http|https 默认http + * http203数量 */ - OriginProtocol?: string; + Http203?: number; /** - * 跟随301跳转 0=不跟随 1=跟随 + * http204数量 */ - OriginFollow301?: number; - }; - /** - * 访问控制配置 参考AccessControlConf - */ - AccessControlConf?: { + Http204?: number; /** - * ip黑名单,多个ip,可表示为:IpBlackList.0=1.1.1.1,IpBlackList.1=2.2.2.2 + * http205数量 */ - IpBlackList?: string[]; + Http205?: number; /** - * refer配置 + * http206数量 */ - ReferConf?: { - /** - * Refer防盗链配置 0白名单,1黑名单 - */ - ReferType?: number; - /** - * ReferType为白名单时(删除),NullRefer为0代表不允许NULL refer访问,为1代表允许Null refer访问 - */ - NullRefer?: number; - /** - * Refer防盗链规则列表,支持正则表达式 - */ - ReferList?: string[]; - }; - }; - /** - * 缓存配置 参考CacheAllConfig - */ - CacheConf?: { + Http206?: number; /** - * 缓存Host,不同的域名可以配置为同一个CacheHost来实现缓存共享,默认为加速域名 + * http207数量 */ - CacheHost?: string; + Http207?: number; /** - * 缓存配置列表,参见CacheConf + * http300数量 */ - CacheList?: { - /** - * 状态码模式,非200,206状态码,多个状态码用竖线(|)分隔,该属性仅仅在状态码缓存配置列表中返回 - */ - HttpCodePattern?: string; - /** - * 路径模式,支持正则 - */ - PathPattern?: string; - /** - * 缓存规则描述 - */ - Description?: string; - /** - * 缓存时间 - */ - CacheTTL?: number; - /** - * 缓存时间的单位。sec(秒),min(分钟),hour(小时),day(天)。上限1年。 - */ - CacheUnit?: string; - /** - * 是否缓存,true为缓存,flase为不缓存。为flase的情况下,CacheTTL和CacheUnit强制不生效 - */ - CacheBehavior?: boolean; - /** - * 是否优先遵循源站头部缓存策略,false为不优先遵循源站,true为优先遵循源站缓存头部。默认为0 - */ - FollowOriginRule?: boolean; - }[]; + Http300?: number; /** - * 状态码缓存配置列表,参见CacheConf + * http301数量 */ - HttpCodeCacheList?: { - /** - * 状态码模式,非200,206状态码,多个状态码用竖线(|)分隔,该属性仅仅在状态码缓存配置列表中返回 - */ - HttpCodePattern?: string; - /** - * 路径模式,支持正则 - */ - PathPattern?: string; - /** - * 缓存规则描述 - */ - Description?: string; - /** - * 缓存时间 - */ - CacheTTL?: number; - /** - * 缓存时间的单位。sec(秒),min(分钟),hour(小时),day(天)。上限1年。 - */ - CacheUnit?: string; - /** - * 是否缓存,true为缓存,flase为不缓存。为flase的情况下,CacheTTL和CacheUnit强制不生效 - */ - CacheBehavior?: boolean; - /** - * 是否优先遵循源站头部缓存策略,false为不优先遵循源站,true为优先遵循源站缓存头部。默认为0 - */ - FollowOriginRule?: boolean; - }[]; + Http301?: number; /** - * 忽略参数缓存配置列表,参见CacheKeyInfo + * http302数量 */ - CacheKeyList?: { - /** - * 是否忽略 - */ - Ignore?: boolean; - /** - * 路径模式,支持正则 - */ - PathPattern?: string; - /** - * 自定义变量,以$符号开头,多个变量用加号(+)连接,$querystring表示所有变量 - */ - QueryString?: string; - }[]; - }; - /** - * 高级配置 参考AdvancedConf - */ - AdvancedConf?: { + Http302?: number; /** - * 客户端响应http头列表 + * http303数量 */ - HttpClientHeader?: string[]; + Http303?: number; /** - * 源站http头列表 + * http304数量 */ - HttpOriginHeader?: string[]; + Http304?: number; /** - * http转https回源 true是,false否 - */ - Http2Https?: boolean; - }; - }[]; -} -/** - * GetUcdnDomainHitRate - 获取域名命中率 - */ -export interface GetUcdnDomainHitRateRequest { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照一分钟的粒度)默认5分钟 - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 - */ - Areacode?: string; - /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 - */ - BeginTime?: number; - /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 - */ - EndTime?: number; - /** - * 命中类型:0=整体命中 1=边缘命中 默认是0 - */ - HitType?: number; -} -/** - * GetUcdnDomainHitRate - 获取域名命中率 - */ -export interface GetUcdnDomainHitRateResponse { - /** - * 请求数实例表。 - */ - HitRateList?: { - /** - * 带宽获取的时间点。格式:时间戳 - */ - Time?: number; - /** - * 总流量命中率,单位% - */ - FlowHitRate?: number; - /** - * 请求数命中率,单位% - */ - RequestHitRate?: number; - }[]; -} -/** - * GetUcdnDomainHttpCodeV2 - 获取域名状态码信息 - */ -export interface GetUcdnDomainHttpCodeV2Request { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示1分钟粒度) - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 - */ - Areacode?: string; - /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 - */ - BeginTime?: number; - /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 - */ - EndTime?: number; - /** - * 指定获取的状态码是边缘还是上层 edge 表示边缘 layer 表示上层 - */ - Layer?: string; -} -/** - * GetUcdnDomainHttpCodeV2 - 获取域名状态码信息 - */ -export interface GetUcdnDomainHttpCodeV2Response { - /** - * 状态码实例表。详细见HttpCodeInfoV2 - */ - HttpCodeDetail?: { - /** - * 带宽获取的时间点。格式:时间戳 - */ - Time?: number; - /** - * 1xx信息,参考HttpCodeV2Detail结构 - */ - Http1XX?: { - /** - * 时间 - */ - Time?: number; - /** - * 当前分组的总状态码数 - */ - Total?: number; - /** - * http100数量 - */ - Http100?: number; - /** - * http101数量 - */ - Http101?: number; - /** - * http102数量 - */ - Http102?: number; - /** - * http200数量 - */ - Http200?: number; - /** - * http201数量 - */ - Http201?: number; - /** - * http202数量 - */ - Http202?: number; - /** - * http203数量 - */ - Http203?: number; - /** - * http204数量 - */ - Http204?: number; - /** - * http205数量 - */ - Http205?: number; - /** - * http206数量 - */ - Http206?: number; - /** - * http207数量 - */ - Http207?: number; - /** - * http300数量 - */ - Http300?: number; - /** - * http301数量 - */ - Http301?: number; - /** - * http302数量 - */ - Http302?: number; - /** - * http303数量 - */ - Http303?: number; - /** - * http304数量 - */ - Http304?: number; - /** - * http305数量 + * http305数量 */ Http305?: number; /** @@ -2642,65 +2536,435 @@ export interface GetUcdnDomainInfoListResponse { */ DomainInfoList: { /** - * 域名 + * 域名 + */ + Domain: string; + /** + * 域名的资源id + */ + DomainId: string; + }[]; +} +/** + * GetUcdnDomainLog - 获取加速域名原始日志 + */ +export interface GetUcdnDomainLogRequest { + /** + * 域名ID,创建加速域名时生成。默认全部域名 + */ + DomainId?: string[]; + /** + * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。 + */ + BeginTime?: number; + /** + * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + */ + EndTime?: number; + /** + * 查询粒度 0=default(没有粒度) 1=按小时 2=按天 + */ + Type?: number; +} +/** + * GetUcdnDomainLog - 获取加速域名原始日志 + */ +export interface GetUcdnDomainLogResponse { + /** + * 获取日志的连接地址。具体参考下面LogSetList + */ + LogSet?: { + /** + * 域名 + */ + Domain?: string; + /** + * 域名信息列表,参考LogSetInfo + */ + Logs?: { + /** + * 日志时间UnixTime + */ + Time?: number; + /** + * 国内日志url列表 + */ + CnLog?: string[]; + /** + * 国外日志url列表 + */ + AbroadLog?: string[]; + }[]; + }[]; +} +/** + * GetUcdnDomainLogV2 - 获取域名5分钟日志 + */ +export interface GetUcdnDomainLogV2Request { + /** + * 查询的起始时间,格式为Unix Timestamp + */ + BeginTime: number; + /** + * 查询的结束时间,格式为Unix Timestamp + */ + EndTime: number; + /** + * 域名id,创建域名时生成的id。默认全部域名 + */ + DomainId?: string[]; +} +/** + * GetUcdnDomainLogV2 - 获取域名5分钟日志 + */ +export interface GetUcdnDomainLogV2Response { + /** + * + */ + DomainLogSet: { + /** + * 域名 + */ + Domain?: string; + /** + * 日志信息列表 + */ + LogList?: { + /** + * Unix时间戳 + */ + LogTime: number; + /** + * 日志url地址 + */ + LogUrl: string; + }[]; + }[]; +} +/** + * GetUcdnDomainOriginHttpCode - 获取域名源站状态码监控 + */ +export interface GetUcdnDomainOriginHttpCodeRequest { + /** + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照1分钟粒度) + */ + Type: number; + /** + * 域名id,创建域名时生成的id。默认全部域名 + */ + DomainId?: string[]; + /** + * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 + */ + Areacode?: string; + /** + * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 + */ + BeginTime?: number; + /** + * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + */ + EndTime?: number; +} +/** + * GetUcdnDomainOriginHttpCode - 获取域名源站状态码监控 + */ +export interface GetUcdnDomainOriginHttpCodeResponse { + /** + * 状态码实例表。详细见HttpCodeInfo + */ + HttpCodeDetail?: { + /** + * 带宽获取的时间点。格式:时间戳 + */ + Time?: number; + /** + * 1xx数量 + */ + HttpOneXX?: number; + /** + * 2xx数量 + */ + HttpTwoXX?: number; + /** + * 3xx数量 + */ + HttpThreeXX?: number; + /** + * 4xx数量 + */ + HttpFourXX?: number; + /** + * 5xx数量 + */ + HttpFiveXX?: number; + }[]; +} +/** + * GetUcdnDomainOriginHttpCodeDetail - 获取域名源站详细状态码监控 + */ +export interface GetUcdnDomainOriginHttpCodeDetailRequest { + /** + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天粒度,3表示按照一分钟粒度) + */ + Type: number; + /** + * 查询的起始时间,格式为Unix Timestamp。 + */ + BeginTime: number; + /** + * 查询的结束时间,格式为Unix Timestamp。 + */ + EndTime: number; + /** + * 域名id,创建域名时生成的id。默认全部域名 + */ + DomainId?: string[]; + /** + * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 + */ + Areacode?: string; +} +/** + * GetUcdnDomainOriginHttpCodeDetail - 获取域名源站详细状态码监控 + */ +export interface GetUcdnDomainOriginHttpCodeDetailResponse { + /** + * 状态码详情 + */ + HttpCodeV2Detail?: { + /** + * 时间 + */ + Time?: number; + /** + * 当前分组的总状态码数 + */ + Total?: number; + /** + * http100数量 + */ + Http100?: number; + /** + * http101数量 + */ + Http101?: number; + /** + * http102数量 + */ + Http102?: number; + /** + * http200数量 + */ + Http200?: number; + /** + * http201数量 + */ + Http201?: number; + /** + * http202数量 + */ + Http202?: number; + /** + * http203数量 + */ + Http203?: number; + /** + * http204数量 + */ + Http204?: number; + /** + * http205数量 + */ + Http205?: number; + /** + * http206数量 + */ + Http206?: number; + /** + * http207数量 + */ + Http207?: number; + /** + * http300数量 + */ + Http300?: number; + /** + * http301数量 + */ + Http301?: number; + /** + * http302数量 + */ + Http302?: number; + /** + * http303数量 + */ + Http303?: number; + /** + * http304数量 + */ + Http304?: number; + /** + * http305数量 + */ + Http305?: number; + /** + * http306数量 + */ + Http306?: number; + /** + * http307数量 + */ + Http307?: number; + /** + * http400数量 + */ + Http400?: number; + /** + * http401数量 + */ + Http401?: number; + /** + * http402数量 + */ + Http402?: number; + /** + * http403数量 + */ + Http403?: number; + /** + * http404数量 + */ + Http404?: number; + /** + * http405数量 + */ + Http405?: number; + /** + * http406数量 + */ + Http406?: number; + /** + * http407数量 + */ + Http407?: number; + /** + * http408数量 + */ + Http408?: number; + /** + * http409数量 + */ + Http409?: number; + /** + * http410数量 + */ + Http410?: number; + /** + * http411数量 + */ + Http411?: number; + /** + * http412数量 + */ + Http412?: number; + /** + * http413数量 + */ + Http413?: number; + /** + * http414数量 + */ + Http414?: number; + /** + * http415数量 + */ + Http415?: number; + /** + * http416数量 + */ + Http416?: number; + /** + * http417数量 + */ + Http417?: number; + /** + * http418数量 + */ + Http418?: number; + /** + * http421数量 + */ + Http421?: number; + /** + * http422数量 + */ + Http422?: number; + /** + * http423数量 + */ + Http423?: number; + /** + * http424数量 + */ + Http424?: number; + /** + * http425数量 + */ + Http425?: number; + /** + * http426数量 */ - Domain: string; + Http426?: number; /** - * 域名的资源id + * http449数量 */ - DomainId: string; - }[]; -} -/** - * GetUcdnDomainLog - 获取加速域名原始日志 - */ -export interface GetUcdnDomainLogRequest { - /** - * 域名ID,创建加速域名时生成。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。 - */ - BeginTime?: number; - /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 - */ - EndTime?: number; - /** - * 查询粒度 0=default(没有粒度) 1=按小时 2=按天 - */ - Type?: number; -} -/** - * GetUcdnDomainLog - 获取加速域名原始日志 - */ -export interface GetUcdnDomainLogResponse { - /** - * 获取日志的连接地址。具体参考下面LogSetList - */ - LogSet?: { + Http449?: number; /** - * 域名 + * http451数量 */ - Domain?: string; + Http451?: number; /** - * 域名信息列表,参考LogSetInfo + * http500数量 */ - Logs?: { - /** - * 日志时间UnixTime - */ - Time?: number; - /** - * 国内日志url列表 - */ - CnLog?: string[]; - /** - * 国外日志url列表 - */ - AbroadLog?: string[]; - }[]; + Http500?: number; + /** + * http501数量 + */ + Http501?: number; + /** + * http502数量 + */ + Http502?: number; + /** + * http503数量 + */ + Http503?: number; + /** + * http504数量 + */ + Http504?: number; + /** + * http505数量 + */ + Http505?: number; + /** + * http506数量 + */ + Http506?: number; + /** + * http507数量 + */ + Http507?: number; + /** + * http509数量 + */ + Http509?: number; + /** + * http510数量 + */ + Http510?: number; }[]; } /** @@ -2764,53 +3028,6 @@ export interface GetUcdnDomainPrefetchEnableResponse { */ Enable?: number; } -/** - * GetUcdnDomainRequestNumV2 - 获取域名请求数 - */ -export interface GetUcdnDomainRequestNumV2Request { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度, 3=按1分钟) - */ - Type: number; - /** - * 查询的起始时间,格式为Unix Timestamp - */ - BeginTime: number; - /** - * 查询的结束时间,格式为Unix Timestamp - */ - EndTime: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询区域 cn代表国内 abroad代表海外,只支持国内 - */ - Areacode?: string; -} -/** - * GetUcdnDomainRequestNumV2 - 获取域名请求数 - */ -export interface GetUcdnDomainRequestNumV2Response { - /** - * 请求数实例表。 - */ - RequestList?: { - /** - * 带宽获取的时间点。格式:时间戳 - */ - Time?: number; - /** - * 返回值返回指定时间区间内的cdn收到的请求次数之和 - */ - CdnRequest?: number; - /** - * 返回值返回指定时间区间内的cdn回源的请求次数之和 - */ - OriginRequest?: number; - }[]; -} /** * GetUcdnDomainRequestNumV3 - 获取域名请求数 */ @@ -2858,92 +3075,6 @@ export interface GetUcdnDomainRequestNumV3Response { CdnRequest?: number; }[]; } -/** - * GetUcdnDomainTraffic - 获取加速域名流量使用信息 - */ -export interface GetUcdnDomainTrafficRequest { - /** - * 指定按项目查询,还是按整个账户查询 取值 top 表示按整个账户查询,取值org表示按项目查询 - */ - AccountType?: string; - /** - * 域名ID,创建加速域名时生成,n从自然数0开始。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询流量区域 cn代表国内 abroad代表海外,默认全部区域 - */ - Areacode?: string; - /** - * 查询的起始日期,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值 - */ - BeginTime?: number; - /** - * 查询的结束日期,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天 - */ - EndTime?: number; -} -/** - * GetUcdnDomainTraffic - 获取加速域名流量使用信息 - */ -export interface GetUcdnDomainTrafficResponse { - /** - * 流量实例表,具体结构见 UcdnDomainTrafficSet - */ - TrafficSet?: { - /** - * 流量获取的时间点,格式为Unix Timestamp - */ - Time?: number; - /** - * 查询每日流量总值,单位:GB - */ - Value?: number; - }[]; -} -/** - * GetUcdnPassBandwidth - 获取回源带宽数据(cdn回客户源站部分) - */ -export interface GetUcdnPassBandwidthRequest { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度) - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 - */ - Areacode?: string; - /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 - */ - BeginTime?: number; - /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 - */ - EndTime?: number; -} -/** - * GetUcdnPassBandwidth - 获取回源带宽数据(cdn回客户源站部分) - */ -export interface GetUcdnPassBandwidthResponse { - /** - * 回源带宽数据 - */ - BandwidthDetail?: { - /** - * 宽获取的时间点。格式:时间戳 - */ - Time: number; - /** - * 返回值带宽值数据。 - */ - Bandwidth: number; - }[]; -} /** * GetUcdnPassBandwidthV2 - 获取回源带宽数据(cdn回客户源站部分) */ @@ -3008,11 +3139,11 @@ export interface GetUcdnProIspBandwidthV2Request { */ DomainId?: string[]; /** - * 省份代码,可以传多个,不传则查询所有省份 + * 省份代码(省份拼音),可以传多个,不传则查询所有省份 */ Province?: string[]; /** - * 运营商代码,一次只能查询一个运营商,不传递默认取所有运营商 + * 运营商代码(运营商拼音),一次只能查询一个运营商,不传递默认取所有运营商 */ Isp?: string; } @@ -3103,37 +3234,6 @@ export interface GetUcdnProIspRequestNumV2Response { }[]; }[]; } -/** - * GetUcdnTraffic - 获取流量信息 - */ -export interface GetUcdnTrafficRequest { -} -/** - * GetUcdnTraffic - 获取流量信息 - */ -export interface GetUcdnTrafficResponse { - /** - * 用户不同区域的流量信息, 具体结构参见TrafficSet部分 - */ - TrafficSet?: { - /** - * 购买流量的区域, cn: 国内; abroad: 国外 - */ - Areacode?: string; - /** - * Areacode区域内总购买流量, 单位GB - */ - TrafficTotal?: number; - /** - * Areacode区域内总剩余流量, 单位GB - */ - TrafficLeft?: number; - /** - * Areacode区域内总使用流量, 单位GB - */ - TrafficUsed?: number; - }[]; -} /** * GetUcdnTrafficV2 - 获取流量信息 */ @@ -3183,16 +3283,55 @@ export interface PrefetchNewUcdnDomainCacheResponse { */ TaskId?: string; } +/** + * QueryIpLocation - 查询IP信息 + */ +export interface QueryIpLocationRequest { + /** + * ip列表 + */ + Ip: string[]; +} +/** + * QueryIpLocation - 查询IP信息 + */ +export interface QueryIpLocationResponse { + /** + * IP信息列表 + */ + Data: { + /** + * 客户端请求的ip + */ + Ip?: string; + /** + * 地区 + */ + Area?: string; + /** + * 运营商 + */ + Isp?: string; + /** + * 城市 + */ + City?: string; + /** + * ip是否存在 + */ + Exist?: boolean; + }[]; +} /** * RefreshNewUcdnDomainCache - 刷新缓存 */ export interface RefreshNewUcdnDomainCacheRequest { /** - * 刷新类型,file代表文件刷新,dir 代表路径刷新 + * 刷新类型,file代表文件刷新,dir 代表路径刷新,m3u8带表m3u8刷新 */ Type: string; /** - * 刷新多个URL列表时,一次最多提交30个。必须以”http://域名/”开始。目录要以”/”结尾, 如刷新目录a下所有文件,格式为:http://abc.ucloud.cn/a/;如刷新文件目录a下面img.png文件, 格式为http://abc.ucloud.cn/a/img.png。请正确提交需要刷新的域名 + * 需要刷新的URL,n 从自然数0开始,刷新多个URL列表时,一次最多提交30个。必须以”http://域名/”开始。目录要以”/”结尾, 如刷新目录a下所有文件,格式为:http://abc.ucloud.cn/a/;如刷新文件目录a下面img.png文件, 格式为http://abc.ucloud.cn/a/img.png。请正确提交需要刷新的域名 */ UrlList: string[]; } diff --git a/lib/services/ucdn/index.js b/lib/services/ucdn/index.js index 7882025..58a2128 100644 --- a/lib/services/ucdn/index.js +++ b/lib/services/ucdn/index.js @@ -12,6 +12,33 @@ class UCDNClient extends client_1.default { constructor({ config, credential, }) { super({ config, credential }); } + /** + * AddCertificate - 添加证书 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/add_certificate + */ + addCertificate(request) { + const args = Object.assign({ Action: 'AddCertificate' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * ControlUcdnDomainCacheAccess - 封禁解封缓存访问 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/control_ucdn_domain_cache_access + */ + controlUcdnDomainCacheAccess(request) { + const args = Object.assign({ Action: 'ControlUcdnDomainCacheAccess' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * DeleteCertificate - 删除证书 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/delete_certificate + */ + deleteCertificate(request) { + const args = Object.assign({ Action: 'DeleteCertificate' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeNewUcdnPrefetchCacheTask - 获取预取任务状态 * @@ -31,12 +58,12 @@ class UCDNClient extends client_1.default { return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetNewUcdnDomainBandwidth - 获取域名带宽数据 + * GetCertificateV2 - 获取证书列表(新) * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_bandwidth + * See also: https://docs.ucloud.cn/api/ucdn-api/get_certificate_v2 */ - getNewUcdnDomainBandwidth(request) { - const args = Object.assign({ Action: 'GetNewUcdnDomainBandwidth' }, (request || {})); + getCertificateV2(request) { + const args = Object.assign({ Action: 'GetCertificateV2' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** @@ -49,21 +76,21 @@ class UCDNClient extends client_1.default { return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetNewUcdnDomainHttpCode - 获取域名状态码监控 + * GetNewUcdnLogRefererStatistics - 获取热点referer统计 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_http_code + * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_log_referer_statistics */ - getNewUcdnDomainHttpCode(request) { - const args = Object.assign({ Action: 'GetNewUcdnDomainHttpCode' }, (request || {})); + getNewUcdnLogRefererStatistics(request) { + const args = Object.assign({ Action: 'GetNewUcdnLogRefererStatistics' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetNewUcdnDomainHttpCodeV2 - 获取域名详细状态码监控 + * GetNewUcdnLogUrlStatistics - 获取日志url统计 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_http_code_v2 + * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_log_url_statistics */ - getNewUcdnDomainHttpCodeV2(request) { - const args = Object.assign({ Action: 'GetNewUcdnDomainHttpCodeV2' }, (request || {})); + getNewUcdnLogUrlStatistics(request) { + const args = Object.assign({ Action: 'GetNewUcdnLogUrlStatistics' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** @@ -130,57 +157,57 @@ class UCDNClient extends client_1.default { return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetUcdnDomainOriginRequestNum - 获取域名回源请求数 + * GetUcdnDomainLogV2 - 获取域名5分钟日志 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_request_num + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_log_v2 */ - getUcdnDomainOriginRequestNum(request) { - const args = Object.assign({ Action: 'GetUcdnDomainOriginRequestNum' }, (request || {})); + getUcdnDomainLogV2(request) { + const args = Object.assign({ Action: 'GetUcdnDomainLogV2' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetUcdnDomainPrefetchEnable - 获取域名预取开启状态 + * GetUcdnDomainOriginHttpCode - 获取域名源站状态码监控 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_prefetch_enable + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_http_code */ - getUcdnDomainPrefetchEnable(request) { - const args = Object.assign({ Action: 'GetUcdnDomainPrefetchEnable' }, (request || {})); + getUcdnDomainOriginHttpCode(request) { + const args = Object.assign({ Action: 'GetUcdnDomainOriginHttpCode' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetUcdnDomainRequestNumV2 - 获取域名请求数 + * GetUcdnDomainOriginHttpCodeDetail - 获取域名源站详细状态码监控 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_request_num_v2 + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_http_code_detail */ - getUcdnDomainRequestNumV2(request) { - const args = Object.assign({ Action: 'GetUcdnDomainRequestNumV2' }, (request || {})); + getUcdnDomainOriginHttpCodeDetail(request) { + const args = Object.assign({ Action: 'GetUcdnDomainOriginHttpCodeDetail' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetUcdnDomainRequestNumV3 - 获取域名请求数 + * GetUcdnDomainOriginRequestNum - 获取域名回源请求数 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_request_num_v3 + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_request_num */ - getUcdnDomainRequestNumV3(request) { - const args = Object.assign({ Action: 'GetUcdnDomainRequestNumV3' }, (request || {})); + getUcdnDomainOriginRequestNum(request) { + const args = Object.assign({ Action: 'GetUcdnDomainOriginRequestNum' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetUcdnDomainTraffic - 获取加速域名流量使用信息 + * GetUcdnDomainPrefetchEnable - 获取域名预取开启状态 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_traffic + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_prefetch_enable */ - getUcdnDomainTraffic(request) { - const args = Object.assign({ Action: 'GetUcdnDomainTraffic' }, (request || {})); + getUcdnDomainPrefetchEnable(request) { + const args = Object.assign({ Action: 'GetUcdnDomainPrefetchEnable' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * GetUcdnPassBandwidth - 获取回源带宽数据(cdn回客户源站部分) + * GetUcdnDomainRequestNumV3 - 获取域名请求数 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_pass_bandwidth + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_request_num_v3 */ - getUcdnPassBandwidth(request) { - const args = Object.assign({ Action: 'GetUcdnPassBandwidth' }, (request || {})); + getUcdnDomainRequestNumV3(request) { + const args = Object.assign({ Action: 'GetUcdnDomainRequestNumV3' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** @@ -210,15 +237,6 @@ class UCDNClient extends client_1.default { const args = Object.assign({ Action: 'GetUcdnProIspRequestNumV2' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } - /** - * GetUcdnTraffic - 获取流量信息 - * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_traffic - */ - getUcdnTraffic(request) { - const args = Object.assign({ Action: 'GetUcdnTraffic' }, (request || {})); - return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); - } /** * GetUcdnTrafficV2 - 获取流量信息 * @@ -237,6 +255,15 @@ class UCDNClient extends client_1.default { const args = Object.assign({ Action: 'PrefetchNewUcdnDomainCache' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * QueryIpLocation - 查询IP信息 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/query_ip_location + */ + queryIpLocation(request) { + const args = Object.assign({ Action: 'QueryIpLocation' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * RefreshNewUcdnDomainCache - 刷新缓存 * diff --git a/lib/services/udb/index.d.ts b/lib/services/udb/index.d.ts index 1ea6967..22ef568 100644 --- a/lib/services/udb/index.d.ts +++ b/lib/services/udb/index.d.ts @@ -249,6 +249,12 @@ export default class UDBClient extends Client { * See also: https://docs.ucloud.cn/api/udb-api/fetch_udb_instance_earliest_recover_time */ fetchUDBInstanceEarliestRecoverTime(request?: FetchUDBInstanceEarliestRecoverTimeRequest): Promise; + /** + * GetUDBClientConnNum - 输入一个DBID,能够获取客户端来源IP以及对应的连接数 + * + * See also: https://docs.ucloud.cn/api/udb-api/get_udb_client_conn_num + */ + getUDBClientConnNum(request?: GetUDBClientConnNumRequest): Promise; /** * ModifyUDBInstanceName - 重命名UDB实例 * @@ -262,7 +268,7 @@ export default class UDBClient extends Client { */ modifyUDBInstancePassword(request?: ModifyUDBInstancePasswordRequest): Promise; /** - * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本) + * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,对于NVMe机型的单点升级高可用,虽然也能使用该操作再加上SwitchUDBInstanceToHA,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) * * See also: https://docs.ucloud.cn/api/udb-api/promote_udb_instance_to_ha */ @@ -310,13 +316,13 @@ export default class UDBClient extends Client { */ stopUDBInstance(request?: StopUDBInstanceRequest): Promise; /** - * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时30-70秒 + * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时5-10秒 * * See also: https://docs.ucloud.cn/api/udb-api/switch_udb_ha_to_sentinel */ switchUDBHAToSentinel(request?: SwitchUDBHAToSentinelRequest): Promise; /** - * SwitchUDBInstanceToHA - 普通UDB切换为高可用,原db状态为WaitForSwitch时,调用改api + * SwitchUDBInstanceToHA - 普通UDB切换为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,原db状态为WaitForSwitch时,调用该api; 对于NVMe机型的单点升级高可用,虽然也能使用PromoteUDBInstanceToHA再加上该操作,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) * * See also: https://docs.ucloud.cn/api/udb-api/switch_udb_instance_to_ha */ @@ -339,6 +345,12 @@ export default class UDBClient extends Client { * See also: https://docs.ucloud.cn/api/udb-api/update_udb_param_group */ updateUDBParamGroup(request?: UpdateUDBParamGroupRequest): Promise; + /** + * UpgradeUDBInstanceToHA - 快杰普通db升级为高可用(只针对mysql5.5及以上版本Nvme机型的实例) + * + * See also: https://docs.ucloud.cn/api/udb-api/upgrade_udb_instance_to_ha + */ + upgradeUDBInstanceToHA(request?: UpgradeUDBInstanceToHARequest): Promise; /** * UploadUDBParamGroup - 导入UDB配置 * @@ -1776,7 +1788,7 @@ export interface DescribeUDBInstanceBinlogBackupStateResponse { */ export interface DescribeUDBInstanceLogRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -1792,7 +1804,7 @@ export interface DescribeUDBInstanceLogRequest { */ EndTime: number; /** - * 查询日志的类型 + * 查询日志的类型error:错误日志;slow:慢日志 */ LogType: string; } @@ -2389,6 +2401,37 @@ export interface FetchUDBInstanceEarliestRecoverTimeResponse { */ EarliestTime?: number; } +/** + * GetUDBClientConnNum - 输入一个DBID,能够获取客户端来源IP以及对应的连接数 + */ +export interface GetUDBClientConnNumRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * DB实例id + */ + DBId: string; +} +/** + * GetUDBClientConnNum - 输入一个DBID,能够获取客户端来源IP以及对应的连接数 + */ +export interface GetUDBClientConnNumResponse { + /** + * db实例ip和连接数信息 + */ + DataSet: { + /** + * 客户端IP + */ + Ip?: string; + /** + * 该Ip连接数 + */ + Num?: number; + }[]; +} /** * ModifyUDBInstanceName - 重命名UDB实例 */ @@ -2438,7 +2481,7 @@ export interface ModifyUDBInstancePasswordRequest { export interface ModifyUDBInstancePasswordResponse { } /** - * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本) + * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,对于NVMe机型的单点升级高可用,虽然也能使用该操作再加上SwitchUDBInstanceToHA,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) */ export interface PromoteUDBInstanceToHARequest { /** @@ -2447,7 +2490,7 @@ export interface PromoteUDBInstanceToHARequest { DBId: string; } /** - * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本) + * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,对于NVMe机型的单点升级高可用,虽然也能使用该操作再加上SwitchUDBInstanceToHA,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) */ export interface PromoteUDBInstanceToHAResponse { } @@ -2638,34 +2681,50 @@ export interface StopUDBInstanceRequest { export interface StopUDBInstanceResponse { } /** - * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时30-70秒 + * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时5-10秒 */ export interface SwitchUDBHAToSentinelRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** * UDB的实例ID */ DBId: string; + /** + * 是否跳过预检查强制升级。 + */ + ForceSwitch?: boolean; } /** - * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时30-70秒 + * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时5-10秒 */ export interface SwitchUDBHAToSentinelResponse { } /** - * SwitchUDBInstanceToHA - 普通UDB切换为高可用,原db状态为WaitForSwitch时,调用改api + * SwitchUDBInstanceToHA - 普通UDB切换为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,原db状态为WaitForSwitch时,调用该api; 对于NVMe机型的单点升级高可用,虽然也能使用PromoteUDBInstanceToHA再加上该操作,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) */ export interface SwitchUDBInstanceToHARequest { /** * 实例的Id,该值可以通过DescribeUDBInstance获取 */ DBId: string; + /** + * Year, Month, Dynamic,Trial,不填则按现在单点计费执行 + */ + ChargeType?: string; + /** + * 购买时长,需要和 ChargeType 搭配使用,否则使用单点计费策略的值 + */ + Quantity?: string; + /** + * 业务组 + */ + Tag?: string; } /** - * SwitchUDBInstanceToHA - 普通UDB切换为高可用,原db状态为WaitForSwitch时,调用改api + * SwitchUDBInstanceToHA - 普通UDB切换为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,原db状态为WaitForSwitch时,调用该api; 对于NVMe机型的单点升级高可用,虽然也能使用PromoteUDBInstanceToHA再加上该操作,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) */ export interface SwitchUDBInstanceToHAResponse { /** @@ -2771,6 +2830,24 @@ export interface UpdateUDBParamGroupRequest { */ export interface UpdateUDBParamGroupResponse { } +/** + * UpgradeUDBInstanceToHA - 快杰普通db升级为高可用(只针对mysql5.5及以上版本Nvme机型的实例) + */ +export interface UpgradeUDBInstanceToHARequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 实例的Id,该值可以通过DescribeUDBInstance获取 + */ + DBId: string; +} +/** + * UpgradeUDBInstanceToHA - 快杰普通db升级为高可用(只针对mysql5.5及以上版本Nvme机型的实例) + */ +export interface UpgradeUDBInstanceToHAResponse { +} /** * UploadUDBParamGroup - 导入UDB配置 */ diff --git a/lib/services/udb/index.js b/lib/services/udb/index.js index e4f8de5..ab6fc19 100644 --- a/lib/services/udb/index.js +++ b/lib/services/udb/index.js @@ -372,6 +372,15 @@ class UDBClient extends client_1.default { const args = Object.assign({ Action: 'FetchUDBInstanceEarliestRecoverTime' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * GetUDBClientConnNum - 输入一个DBID,能够获取客户端来源IP以及对应的连接数 + * + * See also: https://docs.ucloud.cn/api/udb-api/get_udb_client_conn_num + */ + getUDBClientConnNum(request) { + const args = Object.assign({ Action: 'GetUDBClientConnNum' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ModifyUDBInstanceName - 重命名UDB实例 * @@ -391,7 +400,7 @@ class UDBClient extends client_1.default { return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本) + * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,对于NVMe机型的单点升级高可用,虽然也能使用该操作再加上SwitchUDBInstanceToHA,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) * * See also: https://docs.ucloud.cn/api/udb-api/promote_udb_instance_to_ha */ @@ -463,7 +472,7 @@ class UDBClient extends client_1.default { return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时30-70秒 + * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时5-10秒 * * See also: https://docs.ucloud.cn/api/udb-api/switch_udb_ha_to_sentinel */ @@ -472,7 +481,7 @@ class UDBClient extends client_1.default { return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } /** - * SwitchUDBInstanceToHA - 普通UDB切换为高可用,原db状态为WaitForSwitch时,调用改api + * SwitchUDBInstanceToHA - 普通UDB切换为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,原db状态为WaitForSwitch时,调用该api; 对于NVMe机型的单点升级高可用,虽然也能使用PromoteUDBInstanceToHA再加上该操作,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) * * See also: https://docs.ucloud.cn/api/udb-api/switch_udb_instance_to_ha */ @@ -507,6 +516,15 @@ class UDBClient extends client_1.default { const args = Object.assign({ Action: 'UpdateUDBParamGroup' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * UpgradeUDBInstanceToHA - 快杰普通db升级为高可用(只针对mysql5.5及以上版本Nvme机型的实例) + * + * See also: https://docs.ucloud.cn/api/udb-api/upgrade_udb_instance_to_ha + */ + upgradeUDBInstanceToHA(request) { + const args = Object.assign({ Action: 'UpgradeUDBInstanceToHA' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * UploadUDBParamGroup - 导入UDB配置 * diff --git a/lib/services/udisk/index.d.ts b/lib/services/udisk/index.d.ts index 7548924..e67940d 100644 --- a/lib/services/udisk/index.d.ts +++ b/lib/services/udisk/index.d.ts @@ -220,6 +220,10 @@ export interface CloneUDiskRequest { * RDMA集群id。指定RSSD云盘克隆到对应的RDMA集群。 */ RdmaClusterId?: string; + /** + * Host实例ID。克隆出的云盘可直接挂载到该主机上。 + */ + HostId?: string; /** * 使用的代金券id */ @@ -282,6 +286,10 @@ export interface CloneUDiskSnapshotRequest { * RDMA集群id。指定RSSD云盘克隆到对应的RDMA集群。 */ RdmaClusterId?: string; + /** + * Host实例ID。克隆出的云盘可直接挂载到该主机上。 + */ + HostId?: string; /** * 使用的代金券id */ @@ -348,6 +356,10 @@ export interface CloneUDiskUDataArkRequest { * RDMA集群id。指定RSSD云盘克隆到对应的RDMA集群。 */ RdmaClusterId?: string; + /** + * Host实例ID。克隆出的云盘可直接挂载到该主机上。 + */ + HostId?: string; /** * 使用的代金券id */ @@ -660,7 +672,7 @@ export interface DescribeRecycleUDiskResponse { */ export interface DescribeUDiskRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -676,7 +688,7 @@ export interface DescribeUDiskRequest { */ Limit?: number; /** - * ProtocolVersion字段为1时,需结合IsBoot确定具体磁盘类型:普通数据盘:DiskType:"CLOUD_NORMAL",IsBoot:"False";普通系统盘:DiskType:"CLOUD_NORMAL",IsBoot:"True";SSD数据盘:DiskType:"CLOUD_SSD",IsBoot:"False";SSD系统盘:DiskType:"CLOUD_SSD",IsBoot:"True";RSSD数据盘:DiskType:"CLOUD_RSSD",IsBoot:"False";为空拉取所有。ProtocolVersion字段为0或没有该字段时,可设为以下几个值:普通数据盘:DataDisk;普通系统盘:SystemDisk;SSD数据盘:SSDDataDisk;SSD系统盘:SSDSystemDisk;RSSD数据盘:RSSDDataDisk;为空拉取所有。 + * ProtocolVersion字段为1时,需结合IsBoot确定具体磁盘类型:普通数据盘:DiskType:"CLOUD_NORMAL",IsBoot:"False";普通系统盘:DiskType:"CLOUD_NORMAL",IsBoot:"True";SSD数据盘:DiskType:"CLOUD_SSD",IsBoot:"False";SSD系统盘:DiskType:"CLOUD_SSD",IsBoot:"True";RSSD数据盘:DiskType:"CLOUD_RSSD",IsBoot:"False";RSSD系统盘:DiskType:"CLOUD_RSSD",IsBoot:"True";高效数据盘:DiskType:"CLOUD_EFFICIENCY",IsBoot:"False";高效系统盘:DiskType:"CLOUD_EFFICIENCY",IsBoot:"True";为空拉取所有。ProtocolVersion字段为0或没有该字段时,可设为以下几个值:普通数据盘:DataDisk;普通系统盘:SystemDisk;SSD数据盘:SSDDataDisk;SSD系统盘:SSDSystemDisk;RSSD数据盘:RSSDDataDisk;RSSD系统盘:RSSDSystemDisk:高效数据盘:EfficiencyDataDisk;高效系统盘:EfficiencySystemDisk;为空拉取所有。 */ DiskType?: string; /** @@ -692,13 +704,25 @@ export interface DescribeUDiskRequest { */ IgnoreUBillInfo?: string; /** - * 根据传入的UHostIdForAttachment,筛选出虚机在同一PodId下的云盘【本字段即将废弃,建议使用HostIdForAttachment】 + * 是否忽略快照服务信息。Yes:忽略,No:不忽略,默认值(No)。(如不关心快照服务信息,建议选填“Yes”,可降低请求延时) + */ + IgnoreBackupMode?: string; + /** + * 是否只返回云盘基础信息(只包含云盘及关联主机的资源信息)。Yes:是,No:否,默认值(No)。(如仅需要基础信息,建议选填“Yes”,可降低请求延时) + */ + UDiskBasicInfo?: string; + /** + * 根据传入的UHostIdForAttachment,筛选出能被挂载在该主机上的云盘【本字段即将废弃,建议使用HostIdForAttachment】 */ UHostIdForAttachment?: string; /** - * 根据传入的HostIdForAttachment,筛选出虚机在同一PodId下的云盘 + * 根据传入的HostIdForAttachment,筛选出能被挂载在该主机上的云盘。目前主要针对RSSD云盘。 */ HostIdForAttachment?: string; + /** + * 根据传入的HostId,返回与该主机关联的云盘信息。 + */ + HostId?: string; /** * 宿主产品类型,可筛选挂载在该类型宿主上的云盘。可选值:uhost, uphost。为空拉取所有。(当HostIdForAttachment字段不为空时,该字段可以不填,若HostIdForAttachment与该字段宿主类型冲突,则以HostIdForAttachment字段为准。) */ @@ -797,7 +821,7 @@ export interface DescribeUDiskResponse { */ SnapshotLimit?: number; /** - * 请求中的ProtocolVersion字段为1时,需结合IsBoot确定具体磁盘类型:普通数据盘:DiskType:"CLOUD_NORMAL",IsBoot:"False"; 普通系统盘:DiskType:"CLOUD_NORMAL",IsBoot:"True";SSD数据盘:DiskType:"CLOUD_SSD",IsBoot:"False";SSD系统盘:DiskType:"CLOUD_SSD",IsBoot:"True";RSSD数据盘:DiskType:"CLOUD_RSSD",IsBoot:"False"。请求中的ProtocolVersion字段为0或没有该字段时,云硬盘类型参照如下:普通数据盘:DataDisk;普通系统盘:SystemDisk;SSD数据盘:SSDDataDisk;SSD系统盘:SSDSystemDisk;RSSD数据盘:RSSDDataDisk。 + * 请求中的ProtocolVersion字段为1时,需结合IsBoot确定具体磁盘类型:普通数据盘:DiskType:"CLOUD_NORMAL",IsBoot:"False"; 普通系统盘:DiskType:"CLOUD_NORMAL",IsBoot:"True";SSD数据盘:DiskType:"CLOUD_SSD",IsBoot:"False";SSD系统盘:DiskType:"CLOUD_SSD",IsBoot:"True";RSSD数据盘:DiskType:"CLOUD_RSSD",IsBoot:"False";RSSD系统盘:DiskType:"CLOUD_RSSD",IsBoot:"True";高效数据盘:DiskType:"CLOUD_EFFICIENCY",IsBoot:"False";高效系统盘:DiskType:"CLOUD_EFFICIENCY",IsBoot:"True"。请求中的ProtocolVersion字段为0或没有该字段时,云硬盘类型参照如下:普通数据盘:DataDisk;普通系统盘:SystemDisk;SSD数据盘:SSDDataDisk;SSD系统盘:SSDSystemDisk;RSSD数据盘:RSSDDataDisk;RSSD系统盘:RSSDSystemDisk;高效数据盘:EfficiencyDataDisk;高效系统盘:EfficiencySystemDisk。 */ DiskType?: string; /** @@ -926,7 +950,7 @@ export interface DescribeUDiskPriceResponse { */ export interface DescribeUDiskSnapshotRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -987,7 +1011,7 @@ export interface DescribeUDiskSnapshotResponse { */ Status: string; /** - * 磁盘类型,0:数据盘,1:系统盘 + * 磁盘类型,0:普通数据盘;1:普通系统盘;2:SSD数据盘;3:SSD系统盘;4:RSSD数据盘;5:RSSD系统盘。 */ DiskType: number; /** @@ -1057,7 +1081,7 @@ export interface DescribeUDiskUpgradePriceRequest { */ UDataArkMode?: string; /** - * 是否开启快照服务(开启快照服务,可免费开启数据方舟)。Yes:开启,No:不开启,默认值:No + * 是否开启快照服务(开启快照服务,可免费开启数据方舟)。Yes:开启,No:不开启,默认值:No。仅支持查询开启快照服务的价格。 */ SnapshotService?: string; /** diff --git a/lib/services/uec/index.d.ts b/lib/services/uec/index.d.ts index 4bd3f10..0727971 100644 --- a/lib/services/uec/index.d.ts +++ b/lib/services/uec/index.d.ts @@ -15,6 +15,12 @@ export default class UECClient extends Client { * See also: https://docs.ucloud.cn/api/uec-api/bind_u_ec_firewall */ bindUEcFirewall(request?: BindUEcFirewallRequest): Promise; + /** + * CreateUEcCustomImage - 从指定虚拟机,生成自定义镜像。 + * + * See also: https://docs.ucloud.cn/api/uec-api/create_u_ec_custom_image + */ + createUEcCustomImage(request?: CreateUEcCustomImageRequest): Promise; /** * CreateUEcFirewall - 创建外网防火墙 * @@ -274,6 +280,32 @@ export interface BindUEcFirewallRequest { */ export interface BindUEcFirewallResponse { } +/** + * CreateUEcCustomImage - 从指定虚拟机,生成自定义镜像。 + */ +export interface CreateUEcCustomImageRequest { + /** + * 虚拟机实例ID + */ + NodeId: string; + /** + * 镜像名称 + */ + ImageName: string; + /** + * 镜像描述 + */ + ImageDescription?: string; +} +/** + * CreateUEcCustomImage - 从指定虚拟机,生成自定义镜像。 + */ +export interface CreateUEcCustomImageResponse { + /** + * 镜像ID + */ + ImageId: string; +} /** * CreateUEcFirewall - 创建外网防火墙 */ @@ -350,7 +382,7 @@ export interface CreateUEcHolderRequest { */ Name?: string; /** - * 机型(normal-标准型,hf-高性能型,默认normal) + * 机型(normal-经济型,hf-标准型,默认normal) */ ProductType?: string; /** @@ -545,7 +577,7 @@ export interface CreateUEcVHostRequest { */ SubnetId?: string; /** - * 产品类型:normal(标准型),hf(高频型) + * 产品类型:normal(经济型),hf(标准型),g(Gpu型) */ ProductType?: string; /** @@ -557,9 +589,17 @@ export interface CreateUEcVHostRequest { */ Isp?: number[]; /** - * (已废弃)是否需要外网ip(yes-是,no-否) + * 是否需要外网ip(no-否) */ IsNeedOuterIp?: string; + /** + * Gpu卡核心数。仅Gpu机型支持此字段 + */ + Gpu?: number; + /** + * Gpu类型,枚举值["T4S"],ProductType为G时必填 + */ + GpuType?: string; } /** * CreateUEcVHost - 创建虚拟机v2.0 @@ -932,7 +972,7 @@ export interface DescribeUEcHolderResponse { }[]; }[]; /** - * 机器类型(normal通用型,hf高性能型) + * 机器类型(normal经济型,hf标准型) */ ProductType?: string; /** @@ -1075,9 +1115,13 @@ export interface DescribeUEcIDCRequest { */ Type?: number; /** - * 产品类型:normal(通用型),hf(高主频型) + * 产品类型:normal(经济型),hf(标准型),g(GPU型) */ ProductType?: string; + /** + * Gpu卡核心数 + */ + Gpu?: number; } /** * DescribeUEcIDC - 获取IDC机房列表 @@ -1295,9 +1339,13 @@ export interface DescribeUEcVHostResponse { */ FirewallId?: string; /** - * 机器类型 + * 机器类型(normal-经济型,hf-标准型,g-GPU型) */ ProductType?: string; + /** + * 内网ip列表 + */ + InnerIps?: string[]; }[]; } /** @@ -1745,7 +1793,7 @@ export interface GetUEcImageResponse { */ ImageDesc?: string; /** - * 镜像状态:镜像状态 1可用,2不可用 + * 镜像状态:镜像状态 1可用,2不可用,3制作中 */ State?: number; /** @@ -1769,6 +1817,10 @@ export interface GetUEcImageResponse { */ State?: number; }[]; + /** + * 是否支持Gpu(1-支持,0-不支持) + */ + Gpu?: number; }[]; /** * 镜像总数 @@ -2065,13 +2117,21 @@ export interface GetUEcVHostPriceRequest { */ ChargeQuantity?: number; /** - * 产品类型:normal(标准型),hf(高频型),默认normal + * 产品类型:normal(经济型),hf(标准型),g(Gpu型),默认normal */ ProductType?: string; /** * 外网IP的数量,默认1 */ IpCount?: number; + /** + * Gpu卡核心数。仅Gpu机型支持此字段 + */ + Gpu?: number; + /** + * Gpu类型,枚举值["T4"],ProductType为g时必填 + */ + GpuType?: string; } /** * GetUEcVHostPrice - 获取虚拟机价格 diff --git a/lib/services/uec/index.js b/lib/services/uec/index.js index 8001a52..80181a5 100644 --- a/lib/services/uec/index.js +++ b/lib/services/uec/index.js @@ -21,6 +21,15 @@ class UECClient extends client_1.default { const args = Object.assign({ Action: 'BindUEcFirewall' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * CreateUEcCustomImage - 从指定虚拟机,生成自定义镜像。 + * + * See also: https://docs.ucloud.cn/api/uec-api/create_u_ec_custom_image + */ + createUEcCustomImage(request) { + const args = Object.assign({ Action: 'CreateUEcCustomImage' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * CreateUEcFirewall - 创建外网防火墙 * diff --git a/lib/services/ufile/index.d.ts b/lib/services/ufile/index.d.ts index 9e1a74e..b5160f8 100644 --- a/lib/services/ufile/index.d.ts +++ b/lib/services/ufile/index.d.ts @@ -15,6 +15,12 @@ export default class UFileClient extends Client { * See also: https://docs.ucloud.cn/api/ufile-api/create_bucket */ createBucket(request?: CreateBucketRequest): Promise; + /** + * CreateUFileLifeCycle - 创建生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/create_ufile_life_cycle + */ + createUFileLifeCycle(request?: CreateUFileLifeCycleRequest): Promise; /** * CreateUFileToken - 创建US3令牌 * @@ -27,6 +33,12 @@ export default class UFileClient extends Client { * See also: https://docs.ucloud.cn/api/ufile-api/delete_bucket */ deleteBucket(request?: DeleteBucketRequest): Promise; + /** + * DeleteUFileLifeCycle - 删除生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/delete_ufile_life_cycle + */ + deleteUFileLifeCycle(request?: DeleteUFileLifeCycleRequest): Promise; /** * DeleteUFileToken - 删除令牌 * @@ -39,12 +51,24 @@ export default class UFileClient extends Client { * See also: https://docs.ucloud.cn/api/ufile-api/describe_bucket */ describeBucket(request?: DescribeBucketRequest): Promise; + /** + * DescribeUFileLifeCycle - 获取生命周期信息 + * + * See also: https://docs.ucloud.cn/api/ufile-api/describe_ufile_life_cycle + */ + describeUFileLifeCycle(request?: DescribeUFileLifeCycleRequest): Promise; /** * DescribeUFileToken - 获取令牌信息 * * See also: https://docs.ucloud.cn/api/ufile-api/describe_ufile_token */ describeUFileToken(request?: DescribeUFileTokenRequest): Promise; + /** + * GetUFileDailyReport - 查看日消费报表 + * + * See also: https://docs.ucloud.cn/api/ufile-api/get_ufile_daily_report + */ + getUFileDailyReport(request?: GetUFileDailyReportRequest): Promise; /** * GetUFileQuota - 查看配额状态 * @@ -81,6 +105,12 @@ export default class UFileClient extends Client { * See also: https://docs.ucloud.cn/api/ufile-api/update_bucket */ updateBucket(request?: UpdateBucketRequest): Promise; + /** + * UpdateUFileLifeCycle - 更新生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/update_ufile_life_cycle + */ + updateUFileLifeCycle(request?: UpdateUFileLifeCycleRequest): Promise; /** * UpdateUFileToken - 更新令牌的操作权限,可操作key的前缀,可操作bucket和令牌超时时间点 * @@ -114,6 +144,48 @@ export interface CreateBucketResponse { */ BucketId?: string; } +/** + * CreateUFileLifeCycle - 创建生命周期管理 + */ +export interface CreateUFileLifeCycleRequest { + /** + * 生命周期名称 + */ + LifeCycleName: string; + /** + * 生命周期所适用的前缀;*为整个存储空间文件;一条规则只支持一个文件前缀; + */ + Prefix: string; + /** + * Enabled -- 启用,Disabled -- 不启用 + */ + Status: string; + /** + * 存储空间名称 + */ + BucketName: string; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动删除;参数范围:[7,36500],0代表不启用 + */ + Days?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后,自动变为归档存储类型;参数范围:[7,36500],0代表不启用 + */ + ArchivalDays?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后,自动变为低频存储类型;参数范围:[7,36500],0代表不启用 + */ + IADays?: number; +} +/** + * CreateUFileLifeCycle - 创建生命周期管理 + */ +export interface CreateUFileLifeCycleResponse { + /** + * 生命周期Id + */ + LifeCycleId: string; +} /** * CreateUFileToken - 创建US3令牌 */ @@ -170,6 +242,24 @@ export interface DeleteBucketResponse { */ BucketId?: string; } +/** + * DeleteUFileLifeCycle - 删除生命周期管理 + */ +export interface DeleteUFileLifeCycleRequest { + /** + * 生命周期Id + */ + LifeCycleId: string; + /** + * 存储空间名称 + */ + BucketName: string; +} +/** + * DeleteUFileLifeCycle - 删除生命周期管理 + */ +export interface DeleteUFileLifeCycleResponse { +} /** * DeleteUFileToken - 删除令牌 */ @@ -272,6 +362,61 @@ export interface DescribeBucketResponse { HasUserDomain?: number; }[]; } +/** + * DescribeUFileLifeCycle - 获取生命周期信息 + */ +export interface DescribeUFileLifeCycleRequest { + /** + * 存储空间名称 + */ + BucketName: string; + /** + * 生命周期Id;不传递此参数拉取存储空间下面的所有生命周期信息 + */ + LifeCycleId?: string; +} +/** + * DescribeUFileLifeCycle - 获取生命周期信息 + */ +export interface DescribeUFileLifeCycleResponse { + /** + * 生命周期信息 + */ + DateSet: { + /** + * 生命周期Id + */ + LifeCycleId?: string; + /** + * 生命周期名称 + */ + LifeCycleName?: string; + /** + * 生命周期所适用的前缀;*为整个存储空间文件; + */ + Prefix?: string; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动删除,0代表不启用; + */ + Days?: number; + /** + * Enabled -- 启用,Disabled -- 不启用 + */ + Status?: string; + /** + * 存储空间名称 + */ + BucketName?: string; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动转换为归档存储类型,0代表不启用; + */ + ArchivalDays?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动转换为低频存储类型,0代表不启用; + */ + IADays?: number; + }[]; +} /** * DescribeUFileToken - 获取令牌信息 */ @@ -343,6 +488,107 @@ export interface DescribeUFileTokenResponse { Region: string; }[]; } +/** + * GetUFileDailyReport - 查看日消费报表 + */ +export interface GetUFileDailyReportRequest { + /** + * 查询开始时间;unix时间戳,单位s + */ + StartTime: number; + /** + * 查询结束时间;unix时间戳,单位s + */ + EndTime: number; + /** + * 空间名称。此字段不为空,返回此Bucket日使用量;否则,返回这个项目的日使用量 + */ + BucketName?: string; +} +/** + * GetUFileDailyReport - 查看日消费报表 + */ +export interface GetUFileDailyReportResponse { + /** + * 消费情况 + */ + DataSet: { + /** + * 总消费情况 + */ + Total?: { + /** + * 下载流量:单位byte;国内无此字段 + */ + Flow?: number; + /** + * 闲时流量;单位byte;海外无此字段 + */ + IdleFlow?: number; + /** + * 忙时流量;单位byte;海外无此字段 + */ + BusyFlow?: number; + /** + * cdn回源流量;单位byte + */ + CdnFlow?: number; + /** + * API请求次数(万次) + */ + ApiTimes?: number; + }[]; + /** + * 日消费情况 + */ + Daily?: { + /** + * 标准存储量;单位byte + */ + Storage?: number; + /** + * 低频存储量;单位byte + */ + IaStorage?: number; + /** + * 冷存(归档)存储量;单位byte + */ + AcStorage?: number; + /** + * 低频数据取回量;单位byte + */ + IaGetSize?: number; + /** + * 冷存激活量,即归档数据取回量;单位byte + */ + AcRestore?: number; + /** + * 忙时流量;单位byte;海外无此字段 + */ + BusyFlow?: number; + /** + * 闲时流量;单位byte;海外无此字段 + */ + IdleFlow?: number; + /** + * cdn回源流量;单位byte + */ + CdnFlow?: number; + /** + * 下载流量:单位byte;国内无此字段 + */ + Flow?: number; + /** + * 配额消费时间,unix时间戳(单位s),精确到日期 + */ + Date?: number; + /** + * API请求次数(万次) + */ + ApiTimes?: number; + }[]; + }[]; +} /** * GetUFileQuota - 查看配额状态 */ @@ -536,6 +782,48 @@ export interface UpdateBucketResponse { */ BucketId?: string; } +/** + * UpdateUFileLifeCycle - 更新生命周期管理 + */ +export interface UpdateUFileLifeCycleRequest { + /** + * 生命周期Id + */ + LifeCycleId: string; + /** + * 生命周期名称 + */ + LifeCycleName: string; + /** + * 生命周期所适用的前缀;*为整个存储空间文件;一条规则只支持一个文件前缀; + */ + Prefix: string; + /** + * Enabled -- 启用,Disabled -- 不启用 + */ + Status: string; + /** + * 存储空间名称 + */ + BucketName: string; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动删除;范围: [7,36500] + */ + Days?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动转换为归档存储类型;范围: [7,36500],0代表不启用 + */ + ArchivalDays?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动转换为低频存储类型;范围: [7,36500],0代表不启用 + */ + IADays?: number; +} +/** + * UpdateUFileLifeCycle - 更新生命周期管理 + */ +export interface UpdateUFileLifeCycleResponse { +} /** * UpdateUFileToken - 更新令牌的操作权限,可操作key的前缀,可操作bucket和令牌超时时间点 */ diff --git a/lib/services/ufile/index.js b/lib/services/ufile/index.js index fbce6e0..62b283f 100644 --- a/lib/services/ufile/index.js +++ b/lib/services/ufile/index.js @@ -21,6 +21,15 @@ class UFileClient extends client_1.default { const args = Object.assign({ Action: 'CreateBucket' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * CreateUFileLifeCycle - 创建生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/create_ufile_life_cycle + */ + createUFileLifeCycle(request) { + const args = Object.assign({ Action: 'CreateUFileLifeCycle' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * CreateUFileToken - 创建US3令牌 * @@ -39,6 +48,15 @@ class UFileClient extends client_1.default { const args = Object.assign({ Action: 'DeleteBucket' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DeleteUFileLifeCycle - 删除生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/delete_ufile_life_cycle + */ + deleteUFileLifeCycle(request) { + const args = Object.assign({ Action: 'DeleteUFileLifeCycle' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DeleteUFileToken - 删除令牌 * @@ -57,6 +75,15 @@ class UFileClient extends client_1.default { const args = Object.assign({ Action: 'DescribeBucket' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeUFileLifeCycle - 获取生命周期信息 + * + * See also: https://docs.ucloud.cn/api/ufile-api/describe_ufile_life_cycle + */ + describeUFileLifeCycle(request) { + const args = Object.assign({ Action: 'DescribeUFileLifeCycle' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeUFileToken - 获取令牌信息 * @@ -66,6 +93,15 @@ class UFileClient extends client_1.default { const args = Object.assign({ Action: 'DescribeUFileToken' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * GetUFileDailyReport - 查看日消费报表 + * + * See also: https://docs.ucloud.cn/api/ufile-api/get_ufile_daily_report + */ + getUFileDailyReport(request) { + const args = Object.assign({ Action: 'GetUFileDailyReport' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * GetUFileQuota - 查看配额状态 * @@ -120,6 +156,15 @@ class UFileClient extends client_1.default { const args = Object.assign({ Action: 'UpdateBucket' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * UpdateUFileLifeCycle - 更新生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/update_ufile_life_cycle + */ + updateUFileLifeCycle(request) { + const args = Object.assign({ Action: 'UpdateUFileLifeCycle' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * UpdateUFileToken - 更新令牌的操作权限,可操作key的前缀,可操作bucket和令牌超时时间点 * diff --git a/lib/services/ufs/index.d.ts b/lib/services/ufs/index.d.ts index f5416f0..5173cce 100644 --- a/lib/services/ufs/index.d.ts +++ b/lib/services/ufs/index.d.ts @@ -9,6 +9,12 @@ export default class UFSClient extends Client { config: ConfigOptions; credential: CredentialOptions; }); + /** + * AddUFSVolumeMountPoint - 添加文件系统挂载点 + * + * See also: https://docs.ucloud.cn/api/ufs-api/add_ufs_volume_mount_point + */ + addUFSVolumeMountPoint(request?: AddUFSVolumeMountPointRequest): Promise; /** * CreateUFSVolume - 创建文件系统 * @@ -21,6 +27,18 @@ export default class UFSClient extends Client { * See also: https://docs.ucloud.cn/api/ufs-api/describe_ufs_volume2 */ describeUFSVolume2(request?: DescribeUFSVolume2Request): Promise; + /** + * DescribeUFSVolumeMountpoint - 获取文件系统挂载点信息 + * + * See also: https://docs.ucloud.cn/api/ufs-api/describe_ufs_volume_mountpoint + */ + describeUFSVolumeMountpoint(request?: DescribeUFSVolumeMountpointRequest): Promise; + /** + * DescribeUFSVolumePrice - 获取文件系统价格 + * + * See also: https://docs.ucloud.cn/api/ufs-api/describe_ufs_volume_price + */ + describeUFSVolumePrice(request?: DescribeUFSVolumePriceRequest): Promise; /** * ExtendUFSVolume - 文件系统扩容 * @@ -33,21 +51,59 @@ export default class UFSClient extends Client { * See also: https://docs.ucloud.cn/api/ufs-api/remove_ufs_volume */ removeUFSVolume(request?: RemoveUFSVolumeRequest): Promise; + /** + * RemoveUFSVolumeMountPoint - 删除文件系统挂载点 + * + * See also: https://docs.ucloud.cn/api/ufs-api/remove_ufs_volume_mount_point + */ + removeUFSVolumeMountPoint(request?: RemoveUFSVolumeMountPointRequest): Promise; + /** + * UpdateUFSVolumeInfo - 更改文件系统相关信息(名称/备注) + * + * See also: https://docs.ucloud.cn/api/ufs-api/update_ufs_volume_info + */ + updateUFSVolumeInfo(request?: UpdateUFSVolumeInfoRequest): Promise; +} +/** + * AddUFSVolumeMountPoint - 添加文件系统挂载点 + */ +export interface AddUFSVolumeMountPointRequest { + /** + * 文件系统ID + */ + VolumeId: string; + /** + * 挂载点名称 + */ + MountPointName: string; + /** + * Vpc ID + */ + VpcId: string; + /** + * Subnet ID + */ + SubnetId: string; +} +/** + * AddUFSVolumeMountPoint - 添加文件系统挂载点 + */ +export interface AddUFSVolumeMountPointResponse { } /** * CreateUFSVolume - 创建文件系统 */ export interface CreateUFSVolumeRequest { /** - * 文件系统大小,单位为GB,最大不超过20T,香港容量型必须为100的整数倍,Size最小为500GB,北京,上海,广州的容量型必须为1024的整数倍,Size最小为1024GB。性能型文件系统Size最小为100GB + * 文件系统大小,单位为GB,必须为100的整数倍,容量型Size最小为500GB,性能型文件系统Size最小为100GB */ Size: number; /** - * 文件系统存储类型,枚举值,Basic表示容量型,Advanced表示性能型 + * 文件系统存储类型,Basic表示容量型,Advanced表示性能型 */ StorageType: string; /** - * 文件系统协议,枚举值,NFSv3表示NFS V3协议,NFSv4表示NFS V4协议 + * 文件系统协议,目前仅支持NFSv4 */ ProtocolType: string; /** @@ -175,6 +231,104 @@ export interface DescribeUFSVolume2Response { IsExpired?: string; }[]; } +/** + * DescribeUFSVolumeMountpoint - 获取文件系统挂载点信息 + */ +export interface DescribeUFSVolumeMountpointRequest { + /** + * 文件系统ID + */ + VolumeId: string; +} +/** + * DescribeUFSVolumeMountpoint - 获取文件系统挂载点信息 + */ +export interface DescribeUFSVolumeMountpointResponse { + /** + * + */ + DataSet: { + /** + * 挂载点名称 + */ + MountPointName: string; + /** + * Vpc ID + */ + VpcId: string; + /** + * Subnet ID + */ + SubnetId: string; + /** + * ${挂载点IP}:/ + */ + MountPointIp: string; + /** + * 文件系统创建时间(unix时间戳) + */ + CreateTime: number; + /** + * Subnet ID + 网段的形式,方便前端展示 + */ + SubnetDescription: string; + }[]; + /** + * 目前的挂载点总数 + */ + TotalMountPointNum: number; + /** + * 文件系统能创建的最大挂载点数目 + */ + MaxMountPointNum: number; +} +/** + * DescribeUFSVolumePrice - 获取文件系统价格 + */ +export interface DescribeUFSVolumePriceRequest { + /** + * 文件系统大小,单位为GB,新架构容量型最小容量为500GB,以100GB递增,最大不超过100TB。新架构性能型最小容量为100GB,以100GB递增,最大不超过20TB + */ + Size: number; + /** + * 文件存储类型,枚举值,Basic表示容量型产品,Advanced表示性能型产品 + */ + StorageType: string; + /** + * 购买UFS的时长, 默认为1 + */ + Quantity?: number; + /** + * Year, Month, Dynamic,Trial,默认: Dynamic + */ + ChargeType?: string; + /** + * 文件系统id,第一次创建文件系统时不需要传这个参数 + */ + VolumeId?: string; +} +/** + * DescribeUFSVolumePrice - 获取文件系统价格 + */ +export interface DescribeUFSVolumePriceResponse { + /** + * ufs 价格信息 + */ + DataSet?: { + /** + * Year, Month, Dynamic,Trial + */ + ChargeType?: string; + /** + * 价格 (单位: 分) + */ + Price?: number; + /** + * “UFS” + */ + ChargeName?: string; + }[]; +} /** * ExtendUFSVolume - 文件系统扩容 */ @@ -207,3 +361,47 @@ export interface RemoveUFSVolumeRequest { */ export interface RemoveUFSVolumeResponse { } +/** + * RemoveUFSVolumeMountPoint - 删除文件系统挂载点 + */ +export interface RemoveUFSVolumeMountPointRequest { + /** + * 文件系统ID + */ + VolumeId: string; + /** + * Vpc ID + */ + VpcId: string; + /** + * Subnet ID + */ + SubnetId: string; +} +/** + * RemoveUFSVolumeMountPoint - 删除文件系统挂载点 + */ +export interface RemoveUFSVolumeMountPointResponse { +} +/** + * UpdateUFSVolumeInfo - 更改文件系统相关信息(名称/备注) + */ +export interface UpdateUFSVolumeInfoRequest { + /** + * 文件系统ID + */ + VolumeId: string; + /** + * 文件系统名称(文件系统名称/备注至少传入其中一个) + */ + VolumeName?: string; + /** + * 文件系统备注(文件系统名称/备注至少传入其中一个) + */ + Remark?: string; +} +/** + * UpdateUFSVolumeInfo - 更改文件系统相关信息(名称/备注) + */ +export interface UpdateUFSVolumeInfoResponse { +} diff --git a/lib/services/ufs/index.js b/lib/services/ufs/index.js index cd657cf..9e2fa03 100644 --- a/lib/services/ufs/index.js +++ b/lib/services/ufs/index.js @@ -12,6 +12,15 @@ class UFSClient extends client_1.default { constructor({ config, credential, }) { super({ config, credential }); } + /** + * AddUFSVolumeMountPoint - 添加文件系统挂载点 + * + * See also: https://docs.ucloud.cn/api/ufs-api/add_ufs_volume_mount_point + */ + addUFSVolumeMountPoint(request) { + const args = Object.assign({ Action: 'AddUFSVolumeMountPoint' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * CreateUFSVolume - 创建文件系统 * @@ -30,6 +39,24 @@ class UFSClient extends client_1.default { const args = Object.assign({ Action: 'DescribeUFSVolume2' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeUFSVolumeMountpoint - 获取文件系统挂载点信息 + * + * See also: https://docs.ucloud.cn/api/ufs-api/describe_ufs_volume_mountpoint + */ + describeUFSVolumeMountpoint(request) { + const args = Object.assign({ Action: 'DescribeUFSVolumeMountpoint' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * DescribeUFSVolumePrice - 获取文件系统价格 + * + * See also: https://docs.ucloud.cn/api/ufs-api/describe_ufs_volume_price + */ + describeUFSVolumePrice(request) { + const args = Object.assign({ Action: 'DescribeUFSVolumePrice' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ExtendUFSVolume - 文件系统扩容 * @@ -48,5 +75,23 @@ class UFSClient extends client_1.default { const args = Object.assign({ Action: 'RemoveUFSVolume' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * RemoveUFSVolumeMountPoint - 删除文件系统挂载点 + * + * See also: https://docs.ucloud.cn/api/ufs-api/remove_ufs_volume_mount_point + */ + removeUFSVolumeMountPoint(request) { + const args = Object.assign({ Action: 'RemoveUFSVolumeMountPoint' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * UpdateUFSVolumeInfo - 更改文件系统相关信息(名称/备注) + * + * See also: https://docs.ucloud.cn/api/ufs-api/update_ufs_volume_info + */ + updateUFSVolumeInfo(request) { + const args = Object.assign({ Action: 'UpdateUFSVolumeInfo' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } } exports.default = UFSClient; diff --git a/lib/services/uhost/index.d.ts b/lib/services/uhost/index.d.ts index 21023c9..f0bbf4f 100644 --- a/lib/services/uhost/index.d.ts +++ b/lib/services/uhost/index.d.ts @@ -333,7 +333,7 @@ export interface CreateUHostInstanceRequest { */ Size: number; /** - * 磁盘备份方案。枚举值:\\ > NONE,无备份 \\ > DATAARK,数据方舟 \\ > SNAPSHOT(SNAPSHOT模式目前仅在上海C支持),快照 \\当前磁盘支持的备份模式参考 [[api:uhost-api:disk_type|磁盘类型]],默认值:NONE + * 磁盘备份方案。枚举值:\\ > NONE,无备份 \\ > DATAARK,数据方舟 \\ > SNAPSHOT,快照 \\当前磁盘支持的备份模式参考 [[api:uhost-api:disk_type|磁盘类型]],默认值:NONE */ BackupType?: string; /** @@ -348,10 +348,6 @@ export interface CreateUHostInstanceRequest { * 云盘代金券id。不适用于系统盘/本地盘。请通过DescribeCoupon接口查询,或登录用户中心查看 */ CouponId?: string; - /** - * 磁盘id,只有云盘系统盘可以有此参数,且该系统盘id必须已经存在 - */ - Id?: string; }[]; /** * 主机登陆模式。密码(默认选项): Password,密钥:KeyPair。 @@ -370,7 +366,7 @@ export interface CreateUHostInstanceRequest { */ Tag?: string; /** - * 计费模式。枚举值为: \\ > Year,按年付费; \\ > Month,按月付费;\\ > Dynamic,按小时预付费 \\ > Postpay,按小时后付费(支持关机不收费,目前仅部分可用区支持,请联系您的客户经理) \\Preemptive计费为抢占式实例 \\ 默认为月付 + * 计费模式。枚举值为: \\ > Year,按年付费; \\ > Month,按月付费;\\ > Dynamic,按小时预付费 \\ > Postpay,按小时后付费(支持关机不收费,目前仅部分可用区支持,请联系您的客户经理) \\Preemptive计费为抢占式实例(内测阶段) \\ 默认为月付 */ ChargeType?: string; /** @@ -390,26 +386,13 @@ export interface CreateUHostInstanceRequest { */ Memory?: number; /** - * GPU类型,枚举值["K80", "P40", "V100", "T4", "T4S","2080Ti","2080Ti-4C","1080Ti"],MachineType为G时必填 + * GPU类型,枚举值["K80", "P40", "V100", "T4", "T4S","2080Ti","2080Ti-4C","1080Ti", "T4/4", "MI100", "V100S"],MachineType为G时必填 */ GpuType?: string; /** * GPU卡核心数。仅GPU机型支持此字段(可选范围与MachineType+GpuType相关) */ GPU?: number; - /** - * - */ - VirtualGpu?: { - /** - * 虚拟 GPU 类型,枚举值["vGPU_T4","vGPU_P40","vGPU_V100"] - */ - GpuType?: string; - /** - * 虚拟 GPU 核数,默认 1。注:当前暂时只支持1颗。 - */ - GPU?: number; - }; /** * 网络增强特性。枚举值:Normal(默认),不开启; Super,开启网络增强1.0; Ultra,开启网络增强2.0(仅支持部分可用区,请参考控制台) */ @@ -443,11 +426,11 @@ export interface CreateUHostInstanceRequest { */ AlarmTemplateId?: number; /** - * 云主机机型(V2.0),在本字段和字段UHostType中,仅需要其中1个字段即可。枚举值["N", "C", "G", "O", "OS", "OPRO", "OMAX", "O.BM"]。参考[[api:uhost-api:uhost_type|云主机机型说明]]。 + * 云主机机型(V2.0),在本字段和字段UHostType中,仅需要其中1个字段即可。枚举值["N", "C", "G", "O", "OS", "OM", "OPRO", "OMAX", "O.BM", "O.EPC"]。参考[[api:uhost-api:uhost_type|云主机机型说明]]。 */ MachineType?: string; /** - * 最低cpu平台,枚举值["Intel/Auto", "Intel/IvyBridge", "Intel/Haswell", "Intel/Broadwell", "Intel/Skylake", "Intel/Cascadelake";"Intel/CascadelakeR"; “Amd/Epyc2”,"Amd/Auto"],默认值是"Intel/Auto"。 + * 最低cpu平台,枚举值["Intel/Auto", "Intel/IvyBridge", "Intel/Haswell", "Intel/Broadwell", "Intel/Skylake", "Intel/Cascadelake", "Intel/CascadelakeR", "Intel/IceLake", "Amd/Epyc2", "Amd/Auto"],默认值是"Intel/Auto"。 */ MinimalCpuPlatform?: string; /** @@ -474,23 +457,6 @@ export interface CreateUHostInstanceRequest { * 绑定的共享带宽Id,仅当PayMode为ShareBandwidth时有效 */ ShareBandwidthId?: string; - /** - * - */ - GlobalSSH?: { - /** - * 填写支持SSH访问IP的地区名称,如“洛杉矶”,“新加坡”,“香港”,“东京”,“华盛顿”,“法兰克福”。Area和AreaCode两者必填其中之一。 - */ - Area?: string; - /** - * SSH端口,1-65535且不能使用80,443端口 - */ - Port?: number; - /** - * GlobalSSH的地区编码,格式为区域航空港国际通用代码。Area和AreaCode两者必填其中之一。 - */ - AreaCode?: string; - }; /** * 【若绑定EIP,此参数必填】弹性IP的线路。枚举值: 国际: International BGP: Bgp 各地域允许的线路参数如下: cn-sh1: Bgp cn-sh2: Bgp cn-gd: Bgp cn-bj1: Bgp cn-bj2: Bgp hk: International us-ca: International th-bkk: International kr-seoul:International us-ws:International ge-fra:International sg:International tw-kh:International.其他海外线路均为 International */ @@ -503,16 +469,7 @@ export interface CreateUHostInstanceRequest { /** * */ - IPv6?: { - /** - * 第N块网卡中IPv6对应的共享带宽id,默认不带外网 - */ - ShareBandwidthId?: string; - /** - * 第N个网卡对应的IPv6地址,默认不分配IPv6,“Auto”自动分配,不为空的其他字符串为实际要分配的IPv6地址 - */ - Address?: string; - }; + IPv6?: object; /** * 申请并绑定一个教育网EIP。True为申请并绑定,False为不会申请绑定,默认False。当前只支持具有HPC特性的机型。 */ @@ -529,32 +486,20 @@ export interface CreateUHostInstanceRequest { /** * */ - Volumes?: { - /** - * 存储文件卷类型,当前仅支持[CLOUD_FSX]。 - */ - Type?: string; - /** - * 存储文件卷,当前只用于数据卷,且限于 Windows,默认为 fase。 - */ - IsBoot?: string; - /** - * 存储文件卷大小,单位GB,必须是10GB的整数倍,至少 100GB。 - */ - Size?: number; - /** - * 已有存储文件卷ID,设置了,对应的 Size 可以为 0 GB。 - */ - VolumeId?: string; - /** - * 存储文件卷代金券id。不适用于系统盘/本地盘。请通过DescribeCoupon接口查询,或登录用户中心查看 - */ - CouponId?: string; - }[]; + Volumes?: object[]; /** * KeypairId 密钥对ID,LoginMode为KeyPair时此项必须 */ KeyPairId?: string; + /** + * + */ + Features?: { + /** + * 弹性网卡特性。开启了弹性网卡权限位,此特性才生效,默认 false 未开启,true 开启,仅与 NetCapability Normal 兼容。 + */ + UNI?: boolean; + }; /** * 主机代金券ID。请通过DescribeCoupon接口查询,或登录用户中心查看 */ @@ -1178,10 +1123,6 @@ export interface DescribeUHostKeyPairsResponse { * 密钥对指纹。md5(ProjectId|KeyPairId|PublicKey) */ KeyPairFingerPrint?: string; - /** - * 密钥对的私钥内容。只有创建接口才会返回。 - */ - PrivateKeyBody?: string; /** * 密钥对的创建时间,格式为Unix Timestamp。 */ @@ -1341,33 +1282,11 @@ export interface GetUHostInstancePriceRequest { /** * */ - Volumes?: { - /** - * 存储文件卷类型,当前仅支持[CLOUD_FSX]。请参考[[api:uhost-api:volume_type|卷类型]]。 - */ - Type?: string; - /** - * 存储文件卷大小,单位GB,必须是10GB的整数倍,至少 100GB。 - */ - Size?: number; - /** - * 存储文件卷,当前只用于数据卷,且限于 Windows,默认为 fase。 - */ - IsBoot?: string; - }[]; + Volumes?: object[]; /** * */ - VirtualGpu?: { - /** - * 虚拟 GPU 类型,枚举值["vGPU_T4","vGPU_P40","vGPU_V100"] - */ - GpuType?: string; - /** - * 虚拟 GPU 核数,默认 1。注:当前暂时只支持1颗。 - */ - GPU?: number; - }; + VirtualGpu?: object; } /** * GetUHostInstancePrice - 根据UHost实例配置,获取UHost实例的价格。 diff --git a/lib/services/uk8s/index.d.ts b/lib/services/uk8s/index.d.ts index 6be35d4..335c059 100644 --- a/lib/services/uk8s/index.d.ts +++ b/lib/services/uk8s/index.d.ts @@ -15,6 +15,12 @@ export default class UK8SClient extends Client { * See also: https://docs.ucloud.cn/api/uk8s-api/add_uk8s_existing_uhost */ addUK8SExistingUHost(request?: AddUK8SExistingUHostRequest): Promise; + /** + * AddUK8SNodeGroup - 添加UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/add_uk8s_node_group + */ + addUK8SNodeGroup(request?: AddUK8SNodeGroupRequest): Promise; /** * AddUK8SPHostNode - 为UK8S集群添加一台或多台物理云主机类型的节点。 * @@ -45,12 +51,24 @@ export default class UK8SClient extends Client { * See also: https://docs.ucloud.cn/api/uk8s-api/del_uk8s_cluster_node_v2 */ delUK8SClusterNodeV2(request?: DelUK8SClusterNodeV2Request): Promise; + /** + * DescribeUK8SCluster - 获取集群信息 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/describe_uk8s_cluster + */ + describeUK8SCluster(request?: DescribeUK8SClusterRequest): Promise; /** * DescribeUK8SImage - 获取UK8S支持的Node节点操作系统,可基于该操作系统制定自定义镜像 * * See also: https://docs.ucloud.cn/api/uk8s-api/describe_uk8s_image */ describeUK8SImage(request?: DescribeUK8SImageRequest): Promise; + /** + * DescribeUK8SNode - 用于获取 UK8S 节点详情 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/describe_uk8s_node + */ + describeUK8SNode(request?: DescribeUK8SNodeRequest): Promise; /** * ListUK8SClusterNodeV2 - 获取UK8S集群节点信息 * @@ -63,6 +81,18 @@ export default class UK8SClient extends Client { * See also: https://docs.ucloud.cn/api/uk8s-api/list_uk8s_cluster_v2 */ listUK8SClusterV2(request?: ListUK8SClusterV2Request): Promise; + /** + * ListUK8SNodeGroup - 列出UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/list_uk8s_node_group + */ + listUK8SNodeGroup(request?: ListUK8SNodeGroupRequest): Promise; + /** + * RemoveUK8SNodeGroup - 删除UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/remove_uk8s_node_group + */ + removeUK8SNodeGroup(request?: RemoveUK8SNodeGroupRequest): Promise; } /** * AddUK8SExistingUHost - 将预先创建好的云主机加入到UK8S集群,需要注意的是,该云主机依然会执行重装系统的操作。 @@ -118,6 +148,80 @@ export interface AddUK8SExistingUHostRequest { */ export interface AddUK8SExistingUHostResponse { } +/** + * AddUK8SNodeGroup - 添加UK8S节点池 + */ +export interface AddUK8SNodeGroupRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 节点池名字 + */ + NodeGroupName: string; + /** + * 集群ID + */ + ClusterId: string; + /** + * 镜像ID + */ + ImageId?: string; + /** + * 云主机机型。枚举值["N", "C", "G", "O", "OS"]。参考[[api:uhost-api:uhost_type|云主机机型说明]]。 + */ + MachineType?: string; + /** + * 最低cpu平台,枚举值["Intel/Auto", "Intel/IvyBridge", "Intel/Haswell", "Intel/Broadwell", "Intel/Skylake", "Intel/Cascadelake";"Intel/CascadelakeR"; “Amd/Epyc2”,"Amd/Auto"],默认值是"Intel/Auto" + */ + MinimalCpuPlatform?: string; + /** + * GPU卡核心数。仅GPU机型支持此字段(可选范围与MachineType+GpuType相关) + */ + CPU?: number; + /** + * 内存大小。单位:MB + */ + Mem?: number; + /** + * GPU类型 + */ + GpuType?: string; + /** + * GPU卡核心数 + */ + GPU?: number; + /** + * 磁盘类型 + */ + BootDiskType?: string; + /** + * 数据磁盘大小 + */ + DataDiskSize?: number; + /** + * 磁盘类型 + */ + DataDiskType?: string; + /** + * 业务组 + */ + Tag?: string; + /** + * 计费模式 + */ + ChargeType?: string; +} +/** + * AddUK8SNodeGroup - 添加UK8S节点池 + */ +export interface AddUK8SNodeGroupResponse { + /** + * 节点池ID + */ + NodeGroupId: string; +} /** * AddUK8SPHostNode - 为UK8S集群添加一台或多台物理云主机类型的节点。 */ @@ -193,7 +297,7 @@ export interface AddUK8SPHostNodeResponse { */ export interface AddUK8SUHostNodeRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -205,7 +309,7 @@ export interface AddUK8SUHostNodeRequest { */ CPU: number; /** - * 最大创建Node节点数量,取值范围是[1,10]。 + * 创建Node节点数量,取值范围是[1,50]。 */ Count: number; /** @@ -231,7 +335,7 @@ export interface AddUK8SUHostNodeRequest { /** * 数据磁盘大小,单位GB。默认0。范围 :[20, 1000] */ - DataDiskSize?: string; + DataDiskSize?: number; /** * 购买时长。默认: 1。按小时购买(Dynamic)时无需此参数。 月付时,此参数传0,代表了购买至月末。 */ @@ -507,6 +611,331 @@ export interface DelUK8SClusterNodeV2Request { */ export interface DelUK8SClusterNodeV2Response { } +/** + * DescribeUK8SCluster - 获取集群信息 + */ +export interface DescribeUK8SClusterRequest { + /** + * k8s集群ID + */ + ClusterId: string; +} +/** + * DescribeUK8SCluster - 获取集群信息 + */ +export interface DescribeUK8SClusterResponse { + /** + * 资源名字 + */ + ClusterName: string; + /** + * 集群ID + */ + ClusterId: string; + /** + * 所属VPC + */ + VPCId: string; + /** + * 所属子网 + */ + SubnetId: string; + /** + * Pod网段 + */ + PodCIDR: string; + /** + * 服务网段 + */ + ServiceCIDR: string; + /** + * Master 节点数量 + */ + MasterCount: number; + /** + * Master节点配置信息,具体参考UhostInfo。托管版不返回该信息 + */ + MasterList?: { + /** + * 所在机房 + */ + Zone: string; + /** + * 主机名称 + */ + Name: string; + /** + * Cpu数量 + */ + CPU: number; + /** + * 内存 + */ + Memory: number; + /** + * 节点IP信息 + */ + IPSet: { + /** + * 国际: Internation,BGP: Bgp,内网: Private + */ + Type?: string; + /** + * IP资源ID (内网IP无对应的资源ID) + */ + IPId?: string; + /** + * IP地址 + */ + IP?: string; + /** + * IP对应的带宽, 单位: Mb (内网IP不显示带宽信息) + */ + Bandwidth?: number; + /** + * 是否默认的弹性网卡的信息。true: 是默认弹性网卡;其他值:不是。 + */ + Default?: string; + }[]; + /** + * 节点磁盘信息 + */ + DiskSet: { + /** + * 磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk + */ + Type?: string; + /** + * 磁盘长ID + */ + DiskId?: string; + /** + * UDisk名字(仅当磁盘是UDisk时返回) + */ + Name?: string; + /** + * 磁盘盘符 + */ + Drive?: string; + /** + * 磁盘大小,单位: GB + */ + Size?: number; + /** + * 备份方案,枚举类型:BASIC_SNAPSHOT,普通快照;DATAARK,方舟。无快照则不返回该字段。 + */ + BackupType?: string; + /** + * 当前主机的IOPS值 + */ + IOPS?: number; + /** + * Yes: 加密 No: 非加密 + */ + Encrypted?: string; + /** + * LOCAL_NOMAL| CLOUD_NORMAL| LOCAL_SSD| CLOUD_SSD|EXCLUSIVE_LOCAL_DISK + */ + DiskType?: string; + /** + * True| False + */ + IsBoot?: string; + }[]; + /** + * 主机ID + */ + NodeId: string; + /** + * 镜像信息 + */ + OsName: string; + /** + * 创建时间 + */ + CreateTime: number; + /** + * 到期时间 + */ + ExpireTime: number; + /** + * 主机状态 + */ + State: string; + /** + * 节点类型:uhost表示云主机;uphost表示物理云主机 + */ + NodeType: string; + }[]; + /** + * Node节点配置信息,具体参考UhostInfo + */ + NodeList?: { + /** + * 所在机房 + */ + Zone: string; + /** + * 主机名称 + */ + Name: string; + /** + * Cpu数量 + */ + CPU: number; + /** + * 内存 + */ + Memory: number; + /** + * 节点IP信息 + */ + IPSet: { + /** + * 国际: Internation,BGP: Bgp,内网: Private + */ + Type?: string; + /** + * IP资源ID (内网IP无对应的资源ID) + */ + IPId?: string; + /** + * IP地址 + */ + IP?: string; + /** + * IP对应的带宽, 单位: Mb (内网IP不显示带宽信息) + */ + Bandwidth?: number; + /** + * 是否默认的弹性网卡的信息。true: 是默认弹性网卡;其他值:不是。 + */ + Default?: string; + }[]; + /** + * 节点磁盘信息 + */ + DiskSet: { + /** + * 磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk + */ + Type?: string; + /** + * 磁盘长ID + */ + DiskId?: string; + /** + * UDisk名字(仅当磁盘是UDisk时返回) + */ + Name?: string; + /** + * 磁盘盘符 + */ + Drive?: string; + /** + * 磁盘大小,单位: GB + */ + Size?: number; + /** + * 备份方案,枚举类型:BASIC_SNAPSHOT,普通快照;DATAARK,方舟。无快照则不返回该字段。 + */ + BackupType?: string; + /** + * 当前主机的IOPS值 + */ + IOPS?: number; + /** + * Yes: 加密 No: 非加密 + */ + Encrypted?: string; + /** + * LOCAL_NOMAL| CLOUD_NORMAL| LOCAL_SSD| CLOUD_SSD|EXCLUSIVE_LOCAL_DISK + */ + DiskType?: string; + /** + * True| False + */ + IsBoot?: string; + }[]; + /** + * 主机ID + */ + NodeId: string; + /** + * 镜像信息 + */ + OsName: string; + /** + * 创建时间 + */ + CreateTime: number; + /** + * 到期时间 + */ + ExpireTime: number; + /** + * 主机状态 + */ + State: string; + /** + * 节点类型:uhost表示云主机;uphost表示物理云主机 + */ + NodeType: string; + }[]; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * Node节点数量 + */ + NodeCount?: number; + /** + * 集群apiserver地址 + */ + ApiServer?: string; + /** + * 状态 + */ + Status?: string; + /** + * 集群外部apiserver地址 + */ + ExternalApiServer?: string; + /** + * kube-proxy配置 + */ + KubeProxy?: { + /** + * KubeProxy模式,枚举值为[ipvs,iptables] + */ + Mode?: string; + }; + /** + * K8S版本 + */ + Version?: string; + /** + * 自定义或者默认的clusterdomain + */ + ClusterDomain?: string; + /** + * 集群etcd服务证书 + */ + EtcdCert?: string; + /** + * 集群etcd服务密钥 + */ + EtcdKey?: string; + /** + * 集群CA根证书 + */ + CACert?: string; + /** + * Master配置预警:Normal正常;Warning 需要升级;Error 需要紧急升级; + */ + MasterResourceStatus?: string; +} /** * DescribeUK8SImage - 获取UK8S支持的Node节点操作系统,可基于该操作系统制定自定义镜像 */ @@ -563,6 +992,161 @@ export interface DescribeUK8SImageResponse { NotSupportGPU: boolean; }[]; } +/** + * DescribeUK8SNode - 用于获取 UK8S 节点详情 + */ +export interface DescribeUK8SNodeRequest { + /** + * UK8S 集群 Id + */ + ClusterId: string; + /** + * K8S 节点IP或者节点ID + */ + Name: string; +} +/** + * DescribeUK8SNode - 用于获取 UK8S 节点详情 + */ +export interface DescribeUK8SNodeResponse { + /** + * 节点名称 + */ + Name: string; + /** + * 字符串数组,每一项是类似 "kubernetes.io/arch=amd64" 的标签 + */ + Labels: string[]; + /** + * 字符串数组,每一项是类似 "node.alpha.kubernetes.io/ttl=0" 的注解 + */ + Annotations: string[]; + /** + * 时间戳,单位是 秒 + */ + CreationTimestamp: number; + /** + * 字符串,如:"UCloud://cn-sh2-02//uk8s-vsc0vgob-n-mpzxc" + */ + ProviderID: string; + /** + * 内核版本,如:"4.19.0-6.el7.ucloud.x86_64" + */ + KernelVersion: string; + /** + * 操作系统类型,如:"CentOS Linux 7 (Core)" + */ + OSImage: string; + /** + * 容器运行时版本,如:"docker://18.9.9" + */ + ContainerRuntimeVersion: string; + /** + * kubelet 版本 + */ + KubeletVersion: string; + /** + * kubeproxy 版本 + */ + KubeProxyVersion: string; + /** + * 内部 IP 地址 + */ + InternalIP: string; + /** + * 主机名 + */ + Hostname: string; + /** + * 已分配到当前节点的 Pod 数量 + */ + AllocatedPodCount: number; + /** + * 节点允许的可分配 Pod 最大数量 + */ + PodCapacity: number; + /** + * 是否禁止调度 + */ + Unschedulable: boolean; + /** + * 节点 CPU 总量 + */ + CPUCapacity: string; + /** + * 节点内存总量 + */ + MemoryCapacity: string; + /** + * 节点上已分配 Pod 的内存请求量 + */ + MemoryRequests: string; + /** + * 节点上已分配 Pod 的内存请求量占内存总量的比例,如返回值为 "4.5",则意味着请求量占总量的 4.5% + */ + MemoryRequestsFraction: string; + /** + * 节点上已分配 Pod 的内存限制量 + */ + MemoryLimits: string; + /** + * 节点上已分配 Pod 的内存限制量占内存总量的比例,如返回值为 "18",则意味着限制量占总量的 18% + */ + MemoryLimitsFraction: string; + /** + * 节点上已分配 Pod 的 CPU 请求量 + */ + CPURequests: string; + /** + * 节点上已分配 Pod 的 CPU 请求量占 CPU 总量的比例 + */ + CPURequestsFraction: string; + /** + * 节点上已分配 Pod 的 CPU 限制值 + */ + CPULimits: string; + /** + * 节点上已分配 Pod 的 CPU 限制值占 CPU 总量的比例 + */ + CPULimitsFraction: string; + /** + * 节点状态数组 + */ + Conditions: { + /** + * Condition 类型,如 MemoryPressure、DiskPressure、PIDPressure、Ready + */ + Type?: string; + /** + * 状态,False、True + */ + Status?: string; + /** + * 最后一次上报状态的时间 + */ + LastProbeTime?: string; + /** + * 最后一次状态转变时间 + */ + LastTransitionTime?: string; + /** + * 状态变化的原因 + */ + Reason?: string; + /** + * 状态变化的描述信息 + */ + Message?: string; + }[]; + /** + * 节点上镜像名称数组 + */ + ContainerImages: string[]; + /** + * 字符串数组,每一项是类似 "node-role.kubernetes.io/master:NoSchedule" 的污点 + */ + Taints?: string[]; +} /** * ListUK8SClusterNodeV2 - 获取UK8S集群节点信息 */ @@ -593,7 +1177,7 @@ export interface ListUK8SClusterNodeV2Response { */ NodeRole: string; /** - * Node的状态 + * Node的状态:枚举值:初始化:"Initializing";启动中:"Starting";运行:"Running";停止中:"Stopping";停止:"Stopped";待删除:"ToBeDeleted";删除中:"Deleting";异常:"Error";安装失败:"Install Fail"; */ NodeStatus: string; /** @@ -648,10 +1232,6 @@ export interface ListUK8SClusterNodeV2Response { * IP对应的带宽, 单位: Mb (内网IP不显示带宽信息) */ Bandwidth?: number; - /** - * 是否默认的弹性网卡的信息。true: 是默认弹性网卡;其他值:不是。 - */ - Default?: string; /** * IP地址对应的VPC ID */ @@ -769,6 +1349,10 @@ export interface ListUK8SClusterV2Response { * 集群版本 */ K8sVersion: string; + /** + * 创建集群时判断如果为NORESOURCE则为没资源,否则为空 + */ + ClusterLogInfo?: string; /** * 创建时间 */ @@ -782,8 +1366,105 @@ export interface ListUK8SClusterV2Response { */ ExternalApiServer?: string; /** - * 状态 + * 集群状态,枚举值:初始化:"INITIALIZING";启动中:"STARTING";创建失败:"CREATEFAILED";正常运行:"RUNNING";添加节点:"ADDNODE";删除节点:"DELNODE";删除中:"DELETING";删除失败:"DELETEFAILED";错误:"ERROR";升级插件:"UPDATE_PLUGIN";更新插件信息:"UPDATE_PLUGIN_INFO";异常:"ABNORMAL";升级集群中:"UPGRADING";容器运行时切换:"CONVERTING" */ Status?: string; }[]; } +/** + * ListUK8SNodeGroup - 列出UK8S节点池 + */ +export interface ListUK8SNodeGroupRequest { + /** + * 集群ID + */ + ClusterId: string; +} +/** + * ListUK8SNodeGroup - 列出UK8S节点池 + */ +export interface ListUK8SNodeGroupResponse { + /** + * 节点池列表 + */ + NodeGroupList?: { + /** + * 节点池ID + */ + NodeGroupId?: string; + /** + * 节点池名字 + */ + NodeGroupName?: string; + /** + * 镜像ID + */ + ImageId?: string; + /** + * 机型 + */ + MachineType?: string; + /** + * cpu平台 + */ + MinimalCpuPlatform?: string; + /** + * 虚拟CPU核数 + */ + CPU?: number; + /** + * 内存大小 + */ + Mem?: number; + /** + * GPU类型 + */ + GpuType?: string; + /** + * GPU卡核心数 + */ + GPU?: number; + /** + * 系统盘类型 + */ + BootDiskType?: string; + /** + * 数据盘大小 + */ + DataDiskSize?: number; + /** + * 数据盘类型 + */ + DataDiskType?: string; + /** + * 业务组 + */ + Tag?: string; + /** + * 付费方式 + */ + ChargeType?: string; + /** + * 节点id列表 + */ + NodeList?: string[]; + }[]; +} +/** + * RemoveUK8SNodeGroup - 删除UK8S节点池 + */ +export interface RemoveUK8SNodeGroupRequest { + /** + * 节点池Id + */ + NodeGroupId: string; + /** + * 集群id + */ + ClusterId: string; +} +/** + * RemoveUK8SNodeGroup - 删除UK8S节点池 + */ +export interface RemoveUK8SNodeGroupResponse { +} diff --git a/lib/services/uk8s/index.js b/lib/services/uk8s/index.js index aa91420..5aa85e4 100644 --- a/lib/services/uk8s/index.js +++ b/lib/services/uk8s/index.js @@ -21,6 +21,15 @@ class UK8SClient extends client_1.default { const args = Object.assign({ Action: 'AddUK8SExistingUHost' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * AddUK8SNodeGroup - 添加UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/add_uk8s_node_group + */ + addUK8SNodeGroup(request) { + const args = Object.assign({ Action: 'AddUK8SNodeGroup' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * AddUK8SPHostNode - 为UK8S集群添加一台或多台物理云主机类型的节点。 * @@ -66,6 +75,15 @@ class UK8SClient extends client_1.default { const args = Object.assign({ Action: 'DelUK8SClusterNodeV2' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeUK8SCluster - 获取集群信息 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/describe_uk8s_cluster + */ + describeUK8SCluster(request) { + const args = Object.assign({ Action: 'DescribeUK8SCluster' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeUK8SImage - 获取UK8S支持的Node节点操作系统,可基于该操作系统制定自定义镜像 * @@ -75,6 +93,15 @@ class UK8SClient extends client_1.default { const args = Object.assign({ Action: 'DescribeUK8SImage' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeUK8SNode - 用于获取 UK8S 节点详情 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/describe_uk8s_node + */ + describeUK8SNode(request) { + const args = Object.assign({ Action: 'DescribeUK8SNode' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ListUK8SClusterNodeV2 - 获取UK8S集群节点信息 * @@ -93,5 +120,23 @@ class UK8SClient extends client_1.default { const args = Object.assign({ Action: 'ListUK8SClusterV2' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * ListUK8SNodeGroup - 列出UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/list_uk8s_node_group + */ + listUK8SNodeGroup(request) { + const args = Object.assign({ Action: 'ListUK8SNodeGroup' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * RemoveUK8SNodeGroup - 删除UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/remove_uk8s_node_group + */ + removeUK8SNodeGroup(request) { + const args = Object.assign({ Action: 'RemoveUK8SNodeGroup' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } } exports.default = UK8SClient; diff --git a/lib/services/ulb/index.d.ts b/lib/services/ulb/index.d.ts index 8d78143..d90a2e5 100644 --- a/lib/services/ulb/index.d.ts +++ b/lib/services/ulb/index.d.ts @@ -117,6 +117,12 @@ export default class ULBClient extends Client { * See also: https://docs.ucloud.cn/api/ulb-api/update_policy */ updatePolicy(request?: UpdatePolicyRequest): Promise; + /** + * UpdateSSLAttribute - 更新修改SSL的属性,如:修改SSLName + * + * See also: https://docs.ucloud.cn/api/ulb-api/update_ssl_attribute + */ + updateSSLAttribute(request?: UpdateSSLAttributeRequest): Promise; /** * UpdateULBAttribute - 更新ULB名字业务组备注等属性字段 * @@ -143,7 +149,7 @@ export interface AllocateBackendRequest { */ VServerId: string; /** - * 所添加的后端资源的类型,枚举值:UHost -> 云主机;UNI -> 虚拟网卡;UPM -> 物理云主机; UDHost -> 私有专区主机;UDocker -> 容器;UHybrid->混合云主机;CUBE->Cube;默认值为UHost。报文转发模式不支持UDocker、UHybrid、CUBE + * 所添加的后端资源的类型,枚举值:UHost -> 云主机;UNI -> 虚拟网卡;UPM -> 物理云主机; UDHost -> 私有专区主机;UDocker -> 容器;UHybrid->混合云主机;CUBE->Cube,USDP->智能大数据平台;默认值为UHost。报文转发模式不支持UDocker、UHybrid、CUBE */ ResourceType: string; /** @@ -167,7 +173,7 @@ export interface AllocateBackendRequest { */ Port?: number; /** - * 所添加的后端RS权重(在加权轮询算法下有效),取值范围[0-100],默认为1 + * 所添加的后端RS权重(在加权轮询算法下有效),取值范围[1-100],默认为1 */ Weight?: number; /** @@ -319,7 +325,7 @@ export interface CreateULBRequest { */ VPCId?: string; /** - * 内网ULB 所属的子网ID,如果不传则使用默认的子网 + * ULB 所属的子网ID,如果不传则随机选择一个。 */ SubnetId?: string; /** @@ -331,7 +337,7 @@ export interface CreateULBRequest { */ FirewallId?: string; /** - * ULB 监听器类型,枚举值:RequestProxy,请求代理; PacketsTransmit ,报文转发。默认为RequestProxy + * ULB 监听器类型,外网ULB默认RequestProxy,内网ULB默认PacketsTransmit。枚举值:RequestProxy,请求代理; PacketsTransmit ,报文转发。 */ ListenType?: string; } @@ -664,6 +670,10 @@ export interface DescribeULBResponse { * 健康检查类型,枚举值:Port -> 端口检查;Path -> 路径检查;Ping -> Ping探测, Customize -> UDP检查请求代理型默认值为Port,其中TCP协议仅支持Port,其他协议支持Port和Path; 报文转发型TCP协议仅支持Port,UDP协议支持Ping、Port和Customize */ MonitorType: string; + /** + * 负载均衡实例的Id + */ + ULBId?: string; /** * 根据MonitorType确认; 当MonitorType为Port时,此字段无意义。当MonitorType为Path时,代表HTTP检查域名 */ @@ -831,6 +841,10 @@ export interface DescribeULBResponse { * 内容转发信息列表,具体结构见下方 ULBPolicySet */ PolicySet?: { + /** + * 内容转发规则中域名的匹配方式。枚举值:Regular,正则;Wildcard,泛域名 + */ + DomainMatchMode?: string; /** * 内容转发Id,默认内容转发类型下为空。 */ @@ -1135,7 +1149,7 @@ export interface DescribeVServerRequest { /** * 负载均衡实例的Id */ - ULBId: string; + ULBId?: string; /** * VServer实例的Id;若指定则返回指定的VServer实例的信息; 若不指定则返回当前负载均衡实例下所有VServer的信息 */ @@ -1165,6 +1179,10 @@ export interface DescribeVServerResponse { * 健康检查类型,枚举值:Port -> 端口检查;Path -> 路径检查;Ping -> Ping探测, Customize -> UDP检查请求代理型默认值为Port,其中TCP协议仅支持Port,其他协议支持Port和Path; 报文转发型TCP协议仅支持Port,UDP协议支持Ping、Port和Customize */ MonitorType: string; + /** + * 负载均衡实例的Id + */ + ULBId?: string; /** * 根据MonitorType确认; 当MonitorType为Port时,此字段无意义。当MonitorType为Path时,代表HTTP检查域名 */ @@ -1332,6 +1350,10 @@ export interface DescribeVServerResponse { * 内容转发信息列表,具体结构见下方 ULBPolicySet */ PolicySet?: { + /** + * 内容转发规则中域名的匹配方式。枚举值:Regular,正则;Wildcard,泛域名 + */ + DomainMatchMode?: string; /** * 内容转发Id,默认内容转发类型下为空。 */ @@ -1512,6 +1534,24 @@ export interface UpdatePolicyRequest { */ export interface UpdatePolicyResponse { } +/** + * UpdateSSLAttribute - 更新修改SSL的属性,如:修改SSLName + */ +export interface UpdateSSLAttributeRequest { + /** + * SSL的资源id + */ + SSLId: string; + /** + * SSL实例名称,不允许传空 + */ + SSLName: string; +} +/** + * UpdateSSLAttribute - 更新修改SSL的属性,如:修改SSLName + */ +export interface UpdateSSLAttributeResponse { +} /** * UpdateULBAttribute - 更新ULB名字业务组备注等属性字段 */ diff --git a/lib/services/ulb/index.js b/lib/services/ulb/index.js index 4b13f09..db89281 100644 --- a/lib/services/ulb/index.js +++ b/lib/services/ulb/index.js @@ -174,6 +174,15 @@ class ULBClient extends client_1.default { const args = Object.assign({ Action: 'UpdatePolicy' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * UpdateSSLAttribute - 更新修改SSL的属性,如:修改SSLName + * + * See also: https://docs.ucloud.cn/api/ulb-api/update_ssl_attribute + */ + updateSSLAttribute(request) { + const args = Object.assign({ Action: 'UpdateSSLAttribute' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * UpdateULBAttribute - 更新ULB名字业务组备注等属性字段 * diff --git a/lib/services/umem/index.d.ts b/lib/services/umem/index.d.ts index ac8ce49..5c3488f 100644 --- a/lib/services/umem/index.d.ts +++ b/lib/services/umem/index.d.ts @@ -69,12 +69,24 @@ export default class UMemClient extends Client { * See also: https://docs.ucloud.cn/api/umem-api/delete_uredis_group */ deleteURedisGroup(request?: DeleteURedisGroupRequest): Promise; + /** + * DescribeUDRedisProxyInfo - 拉取udredis所有的代理信息 + * + * See also: https://docs.ucloud.cn/api/umem-api/describe_ud_redis_proxy_info + */ + describeUDRedisProxyInfo(request?: DescribeUDRedisProxyInfoRequest): Promise; /** * DescribeUDRedisSlowlog - 查询UDRedis慢日志 * * See also: https://docs.ucloud.cn/api/umem-api/describe_ud_redis_slowlog */ describeUDRedisSlowlog(request?: DescribeUDRedisSlowlogRequest): Promise; + /** + * DescribeUMem - 获取UMem列表 + * + * See also: https://docs.ucloud.cn/api/umem-api/describe_umem + */ + describeUMem(request?: DescribeUMemRequest): Promise; /** * DescribeUMemBackup - 查询分布式redis备份 * @@ -189,6 +201,12 @@ export default class UMemClient extends Client { * See also: https://docs.ucloud.cn/api/umem-api/get_umem_space_state */ getUMemSpaceState(request?: GetUMemSpaceStateRequest): Promise; + /** + * ISolationURedisGroup - 打开/关闭URedis + * + * See also: https://docs.ucloud.cn/api/umem-api/i_solation_uredis_group + */ + iSolationURedisGroup(request?: ISolationURedisGroupRequest): Promise; /** * ModifyUMemSpaceName - 修改UMem内存空间名称 * @@ -608,6 +626,45 @@ export interface DeleteURedisGroupRequest { */ export interface DeleteURedisGroupResponse { } +/** + * DescribeUDRedisProxyInfo - 拉取udredis所有的代理信息 + */ +export interface DescribeUDRedisProxyInfoRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * udredis实例id + */ + SpaceId: string; +} +/** + * DescribeUDRedisProxyInfo - 拉取udredis所有的代理信息 + */ +export interface DescribeUDRedisProxyInfoResponse { + /** + * 代理数据集 + */ + DataSet: { + /** + * 代理资源id + */ + ResourceId: string; + /** + * 代理id + */ + ProxyId: string; + /** + * 代理ip + */ + Vip: string; + /** + * 代理状态 + */ + State: string; + }[]; +} /** * DescribeUDRedisSlowlog - 查询UDRedis慢日志 */ @@ -655,6 +712,251 @@ export interface DescribeUDRedisSlowlogResponse { BlockId?: string; }[]; } +/** + * DescribeUMem - 获取UMem列表 + */ +export interface DescribeUMemRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 协议类型: memcache, redis + */ + Protocol: string; + /** + * 分页显示的起始偏移, 默认值为0 + */ + Offset?: number; + /** + * 分页显示的条目数, 默认值为20 + */ + Limit?: number; + /** + * 资源ID + */ + ResourceId?: string; +} +/** + * DescribeUMem - 获取UMem列表 + */ +export interface DescribeUMemResponse { + /** + * 根据过滤条件得到的总数 + */ + TotalCount?: number; + /** + * UMem实例列表, 详细参见UMemDataSet + */ + DataSet?: { + /** + * 实例所在可用区,或者master redis所在可用区,参见 [可用区列表](../summary/regionlist.html) + */ + Zone?: string; + /** + * 是否拥有只读Slave“Yes” 包含“No” 不包含 + */ + OwnSlave: string; + /** + * UMEM实例列表 UMemSlaveDataSet 如果没有slave,则没有该字段 + */ + DataSet?: { + /** + * 实例所在可用区,或者master redis所在可用区,参见 [可用区列表](../summary/regionlist.html) + */ + Zone?: string; + /** + * 子网 + */ + SubnetId: string; + /** + * vpc + */ + VPCId: string; + /** + * + */ + VirtualIP: string; + /** + * 主备Redis返回运维时间 0//0点 1 //1点 以此类推 + */ + RewriteTime?: number; + /** + * 主实例id + */ + MasterGroupId?: string; + /** + * 资源id + */ + GroupId?: string; + /** + * 端口 + */ + Port?: number; + /** + * 实力大小 + */ + MemorySize?: number; + /** + * 资源名称 + */ + GroupName?: string; + /** + * 表示实例是主库还是从库,master,slave + */ + Role?: string; + /** + * 修改时间 + */ + ModifyTime?: number; + /** + * 资源名称 + */ + Name?: string; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * 到期时间 + */ + ExpireTime?: number; + /** + * 容量单位GB + */ + Size?: number; + /** + * 使用量单位MB + */ + UsedSize?: number; + /** + * 实例状态 Starting // 创建中 Creating // 初始化中 CreateFail // 创建失败 Fail // 创建失败 Deleting // 删除中 DeleteFail // 删除失败 Running // 运行 Resizing // 容量调整中 ResizeFail // 容量调整失败 Configing // 配置中 ConfigFail // 配置失败Restarting // 重启中SetPasswordFail //设置密码失败 + */ + State?: string; + /** + * 计费模式,Year, Month, Dynamic, Trial + */ + ChargeType?: string; + /** + * 业务组名称 + */ + Tag?: string; + /** + * distributed: 分布式版Redis,或者分布式Memcache;single:主备版Redis,或者单机Memcache;performance:高性能版 + */ + ResourceType?: string; + /** + * 节点的配置ID + */ + ConfigId?: string; + /** + * Redis版本信息 + */ + Version?: string; + }[]; + /** + * 表示实例是主库还是从库,master,slave仅主备redis返回该项参数 + */ + Role?: string; + /** + * 主备redis和分布式redis运维时间0 //0点1 //1点以此类推单机版memcache不返回该项 + */ + RewriteTime?: number; + /** + * vpc + */ + VPCId?: string; + /** + * 子网 + */ + SubnetId?: string; + /** + * 资源ID + */ + ResourceId?: string; + /** + * 资源名称 + */ + Name?: string; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * 到期时间 + */ + ExpireTime?: number; + /** + * 空间类型:single(无热备),double(热备) + */ + Type?: string; + /** + * 协议类型: memcache, redis + */ + Protocol?: string; + /** + * 容量单位GB + */ + Size?: number; + /** + * 使用量单位MB + */ + UsedSize?: number; + /** + * 实例状态 Starting // 创建中 Creating // 初始化中 CreateFail // 创建失败 Fail // 创建失败 Deleting // 删除中 DeleteFail // 删除失败 Running // 运行 Resizing // 容量调整中 ResizeFail // 容量调整失败 Configing // 配置中 ConfigFail // 配置失败Restarting // 重启中SetPasswordFail //设置密码失败 + */ + State?: string; + /** + * 计费模式,Year, Month, Dynamic, Trial + */ + ChargeType?: string; + /** + * IP端口信息请,参见UMemSpaceAddressSet + */ + Address?: { + /** + * UMem实例访问IP + */ + IP?: string; + /** + * UMem实例访问Port + */ + Port?: number; + }[]; + /** + * 业务组名称 + */ + Tag?: string; + /** + * distributed: 分布式版Redis,或者分布式Memcache;single:主备版Redis,或者单机Memcache;performance:高性能版 + */ + ResourceType?: string; + /** + * 节点的配置ID + */ + ConfigId?: string; + /** + * 是否需要自动备份,enable,disable + */ + AutoBackup?: string; + /** + * 自动备份开始时间,单位小时计,范围[0-23] + */ + BackupTime?: number; + /** + * 是否开启高可用,enable,disable + */ + HighAvailability?: string; + /** + * Redis版本信息 + */ + Version?: string; + /** + * 跨机房URedis,slave redis所在可用区,参见 [可用区列表](../summary/regionlist.html) + */ + SlaveZone?: string; + }[]; +} /** * DescribeUMemBackup - 查询分布式redis备份 */ @@ -745,7 +1047,7 @@ export interface DescribeUMemBackupURLResponse { */ export interface DescribeUMemBlockInfoRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -773,10 +1075,6 @@ export interface DescribeUMemBlockInfoResponse { * 分片id */ BlockId: string; - /** - * 分片ip - */ - BlockVip: string; /** * 分片端口 */ @@ -785,10 +1083,6 @@ export interface DescribeUMemBlockInfoResponse { * 容量单位GB */ BlockSize: number; - /** - * 使用量单位MB - */ - BlockUsedSize: number; /** * 实例状态 Starting // 创建中 Creating // 初始化中 CreateFail // 创建失败 Fail // 创建失败 Deleting // 删除中 DeleteFail // 删除失败 Running // 运行 Resizing // 容量调整中 ResizeFail // 容量调整失败 Configing // 配置中 ConfigFail // 配置失败Restarting // 重启中 SetPasswordFail //设置密码失败 */ @@ -801,6 +1095,14 @@ export interface DescribeUMemBlockInfoResponse { * 分片维护的键槽结束值 */ BlockSlotEnd: number; + /** + * 分片ip + */ + BlockVip?: string; + /** + * 使用量单位MB + */ + BlockUsedSize?: number; }[]; } /** @@ -1702,6 +2004,32 @@ export interface GetUMemSpaceStateResponse { */ State?: string; } +/** + * ISolationURedisGroup - 打开/关闭URedis + */ +export interface ISolationURedisGroupRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 组的ID + */ + GroupId: string; + /** + * UNBind(关闭)或Bind(打开) + */ + TransformType: string; + /** + * 跨机房URedis,slave所在可用区(必须和Zone在同一Region,且不可相同) + */ + SlaveZone?: string; +} +/** + * ISolationURedisGroup - 打开/关闭URedis + */ +export interface ISolationURedisGroupResponse { +} /** * ModifyUMemSpaceName - 修改UMem内存空间名称 */ diff --git a/lib/services/umem/index.js b/lib/services/umem/index.js index af66c19..68e190e 100644 --- a/lib/services/umem/index.js +++ b/lib/services/umem/index.js @@ -102,6 +102,15 @@ class UMemClient extends client_1.default { const args = Object.assign({ Action: 'DeleteURedisGroup' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeUDRedisProxyInfo - 拉取udredis所有的代理信息 + * + * See also: https://docs.ucloud.cn/api/umem-api/describe_ud_redis_proxy_info + */ + describeUDRedisProxyInfo(request) { + const args = Object.assign({ Action: 'DescribeUDRedisProxyInfo' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeUDRedisSlowlog - 查询UDRedis慢日志 * @@ -111,6 +120,15 @@ class UMemClient extends client_1.default { const args = Object.assign({ Action: 'DescribeUDRedisSlowlog' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeUMem - 获取UMem列表 + * + * See also: https://docs.ucloud.cn/api/umem-api/describe_umem + */ + describeUMem(request) { + const args = Object.assign({ Action: 'DescribeUMem' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeUMemBackup - 查询分布式redis备份 * @@ -282,6 +300,15 @@ class UMemClient extends client_1.default { const args = Object.assign({ Action: 'GetUMemSpaceState' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * ISolationURedisGroup - 打开/关闭URedis + * + * See also: https://docs.ucloud.cn/api/umem-api/i_solation_uredis_group + */ + iSolationURedisGroup(request) { + const args = Object.assign({ Action: 'ISolationURedisGroup' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ModifyUMemSpaceName - 修改UMem内存空间名称 * diff --git a/lib/services/unet/index.d.ts b/lib/services/unet/index.d.ts index c3b5c1d..6d5c91a 100644 --- a/lib/services/unet/index.d.ts +++ b/lib/services/unet/index.d.ts @@ -93,12 +93,30 @@ export default class UNetClient extends Client { * See also: https://docs.ucloud.cn/api/unet-api/describe_share_bandwidth */ describeShareBandwidth(request?: DescribeShareBandwidthRequest): Promise; + /** + * DescribeShareBandwidthPrice - 获取共享带宽价格 + * + * See also: https://docs.ucloud.cn/api/unet-api/describe_share_bandwidth_price + */ + describeShareBandwidthPrice(request?: DescribeShareBandwidthPriceRequest): Promise; + /** + * DescribeShareBandwidthUpdatePrice - 获取共享带宽升级价格 + * + * See also: https://docs.ucloud.cn/api/unet-api/describe_share_bandwidth_update_price + */ + describeShareBandwidthUpdatePrice(request?: DescribeShareBandwidthUpdatePriceRequest): Promise; /** * DisassociateEIPWithShareBandwidth - 将EIP移出共享带宽 * * See also: https://docs.ucloud.cn/api/unet-api/disassociate_eip_with_share_bandwidth */ disassociateEIPWithShareBandwidth(request?: DisassociateEIPWithShareBandwidthRequest): Promise; + /** + * DisassociateFirewall - 解绑资源上的防火墙 + * + * See also: https://docs.ucloud.cn/api/unet-api/disassociate_firewall + */ + disassociateFirewall(request?: DisassociateFirewallRequest): Promise; /** * GetEIPPayMode - 获取弹性IP计费模式 * @@ -117,6 +135,12 @@ export default class UNetClient extends Client { * See also: https://docs.ucloud.cn/api/unet-api/get_eip_upgrade_price */ getEIPUpgradePrice(request?: GetEIPUpgradePriceRequest): Promise; + /** + * GetThroughputDailyBillingInfo - 获取流量计费EIP每日流量计费信息 + * + * See also: https://docs.ucloud.cn/api/unet-api/get_throughput_daily_billing_info + */ + getThroughputDailyBillingInfo(request?: GetThroughputDailyBillingInfoRequest): Promise; /** * GrantFirewall - 将防火墙应用到资源上 * @@ -189,7 +213,7 @@ export default class UNetClient extends Client { */ export interface AllocateEIPRequest { /** - * 弹性IP线路,枚举值:国际线路, International;BGP线路:Bgp。使用BGP线路的地域:北京二、上海金融云、上海二、广州等,其他地域均使用国际线路。 + * 弹性IP线路,枚举值:国际线路, International;BGP线路:Bgp;精品BGP:BGPPro。使用BGP线路的地域:北京二、上海金融云、上海二、广州等,其他地域均使用国际线路。使用BGPPro线路的地域:香港 */ OperatorName: string; /** @@ -201,7 +225,7 @@ export interface AllocateEIPRequest { */ Tag?: string; /** - * 付费方式, 枚举值为: Year, 按年付费; Month, 按月付费; Dynamic, 按需付费(需开启权限); Trial, 试用(需开启权限) 默认为按月付费 + * 付费方式, 枚举值为: Year, 按年付费; Month, 按月付费; Dynamic, 按时付费,默认为按月付费。 */ ChargeType?: string; /** @@ -220,6 +244,10 @@ export interface AllocateEIPRequest { * 弹性IP的名称, 默认为 "EIP" */ Name?: string; + /** + * 购买EIP数量,默认值为1 + */ + Count?: number; /** * 弹性IP的备注, 默认为空 */ @@ -696,7 +724,7 @@ export interface DescribeFirewallRequest { */ FWId?: string; /** - * 绑定防火墙组的资源类型,默认为全部资源类型。枚举值为:"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计. + * 绑定防火墙组的资源类型,默认为全部资源类型。枚举值为:"unatgw",NAT网关; "uhost",云主机;“uni”,虚拟网卡; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计. */ ResourceType?: string; /** @@ -782,6 +810,10 @@ export interface DescribeFirewallResponse { Remark?: string; }[]; }[]; + /** + * 防火墙资源数量 + */ + TotalCount?: number; } /** * DescribeFirewallResource - 获取防火墙组所绑定资源的外网IP @@ -792,7 +824,7 @@ export interface DescribeFirewallResourceRequest { */ FWId: string; /** - * 返回数据长度,默认为20,最大10000000 + * 返回数据长度,默认为20,最大1000 */ Limit?: number; /** @@ -812,6 +844,18 @@ export interface DescribeFirewallResourceResponse { * 可用区 */ Zone?: number; + /** + * 资源绑定的虚拟网卡的名称 + */ + SubResourceName: string; + /** + * 资源绑定的虚拟网卡的ID + */ + SubResourceId: string; + /** + * 资源绑定的虚拟网卡的类型,“uni”,虚拟网卡。 + */ + SubResourceType: string; /** * 名称 */ @@ -829,7 +873,7 @@ export interface DescribeFirewallResourceResponse { */ ResourceID?: string; /** - * 绑定防火墙组的资源类型。"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计. + * 绑定防火墙组的资源类型。"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计,“uni”,虚拟网卡。 */ ResourceType?: string; /** @@ -923,6 +967,58 @@ export interface DescribeShareBandwidthResponse { */ TotalCount?: number; } +/** + * DescribeShareBandwidthPrice - 获取共享带宽价格 + */ +export interface DescribeShareBandwidthPriceRequest { + /** + * 付费方式, 预付费:Year 按年,Month 按月,Dynamic 按需; + */ + ChargeType: string; + /** + * 共享带宽值 + */ + ShareBandwidth: number; + /** + * 购买数量 + */ + Quantity?: number; + /** + * 香港地域支持:BGPPro和International。其他地域无需填写该字段 + */ + OperatorName?: string; +} +/** + * DescribeShareBandwidthPrice - 获取共享带宽价格 + */ +export interface DescribeShareBandwidthPriceResponse { + /** + * 共享带宽总价格 + */ + TotalPrice?: number; +} +/** + * DescribeShareBandwidthUpdatePrice - 获取共享带宽升级价格 + */ +export interface DescribeShareBandwidthUpdatePriceRequest { + /** + * 共享带宽Id + */ + ShareBandwidthId: string; + /** + * 共享带宽值 + */ + ShareBandwidth: number; +} +/** + * DescribeShareBandwidthUpdatePrice - 获取共享带宽升级价格 + */ +export interface DescribeShareBandwidthUpdatePriceResponse { + /** + * 共享带宽升降级价格 + */ + Price: number; +} /** * DisassociateEIPWithShareBandwidth - 将EIP移出共享带宽 */ @@ -953,6 +1049,28 @@ export interface DisassociateEIPWithShareBandwidthRequest { */ export interface DisassociateEIPWithShareBandwidthResponse { } +/** + * DisassociateFirewall - 解绑资源上的防火墙 + */ +export interface DisassociateFirewallRequest { + /** + * 防火墙ID + */ + FWId: string; + /** + * 需要解绑的资源ID + */ + ResourceId: string; + /** + * 资源类型:ULB 表示负载均衡 + */ + ResourceType: string; +} +/** + * DisassociateFirewall - 解绑资源上的防火墙 + */ +export interface DisassociateFirewallResponse { +} /** * GetEIPPayMode - 获取弹性IP计费模式 */ @@ -1053,6 +1171,57 @@ export interface GetEIPUpgradePriceResponse { */ Price?: number; } +/** + * GetThroughputDailyBillingInfo - 获取流量计费EIP每日流量计费信息 + */ +export interface GetThroughputDailyBillingInfoRequest { + /** + * EIP的资源ID + */ + EIPId: string; + /** + * 查询开始时间时间戳 + */ + StartTime: number; + /** + * 查询结束时间时间戳 + */ + EndTime: number; +} +/** + * GetThroughputDailyBillingInfo - 获取流量计费EIP每日流量计费信息 + */ +export interface GetThroughputDailyBillingInfoResponse { + /** + * EIP流量计费信息,详见模型ThroughputDailyBillingInfo + */ + Stats?: { + /** + * 计费开始时间 + */ + StartTime?: number; + /** + * 计费结束时间 + */ + EndTime?: number; + /** + * 计费流量,单位“GB” + */ + QuantityOut?: number; + /** + * 是否已计费,“Yes”或者“No” + */ + BillingState?: string; + }[]; + /** + * 计费总流量 + */ + TotalOut?: number; + /** + * 资源ID + */ + EIPId?: string; +} /** * GrantFirewall - 将防火墙应用到资源上 */ @@ -1062,7 +1231,7 @@ export interface GrantFirewallRequest { */ FWId: string; /** - * 绑定防火墙组的资源类型,默认为全部资源类型。枚举值为:"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计. + * 绑定防火墙组的资源类型,默认为全部资源类型。枚举值为:"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计,”uni“,虚拟网卡,“cube”,Cube容器实例。 */ ResourceType: string; /** diff --git a/lib/services/unet/index.js b/lib/services/unet/index.js index a3c7802..bec030c 100644 --- a/lib/services/unet/index.js +++ b/lib/services/unet/index.js @@ -138,6 +138,24 @@ class UNetClient extends client_1.default { const args = Object.assign({ Action: 'DescribeShareBandwidth' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeShareBandwidthPrice - 获取共享带宽价格 + * + * See also: https://docs.ucloud.cn/api/unet-api/describe_share_bandwidth_price + */ + describeShareBandwidthPrice(request) { + const args = Object.assign({ Action: 'DescribeShareBandwidthPrice' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } + /** + * DescribeShareBandwidthUpdatePrice - 获取共享带宽升级价格 + * + * See also: https://docs.ucloud.cn/api/unet-api/describe_share_bandwidth_update_price + */ + describeShareBandwidthUpdatePrice(request) { + const args = Object.assign({ Action: 'DescribeShareBandwidthUpdatePrice' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DisassociateEIPWithShareBandwidth - 将EIP移出共享带宽 * @@ -147,6 +165,15 @@ class UNetClient extends client_1.default { const args = Object.assign({ Action: 'DisassociateEIPWithShareBandwidth' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DisassociateFirewall - 解绑资源上的防火墙 + * + * See also: https://docs.ucloud.cn/api/unet-api/disassociate_firewall + */ + disassociateFirewall(request) { + const args = Object.assign({ Action: 'DisassociateFirewall' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * GetEIPPayMode - 获取弹性IP计费模式 * @@ -174,6 +201,15 @@ class UNetClient extends client_1.default { const args = Object.assign({ Action: 'GetEIPUpgradePrice' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * GetThroughputDailyBillingInfo - 获取流量计费EIP每日流量计费信息 + * + * See also: https://docs.ucloud.cn/api/unet-api/get_throughput_daily_billing_info + */ + getThroughputDailyBillingInfo(request) { + const args = Object.assign({ Action: 'GetThroughputDailyBillingInfo' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * GrantFirewall - 将防火墙应用到资源上 * diff --git a/lib/services/uphost/index.d.ts b/lib/services/uphost/index.d.ts index c7d7c52..dfda01f 100644 --- a/lib/services/uphost/index.d.ts +++ b/lib/services/uphost/index.d.ts @@ -15,6 +15,12 @@ export default class UPHostClient extends Client { * See also: https://docs.ucloud.cn/api/uphost-api/create_phost */ createPHost(request?: CreatePHostRequest): Promise; + /** + * CreatePHostImage - 创建裸金属2.0用户自定义镜像 + * + * See also: https://docs.ucloud.cn/api/uphost-api/create_phost_image + */ + createPHostImage(request?: CreatePHostImageRequest): Promise; /** * DescribeBaremetalMachineType - 获取裸金属机型的详细描述信息 * @@ -57,6 +63,12 @@ export default class UPHostClient extends Client { * See also: https://docs.ucloud.cn/api/uphost-api/get_phost_price */ getPHostPrice(request?: GetPHostPriceRequest): Promise; + /** + * ModifyPHostImageInfo - 修改自定义镜像名称和备注 + * + * See also: https://docs.ucloud.cn/api/uphost-api/modify_phost_image_info + */ + modifyPHostImageInfo(request?: ModifyPHostImageInfoRequest): Promise; /** * ModifyPHostInfo - 更改物理机信息 * @@ -99,12 +111,24 @@ export default class UPHostClient extends Client { * See also: https://docs.ucloud.cn/api/uphost-api/start_phost */ startPHost(request?: StartPHostRequest): Promise; + /** + * StopPHost - 关闭物理机 + * + * See also: https://docs.ucloud.cn/api/uphost-api/stop_phost + */ + stopPHost(request?: StopPHostRequest): Promise; /** * TerminatePHost - 删除物理云主机 * * See also: https://docs.ucloud.cn/api/uphost-api/terminate_phost */ terminatePHost(request?: TerminatePHostRequest): Promise; + /** + * TerminatePHostImage - 删除裸金属2.0用户自定义镜像 + * + * See also: https://docs.ucloud.cn/api/uphost-api/terminate_phost_image + */ + terminatePHostImage(request?: TerminatePHostImageRequest): Promise; } /** * CreatePHost - 指定数据中心,根据资源使用量创建指定数量的UPHost物理云主机实例。 @@ -205,12 +229,42 @@ export interface CreatePHostResponse { */ PHostId?: string[]; } +/** + * CreatePHostImage - 创建裸金属2.0用户自定义镜像 + */ +export interface CreatePHostImageRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * UPHost实例ID + */ + PHostId: string; + /** + * 镜像名称 + */ + ImageName: string; + /** + * 镜像描述 + */ + ImageDescription?: string; +} +/** + * CreatePHostImage - 创建裸金属2.0用户自定义镜像 + */ +export interface CreatePHostImageResponse { + /** + * 镜像ID + */ + ImageId: string; +} /** * DescribeBaremetalMachineType - 获取裸金属机型的详细描述信息 */ export interface DescribeBaremetalMachineTypeRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -223,16 +277,72 @@ export interface DescribeBaremetalMachineTypeRequest { */ export interface DescribeBaremetalMachineTypeResponse { /** - * 机型列表,模型:PHostMachineTypeSet + * 机型列表,模型:PHostCloudMachineTypeSet */ - MachineTypes?: string; + MachineTypes?: { + /** + * 物理云主机机型别名,全网唯一。 + */ + Type: string; + /** + * CPU信息 + */ + CPU?: { + /** + * CPU型号 + */ + Model?: string; + /** + * CPU主频 + */ + Frequence?: number; + /** + * CPU个数 + */ + Count?: number; + /** + * CPU核数 + */ + CoreCount?: number; + }; + /** + * 内存大小,单位MB + */ + Memory?: number; + /** + * 其他组件信息 + */ + Components?: { + /** + * 组件名称 + */ + Name?: string; + /** + * 组件数量 + */ + Count?: number; + }; + /** + * 集群库存信息 + */ + Clusters?: { + /** + * 集群名。枚举值:千兆网络集群:1G;万兆网络集群:10G;智能网卡网络:25G; + */ + Name?: string; + /** + * 库存状态。枚举值:有库存:Available;无库存:SoldOut + */ + StockStatus?: string; + }[]; + }[]; } /** * DescribePHost - 获取物理机详细信息 */ export interface DescribePHostRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -251,6 +361,10 @@ export interface DescribePHostRequest { * 要挂载的云盘id,过滤返回能被UDiskId挂载的云主机。目前主要针对rssd云盘使用 */ UDiskIdForAttachment?: string; + /** + * ULB使用参数,获取同VPC下机器信息。 + */ + VPCId?: string; } /** * DescribePHost - 获取物理机详细信息 @@ -277,7 +391,7 @@ export interface DescribePHostResponse { */ SN?: string; /** - * 物理云主机状态。枚举值:\\ > 初始化:Initializing; \\ > 启动中:Starting; \\ > 运行中:Running;\\ > 关机中:Stopping; \\ > 安装失败:InstallFailed; \\ > 重启中:Rebooting;\\ > 关机:Stopped; + * 物理云主机状态。枚举值:\\ > 初始化:Initializing; \\ > 启动中:Starting; \\ > 运行中:Running;\\ > 关机中:Stopping; \\ > 安装失败:InstallFailed; \\ > 重启中:Rebooting;\\ > 关机:Stopped; \\ > 迁移中(裸金属云盘):Migrating */ PMStatus?: string; /** @@ -346,7 +460,7 @@ export interface DescribePHostResponse { CoreCount?: number; }; /** - * 磁盘信息,见 PHostDiskSet + * 磁盘信息,见 PHostDescDiskSet */ DiskSet?: { /** @@ -450,11 +564,11 @@ export interface DescribePHostResponse { */ export interface DescribePHostImageRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** - * 镜像类别,枚举值,Base是基础镜像; + * 镜像类别,枚举值,Base是基础镜像;Custom是自制镜像。 */ ImageType?: string; /** @@ -510,6 +624,26 @@ export interface DescribePHostImageResponse { * 当前版本 */ Version?: string; + /** + * 枚举值:Base=>基础镜像,Custom=>自制镜像。 + */ + ImageType?: string; + /** + * 裸金属2.0参数。镜像创建时间。 + */ + CreateTime?: number; + /** + * 裸金属2.0参数。镜像当前状态。 + */ + State?: string; + /** + * 裸金属2.0参数。镜像大小。 + */ + ImageSize?: number; + /** + * 镜像描述 + */ + ImageDescription?: string; }[]; } /** @@ -517,7 +651,7 @@ export interface DescribePHostImageResponse { */ export interface DescribePHostMachineTypeRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -586,18 +720,6 @@ export interface DescribePHostMachineTypeResponse { * 磁盘IO性能,单位MB/s(待废弃) */ IOCap?: number; - /** - * 裸金属机型参数:磁盘盘符 - */ - Drive?: string; - /** - * 裸金属机型参数:磁盘ID - */ - DiskId?: string; - /** - * 裸金属机型参数:是否是启动盘。True/False - */ - IsBoot?: string; }[]; /** * 其他组件信息 @@ -610,7 +732,7 @@ export interface DescribePHostMachineTypeResponse { /** * 组件数量 */ - Count?: string; + Count?: number; }; /** * 集群库存信息 @@ -705,7 +827,7 @@ export interface GetPHostDiskUpgradePriceResponse { */ export interface GetPHostPriceRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -772,6 +894,36 @@ export interface GetPHostPriceResponse { OriginalPrice?: number; }[]; } +/** + * ModifyPHostImageInfo - 修改自定义镜像名称和备注 + */ +export interface ModifyPHostImageInfoRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 镜像ID + */ + ImageId: string; + /** + * 镜像名称 + */ + Name?: string; + /** + * 备注 + */ + Remark?: string; +} +/** + * ModifyPHostImageInfo - 修改自定义镜像名称和备注 + */ +export interface ModifyPHostImageInfoResponse { + /** + * 镜像ID + */ + ImageId?: string; +} /** * ModifyPHostInfo - 更改物理机信息 */ @@ -935,7 +1087,7 @@ export interface ResetPHostPasswordResponse { */ export interface ResizePHostAttachedDiskRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -958,7 +1110,7 @@ export interface ResizePHostAttachedDiskResponse { /** * 改配成功的磁盘id */ - DiskId?: string; + UDiskId?: string; } /** * StartPHost - 启动物理机 @@ -982,6 +1134,28 @@ export interface StartPHostResponse { */ PHostId?: string; } +/** + * StopPHost - 关闭物理机 + */ +export interface StopPHostRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * PHost资源ID + */ + PHostId: string; +} +/** + * StopPHost - 关闭物理机 + */ +export interface StopPHostResponse { + /** + * PHost 的资源ID + */ + PHostId: string; +} /** * TerminatePHost - 删除物理云主机 */ @@ -1012,3 +1186,25 @@ export interface TerminatePHostResponse { */ PHostId?: string; } +/** + * TerminatePHostImage - 删除裸金属2.0用户自定义镜像 + */ +export interface TerminatePHostImageRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 自制镜像ID + */ + ImageId: string; +} +/** + * TerminatePHostImage - 删除裸金属2.0用户自定义镜像 + */ +export interface TerminatePHostImageResponse { + /** + * 自制镜像ID + */ + ImageId: string; +} diff --git a/lib/services/uphost/index.js b/lib/services/uphost/index.js index cf54f1e..a5cf19e 100644 --- a/lib/services/uphost/index.js +++ b/lib/services/uphost/index.js @@ -21,6 +21,15 @@ class UPHostClient extends client_1.default { const args = Object.assign({ Action: 'CreatePHost' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * CreatePHostImage - 创建裸金属2.0用户自定义镜像 + * + * See also: https://docs.ucloud.cn/api/uphost-api/create_phost_image + */ + createPHostImage(request) { + const args = Object.assign({ Action: 'CreatePHostImage' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeBaremetalMachineType - 获取裸金属机型的详细描述信息 * @@ -84,6 +93,15 @@ class UPHostClient extends client_1.default { const args = Object.assign({ Action: 'GetPHostPrice' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * ModifyPHostImageInfo - 修改自定义镜像名称和备注 + * + * See also: https://docs.ucloud.cn/api/uphost-api/modify_phost_image_info + */ + modifyPHostImageInfo(request) { + const args = Object.assign({ Action: 'ModifyPHostImageInfo' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ModifyPHostInfo - 更改物理机信息 * @@ -147,6 +165,15 @@ class UPHostClient extends client_1.default { const args = Object.assign({ Action: 'StartPHost' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * StopPHost - 关闭物理机 + * + * See also: https://docs.ucloud.cn/api/uphost-api/stop_phost + */ + stopPHost(request) { + const args = Object.assign({ Action: 'StopPHost' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * TerminatePHost - 删除物理云主机 * @@ -156,5 +183,14 @@ class UPHostClient extends client_1.default { const args = Object.assign({ Action: 'TerminatePHost' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * TerminatePHostImage - 删除裸金属2.0用户自定义镜像 + * + * See also: https://docs.ucloud.cn/api/uphost-api/terminate_phost_image + */ + terminatePHostImage(request) { + const args = Object.assign({ Action: 'TerminatePHostImage' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } } exports.default = UPHostClient; diff --git a/lib/services/usms/index.d.ts b/lib/services/usms/index.d.ts index 99b6079..7cd4c4f 100644 --- a/lib/services/usms/index.d.ts +++ b/lib/services/usms/index.d.ts @@ -80,6 +80,10 @@ export default class USMSClient extends Client { * CreateUSMSSignature - 调用接口CreateUSMSSignature申请短信签名 */ export interface CreateUSMSSignatureRequest { + /** + * 签名内容 + */ + SigContent: string; /** * 签名类型,说明如下:0-公司或企业的全称或简称;1-App应用的全称或简称;2-工信部备案网站的全称或简称;3-公众号或小程序的全称或简称;4-商标名的全称或简称;5-政府/机关事业单位/其他单位的全称或简称; */ @@ -142,6 +146,14 @@ export interface CreateUSMSTemplateRequest { * 短信模板申请原因说明,字数不超过128,每个中文、符号、英文、数字等都计为1个字。 */ Remark?: string; + /** + * 当Purpose为3时,也即会员推广类短信模板,该项必填。枚举值:TD退订、回T退订、回N退订、回TD退订、退订回T、退订回D、退订回TD、退订回复T、退订回复D、退订回复N、退订回复TD、拒收回T + */ + UnsubscribeInfo?: string; + /** + * 模板变量属性说明 + */ + Instruction?: string; } /** * CreateUSMSTemplate - 调用接口CreateUSMSTemplate申请短信模板 @@ -189,7 +201,7 @@ export interface GetUSMSSendReceiptRequest { */ Zone?: string; /** - * 发送短信时返回的SessionNo集合,SessionNoSet.0,SessionNoSet.1....格式 + * 发送短信时返回的SessionNo集合,SessionNoSet.0,SessionNoSet.1....格式,单次调用集合数需控制在100个以内 */ SessionNoSet: string[]; } @@ -332,6 +344,10 @@ export interface QueryUSMSTemplateResponse { * 创建时间 */ CreateTime: number; + /** + * 模板变量属性说明 + */ + Instruction?: string; }; } /** @@ -419,7 +435,7 @@ export interface SendUSMSMessageRequest { */ TemplateId: string; /** - * 模板可变参数,以数组的方式填写,举例,TempalteParams.0,TempalteParams.1,... 若模板中无可变参数,则该项可不填写;若模板中有可变参数,则该项为必填项,参数个数需与变量个数保持一致,否则无法发送; + * 模板可变参数,以数组的方式填写,举例,TemplateParams.0,TemplateParams.1,... 若模板中无可变参数,则该项可不填写;若模板中有可变参数,则该项为必填项,参数个数需与变量个数保持一致,否则无法发送; */ TemplateParams?: string[]; /** @@ -427,7 +443,7 @@ export interface SendUSMSMessageRequest { */ ExtendCode?: string; /** - * 自定义的业务标识ID,字符串( 长度不能超过32 位) + * 自定义的业务标识ID,字符串( 长度不能超过32 位),不支持 单引号、表情包符号等特殊字符 */ UserId?: string; } @@ -510,6 +526,10 @@ export interface UpdateUSMSTemplateRequest { * 短信模板申请原因说明,字数不超过128,每个中文、符号、英文、数字等都计为1个字。 */ Remark?: string; + /** + * 模板变量属性说明 + */ + Instruction?: string; } /** * UpdateUSMSTemplate - 调用接口UpdateUSMSTemplate修改未通过审核的短信模板,并重新提交审核 diff --git a/lib/services/uvms/index.d.ts b/lib/services/uvms/index.d.ts new file mode 100644 index 0000000..b4a3f68 --- /dev/null +++ b/lib/services/uvms/index.d.ts @@ -0,0 +1,64 @@ +import Client from '../../core/client'; +import { ConfigOptions } from '../../core/config'; +import { CredentialOptions } from '../../core/credential'; +/** + * This client is used to call actions of **uvms** service + */ +export default class UVMSClient extends Client { + constructor({ config, credential, }: { + config: ConfigOptions; + credential: CredentialOptions; + }); + /** + * SendUVMSMessage - 向指定号码拨打电话 + * + * See also: https://docs.ucloud.cn/api/uvms-api/send_uvms_message + */ + sendUVMSMessage(request?: SendUVMSMessageRequest): Promise; +} +/** + * SendUVMSMessage - 向指定号码拨打电话 + */ +export interface SendUVMSMessageRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 被叫号码,采用 E.164 标准,格式为+[国家代码][用户号码]。例如:+8613512345678, 其中前面有一个+号 ,86为国家码,13512345678为手机号 + */ + CalledNumber: string; + /** + * 模板 ID,在控制台审核通过的模板 ID。 + */ + TemplateId: string; + /** + * 模板可变参数,以数组的方式填写,举例,TemplateParams.0,TemplateParams.1,... 若模板中无可变参数,则该项可不填写;若模板中有可变参数,则该项为必填项,参数个数需与变量个数保持一致,否则无法发送; + */ + TemplateParams?: string[]; + /** + * 主叫号码,号码随机时不填。专属号码时传入已购买的号码,仅支持一个号码,在控制台查看已购买的号码。 + */ + FromNumber?: string; + /** + * 自定义的业务标识ID,字符串( 长度不能超过32 位),不支持 单引号、表情包符号等特殊字符 + */ + UserId?: string; +} +/** + * SendUVMSMessage - 向指定号码拨打电话 + */ +export interface SendUVMSMessageResponse { + /** + * 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 ReqUuid。 + */ + ReqUuid: string; + /** + * 本次提交发送语音的唯一ID,可根据该值查询本次发送详情 + */ + SessionNo?: string; + /** + * 本次提交的自定义业务标识ID,仅当发送时传入有效的UserId,才返回该字段。 + */ + UserId?: string; +} diff --git a/lib/services/uvms/index.js b/lib/services/uvms/index.js new file mode 100644 index 0000000..4b0b4a5 --- /dev/null +++ b/lib/services/uvms/index.js @@ -0,0 +1,25 @@ +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const client_1 = __importDefault(require("../../core/client")); +const request_1 = __importDefault(require("../../core/request")); +/** + * This client is used to call actions of **uvms** service + */ +class UVMSClient extends client_1.default { + constructor({ config, credential, }) { + super({ config, credential }); + } + /** + * SendUVMSMessage - 向指定号码拨打电话 + * + * See also: https://docs.ucloud.cn/api/uvms-api/send_uvms_message + */ + sendUVMSMessage(request) { + const args = Object.assign({ Action: 'SendUVMSMessage' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } +} +exports.default = UVMSClient; diff --git a/lib/services/vpc/index.d.ts b/lib/services/vpc/index.d.ts index b28c701..14b5a0e 100644 --- a/lib/services/vpc/index.d.ts +++ b/lib/services/vpc/index.d.ts @@ -87,6 +87,12 @@ export default class VPCClient extends Client { * See also: https://docs.ucloud.cn/api/vpc2.0-api/create_route_table */ createRouteTable(request?: CreateRouteTableRequest): Promise; + /** + * CreateSnatDnatRule - 调用接口后会自动创建内外网IP之间的SNAT和DNAT规则,支持TCP、UDP协议全端口 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/create_snat_dnat_rule + */ + createSnatDnatRule(request?: CreateSnatDnatRuleRequest): Promise; /** * CreateSubnet - 创建子网 * @@ -147,6 +153,12 @@ export default class VPCClient extends Client { * See also: https://docs.ucloud.cn/api/vpc2.0-api/delete_secondary_ip */ deleteSecondaryIp(request?: DeleteSecondaryIpRequest): Promise; + /** + * DeleteSnatDnatRule - 删除NAT创建内外网IP映射规则 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/delete_snat_dnat_rule + */ + deleteSnatDnatRule(request?: DeleteSnatDnatRuleRequest): Promise; /** * DeleteSnatRule - 删除指定的出口规则(SNAT规则) * @@ -177,6 +189,12 @@ export default class VPCClient extends Client { * See also: https://docs.ucloud.cn/api/vpc2.0-api/delete_white_list_resource */ deleteWhiteListResource(request?: DeleteWhiteListResourceRequest): Promise; + /** + * DescribeInstanceNetworkInterface - 展示云主机绑定的网卡信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_instance_network_interface + */ + describeInstanceNetworkInterface(request?: DescribeInstanceNetworkInterfaceRequest): Promise; /** * DescribeNATGW - 获取NAT网关信息 * @@ -213,6 +231,12 @@ export default class VPCClient extends Client { * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_network_acl_entry */ describeNetworkAclEntry(request?: DescribeNetworkAclEntryRequest): Promise; + /** + * DescribeNetworkInterface - 展示虚拟网卡信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_network_interface + */ + describeNetworkInterface(request?: DescribeNetworkInterfaceRequest): Promise; /** * DescribeRouteTable - 获取路由表详细信息(包括路由策略) * @@ -225,6 +249,12 @@ export default class VPCClient extends Client { * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_secondary_ip */ describeSecondaryIp(request?: DescribeSecondaryIpRequest): Promise; + /** + * DescribeSnatDnatRule - 获取基于NAT创建的内外网IP映射规则信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_snat_dnat_rule + */ + describeSnatDnatRule(request?: DescribeSnatDnatRuleRequest): Promise; /** * DescribeSnatRule - 获取Nat网关的出口规则(SNAT规则) * @@ -309,6 +339,12 @@ export default class VPCClient extends Client { * See also: https://docs.ucloud.cn/api/vpc2.0-api/modify_route_rule */ modifyRouteRule(request?: ModifyRouteRuleRequest): Promise; + /** + * MoveSecondaryIPMac - 把 Secondary IP 从旧 MAC 迁移到新 MAC + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/move_secondary_ip_mac + */ + moveSecondaryIPMac(request?: MoveSecondaryIPMacRequest): Promise; /** * ReleaseVIP - 释放VIP资源 * @@ -612,10 +648,6 @@ export interface CreateNATGWRequest { * NAT网关名称 */ NATGWName: string; - /** - * NAT网关绑定的子网Id - */ - SubnetworkIds: string[]; /** * NAT网关绑定的EIPId */ @@ -624,6 +656,10 @@ export interface CreateNATGWRequest { * NAT网关绑定的防火墙Id */ FirewallId: string; + /** + * NAT网关绑定的子网Id,默认为空。 + */ + SubnetworkIds?: string[]; /** * NAT网关所属的VPC Id。默认为Default VPC Id */ @@ -845,6 +881,28 @@ export interface CreateRouteTableResponse { */ RouteTableId?: string; } +/** + * CreateSnatDnatRule - 调用接口后会自动创建内外网IP之间的SNAT和DNAT规则,支持TCP、UDP协议全端口 + */ +export interface CreateSnatDnatRuleRequest { + /** + * 内网P地址 + */ + PrivateIp: string[]; + /** + * EIP的IP地址。按入参顺序,PrivateIp与EIP一一对应建立映射关系。 + */ + EIP: string[]; + /** + * 映射所使用的NAT网关资源ID + */ + NATGWId: string; +} +/** + * CreateSnatDnatRule - 调用接口后会自动创建内外网IP之间的SNAT和DNAT规则,支持TCP、UDP协议全端口 + */ +export interface CreateSnatDnatRuleResponse { +} /** * CreateSubnet - 创建子网 */ @@ -1073,6 +1131,28 @@ export interface DeleteSecondaryIpRequest { */ export interface DeleteSecondaryIpResponse { } +/** + * DeleteSnatDnatRule - 删除NAT创建内外网IP映射规则 + */ +export interface DeleteSnatDnatRuleRequest { + /** + * EIP的IP地址,PrivateIp与EIP需一一对应 + */ + EIP: string[]; + /** + * 内网P地址 + */ + PrivateIp: string[]; + /** + * 映射所使用的NAT网关资源ID + */ + NATGWId: string; +} +/** + * DeleteSnatDnatRule - 删除NAT创建内外网IP映射规则 + */ +export interface DeleteSnatDnatRuleResponse { +} /** * DeleteSnatRule - 删除指定的出口规则(SNAT规则) */ @@ -1163,6 +1243,105 @@ export interface DeleteWhiteListResourceRequest { */ export interface DeleteWhiteListResourceResponse { } +/** + * DescribeInstanceNetworkInterface - 展示云主机绑定的网卡信息 + */ +export interface DescribeInstanceNetworkInterfaceRequest { + /** + * 云主机ID + */ + InstanceId: string; + /** + * 默认为0 + */ + Offset?: number; + /** + * 默认为20 + */ + Limit?: number; +} +/** + * DescribeInstanceNetworkInterface - 展示云主机绑定的网卡信息 + */ +export interface DescribeInstanceNetworkInterfaceResponse { + /** + * 虚拟网卡信息 + */ + NetworkInterfaceSet: { + /** + * 虚拟网卡资源ID + */ + InterfaceId: string; + /** + * 所属VPC + */ + VPCId: string; + /** + * 所属子网 + */ + SubnetId: string; + /** + * 关联内网IP。当前一个网卡仅支持绑定一个内网IP + */ + PrivateIpSet: string[]; + /** + * 关联Mac + */ + MacAddress: string; + /** + * 绑定状态 + */ + Status: number; + /** + * 网卡的内网IP信息 + */ + PrivateIp: string[]; + /** + * 虚拟网卡名称 + */ + Name?: string; + /** + * 内网IP掩码 + */ + Netmask?: string; + /** + * 默认网关 + */ + Gateway?: string; + /** + * 绑定实例资源ID + */ + AttachInstanceId?: string; + /** + * 是否是绑定实例的默认网卡 false:不是 true:是 + */ + Default?: boolean; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * 备注 + */ + Remark?: string; + /** + * 业务组 + */ + Tag?: string; + /** + * 虚拟网卡绑定的EIP ID信息 + */ + EIPIdSet?: string[]; + /** + * 虚拟网卡绑定的防火墙ID信息 + */ + FirewallIdSet?: string[]; + /** + * 网卡的内网IP配额信息 + */ + PrivateIplimit?: string[]; + }[]; +} /** * DescribeNATGW - 获取NAT网关信息 */ @@ -1191,39 +1370,39 @@ export interface DescribeNATGWResponse { /** * 查到的NATGW信息列表 */ - DataSet: { + DataSet?: { /** * natgw id */ - NATGWId: string; + NATGWId?: string; /** * natgw名称 */ - NATGWName: string; - /** - * natgw创建时间 - */ - CreateTime: number; + NATGWName?: string; /** * 业务组 */ - Tag: string; + Tag?: string; /** * 备注 */ - Remark: string; + Remark?: string; + /** + * natgw创建时间 + */ + CreateTime?: number; /** * 绑定的防火墙Id */ - FirewallId: string; + FirewallId?: string; /** * 所属VPC Id */ - VPCId: string; + VPCId?: string; /** * 子网 Id */ - SubnetSet: { + SubnetSet?: { /** * 子网id */ @@ -1240,7 +1419,7 @@ export interface DescribeNATGWResponse { /** * 绑定的EIP 信息 */ - IPSet: { + IPSet?: { /** * 外网IP的 EIPId */ @@ -1271,6 +1450,14 @@ export interface DescribeNATGWResponse { EIP: string; }[]; }[]; + /** + * VPC名称 + */ + VPCName?: string; + /** + * 枚举值,“enable”,默认出口规则使用了负载均衡;“disable”,默认出口规则未使用负载均衡。 + */ + IsSnatpoolEnabled?: string; /** * 转发策略Id */ @@ -1680,6 +1867,129 @@ export interface DescribeNetworkAclEntryResponse { TargetResourceCount?: number; }[]; } +/** + * DescribeNetworkInterface - 展示虚拟网卡信息 + */ +export interface DescribeNetworkInterfaceRequest { + /** + * 所属VPC + */ + VPCId?: string; + /** + * 所属子网 + */ + SubnetId?: string; + /** + * 虚拟网卡ID,可指定 0~n + */ + InterfaceId?: string[]; + /** + * 若为true 只返回默认网卡默认为false + */ + OnlyDefault?: boolean; + /** + * 若为true 过滤绑定在回收站主机中的网卡。默认为false。 + */ + NoRecycled?: boolean; + /** + * 业务组 + */ + Tag?: string; + /** + * 默认为20 + */ + Limit?: number; + /** + * 默认为0 + */ + Offset?: number; +} +/** + * DescribeNetworkInterface - 展示虚拟网卡信息 + */ +export interface DescribeNetworkInterfaceResponse { + /** + * 虚拟网卡信息 + */ + NetworkInterfaceSet: { + /** + * 虚拟网卡资源ID + */ + InterfaceId: string; + /** + * 所属VPC + */ + VPCId: string; + /** + * 所属子网 + */ + SubnetId: string; + /** + * 关联内网IP。当前一个网卡仅支持绑定一个内网IP + */ + PrivateIpSet: string[]; + /** + * 关联Mac + */ + MacAddress: string; + /** + * 绑定状态 + */ + Status: number; + /** + * 网卡的内网IP信息 + */ + PrivateIp: string[]; + /** + * 虚拟网卡名称 + */ + Name?: string; + /** + * 内网IP掩码 + */ + Netmask?: string; + /** + * 默认网关 + */ + Gateway?: string; + /** + * 绑定实例资源ID + */ + AttachInstanceId?: string; + /** + * 是否是绑定实例的默认网卡 false:不是 true:是 + */ + Default?: boolean; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * 备注 + */ + Remark?: string; + /** + * 业务组 + */ + Tag?: string; + /** + * 虚拟网卡绑定的EIP ID信息 + */ + EIPIdSet?: string[]; + /** + * 虚拟网卡绑定的防火墙ID信息 + */ + FirewallIdSet?: string[]; + /** + * 网卡的内网IP配额信息 + */ + PrivateIplimit?: string[]; + }[]; + /** + * 虚拟网卡总数 + */ + TotalCount?: number; +} /** * DescribeRouteTable - 获取路由表详细信息(包括路由策略) */ @@ -1867,6 +2177,41 @@ export interface DescribeSecondaryIpResponse { VPCId?: string; }[]; } +/** + * DescribeSnatDnatRule - 获取基于NAT创建的内外网IP映射规则信息 + */ +export interface DescribeSnatDnatRuleRequest { + /** + * 获取NAT上添加的所有SnatDnatRule信息 + */ + NATGWId?: string[]; + /** + * 获取EIP对应的SnatDnatRule信息 + */ + EIP?: string[]; +} +/** + * DescribeSnatDnatRule - 获取基于NAT创建的内外网IP映射规则信息 + */ +export interface DescribeSnatDnatRuleResponse { + /** + * 规则信息 + */ + DataSet?: { + /** + * 内网IP地址 + */ + PrivateIp?: string; + /** + * 映射所使用的NAT网关资源ID + */ + NATGWId?: string; + /** + * EIP的IP地址 + */ + EIP?: string; + }[]; +} /** * DescribeSnatRule - 获取Nat网关的出口规则(SNAT规则) */ @@ -2685,6 +3030,32 @@ export interface ModifyRouteRuleRequest { */ export interface ModifyRouteRuleResponse { } +/** + * MoveSecondaryIPMac - 把 Secondary IP 从旧 MAC 迁移到新 MAC + */ +export interface MoveSecondaryIPMacRequest { + /** + * Secondary IP + */ + Ip: string; + /** + * 旧 Mac。Secondary IP 当前所绑定的 Mac + */ + OldMac: string; + /** + * 新 Mac。Secondary IP 迁移的目的 Mac + */ + NewMac: string; + /** + * 子网 ID。IP/OldMac/NewMac 三者必须在同一子网 + */ + SubnetId: string; +} +/** + * MoveSecondaryIPMac - 把 Secondary IP 从旧 MAC 迁移到新 MAC + */ +export interface MoveSecondaryIPMacResponse { +} /** * ReleaseVIP - 释放VIP资源 */ @@ -2750,7 +3121,7 @@ export interface UpdateNATGWPolicyRequest { */ SrcPort: string; /** - * 目标IP。填写对饮的目标IP地址 + * 目标IP。填写对应的目标IP地址 */ DstIP: string; /** @@ -2778,7 +3149,7 @@ export interface UpdateNATGWSubnetRequest { /** * NAT网关绑定的子网Id */ - SubnetworkIds: string[]; + SubnetworkIds?: string[]; } /** * UpdateNATGWSubnet - 更新NAT网关绑定的子网 diff --git a/lib/services/vpc/index.js b/lib/services/vpc/index.js index 68d091b..9a57ea8 100644 --- a/lib/services/vpc/index.js +++ b/lib/services/vpc/index.js @@ -129,6 +129,15 @@ class VPCClient extends client_1.default { const args = Object.assign({ Action: 'CreateRouteTable' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * CreateSnatDnatRule - 调用接口后会自动创建内外网IP之间的SNAT和DNAT规则,支持TCP、UDP协议全端口 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/create_snat_dnat_rule + */ + createSnatDnatRule(request) { + const args = Object.assign({ Action: 'CreateSnatDnatRule' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * CreateSubnet - 创建子网 * @@ -219,6 +228,15 @@ class VPCClient extends client_1.default { const args = Object.assign({ Action: 'DeleteSecondaryIp' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DeleteSnatDnatRule - 删除NAT创建内外网IP映射规则 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/delete_snat_dnat_rule + */ + deleteSnatDnatRule(request) { + const args = Object.assign({ Action: 'DeleteSnatDnatRule' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DeleteSnatRule - 删除指定的出口规则(SNAT规则) * @@ -264,6 +282,15 @@ class VPCClient extends client_1.default { const args = Object.assign({ Action: 'DeleteWhiteListResource' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeInstanceNetworkInterface - 展示云主机绑定的网卡信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_instance_network_interface + */ + describeInstanceNetworkInterface(request) { + const args = Object.assign({ Action: 'DescribeInstanceNetworkInterface' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeNATGW - 获取NAT网关信息 * @@ -318,6 +345,15 @@ class VPCClient extends client_1.default { const args = Object.assign({ Action: 'DescribeNetworkAclEntry' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeNetworkInterface - 展示虚拟网卡信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_network_interface + */ + describeNetworkInterface(request) { + const args = Object.assign({ Action: 'DescribeNetworkInterface' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeRouteTable - 获取路由表详细信息(包括路由策略) * @@ -336,6 +372,15 @@ class VPCClient extends client_1.default { const args = Object.assign({ Action: 'DescribeSecondaryIp' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * DescribeSnatDnatRule - 获取基于NAT创建的内外网IP映射规则信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_snat_dnat_rule + */ + describeSnatDnatRule(request) { + const args = Object.assign({ Action: 'DescribeSnatDnatRule' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * DescribeSnatRule - 获取Nat网关的出口规则(SNAT规则) * @@ -462,6 +507,15 @@ class VPCClient extends client_1.default { const args = Object.assign({ Action: 'ModifyRouteRule' }, (request || {})); return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); } + /** + * MoveSecondaryIPMac - 把 Secondary IP 从旧 MAC 迁移到新 MAC + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/move_secondary_ip_mac + */ + moveSecondaryIPMac(request) { + const args = Object.assign({ Action: 'MoveSecondaryIPMac' }, (request || {})); + return this.invoke(new request_1.default(args)).then((resp) => resp.toObject()); + } /** * ReleaseVIP - 释放VIP资源 * diff --git a/src/services/cube/index.ts b/src/services/cube/index.ts index df48c6e..b678fb7 100644 --- a/src/services/cube/index.ts +++ b/src/services/cube/index.ts @@ -87,6 +87,20 @@ export default class CubeClient extends Client { ); } + /** + * GetCubeExecToken - 获取登录容器的token + * + * See also: https://docs.ucloud.cn/api/cube-api/get_cube_exec_token + */ + getCubeExecToken( + request?: GetCubeExecTokenRequest + ): Promise { + const args = { Action: 'GetCubeExecToken', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetCubeExecTokenResponse + ); + } + /** * GetCubeExtendInfo - 获取Cube的额外信息 * @@ -139,6 +153,32 @@ export default class CubeClient extends Client { ); } + /** + * GetCubeToken - 获取Cube的token,可用于terminal登录、log获取 + * + * See also: https://docs.ucloud.cn/api/cube-api/get_cube_token + */ + getCubeToken(request?: GetCubeTokenRequest): Promise { + const args = { Action: 'GetCubeToken', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetCubeTokenResponse + ); + } + + /** + * ListCubeDeployment - 获取Cube的Deployment列表 + * + * See also: https://docs.ucloud.cn/api/cube-api/list_cube_deployment + */ + listCubeDeployment( + request?: ListCubeDeploymentRequest + ): Promise { + const args = { Action: 'ListCubeDeployment', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ListCubeDeploymentResponse + ); + } + /** * ListCubePod - 获取Pods列表 * @@ -179,6 +219,20 @@ export default class CubeClient extends Client { ); } + /** + * RebootCubePod - 重启Cube Pod + * + * See also: https://docs.ucloud.cn/api/cube-api/reboot_cube_pod + */ + rebootCubePod( + request?: RebootCubePodRequest + ): Promise { + const args = { Action: 'RebootCubePod', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as RebootCubePodResponse + ); + } + /** * RenewCubePod - 更新Pod * @@ -404,6 +458,42 @@ export interface GetCubeDeploymentResponse { Deployment: string; } +/** + * GetCubeExecToken - 获取登录容器的token + */ +export interface GetCubeExecTokenRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 容器名称 + */ + ContainerName: string; + /** + * CubeId 和 Uid 中必须填写任意一个。CubeId 是所有 Cube 资源的唯一 ID,如非在 UK8S 通过 Virtual Kubelet 插件创建的 Cube, 则必填 CubeId + */ + CubeId?: string; + /** + * CubeId 和 Uid 中必须填写任意一个。Uid 是在 UK8S 中通过 Virtual Kubelet 插件创建出的 Cube 的唯一标识 + */ + Uid?: string; +} + +/** + * GetCubeExecToken - 获取登录容器的token + */ +export interface GetCubeExecTokenResponse { + /** + * 有效时间5min + */ + Token: string; + /** + * terminal的登录连接地址,限单点登录,有效时间5min + */ + TerminalUrl?: string; +} + /** * GetCubeExtendInfo - 获取Cube的额外信息 */ @@ -625,12 +715,76 @@ export interface GetCubePriceResponse { OriginalPrice: number; } +/** + * GetCubeToken - 获取Cube的token,可用于terminal登录、log获取 + */ +export interface GetCubeTokenRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 容器名称 + */ + ContainerName: string; + /** + * CubeId 和 Uid 中必须填写任意一个。CubeId 是所有 Cube 资源的唯一 ID,如非在 UK8S 通过 Virtual Kubelet 插件创建的 Cube, 则必填 CubeId + */ + CubeId?: string; + /** + * CubeId 和 Uid 中必须填写任意一个。Uid 是在 UK8S 中通过 Virtual Kubelet 插件创建出的 Cube 的唯一标识 + */ + Uid?: string; +} + +/** + * GetCubeToken - 获取Cube的token,可用于terminal登录、log获取 + */ +export interface GetCubeTokenResponse { + /** + * 有效时间5min + */ + Token: string; +} + +/** + * ListCubeDeployment - 获取Cube的Deployment列表 + */ +export interface ListCubeDeploymentRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 默认0 + */ + Offset: number; + /** + * 默认20 + */ + Limit: number; +} + +/** + * ListCubeDeployment - 获取Cube的Deployment列表 + */ +export interface ListCubeDeploymentResponse { + /** + * + */ + TotalCount: number; + /** + * DeploymentInfo + */ + Deployments: string[]; +} + /** * ListCubePod - 获取Pods列表 */ export interface ListCubePodRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -653,6 +807,10 @@ export interface ListCubePodRequest { * 默认20 */ Limit?: number; + /** + * Deployment的Id + */ + DeploymentId?: string; } /** @@ -720,6 +878,25 @@ export interface ModifyCubeTagResponse { CubeId: string; } +/** + * RebootCubePod - 重启Cube Pod + */ +export interface RebootCubePodRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * cube资源id(cube-xxxxxx) + */ + CubeId: string; +} + +/** + * RebootCubePod - 重启Cube Pod + */ +export interface RebootCubePodResponse {} + /** * RenewCubePod - 更新Pod */ diff --git a/src/services/index.ts b/src/services/index.ts index 552ec79..6f986ec 100644 --- a/src/services/index.ts +++ b/src/services/index.ts @@ -22,6 +22,7 @@ const UMemClient = require('./umem').default; const UNetClient = require('./unet').default; const UPHostClient = require('./uphost').default; const USMSClient = require('./usms').default; +const UVMSClient = require('./uvms').default; const VPCClient = require('./vpc').default; export class Client extends BaseClient { @@ -139,7 +140,15 @@ export class Client extends BaseClient { return new USMSClient({ config: this.config, credential: this.credential }); } + uvms() { + return new UVMSClient({ config: this.config, credential: this.credential }); + } + vpc() { return new VPCClient({ config: this.config, credential: this.credential }); } } + +module.exports = { + Client: Client, +}; diff --git a/src/services/ipsecvpn/index.ts b/src/services/ipsecvpn/index.ts index 3b3d4e8..e2d99b4 100644 --- a/src/services/ipsecvpn/index.ts +++ b/src/services/ipsecvpn/index.ts @@ -312,6 +312,10 @@ export interface CreateVPNTunnelRequest { * vpcId */ VPCId: string; + /** + * ike版本,枚举值: "IKE V1","IKE V2",默认v1 + */ + IKEVersion: string; /** * 指定VPN连接的本地子网的资源ID,最多可填写10个。 */ @@ -320,10 +324,6 @@ export interface CreateVPNTunnelRequest { * 指定VPN连接的客户网段,最多可填写20个。 */ IPSecRemoteSubnets: string[]; - /** - * ike版本,枚举值: "IKE V1","IKE V2",默认v1 - */ - IKEVersion: string; /** * 业务组,默认为“Default” */ @@ -369,7 +369,7 @@ export interface CreateVPNTunnelRequest { */ IPSecEncryptionAlgorithm?: string; /** - * IPSec隧道中使用的认证算法,枚举值,"md5", "sha1"。默认值为“sha1” + * IPSec隧道中使用的认证算法,枚举值,"md5", "sha1","sha2-256"。默认值为“sha1” */ IPSecAuthenticationAlgorithm?: string; /** @@ -384,6 +384,10 @@ export interface CreateVPNTunnelRequest { * IPSec的PFS是否开启,枚举值,,不开启,"disable";数字表示DH组, "1", "2", "5", "14", "15", "16"。默认为“disable”。 */ IPSecPFSDhGroup?: string; + /** + * IPSec隧道关闭后的处理动作,枚举值:“none”,流量触发;“restart”,自动重联,默认为none + */ + IPSecCloseAction?: string; } /** @@ -926,6 +930,10 @@ export interface UpdateVPNTunnelAttributeRequest { * 枚举值:"IKE V1","IKE V2" */ IKEVersion?: string; + /** + * IPSec隧道关闭后的处理动作,默认与原本一致,若原本为空,必传。枚举值:“none”,不处理(推荐为none,流量会自动触发隧道重建);“restart”重建 + */ + IPSecCloseAction?: string; } /** diff --git a/src/services/pathx/index.ts b/src/services/pathx/index.ts index 110470c..608ea1f 100644 --- a/src/services/pathx/index.ts +++ b/src/services/pathx/index.ts @@ -57,6 +57,34 @@ export default class PathXClient extends Client { ); } + /** + * CreateUGA3Instance - 创建全球统一接入加速配置项 + * + * See also: https://docs.ucloud.cn/api/pathx-api/create_uga3_instance + */ + createUGA3Instance( + request?: CreateUGA3InstanceRequest + ): Promise { + const args = { Action: 'CreateUGA3Instance', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as CreateUGA3InstanceResponse + ); + } + + /** + * CreateUGA3Port - 创建统一接入加速实例端口,目前仅支持四层TCP端口 + * + * See also: https://docs.ucloud.cn/api/pathx-api/create_uga3_port + */ + createUGA3Port( + request?: CreateUGA3PortRequest + ): Promise { + const args = { Action: 'CreateUGA3Port', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as CreateUGA3PortResponse + ); + } + /** * CreateUGAForwarder - 创建加速实例转发器,支持HTTPS接入HTTPS回源、HTTPS接入HTTP回源、HTTP接入HTTP回源、TCP接入TCP回源、UDP接入UDP回源、 支持WSS接入WSS回源、WSS接入WS回源、WS接入WS回源 * @@ -125,6 +153,34 @@ export default class PathXClient extends Client { ); } + /** + * DeleteUGA3Instance - 删除全球统一接入转发实例 + * + * See also: https://docs.ucloud.cn/api/pathx-api/delete_uga3_instance + */ + deleteUGA3Instance( + request?: DeleteUGA3InstanceRequest + ): Promise { + const args = { Action: 'DeleteUGA3Instance', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DeleteUGA3InstanceResponse + ); + } + + /** + * DeleteUGA3Port - 删除统一接入加速实例转发器 按接入端口删除 + * + * See also: https://docs.ucloud.cn/api/pathx-api/delete_uga3_port + */ + deleteUGA3Port( + request?: DeleteUGA3PortRequest + ): Promise { + const args = { Action: 'DeleteUGA3Port', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DeleteUGA3PortResponse + ); + } + /** * DeleteUGAForwarder - 删除加速实例转发器 按接入端口删除 * @@ -207,6 +263,48 @@ export default class PathXClient extends Client { ); } + /** + * DescribeUGA3Area - 获取全球接入源站可选列表 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_area + */ + describeUGA3Area( + request?: DescribeUGA3AreaRequest + ): Promise { + const args = { Action: 'DescribeUGA3Area', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUGA3AreaResponse + ); + } + + /** + * DescribeUGA3Instance - 获取全球统一接入加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_instance + */ + describeUGA3Instance( + request?: DescribeUGA3InstanceRequest + ): Promise { + const args = { Action: 'DescribeUGA3Instance', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUGA3InstanceResponse + ); + } + + /** + * DescribeUGA3Optimization - 获取全球接入UGA3线路加速化情况 + * + * See also: https://docs.ucloud.cn/api/pathx-api/describe_uga3_optimization + */ + describeUGA3Optimization( + request?: DescribeUGA3OptimizationRequest + ): Promise { + const args = { Action: 'DescribeUGA3Optimization', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUGA3OptimizationResponse + ); + } + /** * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 * @@ -291,6 +389,46 @@ export default class PathXClient extends Client { ); } + /** + * GetUGA3Metric - 获取全地域加速监控信息 + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_metric + */ + getUGA3Metric( + request?: GetUGA3MetricRequest + ): Promise { + const args = { Action: 'GetUGA3Metric', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetUGA3MetricResponse + ); + } + + /** + * GetUGA3Price - 获取全球统一接入转发实例价格 + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_price + */ + getUGA3Price(request?: GetUGA3PriceRequest): Promise { + const args = { Action: 'GetUGA3Price', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetUGA3PriceResponse + ); + } + + /** + * GetUGA3UpdatePrice - 全球统一接入获取实例更新价格(增加、删退) + * + * See also: https://docs.ucloud.cn/api/pathx-api/get_uga3_update_price + */ + getUGA3UpdatePrice( + request?: GetUGA3UpdatePriceRequest + ): Promise { + const args = { Action: 'GetUGA3UpdatePrice', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetUGA3UpdatePriceResponse + ); + } + /** * ModifyGlobalSSHPort - 修改GlobalSSH端口 * @@ -305,6 +443,20 @@ export default class PathXClient extends Client { ); } + /** + * ModifyGlobalSSHRemark - 修改GlobalSSH备注 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_global_ssh_remark + */ + modifyGlobalSSHRemark( + request?: ModifyGlobalSSHRemarkRequest + ): Promise { + const args = { Action: 'ModifyGlobalSSHRemark', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ModifyGlobalSSHRemarkResponse + ); + } + /** * ModifyGlobalSSHType - 修改GlobalSSH实例类型,仅支持低版本升级到高版本,不支持高版本降级到低版本 * @@ -319,6 +471,62 @@ export default class PathXClient extends Client { ); } + /** + * ModifyUGA3Bandwidth - 修改统一接入加速配置带宽 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_bandwidth + */ + modifyUGA3Bandwidth( + request?: ModifyUGA3BandwidthRequest + ): Promise { + const args = { Action: 'ModifyUGA3Bandwidth', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ModifyUGA3BandwidthResponse + ); + } + + /** + * ModifyUGA3Instance - 修改统一接入加速配置属性,如Name,ReMark + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_instance + */ + modifyUGA3Instance( + request?: ModifyUGA3InstanceRequest + ): Promise { + const args = { Action: 'ModifyUGA3Instance', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ModifyUGA3InstanceResponse + ); + } + + /** + * ModifyUGA3OriginInfo - Domain, IPList注意:修改Domain或IPList时, 请确保源站服务端口已经开启且外网防火墙允许pathx出口ip访问。 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_origin_info + */ + modifyUGA3OriginInfo( + request?: ModifyUGA3OriginInfoRequest + ): Promise { + const args = { Action: 'ModifyUGA3OriginInfo', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ModifyUGA3OriginInfoResponse + ); + } + + /** + * ModifyUGA3Port - 修改统一接入加速实例端口,目前仅支持四层TCP端口 + * + * See also: https://docs.ucloud.cn/api/pathx-api/modify_uga3_port + */ + modifyUGA3Port( + request?: ModifyUGA3PortRequest + ): Promise { + const args = { Action: 'ModifyUGA3Port', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ModifyUGA3PortResponse + ); + } + /** * ModifyUPathBandwidth - 修改加速线路带宽 * @@ -386,6 +594,20 @@ export default class PathXClient extends Client { (resp) => resp.toObject() as UnBindPathXSSLResponse ); } + + /** + * UpdatePathXWhitelist - 更新入口白名单,仅限GlobalSSH 实例使用。其他uga-实例不生效 + * + * See also: https://docs.ucloud.cn/api/pathx-api/update_path_x_whitelist + */ + updatePathXWhitelist( + request?: UpdatePathXWhitelistRequest + ): Promise { + const args = { Action: 'UpdatePathXWhitelist', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as UpdatePathXWhitelistResponse + ); + } } /** @@ -416,7 +638,7 @@ export interface BindPathXSSLResponse {} */ export interface CreateGlobalSSHInstanceRequest { /** - * 填写支持SSH访问IP的地区名称,如“洛杉矶”,“新加坡”,“香港”,“东京”,“华盛顿”,“法兰克福”。Area和AreaCode两者必填一个 + * 填写支持SSH访问IP的地区名称,如“洛杉矶”,“新加坡”,“香港”,“东京”,“华盛顿”,“法兰克福”,“首尔”。Area和AreaCode两者必填一个 */ Area: string; /** @@ -436,15 +658,15 @@ export interface CreateGlobalSSHInstanceRequest { */ Remark?: string; /** - * 支付方式,如按月、按年、按时 + * 支付方式,如按月:Month、 按年:Year、按时:Dynamic */ ChargeType?: string; /** - * 购买数量 + * 购买数量按月购买至月底请传0 */ Quantity?: number; /** - * 枚举值:["Enterprise","Basic","Free"], 分别代表企业版,基础版,免费版 + * 枚举值:["Ultimate","Enterprise","Basic","Primary"], 分别代表旗舰版,企业版,基础版,入门版 */ InstanceType?: string; /** @@ -452,7 +674,7 @@ export interface CreateGlobalSSHInstanceRequest { */ BandwidthPackage?: number; /** - * InstanceType等于Basic时可以在["cn-bj2","cn-sh2","cn-gd"]中选择1个作为转发机房,Free版本固定为cn-bj2,其他付费版默认配置三个转发机房 + * InstanceType等于Basic时可以在["cn-bj2","cn-sh2","cn-gd"]中选择1个作为转发机房,其他付费版默认配置三个转发机房 */ ForwardRegion?: string; /** @@ -515,6 +737,89 @@ export interface CreatePathXSSLResponse { SSLId: string; } +/** + * CreateUGA3Instance - 创建全球统一接入加速配置项 + */ +export interface CreateUGA3InstanceRequest { + /** + * 实例的共享带宽大小,单位Mbps + */ + Bandwidth: number; + /** + * 加速配置实例名称,默认PathX + */ + Name?: string; + /** + * 非必填,如果不填,会根据Domain 和IPList 去选一个最近的源站区域BKK表示AreaCode;曼谷表示Area["BKK":"曼谷","DXB":"迪拜","FRA":"法兰克福","SGN":"胡志明市","HKG":"香港",CGK":"雅加达","LOS":"拉各斯","LHR":"伦敦","LAX":"洛杉矶","MNL":"马尼拉","DME":"莫斯科","BOM":"孟买","MSP":"圣保罗","ICN":"首尔","PVG":"上海","SIN":"新加坡","NRT":"东京","IAD":"华盛顿","TPE": "台北"] + */ + AreaCode?: string; + /** + * 备注项 + */ + Remark?: string; + /** + * 支付方式,如按月、按年、按时[Year,Month,Dynamic] + */ + ChargeType?: string; + /** + * 购买周期 + */ + Quantity?: number; + /** + * 加速大区,默认Global,[ "Global":"全球", "AP":"亚太", "EU":"欧洲", "ME":"中东", "OA":"大洋洲", "AF":"非洲", "NA":"北美洲", "SA":"南美洲"] + */ + AccelerationArea?: string; + /** + * 加速源IP,多个IP用英文半角逗号(,)隔开;IPList和Domain二选一必填 + */ + OriginIPList?: string; + /** + * 加速源域名,IPList和Domain二选一必填 + */ + OriginDomain?: string; + /** + * 使用代金券可冲抵部分费用,仅全地域可用的代金券 + */ + CouponId?: string; +} + +/** + * CreateUGA3Instance - 创建全球统一接入加速配置项 + */ +export interface CreateUGA3InstanceResponse { + /** + * 加速配置ID + */ + InstanceId: string; + /** + * 加速域名 用户可把业务域名CName到此域名上 + */ + CName?: string; +} + +/** + * CreateUGA3Port - 创建统一接入加速实例端口,目前仅支持四层TCP端口 + */ +export interface CreateUGA3PortRequest { + /** + * 加速配置实例ID + */ + InstanceId: string; + /** + * TCP接入端口,禁用65123端口 + */ + TCP?: number[]; + /** + * TCP回源端口 + */ + TCPRS?: number[]; +} + +/** + * CreateUGA3Port - 创建统一接入加速实例端口,目前仅支持四层TCP端口 + */ +export interface CreateUGA3PortResponse {} + /** * CreateUGAForwarder - 创建加速实例转发器,支持HTTPS接入HTTPS回源、HTTPS接入HTTP回源、HTTP接入HTTP回源、TCP接入TCP回源、UDP接入UDP回源、 支持WSS接入WSS回源、WSS接入WS回源、WS接入WS回源 */ @@ -548,7 +853,7 @@ export interface CreateUGAForwarderRequest { */ HTTPSHTTPSRS?: number[]; /** - * TCP接入端口 + * TCP接入端口,禁用65123端口 */ TCP?: number[]; /** @@ -556,13 +861,37 @@ export interface CreateUGAForwarderRequest { */ TCPRS?: number[]; /** - * UDP接入端口 + * UDP接入端口,禁用65123端口 */ UDP?: number[]; /** * UDP回源端口 */ UDPRS?: number[]; + /** + * WebSocket接入WebSocket回源转发,接入端口。禁用65123。 + */ + WSWS?: number[]; + /** + * WebSocket接入WebSocket回源转发,源站监听端口 + */ + WSWSRS?: number[]; + /** + * WebSocketS接入WebSocketS回源转发,接入端口。禁用65123。 + */ + WSSWSS?: number[]; + /** + * WebSocketS接入WebSocketS回源转发,源站监听端口。 + */ + WSSWSSRS?: number[]; + /** + * WebSocketS接入WebSocket回源转发,接入端口。禁用65123。 + */ + WSSWS?: number[]; + /** + * WebSocketS接入WebSocket回源转发,源站监听端口。 + */ + WSSWSRS?: number[]; } /** @@ -615,15 +944,15 @@ export interface CreateUGAInstanceResponse { */ export interface CreateUPathRequest { /** - * UPath名字 + * 名字,便于记忆区分 */ Name: string; /** - * 选择的线路 + * 选择的线路,由DescribePathXLineConfig接口提供 */ LineId: string; /** - * 线路带宽,最小1Mbps,最大带宽由 DescribePathXLineConfig 接口获得。如需更大带宽,请联系产品团队。 + * 当PostPaid为false时,该值为预付费固定带宽;当PostPaid为true时,该值为后付费保底带宽,保底带宽越大可用的上限带宽越大。最小1Mbps,最大带宽由 DescribePathXLineConfig 接口获得。可联系产品团队咨询最大带宽。 */ Bandwidth: number; /** @@ -635,9 +964,13 @@ export interface CreateUPathRequest { */ Quantity?: number; /** - * 是否开启后付费, 默认为false + * 是否开启后付费, 默认为false ,不开启后付费。当ChargeType为Dynamic时不能开启后付费。 */ PostPaid?: boolean; + /** + * private:专线线路;public:海外SD-WAN。默认为private。 + */ + PathType?: string; /** * 代金券Id */ @@ -651,7 +984,7 @@ export interface CreateUPathResponse { /** * 加速线路实例Id */ - UPathId: string; + PathId: string; } /** @@ -684,6 +1017,40 @@ export interface DeletePathXSSLRequest { */ export interface DeletePathXSSLResponse {} +/** + * DeleteUGA3Instance - 删除全球统一接入转发实例 + */ +export interface DeleteUGA3InstanceRequest { + /** + * 实例Id,资源的唯一标识 + */ + InstanceId: string; +} + +/** + * DeleteUGA3Instance - 删除全球统一接入转发实例 + */ +export interface DeleteUGA3InstanceResponse {} + +/** + * DeleteUGA3Port - 删除统一接入加速实例转发器 按接入端口删除 + */ +export interface DeleteUGA3PortRequest { + /** + * 加速配置实例ID + */ + InstanceId: string; + /** + * TCP接入端口 + */ + TCP?: number[]; +} + +/** + * DeleteUGA3Port - 删除统一接入加速实例转发器 按接入端口删除 + */ +export interface DeleteUGA3PortResponse {} + /** * DeleteUGAForwarder - 删除加速实例转发器 按接入端口删除 */ @@ -704,6 +1071,18 @@ export interface DeleteUGAForwarderRequest { * HTTPS接入HTTPS回源, 接入端口。禁用65123端口 */ HTTPSHTTPS?: number[]; + /** + * WebSocketS接入WebSocketS回源, 接入端口。禁用65123端口 + */ + WSSWSS?: number[]; + /** + * WebSocket接入WebSocket回源, 接入端口。禁用65123端口 + */ + WSWS?: number[]; + /** + * WebSocketS接入WebSocket回源, 接入端口。禁用65123端口。 + */ + WSSWS?: number[]; /** * TCP接入端口 */ @@ -974,60 +1353,344 @@ export interface DescribePathXSSLResponse { } /** - * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + * DescribeUGA3Area - 获取全球接入源站可选列表 */ -export interface DescribeUGAInstanceRequest { +export interface DescribeUGA3AreaRequest { /** - * 加速配置实例ID,如果传了实例ID 则返回匹配实例ID的记录;如果没传则返回 ProjectId 下全部实例且符合分页要求 - */ - UGAId?: string; - /** - * 返回的最大条数,默认为100,最大值400 + * IP集合,非必填。如果填IP或者域名,会推荐一个地域在返回列表的第一个,源站IP集合,以逗号分隔[127.0.0.1,127.0.0.2] */ - Limit?: number; + IPList?: string; /** - * 偏移量,默认为0 + * 域名,非必填。如果填IP或者域名,会推荐一个地域在返回列表的第一个 */ - Offset?: number; + Domain?: string; } /** - * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + * DescribeUGA3Area - 获取全球接入源站可选列表 */ -export interface DescribeUGAInstanceResponse { +export interface DescribeUGA3AreaResponse { /** - * 全球加速实例信息列表 + * 支持源站的地区,比如:AreaSet[{ "Area": "首尔", "AreaCode": "ICN", "CountryCode": "CN", "ContinentCode": "CN" }]ContinentCode:["CN","NA","OT"];"CN":表示国内,"NA":表示美洲,“OT":表示欧洲等其他地区 */ - UGAList?: { - /** - * 加速配置实例ID - */ - UGAId: string; + AreaSet?: { /** - * 加速域名,请在加速区域配置您的业务域名的CName记录值为加速域名 + * 源站区域代码 */ - CName: string; + AreaCode: string; /** - * 加速配置名称 + * 源站区域中文 */ - UGAName: string; + Area: string; /** - * 源站IP列表,多个值由半角英文逗号相隔 + * 国家代码 */ - IPList?: string[]; + CountryCode: string; /** - * 源站域名 + * 国旗unicode */ - Domain?: string; + FlagUnicode: string; /** - * 源站所在区域,加速实例在绑定线路后会自动设置该值。console页面上通过该值过滤加速实例可以绑定的upath实例。注意:缺少该值会导致在console上无法修改线路 + * 国旗 emoji */ - Location?: string; + FlagEmoji: string; /** - * 绑定的加速线路 + * 大陆代码 */ - UPathSet?: { - /** + ContinentCode: string; + }[]; +} + +/** + * DescribeUGA3Instance - 获取全球统一接入加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + */ +export interface DescribeUGA3InstanceRequest { + /** + * 加速配置实例ID,如果传了实例ID 则返回匹配实例ID的记录;如果没传则返回 ProjectId 下全部实例且符合分页要求 + */ + InstanceId?: string; + /** + * 返回的最大条数,默认为100,最大值400 + */ + Limit?: number; + /** + * 偏移量,默认为0 + */ + Offset?: number; +} + +/** + * DescribeUGA3Instance - 获取全球统一接入加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + */ +export interface DescribeUGA3InstanceResponse { + /** + * 全球加速实例信息列表 + */ + ForwardInstanceInfos?: { + /** + * 加速配置ID + */ + InstanceId: string; + /** + * 加速域名 + */ + CName: string; + /** + * 加速实例名称 + */ + Name: string; + /** + * 加速大区代码 + */ + AccelerationArea: string; + /** + * 加速大区名称 + */ + AccelerationAreaName: string; + /** + * 加速节点列表 + */ + AccelerationAreaInfos: { + /** + * 加速区code + */ + AccelerationArea: string; + /** + * 加速节点信息 + */ + AccelerationNodes: { + /** + * AreaCode ,城市机场代码 + */ + AreaCode: string; + /** + * AreaCode对应城市名 + */ + Area: string; + /** + * 国旗Emoji + */ + FlagEmoji: string; + /** + * 国旗Unicode + */ + FlagUnicode: string; + }[]; + }[]; + /** + * 回源出口IP地址 + */ + EgressIpList: { + /** + * 线路回源节点EIP + */ + IP?: string; + /** + * 线路回源节点机房代号 + */ + Area?: string; + }[]; + /** + * 购买的带宽值 + */ + Bandwidth: number; + /** + * 源站中文名 + */ + OriginArea: string; + /** + * 源站AreaCode + */ + OriginAreaCode: string; + /** + * 资源创建时间 + */ + CreateTime: number; + /** + * 资源过期时间 + */ + ExpireTime: number; + /** + * 计费方式 + */ + ChargeType: string; + /** + * 备注 + */ + Remark?: string; + /** + * 端口列表 + */ + PortSets?: { + /** + * 转发协议,枚举值["TCP","UDP","HTTPHTTP","HTTPSHTTP","HTTPSHTTPS","WSWS","WSSWS","WSSWSS"]。TCP和UDP代表四层转发,其余为七层转发。 + */ + Protocol: string; + /** + * 源站服务器监听的端口号 + */ + RSPort: number; + /** + * 加速端口 + */ + Port: number; + }[]; + /** + * 源站IP列表,多个值由半角英文逗号相隔 + */ + IPList?: string[]; + /** + * 源站域名 + */ + Domain?: string; + }[]; + /** + * 符合条件的总数 + */ + TotalCount?: number; +} + +/** + * DescribeUGA3Optimization - 获取全球接入UGA3线路加速化情况 + */ +export interface DescribeUGA3OptimizationRequest { + /** + * 源站AreaCode + */ + AreaCode: string; + /** + * 默认一天 ,枚举类型["Hour","Day","Week"] + */ + TimeRange?: string; + /** + * 加速大区,默认Global,[ "Global":"全球", "AP":"亚太", "EU":"欧洲", "ME":"中东", "OA":"大洋洲", "AF":"非洲", "NA":"北美洲", "SA":"南美洲"] + */ + AccelerationArea?: string; +} + +/** + * DescribeUGA3Optimization - 获取全球接入UGA3线路加速化情况 + */ +export interface DescribeUGA3OptimizationResponse { + /** + * 加速详情 + */ + AccelerationInfos?: { + /** + * 加速大区代码 + */ + AccelerationArea: string; + /** + * 加速大区名称 + */ + AccelerationName: string; + /** + * 加速提升情况 + */ + NodeInfo: { + /** + * 加速区域 + */ + Area: string; + /** + * 加速区域Code + */ + AreaCode: string; + /** + * 国家代码 + */ + CountryCode: string; + /** + * 国旗Code + */ + FlagUnicode: string; + /** + * 国旗Emoji + */ + FlagEmoji: string; + /** + * 加速延迟 + */ + Latency: number; + /** + * 公网延迟 + */ + LatencyInternet: number; + /** + * 加速提升比例 + */ + LatencyOptimization: number; + /** + * 加速后丢包率 + */ + Loss: number; + /** + * 原始丢包率 + */ + LossInternet: number; + /** + * 丢包下降比例 + */ + LossOptimization: number; + }[]; + }[]; +} + +/** + * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + */ +export interface DescribeUGAInstanceRequest { + /** + * 加速配置实例ID,如果传了实例ID 则返回匹配实例ID的记录;如果没传则返回 ProjectId 下全部实例且符合分页要求 + */ + UGAId?: string; + /** + * 返回的最大条数,默认为100,最大值400 + */ + Limit?: number; + /** + * 偏移量,默认为0 + */ + Offset?: number; +} + +/** + * DescribeUGAInstance - 获取全球加速服务加速配置信息,指定实例ID返回单个实例。未指定实例ID时 指定分页参数 则按创建时间降序 返回记录 + */ +export interface DescribeUGAInstanceResponse { + /** + * 全球加速实例信息列表 + */ + UGAList?: { + /** + * 加速配置实例ID + */ + UGAId: string; + /** + * 加速域名,请在加速区域配置您的业务域名的CName记录值为加速域名 + */ + CName: string; + /** + * 加速配置名称 + */ + UGAName: string; + /** + * 源站IP列表,多个值由半角英文逗号相隔 + */ + IPList?: string[]; + /** + * 源站域名 + */ + Domain?: string; + /** + * 源站所在区域,加速实例在绑定线路后会自动设置该值。console页面上通过该值过滤加速实例可以绑定的upath实例。注意:缺少该值会导致在console上无法修改线路 + */ + Location?: string; + /** + * 绑定的加速线路 + */ + UPathSet?: { + /** * UPath名字 */ UPathName?: string; @@ -1120,11 +1783,11 @@ export interface DescribeUGAInstanceResponse { */ OutPublicIpList?: { /** - * 线路出口EIP + * 线路回源节点EIP */ IP?: string; /** - * 线路出口机房代号 + * 线路回源节点机房代号 */ Area?: string; }[]; @@ -1215,11 +1878,11 @@ export interface DescribeUPathResponse { */ OutPublicIpList?: { /** - * 线路出口EIP + * 线路回源节点EIP */ IP?: string; /** - * 线路出口机房代号 + * 线路回源节点机房代号 */ Area?: string; }[]; @@ -1436,6 +2099,288 @@ export interface GetPathXMetricResponse { }; } +/** + * GetUGA3Metric - 获取全地域加速监控信息 + */ +export interface GetUGA3MetricRequest { + /** + * 资源ID + */ + InstanceId: string; + /** + * 查询起始时间,10位长度时间戳 + */ + BeginTime: number; + /** + * 查询结束时间,10位长度时间戳 + */ + EndTime: number; + /** + * 查询监控的指标项。可不传 NetworkOut:出口总带宽 NetworkIn:入口总带宽 NetworkOutUsage:出口带宽使用率 NetworkInUsage:入口总带宽使用率 NetworkOutSubline :子线路出口带宽 NetworkInSubline:子线路入口带宽 Delay:线路平均延迟 DelaySubline:子线路延迟 ConnectCount:当前连接数 ConnectCountSubline:子线路当前连接数 DelayPromote:延迟提升 DelayPromoteSubline:子线路延迟提升 + */ + MetricName?: string[]; + /** + * 是否为子线路。为了简化查询,true 会返回所有子线路监控项可以,false:返回所有汇总的监控数据 + */ + IsSubline?: boolean; + /** + * 子线路AreaCode ,子线路的时候传,不是子线路可以不传 + */ + AreaCode?: string; +} + +/** + * GetUGA3Metric - 获取全地域加速监控信息 + */ +export interface GetUGA3MetricResponse { + /** + * 监控数据结果集 + */ + DataSet?: { + /** + * 出向带宽 + */ + NetworkOut?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 入向带宽 + */ + NetworkIn?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 出向带宽使用率 + */ + NetworkOutUsage?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 入向带宽使用率 + */ + NetworkInUsage?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路出口带宽 + */ + NetworkOutSubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路入口带宽 + */ + NetworkInSubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 线路平均延迟 + */ + Delay?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路延迟 + */ + DelaySubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 延迟提升 + */ + DelayPromote?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路延迟提升 + */ + DelayPromoteSubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 当前连接数 + */ + ConnectCount?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + /** + * 子线路当前连接数 + */ + ConnectCountSubline?: { + /** + * 时间戳 + */ + Timestamp?: number; + /** + * 监控点数值 + */ + Value?: number; + }[]; + }; +} + +/** + * GetUGA3Price - 获取全球统一接入转发实例价格 + */ +export interface GetUGA3PriceRequest { + /** + * 共享带宽大小 + */ + Bandwidth: number; + /** + * 源站区域 + */ + AreaCode: string; + /** + * 购买时间数量,当ChargeType为Month时 Quantity默认为0,代表购买至月底。按年按小时必须为大于0 + */ + Quantity?: number; + /** + * 计费方式,默认按月支付。Month: 按月; Year: 按年; Dynamic: 按小时收 + */ + ChargeType?: string; + /** + * 加速大区,默认返回所有加速大区价格 + */ + AccelerationArea?: string; +} + +/** + * GetUGA3Price - 获取全球统一接入转发实例价格 + */ +export interface GetUGA3PriceResponse { + /** + * 加速大区对应价格 + */ + UGA3Price: { + /** + * 加速大区代码 + */ + AccelerationArea: string; + /** + * 加速大区名称 + */ + AccelerationAreaName: string; + /** + * 转发配置价格 + */ + AccelerationForwarderPrice: number; + /** + * 加速配置带宽价格 + */ + AccelerationBandwidthPrice: number; + }[]; +} + +/** + * GetUGA3UpdatePrice - 全球统一接入获取实例更新价格(增加、删退) + */ +export interface GetUGA3UpdatePriceRequest { + /** + * 资源ID + */ + InstanceId: string; + /** + * 只有升级带宽的时候有价格变化 + */ + Bandwidth?: number; + /** + * 暂未支持,加速大区,在更换加速大区的时候使用 + */ + AccelerationArea?: string; + /** + * 暂未支持,源站区域 + */ + AreaCode?: string; +} + +/** + * GetUGA3UpdatePrice - 全球统一接入获取实例更新价格(增加、删退) + */ +export interface GetUGA3UpdatePriceResponse { + /** + * 价格 元。大于0需付费,小于0则退费。 + */ + Price: number; +} + /** * ModifyGlobalSSHPort - 修改GlobalSSH端口 */ @@ -1455,6 +2400,25 @@ export interface ModifyGlobalSSHPortRequest { */ export interface ModifyGlobalSSHPortResponse {} +/** + * ModifyGlobalSSHRemark - 修改GlobalSSH备注 + */ +export interface ModifyGlobalSSHRemarkRequest { + /** + * 实例ID,资源唯一标识 + */ + InstanceId: string; + /** + * 备注信息,不填默认为空字符串 + */ + Remark?: string; +} + +/** + * ModifyGlobalSSHRemark - 修改GlobalSSH备注 + */ +export interface ModifyGlobalSSHRemarkResponse {} + /** * ModifyGlobalSSHType - 修改GlobalSSH实例类型,仅支持低版本升级到高版本,不支持高版本降级到低版本 */ @@ -1486,6 +2450,98 @@ export interface ModifyGlobalSSHTypeRequest { */ export interface ModifyGlobalSSHTypeResponse {} +/** + * ModifyUGA3Bandwidth - 修改统一接入加速配置带宽 + */ +export interface ModifyUGA3BandwidthRequest { + /** + * 加速配置实例ID,格式uga3-xxxx + */ + InstanceId: string; + /** + * 带宽大小,范围[1,100],不传则不更新 + */ + Bandwidth?: number; + /** + * 需要全地域可用的代金券 + */ + CouponId?: string; +} + +/** + * ModifyUGA3Bandwidth - 修改统一接入加速配置带宽 + */ +export interface ModifyUGA3BandwidthResponse {} + +/** + * ModifyUGA3Instance - 修改统一接入加速配置属性,如Name,ReMark + */ +export interface ModifyUGA3InstanceRequest { + /** + * 加速配置实例ID,格式uga-xxxx。不支持GlobalSSH实例。 + */ + InstanceId: string; + /** + * 加速配置实例名称,不填或空字符串则不更新 + */ + Name?: string; + /** + * 备注信息,暂时前端为使用 + */ + Remark?: string; +} + +/** + * ModifyUGA3Instance - 修改统一接入加速配置属性,如Name,ReMark + */ +export interface ModifyUGA3InstanceResponse {} + +/** + * ModifyUGA3OriginInfo - Domain, IPList注意:修改Domain或IPList时, 请确保源站服务端口已经开启且外网防火墙允许pathx出口ip访问。 + */ +export interface ModifyUGA3OriginInfoRequest { + /** + * 加速配置实例ID,格式uga3-xxxx。 + */ + InstanceId: string; + /** + * 加速源域名,仅支持1个域名。修改源站时 OriginIPList和OriginDomain至少填一个。OriginIPList和OriginDomain都填时 以Domain为准,如果两个都不填,不修改 + */ + OriginDomain: string; + /** + * ,加速源IP,多个IP用英文半角逗号(,)隔开。修改源站时 ,OriginIPList和OriginDomain至少填一个。OriginIPList和OriginDomain都填时 以OriginDomain为准。如果两个都不填,不修改 + */ + OriginIPList: string; +} + +/** + * ModifyUGA3OriginInfo - Domain, IPList注意:修改Domain或IPList时, 请确保源站服务端口已经开启且外网防火墙允许pathx出口ip访问。 + */ +export interface ModifyUGA3OriginInfoResponse {} + +/** + * ModifyUGA3Port - 修改统一接入加速实例端口,目前仅支持四层TCP端口 + */ +export interface ModifyUGA3PortRequest { + /** + * 加速配置实例ID + */ + InstanceId: string; + /** + * TCP接入端口,禁用65123端口 + */ + TCP?: number[]; + /** + * TCP回源端口 + */ + TCPRS?: number[]; +} + +/** + * ModifyUGA3Port - 修改统一接入加速实例端口,目前仅支持四层TCP端口 + */ +export interface ModifyUGA3PortResponse {} + /** * ModifyUPathBandwidth - 修改加速线路带宽 */ @@ -1612,3 +2668,22 @@ export interface UnBindPathXSSLRequest { * UnBindPathXSSL - 解绑PathX SSL 证书 */ export interface UnBindPathXSSLResponse {} + +/** + * UpdatePathXWhitelist - 更新入口白名单,仅限GlobalSSH 实例使用。其他uga-实例不生效 + */ +export interface UpdatePathXWhitelistRequest { + /** + * GlobalSSH实例ID,资源唯一标识 + */ + InstanceId: string; + /** + * 白名单规则,例如 "Whitelist.0": "192.168.1.1/24|tcp|22","Whitelist.1": "192.168.1.2|tcp|8080:8090",第一个参数为ip或ip段,第二个参数代表协议(tcp/udp),第三个参数代表端口号或端口范围(使用 ':' 隔开);可以添加多条规则(递增Whitelist.n字段内的n值);此接口需要列出全部规则,例如不填则为清空白名单规则,如若需要增量添加,使用InsertPathXWhitelist接口,globalssh 没有端口范围:端口设置成加速端口,协议设置成tcp:ip|tcp|加速端口 + */ + Whitelist?: string[]; +} + +/** + * UpdatePathXWhitelist - 更新入口白名单,仅限GlobalSSH 实例使用。其他uga-实例不生效 + */ +export interface UpdatePathXWhitelistResponse {} diff --git a/src/services/uaccount/index.ts b/src/services/uaccount/index.ts index 48db3cd..82073bc 100644 --- a/src/services/uaccount/index.ts +++ b/src/services/uaccount/index.ts @@ -31,20 +31,6 @@ export default class UAccountClient extends Client { ); } - /** - * CreateProject - 创建项目 - * - * See also: https://docs.ucloud.cn/api/uaccount-api/create_project - */ - createProject( - request?: CreateProjectRequest - ): Promise { - const args = { Action: 'CreateProject', ...(request || {}) }; - return this.invoke(new Request(args)).then( - (resp) => resp.toObject() as CreateProjectResponse - ); - } - /** * FreezeMember - 冻结成员 * @@ -159,26 +145,6 @@ export interface AddMemberToProjectRequest { */ export interface AddMemberToProjectResponse {} -/** - * CreateProject - 创建项目 - */ -export interface CreateProjectRequest { - /** - * 项目名称,不得与现有项目重名 - */ - ProjectName: string; -} - -/** - * CreateProject - 创建项目 - */ -export interface CreateProjectResponse { - /** - * 所创建项目的Id - */ - ProjectId: string; -} - /** * FreezeMember - 冻结成员 */ diff --git a/src/services/ubill/index.ts b/src/services/ubill/index.ts index 55f08c2..62ba787 100644 --- a/src/services/ubill/index.ts +++ b/src/services/ubill/index.ts @@ -42,6 +42,34 @@ export default class UBillClient extends Client { (resp) => resp.toObject() as GetBillDataFileUrlResponse ); } + + /** + * ListUBillDetail - 获取某个账期内的所有消费。 + * + * See also: https://docs.ucloud.cn/api/ubill-api/list_u_bill_detail + */ + listUBillDetail( + request?: ListUBillDetailRequest + ): Promise { + const args = { Action: 'ListUBillDetail', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ListUBillDetailResponse + ); + } + + /** + * ListUBillOverview - 账单总览。可按产品/项目/用户纬度获取某个账期内账单总览信息。 + * + * See also: https://docs.ucloud.cn/api/ubill-api/list_u_bill_overview + */ + listUBillOverview( + request?: ListUBillOverviewRequest + ): Promise { + const args = { Action: 'ListUBillOverview', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ListUBillOverviewResponse + ); + } } /** @@ -84,14 +112,18 @@ export interface GetBalanceResponse { * GetBillDataFileUrl - 生成账单数据文件下载的 url */ export interface GetBillDataFileUrlRequest { - /** - * 账期(时间戳格式) - */ - BillPeriod: number; /** * 账单类型,传 0 时获取账单总览报表,传 1 获取账单明细报表 */ BillType: number; + /** + * 账期(字符串格式,YYYY-MM,例如2021-08). 若BillingCycle 和 BillPeriod同时存在,BillingCycle 优先 + */ + BillingCycle: string; + /** + * 此字段不推荐使用,建议使用BillingCycle. 若BillingCycle 和 BillPeriod同时存在,BillingCycle 优先 + */ + BillPeriod?: number; /** * 获取账单总览报表时,账单的支付状态,传 0 时获取待支付账单,传 1 时获取已支付账单。获取账单明细报表时该参数无效 */ @@ -100,6 +132,10 @@ export interface GetBillDataFileUrlRequest { * 如需求其他语言版本的账单则使用此参数。默认中文。如 RequireVersion = "EN",则提供英文版本账单。 */ RequireVersion?: string; + /** + * 文件版本,若为"v1"表示获取带有子用户信息的账单,可以为空 + */ + Version?: string; } /** @@ -115,3 +151,267 @@ export interface GetBillDataFileUrlResponse { */ IsValid?: string; } + +/** + * ListUBillDetail - 获取某个账期内的所有消费。 + */ +export interface ListUBillDetailRequest { + /** + * 账期,YYYY-MM,比如2021-08,只支持2018-05之后的查询 + */ + BillingCycle: string; + /** + * 项目名称 (筛选项, 默认全部) + */ + ProjectName?: string; + /** + * 资源ID(筛选项, 默认全部) 支持多筛选,多筛选请在请求参数中添加多个字段例ResourceIds.0: uhost-bzgf1gh5,ResourceIds.1: uhost-gu1xpspa, + */ + ResourceIds?: string[]; + /** + * 订单类型 (筛选项, 默认全部) 。枚举值:\\ > OT_BUY:新购 \\ > OT_RENEW:续费 \\ > OT_UPGRADE:升级 \\ > OT_REFUND:退费 \\ > OT_DOWNGRADE:降级 \\ > OT_SUSPEND:结算 \\ > OT_PAYMENT:删除资源回款 \\ > OT_POSTPAID_PAYMENT:后付费回款 \\ > OT_RECOVER:删除恢复 \\ > OT_POSTPAID_RENEW:过期续费回款 + */ + OrderType?: string; + /** + * 计费方式 (筛选项, 默认全部)。枚举值:\\ > Dynamic:按时 \\ > Month:按月 \\ > Year:按年 \\ > Once:一次性按量 \\ > Used:按量 \\ > Post:后付费 + */ + ChargeType?: string; + /** + * 是否显示0元订单 (0 不显示, 1 显示, 默认0) + */ + ShowZero?: number; + /** + * 支付状态 (筛选项, 1:仅显示未支付订单; 2:仅显示已支付订单; 0:两者都显示) + */ + PaidState?: number; + /** + * 用户邮箱,可以根据用户邮箱来进行筛选 + */ + UserEmail?: string; + /** + * 每页数量,默认值25,最大值:100。 + */ + Limit?: number; + /** + * 数据偏移量 (默认0) + */ + Offset?: number; + /** + * 产品类型 (筛选项, 默认全部),支持多筛选,多筛选请在请求参数中添加多个字段。枚举值:\\ > uhost:云主机 \\ > udisk:普通云硬盘 \\ > udb:云数据库 \\ > eip:弹性IP \\ > ufile:对象存储 \\ > fortress_host:堡垒机 \\ > ufs:文件存储 \\ > waf:WEB应用防火墙 \\ > ues:弹性搜索 \\ > udisk_ssd:SSD云硬盘 \\ > rssd:RSSD云硬盘 + */ + ResourceTypes?: string[]; +} + +/** + * ListUBillDetail - 获取某个账期内的所有消费。 + */ +export interface ListUBillDetailResponse { + /** + * 账单明细数组 + */ + Items: { + /** + * 订单总金额 + */ + Amount: string; + /** + * 现金账户支付 + */ + AmountReal: string; + /** + * 赠送金额抵扣 + */ + AmountFree: string; + /** + * 代金券抵扣 + */ + AmountCoupon: string; + /** + * 可用区 + */ + AzGroupCName: string; + /** + * 计费方式 (筛选项, 默认全部)。枚举值:\\ > Dynamic:按时 \\ > Month:按月 \\ > Year:按年 \\ > Once:一次性按量 \\ > Used:按量 \\ > Post:后付费 + */ + ChargeType: string; + /** + * 创建时间(时间戳) + */ + CreateTime: number; + /** + * 开始时间(时间戳) + */ + StartTime: number; + /** + * 订单号 + */ + OrderNo: string; + /** + * 订单类型 (筛选项, 默认全部) 。枚举值:\\ > OT_BUY:新购 \\ > OT_RENEW:续费 \\ > OT_UPGRADE:升级 \\ > OT_REFUND:退费 \\ > OT_DOWNGRADE:降级 \\ > OT_SUSPEND:结算 \\ > OT_PAYMENT:删除资源回款 \\ > OT_POSTPAID_PAYMENT:后付费回款 \\ > OT_RECOVER:删除恢复 \\ > OT_POSTPAID_RENEW:过期续费回款 + */ + OrderType: string; + /** + * 项目名称 + */ + ProjectName: string; + /** + * 资源ID + */ + ResourceId: string; + /** + * 产品类型。枚举值:\\ > uhost:云主机 \\ > udisk:普通云硬盘 \\ > udb:云数据库 \\ > eip:弹性IP \\ > ufile:对象存储 \\ > fortress_host:堡垒机 \\ > ufs:文件存储 \\ > waf:WEB应用防火墙 \\ > ues:弹性搜索 \\ > udisk_ssd:SSD云硬盘 \\ > rssd:RSSD云硬盘 + */ + ResourceType: string; + /** + * 产品类型代码 + */ + ResourceTypeCode: number; + /** + * 产品配置 + */ + ItemDetails: { + /** + * 产品小类名称 + */ + ProductName: string; + /** + * 产品小类规格 + */ + Value: string; + }[]; + /** + * 资源标识 + */ + ResourceExtendInfo: { + /** + * 资源标识健 + */ + KeyId: string; + /** + * 资源标识值 + */ + Value: string; + }[]; + /** + * 订单支付状态。枚举值:\\> 0:未支付 \\ > 1:已支付 + */ + ShowHover: number; + /** + * 账户邮箱 + */ + UserEmail: string; + /** + * 账户名 + */ + UserName: string; + /** + * 账户昵称 + */ + UserDisplayName: string; + /** + * 是否为主账号。枚举值:\\ > 0:子账号 \\ > 1:主账号 + */ + Admin: number; + }[]; + /** + * 账单明细总长度 + */ + TotalCount: number; +} + +/** + * ListUBillOverview - 账单总览。可按产品/项目/用户纬度获取某个账期内账单总览信息。 + */ +export interface ListUBillOverviewRequest { + /** + * 账期,YYYY-MM格式,例如2022-02,只支持2018-05之后的查询 + */ + BillingCycle: string; + /** + * 账单维度, product 按产品聚合,project 按项目聚合,user 按子账号聚合 + */ + Dimension: string; + /** + * 是否显示已入账账单, 1 已入账, 0 待入账 (默认0 ) + */ + HideUnpaid?: number; +} + +/** + * ListUBillOverview - 账单总览。可按产品/项目/用户纬度获取某个账期内账单总览信息。 + */ +export interface ListUBillOverviewResponse { + /** + * 账单总览数据总数 + */ + TotalCount: number; + /** + * 已入账订单总额(已入账时显示) + */ + TotalPaidAmount?: string; + /** + * 现金账户扣款总额 (已入账时显示) + */ + TotalPaidAmountReal?: string; + /** + * 待入账订单总额(待入账时显示) + */ + TotalUnpaidAmount?: string; + /** + * 账单聚合数据 + */ + Items: { + /** + * 账单维度, product 按产品维度聚合,project 按项目维度聚合,user 按子账号维度聚合 + */ + Dimension: string; + /** + * 订单总金额 + */ + Amount: string; + /** + * 代金券抵扣(已入账时显示) + */ + AmountCoupon?: string; + /** + * 赠送金额抵扣(已入账时显示) + */ + AmountFree?: string; + /** + * 现金账户支付(已入账时显示) + */ + AmountReal?: string; + /** + * 产品分类 (账单维度按产品筛选时显示) + */ + ProductCategory?: string; + /** + * 产品类型 (账单维度按产品筛选时显示) + */ + ResourceType?: string; + /** + * 产品类型代码(账单维度按产品筛选时显示) + */ + ResourceTypeCode?: number; + /** + * 项目名称(账单维度按项目筛选时显示) + */ + ProjectName?: string; + /** + * 账户邮箱(账单维度按子账号筛选时显示) + */ + UserEmail?: string; + /** + * 账户名 (账单维度按子账号筛选时显示) + */ + UserName?: string; + /** + * 账户昵称(账单维度按子账号筛选时显示) + */ + UserDisplayName?: string; + /** + * 该账户是否为主账号,1 主账号,0 子账号(账单维度按子账号筛选时显示) + */ + Admin?: number; + }[]; +} diff --git a/src/services/ucdn/index.ts b/src/services/ucdn/index.ts index c966a09..563cc13 100644 --- a/src/services/ucdn/index.ts +++ b/src/services/ucdn/index.ts @@ -17,6 +17,48 @@ export default class UCDNClient extends Client { super({ config, credential }); } + /** + * AddCertificate - 添加证书 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/add_certificate + */ + addCertificate( + request?: AddCertificateRequest + ): Promise { + const args = { Action: 'AddCertificate', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as AddCertificateResponse + ); + } + + /** + * ControlUcdnDomainCacheAccess - 封禁解封缓存访问 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/control_ucdn_domain_cache_access + */ + controlUcdnDomainCacheAccess( + request?: ControlUcdnDomainCacheAccessRequest + ): Promise { + const args = { Action: 'ControlUcdnDomainCacheAccess', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ControlUcdnDomainCacheAccessResponse + ); + } + + /** + * DeleteCertificate - 删除证书 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/delete_certificate + */ + deleteCertificate( + request?: DeleteCertificateRequest + ): Promise { + const args = { Action: 'DeleteCertificate', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DeleteCertificateResponse + ); + } + /** * DescribeNewUcdnPrefetchCacheTask - 获取预取任务状态 * @@ -52,16 +94,16 @@ export default class UCDNClient extends Client { } /** - * GetNewUcdnDomainBandwidth - 获取域名带宽数据 + * GetCertificateV2 - 获取证书列表(新) * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_bandwidth + * See also: https://docs.ucloud.cn/api/ucdn-api/get_certificate_v2 */ - getNewUcdnDomainBandwidth( - request?: GetNewUcdnDomainBandwidthRequest - ): Promise { - const args = { Action: 'GetNewUcdnDomainBandwidth', ...(request || {}) }; + getCertificateV2( + request?: GetCertificateV2Request + ): Promise { + const args = { Action: 'GetCertificateV2', ...(request || {}) }; return this.invoke(new Request(args)).then( - (resp) => resp.toObject() as GetNewUcdnDomainBandwidthResponse + (resp) => resp.toObject() as GetCertificateV2Response ); } @@ -80,30 +122,33 @@ export default class UCDNClient extends Client { } /** - * GetNewUcdnDomainHttpCode - 获取域名状态码监控 + * GetNewUcdnLogRefererStatistics - 获取热点referer统计 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_http_code + * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_log_referer_statistics */ - getNewUcdnDomainHttpCode( - request?: GetNewUcdnDomainHttpCodeRequest - ): Promise { - const args = { Action: 'GetNewUcdnDomainHttpCode', ...(request || {}) }; + getNewUcdnLogRefererStatistics( + request?: GetNewUcdnLogRefererStatisticsRequest + ): Promise { + const args = { + Action: 'GetNewUcdnLogRefererStatistics', + ...(request || {}), + }; return this.invoke(new Request(args)).then( - (resp) => resp.toObject() as GetNewUcdnDomainHttpCodeResponse + (resp) => resp.toObject() as GetNewUcdnLogRefererStatisticsResponse ); } /** - * GetNewUcdnDomainHttpCodeV2 - 获取域名详细状态码监控 + * GetNewUcdnLogUrlStatistics - 获取日志url统计 * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_domain_http_code_v2 + * See also: https://docs.ucloud.cn/api/ucdn-api/get_new_ucdn_log_url_statistics */ - getNewUcdnDomainHttpCodeV2( - request?: GetNewUcdnDomainHttpCodeV2Request - ): Promise { - const args = { Action: 'GetNewUcdnDomainHttpCodeV2', ...(request || {}) }; + getNewUcdnLogUrlStatistics( + request?: GetNewUcdnLogUrlStatisticsRequest + ): Promise { + const args = { Action: 'GetNewUcdnLogUrlStatistics', ...(request || {}) }; return this.invoke(new Request(args)).then( - (resp) => resp.toObject() as GetNewUcdnDomainHttpCodeV2Response + (resp) => resp.toObject() as GetNewUcdnLogUrlStatisticsResponse ); } @@ -205,6 +250,51 @@ export default class UCDNClient extends Client { ); } + /** + * GetUcdnDomainLogV2 - 获取域名5分钟日志 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_log_v2 + */ + getUcdnDomainLogV2( + request?: GetUcdnDomainLogV2Request + ): Promise { + const args = { Action: 'GetUcdnDomainLogV2', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetUcdnDomainLogV2Response + ); + } + + /** + * GetUcdnDomainOriginHttpCode - 获取域名源站状态码监控 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_http_code + */ + getUcdnDomainOriginHttpCode( + request?: GetUcdnDomainOriginHttpCodeRequest + ): Promise { + const args = { Action: 'GetUcdnDomainOriginHttpCode', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetUcdnDomainOriginHttpCodeResponse + ); + } + + /** + * GetUcdnDomainOriginHttpCodeDetail - 获取域名源站详细状态码监控 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_origin_http_code_detail + */ + getUcdnDomainOriginHttpCodeDetail( + request?: GetUcdnDomainOriginHttpCodeDetailRequest + ): Promise { + const args = { + Action: 'GetUcdnDomainOriginHttpCodeDetail', + ...(request || {}), + }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetUcdnDomainOriginHttpCodeDetailResponse + ); + } + /** * GetUcdnDomainOriginRequestNum - 获取域名回源请求数 * @@ -236,20 +326,6 @@ export default class UCDNClient extends Client { ); } - /** - * GetUcdnDomainRequestNumV2 - 获取域名请求数 - * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_request_num_v2 - */ - getUcdnDomainRequestNumV2( - request?: GetUcdnDomainRequestNumV2Request - ): Promise { - const args = { Action: 'GetUcdnDomainRequestNumV2', ...(request || {}) }; - return this.invoke(new Request(args)).then( - (resp) => resp.toObject() as GetUcdnDomainRequestNumV2Response - ); - } - /** * GetUcdnDomainRequestNumV3 - 获取域名请求数 * @@ -264,34 +340,6 @@ export default class UCDNClient extends Client { ); } - /** - * GetUcdnDomainTraffic - 获取加速域名流量使用信息 - * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_domain_traffic - */ - getUcdnDomainTraffic( - request?: GetUcdnDomainTrafficRequest - ): Promise { - const args = { Action: 'GetUcdnDomainTraffic', ...(request || {}) }; - return this.invoke(new Request(args)).then( - (resp) => resp.toObject() as GetUcdnDomainTrafficResponse - ); - } - - /** - * GetUcdnPassBandwidth - 获取回源带宽数据(cdn回客户源站部分) - * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_pass_bandwidth - */ - getUcdnPassBandwidth( - request?: GetUcdnPassBandwidthRequest - ): Promise { - const args = { Action: 'GetUcdnPassBandwidth', ...(request || {}) }; - return this.invoke(new Request(args)).then( - (resp) => resp.toObject() as GetUcdnPassBandwidthResponse - ); - } - /** * GetUcdnPassBandwidthV2 - 获取回源带宽数据(cdn回客户源站部分) * @@ -334,20 +382,6 @@ export default class UCDNClient extends Client { ); } - /** - * GetUcdnTraffic - 获取流量信息 - * - * See also: https://docs.ucloud.cn/api/ucdn-api/get_ucdn_traffic - */ - getUcdnTraffic( - request?: GetUcdnTrafficRequest - ): Promise { - const args = { Action: 'GetUcdnTraffic', ...(request || {}) }; - return this.invoke(new Request(args)).then( - (resp) => resp.toObject() as GetUcdnTrafficResponse - ); - } - /** * GetUcdnTrafficV2 - 获取流量信息 * @@ -376,6 +410,20 @@ export default class UCDNClient extends Client { ); } + /** + * QueryIpLocation - 查询IP信息 + * + * See also: https://docs.ucloud.cn/api/ucdn-api/query_ip_location + */ + queryIpLocation( + request?: QueryIpLocationRequest + ): Promise { + const args = { Action: 'QueryIpLocation', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as QueryIpLocationResponse + ); + } + /** * RefreshNewUcdnDomainCache - 刷新缓存 * @@ -405,6 +453,67 @@ export default class UCDNClient extends Client { } } +/** + * AddCertificate - 添加证书 + */ +export interface AddCertificateRequest { + /** + * 证书名称 + */ + CertName: string; + /** + * 用户证书 + */ + UserCert: string; + /** + * 用户私钥 + */ + PrivateKey: string; + /** + * Ca证书,默认为空 + */ + CaCert?: string; +} + +/** + * AddCertificate - 添加证书 + */ +export interface AddCertificateResponse {} + +/** + * ControlUcdnDomainCacheAccess - 封禁解封缓存访问 + */ +export interface ControlUcdnDomainCacheAccessRequest { + /** + * 待封禁的Url,一次封禁多个Url时最多一次30条,只能对表示文件的Url进行操作 + */ + UrlList: string[]; + /** + * forbid=封禁 unforbid=解封 其他值非法 + */ + Type: string; +} + +/** + * ControlUcdnDomainCacheAccess - 封禁解封缓存访问 + */ +export interface ControlUcdnDomainCacheAccessResponse {} + +/** + * DeleteCertificate - 删除证书 + */ +export interface DeleteCertificateRequest { + /** + * 证书名称 + */ + CertName: string; +} + +/** + * DeleteCertificate - 删除证书 + */ +export interface DeleteCertificateResponse {} + /** * DescribeNewUcdnPrefetchCacheTask - 获取预取任务状态 */ @@ -570,52 +679,68 @@ export interface DescribeNewUcdnRefreshCacheTaskResponse { } /** - * GetNewUcdnDomainBandwidth - 获取域名带宽数据 + * GetCertificateV2 - 获取证书列表(新) */ -export interface GetNewUcdnDomainBandwidthRequest { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度) - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 - */ - Areacode?: string; +export interface GetCertificateV2Request { /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 + * 偏移,默认为0,非负整数 */ - BeginTime?: number; + Offset?: number; /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + * 长度,默认为全部,非负整数 */ - EndTime?: number; + Limit?: number; } /** - * GetNewUcdnDomainBandwidth - 获取域名带宽数据 + * GetCertificateV2 - 获取证书列表(新) */ -export interface GetNewUcdnDomainBandwidthResponse { +export interface GetCertificateV2Response { /** - * 带宽信息列表,参见BandwidthInfo + * 证书数量 */ - BandwidthList?: { + TotalCount: number; + /** + * 证书信息列表 + */ + CertList: { /** - * 带宽获取的时间点。格式:时间戳 + * 证书名 */ - Time?: number; + CertName: string; /** - * 返回值返回指定时间区间内CDN的带宽峰值,单位Mbps(如果请求参数Type为0,则Value是五分钟粒度的带宽值,如果Type为1,则Value是1小时的带宽峰值,如果Type为2,则Value是一天内的带宽峰值) + * 通用名 */ - CdnBandwidth?: number; + CommonName: string; + /** + * dns名称 + */ + DnsName: string; + /** + * 证书开始时间 + */ + BeginTime: number; + /** + * 证书获取时间 + */ + EndTime: number; + /** + * 已配置域名个数 + */ + DomainCount: number; + /** + * 证书内容 + */ + UserCert: string; + /** + * ca证内容 + */ + CaCert: string; + /** + * 已配置的域名列表 + */ + Domains?: string[]; }[]; - /** - * 从起始时间到结束时间内的所使用的CDN总流量,单位GB - */ - Traffic?: number; } /** @@ -657,7 +782,7 @@ export interface GetNewUcdnDomainHitRateResponse { */ Time?: number; /** - * 流量命中率,单位% + * 总流量命中率,单位% */ FlowHitRate?: number; /** @@ -668,80 +793,143 @@ export interface GetNewUcdnDomainHitRateResponse { } /** - * GetNewUcdnDomainHttpCode - 获取域名状态码监控 + * GetNewUcdnLogRefererStatistics - 获取热点referer统计 */ -export interface GetNewUcdnDomainHttpCodeRequest { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度) - */ - Type: number; +export interface GetNewUcdnLogRefererStatisticsRequest { /** - * 域名id,创建域名时生成的id。默认全部域名 + * 域名id,创建域名时生成的id */ - DomainId?: string[]; + DomainId?: string; /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 + * 查询带宽区域 cn代表国内 abroad代表海外 ;目前只支持国内 */ Areacode?: string; /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 + * 查询带宽的起始时间,格式:时间戳 */ BeginTime?: number; /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + * 查询统计日志的结束时间,格式:时间戳。最大时间间隔30天 */ EndTime?: number; + /** + * 0表示按流量降序排列,1表示按照下载次数降序排列,默认为0 + */ + OrderBy?: number; + /** + * 返回的结果数量限制,默认1000 + */ + Limit?: number; } /** - * GetNewUcdnDomainHttpCode - 获取域名状态码监控 + * GetNewUcdnLogRefererStatistics - 获取热点referer统计 */ -export interface GetNewUcdnDomainHttpCodeResponse { +export interface GetNewUcdnLogRefererStatisticsResponse { /** - * 状态码实例表。详细见HttpCodeInfo + * 按天统计实例 */ - HttpCodeDetail?: { + RefererStatistics?: { /** - * 带宽获取的时间点。格式:时间戳 - */ - Time?: number; - /** - * 1xx数量 - */ - HttpOneXX?: number; - /** - * 2xx数量 + * 日期 */ - HttpTwoXX?: number; + Date?: string; /** - * 3xx数量 + * Referer实例表 */ - HttpThreeXX?: number; + RefererList?: { + /** + * 客户端请求的referer + */ + Referer?: string; + /** + * 次数 + */ + RequestTimes?: number; + /** + * 次数占比,单位% + */ + Percent?: number; + }[]; + }[]; +} + +/** + * GetNewUcdnLogUrlStatistics - 获取日志url统计 + */ +export interface GetNewUcdnLogUrlStatisticsRequest { + /** + * 域名Id + */ + DomainId: string; + /** + * 查询带宽区域 cn代表国内 abroad代表海外 只支持国内 + */ + Areacode?: string; + /** + * 查询带宽的起始时间,格式:时间戳。BeginTime和EndTime必须同时赋值 + */ + BeginTime?: number; + /** + * 查询统计日志的结束时间,格式:时间戳,最多可拉取30天 + */ + EndTime?: number; + /** + * 0表示按流量降序排列,1表示按照下载次数降序排列,默认为0 + */ + OrderBy?: number; + /** + * 返回的结果数量限制,默认1000 + */ + Limit?: number; +} + +/** + * GetNewUcdnLogUrlStatistics - 获取日志url统计 + */ +export interface GetNewUcdnLogUrlStatisticsResponse { + /** + * 按天统计实例。 + */ + UrlStatisticsList?: { /** - * 4xx数量 + * */ - HttpFourXX?: number; + UrlList?: { + /** + * 下载链接的url + */ + Url?: string; + /** + * 流量(单位为G) + */ + Traffic?: number; + /** + * 下载次数 + */ + DownloadTimes?: number; + /** + * 流量占比,单位% + */ + Percent?: number; + }[]; /** - * 5xx数量 + * 日期 */ - HttpFiveXX?: number; + Date?: string; }[]; } /** - * GetNewUcdnDomainHttpCodeV2 - 获取域名详细状态码监控 + * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 */ -export interface GetNewUcdnDomainHttpCodeV2Request { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天粒度,3表示按照一分钟粒度) - */ - Type: number; +export interface GetUcdnDomain95BandwidthV2Request { /** - * 查询的起始时间,格式为Unix Timestamp。 + * 查询的起始日期,格式为Unix Timestamp */ BeginTime: number; /** - * 查询的结束时间,格式为Unix Timestamp。 + * 查询的结束日期,格式为Unix Timestamp */ EndTime: number; /** @@ -749,296 +937,353 @@ export interface GetNewUcdnDomainHttpCodeV2Request { */ DomainId?: string[]; /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 + * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 */ Areacode?: string; } /** - * GetNewUcdnDomainHttpCodeV2 - 获取域名详细状态码监控 + * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 */ -export interface GetNewUcdnDomainHttpCodeV2Response { +export interface GetUcdnDomain95BandwidthV2Response { /** - * 状态码详情 + * 查询时间期间的95带宽时间点 Unix时间戳 */ - HttpCodeV2Detail?: { - /** - * 时间 - */ - Time?: number; - /** - * 当前分组的总状态码数 - */ - Total?: number; - /** - * http100数量 - */ - Http100?: number; - /** - * http101数量 - */ - Http101?: number; - /** - * http102数量 - */ - Http102?: number; - /** - * http200数量 - */ - Http200?: number; - /** - * http201数量 - */ - Http201?: number; - /** - * http202数量 - */ - Http202?: number; - /** - * http203数量 - */ - Http203?: number; - /** - * http204数量 - */ - Http204?: number; + Time: number; + /** + * 查询期间的CDN的95带宽值,单位Mbps + */ + CdnBandwidth?: number; +} + +/** + * GetUcdnDomainBandwidthV2 - 获取域名带宽数据(新) + */ +export interface GetUcdnDomainBandwidthV2Request { + /** + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照1分钟粒度) + */ + Type?: number; + /** + * 域名id,创建域名时生成的id。默认全部域名 + */ + DomainId?: string[]; + /** + * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 + */ + Areacode?: string; + /** + * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 + */ + BeginTime?: number; + /** + * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + */ + EndTime?: number; + /** + * 协议,http、https 不传则查所有协议的带宽 + */ + Protocol?: string; + /** + * 原始带宽,不为0则获取原始带宽,默认为0 + */ + Primeval?: number; +} + +/** + * GetUcdnDomainBandwidthV2 - 获取域名带宽数据(新) + */ +export interface GetUcdnDomainBandwidthV2Response { + /** + * 带宽信息列表,参见BandwidthTrafficInfo + */ + BandwidthTrafficList?: { /** - * http205数量 + * 带宽获取的时间点。格式:时间戳 */ - Http205?: number; + Time: number; /** - * http206数量 + * 返回值返回指定时间区间内CDN的带宽峰值,单位Mbps(如果请求参数Type为0,则Value是五分钟粒度的带宽值,如果Type为1,则Value是1小时的带宽峰值,如果Type为2,则Value是一天内的带宽峰值) */ - Http206?: number; + CdnBandwidth: number; /** - * http207数量 + * 对应时间粒度的流量,单位字节 */ - Http207?: number; + Traffic: number; + }[]; +} + +/** + * GetUcdnDomainConfig - 批量获取加速域名配置 + */ +export interface GetUcdnDomainConfigRequest { + /** + * 数据偏移量,默认0,非负整数 + */ + Offset?: number; + /** + * 返回数据长度, 默认全部,非负整数 + */ + Limit?: number; + /** + * 域名id,创建域名时生成的id。默认获取账号下的所有域名信息,n为自然数,从DomainId.0开始。 + */ + DomainId?: string[]; + /** + * 产品类型ucdn,可不填,默认为ucdn + */ + ChannelType?: string; +} + +/** + * GetUcdnDomainConfig - 批量获取加速域名配置 + */ +export interface GetUcdnDomainConfigResponse { + /** + * 获取的域名信息,具体参考下面DomainConfig + */ + DomainList: { /** - * http300数量 + * 查询带宽区域 cn代表国内 abroad代表海外 all表示全部区域 */ - Http300?: number; + AreaCode: string; /** - * http301数量 + * 加速域名的业务类型,web代表网站,stream代表视频 ,download 代表下载 */ - Http301?: number; + CdnType: string; /** - * http302数量 + * 创建的加速域名的当前的状态。check代表审核中,checkSuccess代表审核通过,checkFail代表审核失败,enable代表加速中,disable代表停止加速,delete代表删除加速enableing代表正在开启加速,disableing代表正在停止加速中,deleteing代表删除中 */ - Http302?: number; + Status: string; /** - * http303数量 + * cdn域名。创建加速域名生成的cdn域名,用于设置CNAME记录 */ - Http303?: number; + Cname: string; /** - * http304数量 + * 域名创建的时间。格式:时间戳 */ - Http304?: number; + CreateTime: number; /** - * http305数量 + * 测试url。用于域名创建加速时的测试 */ - Http305?: number; + TestUrl: string; /** - * http306数量 + * 国内https状态 enableing-开启中 fail-开启失败 enable-启用 disable-未启用 */ - Http306?: number; + HttpsStatusCn: string; /** - * http307数量 + * 国外https状态 enableing-开启中 fail-开启失败 enable-启用 disable-未启用 */ - Http307?: number; + HttpsStatusAbroad: string; /** - * http400数量 + * 国内证书名称 */ - Http400?: number; + CertNameCn: string; /** - * http401数量 + * 国外证书名称 */ - Http401?: number; + CertNameAbroad: string; /** - * http402数量 + * 业务组:Default */ - Http402?: number; + Tag: string; /** - * http403数量 + * 域名Id */ - Http403?: number; + DomainId?: string; /** - * http404数量 + * 域名 */ - Http404?: number; + Domain?: string; /** - * http405数量 + * 源站配置 参考OriginConf */ - Http405?: number; + OriginConf?: { + /** + * 源站ip即cdn服务器回源访问的ip地址。多个源站ip,可以这样表述,如:["1.1.1.1","2.2.2.2"] + */ + OriginIpList?: string[]; + /** + * 回源Http请求头部Host,默认是加速域名 + */ + OriginHost?: string; + /** + * 回源端口 + */ + OriginPort?: number; + /** + * 1如果为false表示BackupOriginIp为空,表示没有备份源站,忽略BackupOriginIp,BackupOriginHost字段2如果为true表示BackupOriginIp.n必须至少有一个备份源站地址 + */ + BackupOriginEnable?: boolean; + /** + * 备份源站ip即cdn服务器回源访问的ip地址。多个源站ip,可以这样表述,如:["1.1.1.1","2.2.2.2"] + */ + BackupOriginIpList?: string[]; + /** + * 备份回源Http请求头部Host,默认是加速域名 + */ + BackupOriginHost?: string; + /** + * 主源响应的回源错误码(如:404|500),默认空字符串 + */ + OriginErrorCode?: string; + /** + * 回主源的回源失败数,默认1 + */ + OriginErrorNum?: number; + /** + * 源站协议http,http|https 默认http + */ + OriginProtocol?: string; + /** + * 跟随301跳转 0=不跟随 1=跟随 + */ + OriginFollow301?: number; + }; /** - * http406数量 + * 访问控制配置 参考AccessControlConf */ - Http406?: number; + AccessControlConf?: { + /** + * ip黑名单,多个ip,可表示为:IpBlackList.0=1.1.1.1,IpBlackList.1=2.2.2.2 + */ + IpBlackList?: string[]; + /** + * refer配置 + */ + ReferConf?: { + /** + * Refer防盗链配置 0白名单,1黑名单 + */ + ReferType?: number; + /** + * ReferType为白名单时(删除),NullRefer为0代表不允许NULL refer访问,为1代表允许Null refer访问 + */ + NullRefer?: number; + /** + * Refer防盗链规则列表,支持正则表达式 + */ + ReferList?: string[]; + }; + }; /** - * http407数量 + * 缓存配置 参考CacheAllConfig */ - Http407?: number; - /** - * http408数量 - */ - Http408?: number; - /** - * http409数量 - */ - Http409?: number; - /** - * http410数量 - */ - Http410?: number; - /** - * http411数量 - */ - Http411?: number; - /** - * http412数量 - */ - Http412?: number; - /** - * http413数量 - */ - Http413?: number; - /** - * http414数量 - */ - Http414?: number; - /** - * http415数量 - */ - Http415?: number; - /** - * http416数量 - */ - Http416?: number; - /** - * http417数量 - */ - Http417?: number; - /** - * http418数量 - */ - Http418?: number; - /** - * http421数量 - */ - Http421?: number; - /** - * http422数量 - */ - Http422?: number; - /** - * http423数量 - */ - Http423?: number; - /** - * http424数量 - */ - Http424?: number; - /** - * http425数量 - */ - Http425?: number; - /** - * http426数量 - */ - Http426?: number; - /** - * http449数量 - */ - Http449?: number; - /** - * http451数量 - */ - Http451?: number; - /** - * http500数量 - */ - Http500?: number; - /** - * http501数量 - */ - Http501?: number; - /** - * http502数量 - */ - Http502?: number; - /** - * http503数量 - */ - Http503?: number; - /** - * http504数量 - */ - Http504?: number; - /** - * http505数量 - */ - Http505?: number; - /** - * http506数量 - */ - Http506?: number; - /** - * http507数量 - */ - Http507?: number; - /** - * http509数量 - */ - Http509?: number; + CacheConf?: { + /** + * 缓存Host,不同的域名可以配置为同一个CacheHost来实现缓存共享,默认为加速域名 + */ + CacheHost?: string; + /** + * 缓存配置列表,参见CacheConf + */ + CacheList?: { + /** + * 路径模式,支持正则 + */ + PathPattern: string; + /** + * 缓存时间 + */ + CacheTTL: number; + /** + * 缓存时间的单位。sec(秒),min(分钟),hour(小时),day(天)。上限1年。 + */ + CacheUnit: string; + /** + * 是否缓存,true为缓存,flase为不缓存。为flase的情况下,CacheTTL和CacheUnit强制不生效 + */ + CacheBehavior: boolean; + /** + * 状态码模式,非200,206状态码,多个状态码用竖线(|)分隔,该属性仅仅在状态码缓存配置列表中返回 + */ + HttpCodePattern?: string; + /** + * 缓存规则描述 + */ + Description?: string; + /** + * 是否优先遵循源站头部缓存策略,false为不优先遵循源站,true为优先遵循源站缓存头部。默认为0 + */ + FollowOriginRule?: boolean; + }[]; + /** + * 状态码缓存配置列表,参见CacheConf + */ + HttpCodeCacheList?: { + /** + * 路径模式,支持正则 + */ + PathPattern: string; + /** + * 缓存时间 + */ + CacheTTL: number; + /** + * 缓存时间的单位。sec(秒),min(分钟),hour(小时),day(天)。上限1年。 + */ + CacheUnit: string; + /** + * 是否缓存,true为缓存,flase为不缓存。为flase的情况下,CacheTTL和CacheUnit强制不生效 + */ + CacheBehavior: boolean; + /** + * 状态码模式,非200,206状态码,多个状态码用竖线(|)分隔,该属性仅仅在状态码缓存配置列表中返回 + */ + HttpCodePattern?: string; + /** + * 缓存规则描述 + */ + Description?: string; + /** + * 是否优先遵循源站头部缓存策略,false为不优先遵循源站,true为优先遵循源站缓存头部。默认为0 + */ + FollowOriginRule?: boolean; + }[]; + /** + * 忽略参数缓存配置列表,参见CacheKeyInfo + */ + CacheKeyList?: { + /** + * 是否忽略 + */ + Ignore?: boolean; + /** + * 路径模式,支持正则 + */ + PathPattern?: string; + /** + * 自定义变量,以$符号开头,多个变量用加号(+)连接,$querystring表示所有变量 + */ + QueryString?: string; + }[]; + }; /** - * http510数量 + * 高级配置 参考AdvancedConf */ - Http510?: number; + AdvancedConf?: { + /** + * 客户端响应http头列表 + */ + HttpClientHeader?: string[]; + /** + * 源站http头列表 + */ + HttpOriginHeader?: string[]; + /** + * http转https回源 true是,false否 + */ + Http2Https?: boolean; + }; }[]; } /** - * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 - */ -export interface GetUcdnDomain95BandwidthV2Request { - /** - * 查询的起始日期,格式为Unix Timestamp - */ - BeginTime: number; - /** - * 查询的结束日期,格式为Unix Timestamp - */ - EndTime: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 - */ - Areacode?: string; -} - -/** - * GetUcdnDomain95BandwidthV2 - 获取域名九五峰值带宽数据 - */ -export interface GetUcdnDomain95BandwidthV2Response { - /** - * 查询时间期间的95带宽时间点 Unix时间戳 - */ - Time: number; - /** - * 查询期间的CDN的95带宽值,单位Mbps - */ - CdnBandwidth?: number; -} - -/** - * GetUcdnDomainBandwidthV2 - 获取域名带宽数据(新) + * GetUcdnDomainHitRate - 获取域名命中率 */ -export interface GetUcdnDomainBandwidthV2Request { +export interface GetUcdnDomainHitRateRequest { /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照1分钟粒度) + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照一分钟的粒度)默认5分钟 */ Type: number; /** @@ -1046,7 +1291,7 @@ export interface GetUcdnDomainBandwidthV2Request { */ DomainId?: string[]; /** - * 查询带宽区域 cn代表国内 abroad代表海外 不填默认为全部区域 + * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 */ Areacode?: string; /** @@ -1058,460 +1303,142 @@ export interface GetUcdnDomainBandwidthV2Request { */ EndTime?: number; /** - * 协议,http、https 不传则查所有协议的带宽 + * 命中类型:0=整体命中 1=边缘命中 默认是0 */ - Protocol?: string; + HitType?: number; } /** - * GetUcdnDomainBandwidthV2 - 获取域名带宽数据(新) + * GetUcdnDomainHitRate - 获取域名命中率 */ -export interface GetUcdnDomainBandwidthV2Response { +export interface GetUcdnDomainHitRateResponse { /** - * 带宽信息列表,参见BandwidthTrafficInfo + * 请求数实例表。 */ - BandwidthTrafficList?: { + HitRateList?: { /** * 带宽获取的时间点。格式:时间戳 */ - Time: number; + Time?: number; /** - * 返回值返回指定时间区间内CDN的带宽峰值,单位Mbps(如果请求参数Type为0,则Value是五分钟粒度的带宽值,如果Type为1,则Value是1小时的带宽峰值,如果Type为2,则Value是一天内的带宽峰值) + * 总流量命中率,单位% */ - CdnBandwidth: number; + FlowHitRate?: number; /** - * 对应时间粒度的流量,单位字节 + * 请求数命中率,单位% */ - Traffic: number; + RequestHitRate?: number; }[]; } /** - * GetUcdnDomainConfig - 批量获取加速域名配置 + * GetUcdnDomainHttpCodeV2 - 获取域名状态码信息 */ -export interface GetUcdnDomainConfigRequest { +export interface GetUcdnDomainHttpCodeV2Request { /** - * 数据偏移量,默认0,非负整数 + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示1分钟粒度) */ - Offset?: number; + Type: number; /** - * 返回数据长度, 默认全部,非负整数 + * 域名id,创建域名时生成的id。默认全部域名 */ - Limit?: number; + DomainId?: string[]; /** - * 域名id,创建域名时生成的id。默认获取账号下的所有域名信息,n为自然数,从DomainId.0开始。 + * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 */ - DomainId?: string[]; + Areacode?: string; /** - * 产品类型ucdn,可不填,默认为ucdn + * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 */ - ChannelType?: string; + BeginTime?: number; + /** + * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + */ + EndTime?: number; + /** + * 指定获取的状态码是边缘还是上层 edge 表示边缘 layer 表示上层 + */ + Layer?: string; } /** - * GetUcdnDomainConfig - 批量获取加速域名配置 + * GetUcdnDomainHttpCodeV2 - 获取域名状态码信息 */ -export interface GetUcdnDomainConfigResponse { +export interface GetUcdnDomainHttpCodeV2Response { /** - * 获取的域名信息,具体参考下面DomainConfig + * 状态码实例表。详细见HttpCodeInfoV2 */ - DomainList: { - /** - * 查询带宽区域 cn代表国内 abroad代表海外 all表示全部区域 - */ - AreaCode: string; - /** - * 加速域名的业务类型,web代表网站,stream代表视频 ,download 代表下载 - */ - CdnType: string; - /** - * 创建的加速域名的当前的状态。check代表审核中,checkSuccess代表审核通过,checkFail代表审核失败,enable代表加速中,disable代表停止加速,delete代表删除加速enableing代表正在开启加速,disableing代表正在停止加速中,deleteing代表删除中 - */ - Status: string; - /** - * cdn域名。创建加速域名生成的cdn域名,用于设置CNAME记录 - */ - Cname: string; - /** - * 域名创建的时间。格式:时间戳 - */ - CreateTime: number; - /** - * 测试url。用于域名创建加速时的测试 - */ - TestUrl: string; - /** - * 国内https状态 enableing-开启中 fail-开启失败 enable-启用 disable-未启用 - */ - HttpsStatusCn: string; - /** - * 国外https状态 enableing-开启中 fail-开启失败 enable-启用 disable-未启用 - */ - HttpsStatusAbroad: string; - /** - * 国内证书名称 - */ - CertNameCn: string; - /** - * 国外证书名称 - */ - CertNameAbroad: string; - /** - * 业务组:Default - */ - Tag: string; - /** - * 域名Id - */ - DomainId?: string; + HttpCodeDetail?: { /** - * 域名 + * 带宽获取的时间点。格式:时间戳 */ - Domain?: string; + Time?: number; /** - * 源站配置 参考OriginConf + * 1xx信息,参考HttpCodeV2Detail结构 */ - OriginConf?: { + Http1XX?: { /** - * 源站ip即cdn服务器回源访问的ip地址。多个源站ip,可以这样表述,如:["1.1.1.1","2.2.2.2"] + * 时间 */ - OriginIpList?: string[]; + Time?: number; /** - * 回源Http请求头部Host,默认是加速域名 + * 当前分组的总状态码数 */ - OriginHost?: string; + Total?: number; /** - * 回源端口 + * http100数量 */ - OriginPort?: number; + Http100?: number; /** - * 1如果为false表示BackupOriginIp为空,表示没有备份源站,忽略BackupOriginIp,BackupOriginHost字段2如果为true表示BackupOriginIp.n必须至少有一个备份源站地址 + * http101数量 */ - BackupOriginEnable?: boolean; + Http101?: number; /** - * 备份源站ip即cdn服务器回源访问的ip地址。多个源站ip,可以这样表述,如:["1.1.1.1","2.2.2.2"] + * http102数量 */ - BackupOriginIpList?: string[]; + Http102?: number; /** - * 备份回源Http请求头部Host,默认是加速域名 + * http200数量 */ - BackupOriginHost?: string; + Http200?: number; /** - * 主源响应的回源错误码(如:404|500),默认空字符串 + * http201数量 */ - OriginErrorCode?: string; + Http201?: number; /** - * 回主源的回源失败数,默认1 + * http202数量 */ - OriginErrorNum?: number; + Http202?: number; /** - * 源站协议http,http|https 默认http + * http203数量 */ - OriginProtocol?: string; + Http203?: number; /** - * 跟随301跳转 0=不跟随 1=跟随 + * http204数量 */ - OriginFollow301?: number; - }; - /** - * 访问控制配置 参考AccessControlConf - */ - AccessControlConf?: { + Http204?: number; /** - * ip黑名单,多个ip,可表示为:IpBlackList.0=1.1.1.1,IpBlackList.1=2.2.2.2 + * http205数量 */ - IpBlackList?: string[]; + Http205?: number; /** - * refer配置 + * http206数量 */ - ReferConf?: { - /** - * Refer防盗链配置 0白名单,1黑名单 - */ - ReferType?: number; - /** - * ReferType为白名单时(删除),NullRefer为0代表不允许NULL refer访问,为1代表允许Null refer访问 - */ - NullRefer?: number; - /** - * Refer防盗链规则列表,支持正则表达式 - */ - ReferList?: string[]; - }; - }; - /** - * 缓存配置 参考CacheAllConfig - */ - CacheConf?: { + Http206?: number; /** - * 缓存Host,不同的域名可以配置为同一个CacheHost来实现缓存共享,默认为加速域名 + * http207数量 */ - CacheHost?: string; + Http207?: number; /** - * 缓存配置列表,参见CacheConf + * http300数量 */ - CacheList?: { - /** - * 状态码模式,非200,206状态码,多个状态码用竖线(|)分隔,该属性仅仅在状态码缓存配置列表中返回 - */ - HttpCodePattern?: string; - /** - * 路径模式,支持正则 - */ - PathPattern?: string; - /** - * 缓存规则描述 - */ - Description?: string; - /** - * 缓存时间 - */ - CacheTTL?: number; - /** - * 缓存时间的单位。sec(秒),min(分钟),hour(小时),day(天)。上限1年。 - */ - CacheUnit?: string; - /** - * 是否缓存,true为缓存,flase为不缓存。为flase的情况下,CacheTTL和CacheUnit强制不生效 - */ - CacheBehavior?: boolean; - /** - * 是否优先遵循源站头部缓存策略,false为不优先遵循源站,true为优先遵循源站缓存头部。默认为0 - */ - FollowOriginRule?: boolean; - }[]; + Http300?: number; /** - * 状态码缓存配置列表,参见CacheConf + * http301数量 */ - HttpCodeCacheList?: { - /** - * 状态码模式,非200,206状态码,多个状态码用竖线(|)分隔,该属性仅仅在状态码缓存配置列表中返回 - */ - HttpCodePattern?: string; - /** - * 路径模式,支持正则 - */ - PathPattern?: string; - /** - * 缓存规则描述 - */ - Description?: string; - /** - * 缓存时间 - */ - CacheTTL?: number; - /** - * 缓存时间的单位。sec(秒),min(分钟),hour(小时),day(天)。上限1年。 - */ - CacheUnit?: string; - /** - * 是否缓存,true为缓存,flase为不缓存。为flase的情况下,CacheTTL和CacheUnit强制不生效 - */ - CacheBehavior?: boolean; - /** - * 是否优先遵循源站头部缓存策略,false为不优先遵循源站,true为优先遵循源站缓存头部。默认为0 - */ - FollowOriginRule?: boolean; - }[]; + Http301?: number; /** - * 忽略参数缓存配置列表,参见CacheKeyInfo - */ - CacheKeyList?: { - /** - * 是否忽略 - */ - Ignore?: boolean; - /** - * 路径模式,支持正则 - */ - PathPattern?: string; - /** - * 自定义变量,以$符号开头,多个变量用加号(+)连接,$querystring表示所有变量 - */ - QueryString?: string; - }[]; - }; - /** - * 高级配置 参考AdvancedConf - */ - AdvancedConf?: { - /** - * 客户端响应http头列表 - */ - HttpClientHeader?: string[]; - /** - * 源站http头列表 - */ - HttpOriginHeader?: string[]; - /** - * http转https回源 true是,false否 - */ - Http2Https?: boolean; - }; - }[]; -} - -/** - * GetUcdnDomainHitRate - 获取域名命中率 - */ -export interface GetUcdnDomainHitRateRequest { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照一分钟的粒度)默认5分钟 - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 - */ - Areacode?: string; - /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 - */ - BeginTime?: number; - /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 - */ - EndTime?: number; - /** - * 命中类型:0=整体命中 1=边缘命中 默认是0 - */ - HitType?: number; -} - -/** - * GetUcdnDomainHitRate - 获取域名命中率 - */ -export interface GetUcdnDomainHitRateResponse { - /** - * 请求数实例表。 - */ - HitRateList?: { - /** - * 带宽获取的时间点。格式:时间戳 - */ - Time?: number; - /** - * 总流量命中率,单位% - */ - FlowHitRate?: number; - /** - * 请求数命中率,单位% - */ - RequestHitRate?: number; - }[]; -} - -/** - * GetUcdnDomainHttpCodeV2 - 获取域名状态码信息 - */ -export interface GetUcdnDomainHttpCodeV2Request { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示1分钟粒度) - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 - */ - Areacode?: string; - /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 - */ - BeginTime?: number; - /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 - */ - EndTime?: number; - /** - * 指定获取的状态码是边缘还是上层 edge 表示边缘 layer 表示上层 - */ - Layer?: string; -} - -/** - * GetUcdnDomainHttpCodeV2 - 获取域名状态码信息 - */ -export interface GetUcdnDomainHttpCodeV2Response { - /** - * 状态码实例表。详细见HttpCodeInfoV2 - */ - HttpCodeDetail?: { - /** - * 带宽获取的时间点。格式:时间戳 - */ - Time?: number; - /** - * 1xx信息,参考HttpCodeV2Detail结构 - */ - Http1XX?: { - /** - * 时间 - */ - Time?: number; - /** - * 当前分组的总状态码数 - */ - Total?: number; - /** - * http100数量 - */ - Http100?: number; - /** - * http101数量 - */ - Http101?: number; - /** - * http102数量 - */ - Http102?: number; - /** - * http200数量 - */ - Http200?: number; - /** - * http201数量 - */ - Http201?: number; - /** - * http202数量 - */ - Http202?: number; - /** - * http203数量 - */ - Http203?: number; - /** - * http204数量 - */ - Http204?: number; - /** - * http205数量 - */ - Http205?: number; - /** - * http206数量 - */ - Http206?: number; - /** - * http207数量 - */ - Http207?: number; - /** - * http300数量 - */ - Http300?: number; - /** - * http301数量 - */ - Http301?: number; - /** - * http302数量 + * http302数量 */ Http302?: number; /** @@ -2898,67 +2825,443 @@ export interface GetUcdnDomainInfoListResponse { */ DomainInfoList: { /** - * 域名 + * 域名 + */ + Domain: string; + /** + * 域名的资源id + */ + DomainId: string; + }[]; +} + +/** + * GetUcdnDomainLog - 获取加速域名原始日志 + */ +export interface GetUcdnDomainLogRequest { + /** + * 域名ID,创建加速域名时生成。默认全部域名 + */ + DomainId?: string[]; + /** + * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。 + */ + BeginTime?: number; + /** + * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + */ + EndTime?: number; + /** + * 查询粒度 0=default(没有粒度) 1=按小时 2=按天 + */ + Type?: number; +} + +/** + * GetUcdnDomainLog - 获取加速域名原始日志 + */ +export interface GetUcdnDomainLogResponse { + /** + * 获取日志的连接地址。具体参考下面LogSetList + */ + LogSet?: { + /** + * 域名 + */ + Domain?: string; + /** + * 域名信息列表,参考LogSetInfo + */ + Logs?: { + /** + * 日志时间UnixTime + */ + Time?: number; + /** + * 国内日志url列表 + */ + CnLog?: string[]; + /** + * 国外日志url列表 + */ + AbroadLog?: string[]; + }[]; + }[]; +} + +/** + * GetUcdnDomainLogV2 - 获取域名5分钟日志 + */ +export interface GetUcdnDomainLogV2Request { + /** + * 查询的起始时间,格式为Unix Timestamp + */ + BeginTime: number; + /** + * 查询的结束时间,格式为Unix Timestamp + */ + EndTime: number; + /** + * 域名id,创建域名时生成的id。默认全部域名 + */ + DomainId?: string[]; +} + +/** + * GetUcdnDomainLogV2 - 获取域名5分钟日志 + */ +export interface GetUcdnDomainLogV2Response { + /** + * + */ + DomainLogSet: { + /** + * 域名 + */ + Domain?: string; + /** + * 日志信息列表 + */ + LogList?: { + /** + * Unix时间戳 + */ + LogTime: number; + /** + * 日志url地址 + */ + LogUrl: string; + }[]; + }[]; +} + +/** + * GetUcdnDomainOriginHttpCode - 获取域名源站状态码监控 + */ +export interface GetUcdnDomainOriginHttpCodeRequest { + /** + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度,3表示按照1分钟粒度) + */ + Type: number; + /** + * 域名id,创建域名时生成的id。默认全部域名 + */ + DomainId?: string[]; + /** + * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 + */ + Areacode?: string; + /** + * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 + */ + BeginTime?: number; + /** + * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 + */ + EndTime?: number; +} + +/** + * GetUcdnDomainOriginHttpCode - 获取域名源站状态码监控 + */ +export interface GetUcdnDomainOriginHttpCodeResponse { + /** + * 状态码实例表。详细见HttpCodeInfo + */ + HttpCodeDetail?: { + /** + * 带宽获取的时间点。格式:时间戳 + */ + Time?: number; + /** + * 1xx数量 + */ + HttpOneXX?: number; + /** + * 2xx数量 + */ + HttpTwoXX?: number; + /** + * 3xx数量 + */ + HttpThreeXX?: number; + /** + * 4xx数量 + */ + HttpFourXX?: number; + /** + * 5xx数量 + */ + HttpFiveXX?: number; + }[]; +} + +/** + * GetUcdnDomainOriginHttpCodeDetail - 获取域名源站详细状态码监控 + */ +export interface GetUcdnDomainOriginHttpCodeDetailRequest { + /** + * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天粒度,3表示按照一分钟粒度) + */ + Type: number; + /** + * 查询的起始时间,格式为Unix Timestamp。 + */ + BeginTime: number; + /** + * 查询的结束时间,格式为Unix Timestamp。 + */ + EndTime: number; + /** + * 域名id,创建域名时生成的id。默认全部域名 + */ + DomainId?: string[]; + /** + * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 + */ + Areacode?: string; +} + +/** + * GetUcdnDomainOriginHttpCodeDetail - 获取域名源站详细状态码监控 + */ +export interface GetUcdnDomainOriginHttpCodeDetailResponse { + /** + * 状态码详情 + */ + HttpCodeV2Detail?: { + /** + * 时间 + */ + Time?: number; + /** + * 当前分组的总状态码数 + */ + Total?: number; + /** + * http100数量 + */ + Http100?: number; + /** + * http101数量 + */ + Http101?: number; + /** + * http102数量 + */ + Http102?: number; + /** + * http200数量 + */ + Http200?: number; + /** + * http201数量 + */ + Http201?: number; + /** + * http202数量 + */ + Http202?: number; + /** + * http203数量 + */ + Http203?: number; + /** + * http204数量 + */ + Http204?: number; + /** + * http205数量 + */ + Http205?: number; + /** + * http206数量 + */ + Http206?: number; + /** + * http207数量 + */ + Http207?: number; + /** + * http300数量 + */ + Http300?: number; + /** + * http301数量 + */ + Http301?: number; + /** + * http302数量 + */ + Http302?: number; + /** + * http303数量 + */ + Http303?: number; + /** + * http304数量 + */ + Http304?: number; + /** + * http305数量 + */ + Http305?: number; + /** + * http306数量 + */ + Http306?: number; + /** + * http307数量 + */ + Http307?: number; + /** + * http400数量 + */ + Http400?: number; + /** + * http401数量 + */ + Http401?: number; + /** + * http402数量 + */ + Http402?: number; + /** + * http403数量 + */ + Http403?: number; + /** + * http404数量 + */ + Http404?: number; + /** + * http405数量 + */ + Http405?: number; + /** + * http406数量 + */ + Http406?: number; + /** + * http407数量 + */ + Http407?: number; + /** + * http408数量 + */ + Http408?: number; + /** + * http409数量 + */ + Http409?: number; + /** + * http410数量 + */ + Http410?: number; + /** + * http411数量 + */ + Http411?: number; + /** + * http412数量 + */ + Http412?: number; + /** + * http413数量 + */ + Http413?: number; + /** + * http414数量 + */ + Http414?: number; + /** + * http415数量 + */ + Http415?: number; + /** + * http416数量 + */ + Http416?: number; + /** + * http417数量 + */ + Http417?: number; + /** + * http418数量 + */ + Http418?: number; + /** + * http421数量 + */ + Http421?: number; + /** + * http422数量 + */ + Http422?: number; + /** + * http423数量 + */ + Http423?: number; + /** + * http424数量 + */ + Http424?: number; + /** + * http425数量 + */ + Http425?: number; + /** + * http426数量 + */ + Http426?: number; + /** + * http449数量 + */ + Http449?: number; + /** + * http451数量 */ - Domain: string; + Http451?: number; /** - * 域名的资源id + * http500数量 */ - DomainId: string; - }[]; -} - -/** - * GetUcdnDomainLog - 获取加速域名原始日志 - */ -export interface GetUcdnDomainLogRequest { - /** - * 域名ID,创建加速域名时生成。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。 - */ - BeginTime?: number; - /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 - */ - EndTime?: number; - /** - * 查询粒度 0=default(没有粒度) 1=按小时 2=按天 - */ - Type?: number; -} - -/** - * GetUcdnDomainLog - 获取加速域名原始日志 - */ -export interface GetUcdnDomainLogResponse { - /** - * 获取日志的连接地址。具体参考下面LogSetList - */ - LogSet?: { + Http500?: number; /** - * 域名 + * http501数量 */ - Domain?: string; + Http501?: number; /** - * 域名信息列表,参考LogSetInfo + * http502数量 */ - Logs?: { - /** - * 日志时间UnixTime - */ - Time?: number; - /** - * 国内日志url列表 - */ - CnLog?: string[]; - /** - * 国外日志url列表 - */ - AbroadLog?: string[]; - }[]; + Http502?: number; + /** + * http503数量 + */ + Http503?: number; + /** + * http504数量 + */ + Http504?: number; + /** + * http505数量 + */ + Http505?: number; + /** + * http506数量 + */ + Http506?: number; + /** + * http507数量 + */ + Http507?: number; + /** + * http509数量 + */ + Http509?: number; + /** + * http510数量 + */ + Http510?: number; }[]; } @@ -3027,55 +3330,6 @@ export interface GetUcdnDomainPrefetchEnableResponse { Enable?: number; } -/** - * GetUcdnDomainRequestNumV2 - 获取域名请求数 - */ -export interface GetUcdnDomainRequestNumV2Request { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度, 3=按1分钟) - */ - Type: number; - /** - * 查询的起始时间,格式为Unix Timestamp - */ - BeginTime: number; - /** - * 查询的结束时间,格式为Unix Timestamp - */ - EndTime: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询区域 cn代表国内 abroad代表海外,只支持国内 - */ - Areacode?: string; -} - -/** - * GetUcdnDomainRequestNumV2 - 获取域名请求数 - */ -export interface GetUcdnDomainRequestNumV2Response { - /** - * 请求数实例表。 - */ - RequestList?: { - /** - * 带宽获取的时间点。格式:时间戳 - */ - Time?: number; - /** - * 返回值返回指定时间区间内的cdn收到的请求次数之和 - */ - CdnRequest?: number; - /** - * 返回值返回指定时间区间内的cdn回源的请求次数之和 - */ - OriginRequest?: number; - }[]; -} - /** * GetUcdnDomainRequestNumV3 - 获取域名请求数 */ @@ -3125,96 +3379,6 @@ export interface GetUcdnDomainRequestNumV3Response { }[]; } -/** - * GetUcdnDomainTraffic - 获取加速域名流量使用信息 - */ -export interface GetUcdnDomainTrafficRequest { - /** - * 指定按项目查询,还是按整个账户查询 取值 top 表示按整个账户查询,取值org表示按项目查询 - */ - AccountType?: string; - /** - * 域名ID,创建加速域名时生成,n从自然数0开始。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询流量区域 cn代表国内 abroad代表海外,默认全部区域 - */ - Areacode?: string; - /** - * 查询的起始日期,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值 - */ - BeginTime?: number; - /** - * 查询的结束日期,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天 - */ - EndTime?: number; -} - -/** - * GetUcdnDomainTraffic - 获取加速域名流量使用信息 - */ -export interface GetUcdnDomainTrafficResponse { - /** - * 流量实例表,具体结构见 UcdnDomainTrafficSet - */ - TrafficSet?: { - /** - * 流量获取的时间点,格式为Unix Timestamp - */ - Time?: number; - /** - * 查询每日流量总值,单位:GB - */ - Value?: number; - }[]; -} - -/** - * GetUcdnPassBandwidth - 获取回源带宽数据(cdn回客户源站部分) - */ -export interface GetUcdnPassBandwidthRequest { - /** - * 时间粒度(0表示按照5分钟粒度,1表示按照1小时粒度,2表示按照一天的粒度) - */ - Type: number; - /** - * 域名id,创建域名时生成的id。默认全部域名 - */ - DomainId?: string[]; - /** - * 查询带宽区域 cn代表国内 abroad代表海外,只支持国内 - */ - Areacode?: string; - /** - * 查询的起始时间,格式为Unix Timestamp。如果有EndTime,BeginTime必须赋值。如没有赋值,则返回缺少参 数错误,如果没有EndTime,BeginTime也可以不赋值,EndTime默认当前时间,BeginTime 默认前一天的当前时间。 - */ - BeginTime?: number; - /** - * 查询的结束时间,格式为Unix Timestamp。EndTime默认为当前时间,BeginTime默认为当前时间前一天时间。 - */ - EndTime?: number; -} - -/** - * GetUcdnPassBandwidth - 获取回源带宽数据(cdn回客户源站部分) - */ -export interface GetUcdnPassBandwidthResponse { - /** - * 回源带宽数据 - */ - BandwidthDetail?: { - /** - * 宽获取的时间点。格式:时间戳 - */ - Time: number; - /** - * 返回值带宽值数据。 - */ - Bandwidth: number; - }[]; -} - /** * GetUcdnPassBandwidthV2 - 获取回源带宽数据(cdn回客户源站部分) */ @@ -3281,11 +3445,11 @@ export interface GetUcdnProIspBandwidthV2Request { */ DomainId?: string[]; /** - * 省份代码,可以传多个,不传则查询所有省份 + * 省份代码(省份拼音),可以传多个,不传则查询所有省份 */ Province?: string[]; /** - * 运营商代码,一次只能查询一个运营商,不传递默认取所有运营商 + * 运营商代码(运营商拼音),一次只能查询一个运营商,不传递默认取所有运营商 */ Isp?: string; } @@ -3380,38 +3544,6 @@ export interface GetUcdnProIspRequestNumV2Response { }[]; } -/** - * GetUcdnTraffic - 获取流量信息 - */ -export interface GetUcdnTrafficRequest {} - -/** - * GetUcdnTraffic - 获取流量信息 - */ -export interface GetUcdnTrafficResponse { - /** - * 用户不同区域的流量信息, 具体结构参见TrafficSet部分 - */ - TrafficSet?: { - /** - * 购买流量的区域, cn: 国内; abroad: 国外 - */ - Areacode?: string; - /** - * Areacode区域内总购买流量, 单位GB - */ - TrafficTotal?: number; - /** - * Areacode区域内总剩余流量, 单位GB - */ - TrafficLeft?: number; - /** - * Areacode区域内总使用流量, 单位GB - */ - TrafficUsed?: number; - }[]; -} - /** * GetUcdnTrafficV2 - 获取流量信息 */ @@ -3464,16 +3596,57 @@ export interface PrefetchNewUcdnDomainCacheResponse { TaskId?: string; } +/** + * QueryIpLocation - 查询IP信息 + */ +export interface QueryIpLocationRequest { + /** + * ip列表 + */ + Ip: string[]; +} + +/** + * QueryIpLocation - 查询IP信息 + */ +export interface QueryIpLocationResponse { + /** + * IP信息列表 + */ + Data: { + /** + * 客户端请求的ip + */ + Ip?: string; + /** + * 地区 + */ + Area?: string; + /** + * 运营商 + */ + Isp?: string; + /** + * 城市 + */ + City?: string; + /** + * ip是否存在 + */ + Exist?: boolean; + }[]; +} + /** * RefreshNewUcdnDomainCache - 刷新缓存 */ export interface RefreshNewUcdnDomainCacheRequest { /** - * 刷新类型,file代表文件刷新,dir 代表路径刷新 + * 刷新类型,file代表文件刷新,dir 代表路径刷新,m3u8带表m3u8刷新 */ Type: string; /** - * 刷新多个URL列表时,一次最多提交30个。必须以”http://域名/”开始。目录要以”/”结尾, 如刷新目录a下所有文件,格式为:http://abc.ucloud.cn/a/;如刷新文件目录a下面img.png文件, 格式为http://abc.ucloud.cn/a/img.png。请正确提交需要刷新的域名 + * 需要刷新的URL,n 从自然数0开始,刷新多个URL列表时,一次最多提交30个。必须以”http://域名/”开始。目录要以”/”结尾, 如刷新目录a下所有文件,格式为:http://abc.ucloud.cn/a/;如刷新文件目录a下面img.png文件, 格式为http://abc.ucloud.cn/a/img.png。请正确提交需要刷新的域名 */ UrlList: string[]; } diff --git a/src/services/udb/index.ts b/src/services/udb/index.ts index f5a5897..5baa7ef 100644 --- a/src/services/udb/index.ts +++ b/src/services/udb/index.ts @@ -590,6 +590,20 @@ export default class UDBClient extends Client { ); } + /** + * GetUDBClientConnNum - 输入一个DBID,能够获取客户端来源IP以及对应的连接数 + * + * See also: https://docs.ucloud.cn/api/udb-api/get_udb_client_conn_num + */ + getUDBClientConnNum( + request?: GetUDBClientConnNumRequest + ): Promise { + const args = { Action: 'GetUDBClientConnNum', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetUDBClientConnNumResponse + ); + } + /** * ModifyUDBInstanceName - 重命名UDB实例 * @@ -619,7 +633,7 @@ export default class UDBClient extends Client { } /** - * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本) + * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,对于NVMe机型的单点升级高可用,虽然也能使用该操作再加上SwitchUDBInstanceToHA,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) * * See also: https://docs.ucloud.cn/api/udb-api/promote_udb_instance_to_ha */ @@ -731,7 +745,7 @@ export default class UDBClient extends Client { } /** - * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时30-70秒 + * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时5-10秒 * * See also: https://docs.ucloud.cn/api/udb-api/switch_udb_ha_to_sentinel */ @@ -745,7 +759,7 @@ export default class UDBClient extends Client { } /** - * SwitchUDBInstanceToHA - 普通UDB切换为高可用,原db状态为WaitForSwitch时,调用改api + * SwitchUDBInstanceToHA - 普通UDB切换为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,原db状态为WaitForSwitch时,调用该api; 对于NVMe机型的单点升级高可用,虽然也能使用PromoteUDBInstanceToHA再加上该操作,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) * * See also: https://docs.ucloud.cn/api/udb-api/switch_udb_instance_to_ha */ @@ -806,6 +820,20 @@ export default class UDBClient extends Client { ); } + /** + * UpgradeUDBInstanceToHA - 快杰普通db升级为高可用(只针对mysql5.5及以上版本Nvme机型的实例) + * + * See also: https://docs.ucloud.cn/api/udb-api/upgrade_udb_instance_to_ha + */ + upgradeUDBInstanceToHA( + request?: UpgradeUDBInstanceToHARequest + ): Promise { + const args = { Action: 'UpgradeUDBInstanceToHA', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as UpgradeUDBInstanceToHAResponse + ); + } + /** * UploadUDBParamGroup - 导入UDB配置 * @@ -2294,7 +2322,7 @@ export interface DescribeUDBInstanceBinlogBackupStateResponse { */ export interface DescribeUDBInstanceLogRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -2310,7 +2338,7 @@ export interface DescribeUDBInstanceLogRequest { */ EndTime: number; /** - * 查询日志的类型 + * 查询日志的类型error:错误日志;slow:慢日志 */ LogType: string; } @@ -2933,6 +2961,39 @@ export interface FetchUDBInstanceEarliestRecoverTimeResponse { EarliestTime?: number; } +/** + * GetUDBClientConnNum - 输入一个DBID,能够获取客户端来源IP以及对应的连接数 + */ +export interface GetUDBClientConnNumRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * DB实例id + */ + DBId: string; +} + +/** + * GetUDBClientConnNum - 输入一个DBID,能够获取客户端来源IP以及对应的连接数 + */ +export interface GetUDBClientConnNumResponse { + /** + * db实例ip和连接数信息 + */ + DataSet: { + /** + * 客户端IP + */ + Ip?: string; + /** + * 该Ip连接数 + */ + Num?: number; + }[]; +} + /** * ModifyUDBInstanceName - 重命名UDB实例 */ @@ -2984,7 +3045,7 @@ export interface ModifyUDBInstancePasswordRequest { export interface ModifyUDBInstancePasswordResponse {} /** - * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本) + * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,对于NVMe机型的单点升级高可用,虽然也能使用该操作再加上SwitchUDBInstanceToHA,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) */ export interface PromoteUDBInstanceToHARequest { /** @@ -2994,7 +3055,7 @@ export interface PromoteUDBInstanceToHARequest { } /** - * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本) + * PromoteUDBInstanceToHA - 普通db升级为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,对于NVMe机型的单点升级高可用,虽然也能使用该操作再加上SwitchUDBInstanceToHA,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) */ export interface PromoteUDBInstanceToHAResponse {} @@ -3192,36 +3253,52 @@ export interface StopUDBInstanceRequest { export interface StopUDBInstanceResponse {} /** - * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时30-70秒 + * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时5-10秒 */ export interface SwitchUDBHAToSentinelRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** * UDB的实例ID */ DBId: string; + /** + * 是否跳过预检查强制升级。 + */ + ForceSwitch?: boolean; } /** - * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时30-70秒 + * SwitchUDBHAToSentinel - UDB高可用实例从HAProxy版本升级为Sentinel版本(不带HAProxy)升级耗时5-10秒 */ export interface SwitchUDBHAToSentinelResponse {} /** - * SwitchUDBInstanceToHA - 普通UDB切换为高可用,原db状态为WaitForSwitch时,调用改api + * SwitchUDBInstanceToHA - 普通UDB切换为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,原db状态为WaitForSwitch时,调用该api; 对于NVMe机型的单点升级高可用,虽然也能使用PromoteUDBInstanceToHA再加上该操作,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) */ export interface SwitchUDBInstanceToHARequest { /** * 实例的Id,该值可以通过DescribeUDBInstance获取 */ DBId: string; + /** + * Year, Month, Dynamic,Trial,不填则按现在单点计费执行 + */ + ChargeType?: string; + /** + * 购买时长,需要和 ChargeType 搭配使用,否则使用单点计费策略的值 + */ + Quantity?: string; + /** + * 业务组 + */ + Tag?: string; } /** - * SwitchUDBInstanceToHA - 普通UDB切换为高可用,原db状态为WaitForSwitch时,调用改api + * SwitchUDBInstanceToHA - 普通UDB切换为高可用(只针对mysql5.5及以上版本SSD机型的实例) ,原db状态为WaitForSwitch时,调用该api; 对于NVMe机型的单点升级高可用,虽然也能使用PromoteUDBInstanceToHA再加上该操作,但是更建议直接调用新的API接口(UpgradeUDBInstanceToHA) */ export interface SwitchUDBInstanceToHAResponse { /** @@ -3331,6 +3408,25 @@ export interface UpdateUDBParamGroupRequest { */ export interface UpdateUDBParamGroupResponse {} +/** + * UpgradeUDBInstanceToHA - 快杰普通db升级为高可用(只针对mysql5.5及以上版本Nvme机型的实例) + */ +export interface UpgradeUDBInstanceToHARequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 实例的Id,该值可以通过DescribeUDBInstance获取 + */ + DBId: string; +} + +/** + * UpgradeUDBInstanceToHA - 快杰普通db升级为高可用(只针对mysql5.5及以上版本Nvme机型的实例) + */ +export interface UpgradeUDBInstanceToHAResponse {} + /** * UploadUDBParamGroup - 导入UDB配置 */ diff --git a/src/services/udisk/index.ts b/src/services/udisk/index.ts index 1bf8a77..9cf6fe0 100644 --- a/src/services/udisk/index.ts +++ b/src/services/udisk/index.ts @@ -372,6 +372,10 @@ export interface CloneUDiskRequest { * RDMA集群id。指定RSSD云盘克隆到对应的RDMA集群。 */ RdmaClusterId?: string; + /** + * Host实例ID。克隆出的云盘可直接挂载到该主机上。 + */ + HostId?: string; /** * 使用的代金券id */ @@ -436,6 +440,10 @@ export interface CloneUDiskSnapshotRequest { * RDMA集群id。指定RSSD云盘克隆到对应的RDMA集群。 */ RdmaClusterId?: string; + /** + * Host实例ID。克隆出的云盘可直接挂载到该主机上。 + */ + HostId?: string; /** * 使用的代金券id */ @@ -504,6 +512,10 @@ export interface CloneUDiskUDataArkRequest { * RDMA集群id。指定RSSD云盘克隆到对应的RDMA集群。 */ RdmaClusterId?: string; + /** + * Host实例ID。克隆出的云盘可直接挂载到该主机上。 + */ + HostId?: string; /** * 使用的代金券id */ @@ -828,7 +840,7 @@ export interface DescribeRecycleUDiskResponse { */ export interface DescribeUDiskRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -844,7 +856,7 @@ export interface DescribeUDiskRequest { */ Limit?: number; /** - * ProtocolVersion字段为1时,需结合IsBoot确定具体磁盘类型:普通数据盘:DiskType:"CLOUD_NORMAL",IsBoot:"False";普通系统盘:DiskType:"CLOUD_NORMAL",IsBoot:"True";SSD数据盘:DiskType:"CLOUD_SSD",IsBoot:"False";SSD系统盘:DiskType:"CLOUD_SSD",IsBoot:"True";RSSD数据盘:DiskType:"CLOUD_RSSD",IsBoot:"False";为空拉取所有。ProtocolVersion字段为0或没有该字段时,可设为以下几个值:普通数据盘:DataDisk;普通系统盘:SystemDisk;SSD数据盘:SSDDataDisk;SSD系统盘:SSDSystemDisk;RSSD数据盘:RSSDDataDisk;为空拉取所有。 + * ProtocolVersion字段为1时,需结合IsBoot确定具体磁盘类型:普通数据盘:DiskType:"CLOUD_NORMAL",IsBoot:"False";普通系统盘:DiskType:"CLOUD_NORMAL",IsBoot:"True";SSD数据盘:DiskType:"CLOUD_SSD",IsBoot:"False";SSD系统盘:DiskType:"CLOUD_SSD",IsBoot:"True";RSSD数据盘:DiskType:"CLOUD_RSSD",IsBoot:"False";RSSD系统盘:DiskType:"CLOUD_RSSD",IsBoot:"True";高效数据盘:DiskType:"CLOUD_EFFICIENCY",IsBoot:"False";高效系统盘:DiskType:"CLOUD_EFFICIENCY",IsBoot:"True";为空拉取所有。ProtocolVersion字段为0或没有该字段时,可设为以下几个值:普通数据盘:DataDisk;普通系统盘:SystemDisk;SSD数据盘:SSDDataDisk;SSD系统盘:SSDSystemDisk;RSSD数据盘:RSSDDataDisk;RSSD系统盘:RSSDSystemDisk:高效数据盘:EfficiencyDataDisk;高效系统盘:EfficiencySystemDisk;为空拉取所有。 */ DiskType?: string; /** @@ -860,13 +872,25 @@ export interface DescribeUDiskRequest { */ IgnoreUBillInfo?: string; /** - * 根据传入的UHostIdForAttachment,筛选出虚机在同一PodId下的云盘【本字段即将废弃,建议使用HostIdForAttachment】 + * 是否忽略快照服务信息。Yes:忽略,No:不忽略,默认值(No)。(如不关心快照服务信息,建议选填“Yes”,可降低请求延时) + */ + IgnoreBackupMode?: string; + /** + * 是否只返回云盘基础信息(只包含云盘及关联主机的资源信息)。Yes:是,No:否,默认值(No)。(如仅需要基础信息,建议选填“Yes”,可降低请求延时) + */ + UDiskBasicInfo?: string; + /** + * 根据传入的UHostIdForAttachment,筛选出能被挂载在该主机上的云盘【本字段即将废弃,建议使用HostIdForAttachment】 */ UHostIdForAttachment?: string; /** - * 根据传入的HostIdForAttachment,筛选出虚机在同一PodId下的云盘 + * 根据传入的HostIdForAttachment,筛选出能被挂载在该主机上的云盘。目前主要针对RSSD云盘。 */ HostIdForAttachment?: string; + /** + * 根据传入的HostId,返回与该主机关联的云盘信息。 + */ + HostId?: string; /** * 宿主产品类型,可筛选挂载在该类型宿主上的云盘。可选值:uhost, uphost。为空拉取所有。(当HostIdForAttachment字段不为空时,该字段可以不填,若HostIdForAttachment与该字段宿主类型冲突,则以HostIdForAttachment字段为准。) */ @@ -966,7 +990,7 @@ export interface DescribeUDiskResponse { */ SnapshotLimit?: number; /** - * 请求中的ProtocolVersion字段为1时,需结合IsBoot确定具体磁盘类型:普通数据盘:DiskType:"CLOUD_NORMAL",IsBoot:"False"; 普通系统盘:DiskType:"CLOUD_NORMAL",IsBoot:"True";SSD数据盘:DiskType:"CLOUD_SSD",IsBoot:"False";SSD系统盘:DiskType:"CLOUD_SSD",IsBoot:"True";RSSD数据盘:DiskType:"CLOUD_RSSD",IsBoot:"False"。请求中的ProtocolVersion字段为0或没有该字段时,云硬盘类型参照如下:普通数据盘:DataDisk;普通系统盘:SystemDisk;SSD数据盘:SSDDataDisk;SSD系统盘:SSDSystemDisk;RSSD数据盘:RSSDDataDisk。 + * 请求中的ProtocolVersion字段为1时,需结合IsBoot确定具体磁盘类型:普通数据盘:DiskType:"CLOUD_NORMAL",IsBoot:"False"; 普通系统盘:DiskType:"CLOUD_NORMAL",IsBoot:"True";SSD数据盘:DiskType:"CLOUD_SSD",IsBoot:"False";SSD系统盘:DiskType:"CLOUD_SSD",IsBoot:"True";RSSD数据盘:DiskType:"CLOUD_RSSD",IsBoot:"False";RSSD系统盘:DiskType:"CLOUD_RSSD",IsBoot:"True";高效数据盘:DiskType:"CLOUD_EFFICIENCY",IsBoot:"False";高效系统盘:DiskType:"CLOUD_EFFICIENCY",IsBoot:"True"。请求中的ProtocolVersion字段为0或没有该字段时,云硬盘类型参照如下:普通数据盘:DataDisk;普通系统盘:SystemDisk;SSD数据盘:SSDDataDisk;SSD系统盘:SSDSystemDisk;RSSD数据盘:RSSDDataDisk;RSSD系统盘:RSSDSystemDisk;高效数据盘:EfficiencyDataDisk;高效系统盘:EfficiencySystemDisk。 */ DiskType?: string; /** @@ -1098,7 +1122,7 @@ export interface DescribeUDiskPriceResponse { */ export interface DescribeUDiskSnapshotRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -1160,7 +1184,7 @@ export interface DescribeUDiskSnapshotResponse { */ Status: string; /** - * 磁盘类型,0:数据盘,1:系统盘 + * 磁盘类型,0:普通数据盘;1:普通系统盘;2:SSD数据盘;3:SSD系统盘;4:RSSD数据盘;5:RSSD系统盘。 */ DiskType: number; /** @@ -1231,7 +1255,7 @@ export interface DescribeUDiskUpgradePriceRequest { */ UDataArkMode?: string; /** - * 是否开启快照服务(开启快照服务,可免费开启数据方舟)。Yes:开启,No:不开启,默认值:No + * 是否开启快照服务(开启快照服务,可免费开启数据方舟)。Yes:开启,No:不开启,默认值:No。仅支持查询开启快照服务的价格。 */ SnapshotService?: string; /** diff --git a/src/services/uec/index.ts b/src/services/uec/index.ts index 18b6a38..653792e 100644 --- a/src/services/uec/index.ts +++ b/src/services/uec/index.ts @@ -31,6 +31,20 @@ export default class UECClient extends Client { ); } + /** + * CreateUEcCustomImage - 从指定虚拟机,生成自定义镜像。 + * + * See also: https://docs.ucloud.cn/api/uec-api/create_u_ec_custom_image + */ + createUEcCustomImage( + request?: CreateUEcCustomImageRequest + ): Promise { + const args = { Action: 'CreateUEcCustomImage', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as CreateUEcCustomImageResponse + ); + } + /** * CreateUEcFirewall - 创建外网防火墙 * @@ -607,6 +621,34 @@ export interface BindUEcFirewallRequest { */ export interface BindUEcFirewallResponse {} +/** + * CreateUEcCustomImage - 从指定虚拟机,生成自定义镜像。 + */ +export interface CreateUEcCustomImageRequest { + /** + * 虚拟机实例ID + */ + NodeId: string; + /** + * 镜像名称 + */ + ImageName: string; + /** + * 镜像描述 + */ + ImageDescription?: string; +} + +/** + * CreateUEcCustomImage - 从指定虚拟机,生成自定义镜像。 + */ +export interface CreateUEcCustomImageResponse { + /** + * 镜像ID + */ + ImageId: string; +} + /** * CreateUEcFirewall - 创建外网防火墙 */ @@ -685,7 +727,7 @@ export interface CreateUEcHolderRequest { */ Name?: string; /** - * 机型(normal-标准型,hf-高性能型,默认normal) + * 机型(normal-经济型,hf-标准型,默认normal) */ ProductType?: string; /** @@ -884,7 +926,7 @@ export interface CreateUEcVHostRequest { */ SubnetId?: string; /** - * 产品类型:normal(标准型),hf(高频型) + * 产品类型:normal(经济型),hf(标准型),g(Gpu型) */ ProductType?: string; /** @@ -896,9 +938,17 @@ export interface CreateUEcVHostRequest { */ Isp?: number[]; /** - * (已废弃)是否需要外网ip(yes-是,no-否) + * 是否需要外网ip(no-否) */ IsNeedOuterIp?: string; + /** + * Gpu卡核心数。仅Gpu机型支持此字段 + */ + Gpu?: number; + /** + * Gpu类型,枚举值["T4S"],ProductType为G时必填 + */ + GpuType?: string; } /** @@ -1283,7 +1333,7 @@ export interface DescribeUEcHolderResponse { }[]; }[]; /** - * 机器类型(normal通用型,hf高性能型) + * 机器类型(normal经济型,hf标准型) */ ProductType?: string; /** @@ -1429,9 +1479,13 @@ export interface DescribeUEcIDCRequest { */ Type?: number; /** - * 产品类型:normal(通用型),hf(高主频型) + * 产品类型:normal(经济型),hf(标准型),g(GPU型) */ ProductType?: string; + /** + * Gpu卡核心数 + */ + Gpu?: number; } /** @@ -1654,9 +1708,13 @@ export interface DescribeUEcVHostResponse { */ FirewallId?: string; /** - * 机器类型 + * 机器类型(normal-经济型,hf-标准型,g-GPU型) */ ProductType?: string; + /** + * 内网ip列表 + */ + InnerIps?: string[]; }[]; } @@ -2115,7 +2173,7 @@ export interface GetUEcImageResponse { */ ImageDesc?: string; /** - * 镜像状态:镜像状态 1可用,2不可用 + * 镜像状态:镜像状态 1可用,2不可用,3制作中 */ State?: number; /** @@ -2139,6 +2197,10 @@ export interface GetUEcImageResponse { */ State?: number; }[]; + /** + * 是否支持Gpu(1-支持,0-不支持) + */ + Gpu?: number; }[]; /** * 镜像总数 @@ -2442,13 +2504,21 @@ export interface GetUEcVHostPriceRequest { */ ChargeQuantity?: number; /** - * 产品类型:normal(标准型),hf(高频型),默认normal + * 产品类型:normal(经济型),hf(标准型),g(Gpu型),默认normal */ ProductType?: string; /** * 外网IP的数量,默认1 */ IpCount?: number; + /** + * Gpu卡核心数。仅Gpu机型支持此字段 + */ + Gpu?: number; + /** + * Gpu类型,枚举值["T4"],ProductType为g时必填 + */ + GpuType?: string; } /** diff --git a/src/services/ufile/index.ts b/src/services/ufile/index.ts index 9445d2b..3a92d54 100644 --- a/src/services/ufile/index.ts +++ b/src/services/ufile/index.ts @@ -29,6 +29,20 @@ export default class UFileClient extends Client { ); } + /** + * CreateUFileLifeCycle - 创建生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/create_ufile_life_cycle + */ + createUFileLifeCycle( + request?: CreateUFileLifeCycleRequest + ): Promise { + const args = { Action: 'CreateUFileLifeCycle', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as CreateUFileLifeCycleResponse + ); + } + /** * CreateUFileToken - 创建US3令牌 * @@ -55,6 +69,20 @@ export default class UFileClient extends Client { ); } + /** + * DeleteUFileLifeCycle - 删除生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/delete_ufile_life_cycle + */ + deleteUFileLifeCycle( + request?: DeleteUFileLifeCycleRequest + ): Promise { + const args = { Action: 'DeleteUFileLifeCycle', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DeleteUFileLifeCycleResponse + ); + } + /** * DeleteUFileToken - 删除令牌 * @@ -83,6 +111,20 @@ export default class UFileClient extends Client { ); } + /** + * DescribeUFileLifeCycle - 获取生命周期信息 + * + * See also: https://docs.ucloud.cn/api/ufile-api/describe_ufile_life_cycle + */ + describeUFileLifeCycle( + request?: DescribeUFileLifeCycleRequest + ): Promise { + const args = { Action: 'DescribeUFileLifeCycle', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUFileLifeCycleResponse + ); + } + /** * DescribeUFileToken - 获取令牌信息 * @@ -97,6 +139,20 @@ export default class UFileClient extends Client { ); } + /** + * GetUFileDailyReport - 查看日消费报表 + * + * See also: https://docs.ucloud.cn/api/ufile-api/get_ufile_daily_report + */ + getUFileDailyReport( + request?: GetUFileDailyReportRequest + ): Promise { + const args = { Action: 'GetUFileDailyReport', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetUFileDailyReportResponse + ); + } + /** * GetUFileQuota - 查看配额状态 * @@ -179,6 +235,20 @@ export default class UFileClient extends Client { ); } + /** + * UpdateUFileLifeCycle - 更新生命周期管理 + * + * See also: https://docs.ucloud.cn/api/ufile-api/update_ufile_life_cycle + */ + updateUFileLifeCycle( + request?: UpdateUFileLifeCycleRequest + ): Promise { + const args = { Action: 'UpdateUFileLifeCycle', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as UpdateUFileLifeCycleResponse + ); + } + /** * UpdateUFileToken - 更新令牌的操作权限,可操作key的前缀,可操作bucket和令牌超时时间点 * @@ -222,6 +292,50 @@ export interface CreateBucketResponse { BucketId?: string; } +/** + * CreateUFileLifeCycle - 创建生命周期管理 + */ +export interface CreateUFileLifeCycleRequest { + /** + * 生命周期名称 + */ + LifeCycleName: string; + /** + * 生命周期所适用的前缀;*为整个存储空间文件;一条规则只支持一个文件前缀; + */ + Prefix: string; + /** + * Enabled -- 启用,Disabled -- 不启用 + */ + Status: string; + /** + * 存储空间名称 + */ + BucketName: string; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动删除;参数范围:[7,36500],0代表不启用 + */ + Days?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后,自动变为归档存储类型;参数范围:[7,36500],0代表不启用 + */ + ArchivalDays?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后,自动变为低频存储类型;参数范围:[7,36500],0代表不启用 + */ + IADays?: number; +} + +/** + * CreateUFileLifeCycle - 创建生命周期管理 + */ +export interface CreateUFileLifeCycleResponse { + /** + * 生命周期Id + */ + LifeCycleId: string; +} + /** * CreateUFileToken - 创建US3令牌 */ @@ -282,6 +396,25 @@ export interface DeleteBucketResponse { BucketId?: string; } +/** + * DeleteUFileLifeCycle - 删除生命周期管理 + */ +export interface DeleteUFileLifeCycleRequest { + /** + * 生命周期Id + */ + LifeCycleId: string; + /** + * 存储空间名称 + */ + BucketName: string; +} + +/** + * DeleteUFileLifeCycle - 删除生命周期管理 + */ +export interface DeleteUFileLifeCycleResponse {} + /** * DeleteUFileToken - 删除令牌 */ @@ -387,6 +520,63 @@ export interface DescribeBucketResponse { }[]; } +/** + * DescribeUFileLifeCycle - 获取生命周期信息 + */ +export interface DescribeUFileLifeCycleRequest { + /** + * 存储空间名称 + */ + BucketName: string; + /** + * 生命周期Id;不传递此参数拉取存储空间下面的所有生命周期信息 + */ + LifeCycleId?: string; +} + +/** + * DescribeUFileLifeCycle - 获取生命周期信息 + */ +export interface DescribeUFileLifeCycleResponse { + /** + * 生命周期信息 + */ + DateSet: { + /** + * 生命周期Id + */ + LifeCycleId?: string; + /** + * 生命周期名称 + */ + LifeCycleName?: string; + /** + * 生命周期所适用的前缀;*为整个存储空间文件; + */ + Prefix?: string; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动删除,0代表不启用; + */ + Days?: number; + /** + * Enabled -- 启用,Disabled -- 不启用 + */ + Status?: string; + /** + * 存储空间名称 + */ + BucketName?: string; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动转换为归档存储类型,0代表不启用; + */ + ArchivalDays?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动转换为低频存储类型,0代表不启用; + */ + IADays?: number; + }[]; +} + /** * DescribeUFileToken - 获取令牌信息 */ @@ -460,6 +650,109 @@ export interface DescribeUFileTokenResponse { }[]; } +/** + * GetUFileDailyReport - 查看日消费报表 + */ +export interface GetUFileDailyReportRequest { + /** + * 查询开始时间;unix时间戳,单位s + */ + StartTime: number; + /** + * 查询结束时间;unix时间戳,单位s + */ + EndTime: number; + /** + * 空间名称。此字段不为空,返回此Bucket日使用量;否则,返回这个项目的日使用量 + */ + BucketName?: string; +} + +/** + * GetUFileDailyReport - 查看日消费报表 + */ +export interface GetUFileDailyReportResponse { + /** + * 消费情况 + */ + DataSet: { + /** + * 总消费情况 + */ + Total?: { + /** + * 下载流量:单位byte;国内无此字段 + */ + Flow?: number; + /** + * 闲时流量;单位byte;海外无此字段 + */ + IdleFlow?: number; + /** + * 忙时流量;单位byte;海外无此字段 + */ + BusyFlow?: number; + /** + * cdn回源流量;单位byte + */ + CdnFlow?: number; + /** + * API请求次数(万次) + */ + ApiTimes?: number; + }[]; + /** + * 日消费情况 + */ + Daily?: { + /** + * 标准存储量;单位byte + */ + Storage?: number; + /** + * 低频存储量;单位byte + */ + IaStorage?: number; + /** + * 冷存(归档)存储量;单位byte + */ + AcStorage?: number; + /** + * 低频数据取回量;单位byte + */ + IaGetSize?: number; + /** + * 冷存激活量,即归档数据取回量;单位byte + */ + AcRestore?: number; + /** + * 忙时流量;单位byte;海外无此字段 + */ + BusyFlow?: number; + /** + * 闲时流量;单位byte;海外无此字段 + */ + IdleFlow?: number; + /** + * cdn回源流量;单位byte + */ + CdnFlow?: number; + /** + * 下载流量:单位byte;国内无此字段 + */ + Flow?: number; + /** + * 配额消费时间,unix时间戳(单位s),精确到日期 + */ + Date?: number; + /** + * API请求次数(万次) + */ + ApiTimes?: number; + }[]; + }[]; +} + /** * GetUFileQuota - 查看配额状态 */ @@ -664,6 +957,49 @@ export interface UpdateBucketResponse { BucketId?: string; } +/** + * UpdateUFileLifeCycle - 更新生命周期管理 + */ +export interface UpdateUFileLifeCycleRequest { + /** + * 生命周期Id + */ + LifeCycleId: string; + /** + * 生命周期名称 + */ + LifeCycleName: string; + /** + * 生命周期所适用的前缀;*为整个存储空间文件;一条规则只支持一个文件前缀; + */ + Prefix: string; + /** + * Enabled -- 启用,Disabled -- 不启用 + */ + Status: string; + /** + * 存储空间名称 + */ + BucketName: string; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动删除;范围: [7,36500] + */ + Days?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动转换为归档存储类型;范围: [7,36500],0代表不启用 + */ + ArchivalDays?: number; + /** + * 指定一个过期天数N,文件会在其最近更新时间点的N天后过期,自动转换为低频存储类型;范围: [7,36500],0代表不启用 + */ + IADays?: number; +} + +/** + * UpdateUFileLifeCycle - 更新生命周期管理 + */ +export interface UpdateUFileLifeCycleResponse {} + /** * UpdateUFileToken - 更新令牌的操作权限,可操作key的前缀,可操作bucket和令牌超时时间点 */ diff --git a/src/services/ufs/index.ts b/src/services/ufs/index.ts index 60ef44d..a95ab1a 100644 --- a/src/services/ufs/index.ts +++ b/src/services/ufs/index.ts @@ -17,6 +17,20 @@ export default class UFSClient extends Client { super({ config, credential }); } + /** + * AddUFSVolumeMountPoint - 添加文件系统挂载点 + * + * See also: https://docs.ucloud.cn/api/ufs-api/add_ufs_volume_mount_point + */ + addUFSVolumeMountPoint( + request?: AddUFSVolumeMountPointRequest + ): Promise { + const args = { Action: 'AddUFSVolumeMountPoint', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as AddUFSVolumeMountPointResponse + ); + } + /** * CreateUFSVolume - 创建文件系统 * @@ -45,6 +59,34 @@ export default class UFSClient extends Client { ); } + /** + * DescribeUFSVolumeMountpoint - 获取文件系统挂载点信息 + * + * See also: https://docs.ucloud.cn/api/ufs-api/describe_ufs_volume_mountpoint + */ + describeUFSVolumeMountpoint( + request?: DescribeUFSVolumeMountpointRequest + ): Promise { + const args = { Action: 'DescribeUFSVolumeMountpoint', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUFSVolumeMountpointResponse + ); + } + + /** + * DescribeUFSVolumePrice - 获取文件系统价格 + * + * See also: https://docs.ucloud.cn/api/ufs-api/describe_ufs_volume_price + */ + describeUFSVolumePrice( + request?: DescribeUFSVolumePriceRequest + ): Promise { + const args = { Action: 'DescribeUFSVolumePrice', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUFSVolumePriceResponse + ); + } + /** * ExtendUFSVolume - 文件系统扩容 * @@ -72,22 +114,77 @@ export default class UFSClient extends Client { (resp) => resp.toObject() as RemoveUFSVolumeResponse ); } + + /** + * RemoveUFSVolumeMountPoint - 删除文件系统挂载点 + * + * See also: https://docs.ucloud.cn/api/ufs-api/remove_ufs_volume_mount_point + */ + removeUFSVolumeMountPoint( + request?: RemoveUFSVolumeMountPointRequest + ): Promise { + const args = { Action: 'RemoveUFSVolumeMountPoint', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as RemoveUFSVolumeMountPointResponse + ); + } + + /** + * UpdateUFSVolumeInfo - 更改文件系统相关信息(名称/备注) + * + * See also: https://docs.ucloud.cn/api/ufs-api/update_ufs_volume_info + */ + updateUFSVolumeInfo( + request?: UpdateUFSVolumeInfoRequest + ): Promise { + const args = { Action: 'UpdateUFSVolumeInfo', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as UpdateUFSVolumeInfoResponse + ); + } +} + +/** + * AddUFSVolumeMountPoint - 添加文件系统挂载点 + */ +export interface AddUFSVolumeMountPointRequest { + /** + * 文件系统ID + */ + VolumeId: string; + /** + * 挂载点名称 + */ + MountPointName: string; + /** + * Vpc ID + */ + VpcId: string; + /** + * Subnet ID + */ + SubnetId: string; } +/** + * AddUFSVolumeMountPoint - 添加文件系统挂载点 + */ +export interface AddUFSVolumeMountPointResponse {} + /** * CreateUFSVolume - 创建文件系统 */ export interface CreateUFSVolumeRequest { /** - * 文件系统大小,单位为GB,最大不超过20T,香港容量型必须为100的整数倍,Size最小为500GB,北京,上海,广州的容量型必须为1024的整数倍,Size最小为1024GB。性能型文件系统Size最小为100GB + * 文件系统大小,单位为GB,必须为100的整数倍,容量型Size最小为500GB,性能型文件系统Size最小为100GB */ Size: number; /** - * 文件系统存储类型,枚举值,Basic表示容量型,Advanced表示性能型 + * 文件系统存储类型,Basic表示容量型,Advanced表示性能型 */ StorageType: string; /** - * 文件系统协议,枚举值,NFSv3表示NFS V3协议,NFSv4表示NFS V4协议 + * 文件系统协议,目前仅支持NFSv4 */ ProtocolType: string; /** @@ -219,6 +316,108 @@ export interface DescribeUFSVolume2Response { }[]; } +/** + * DescribeUFSVolumeMountpoint - 获取文件系统挂载点信息 + */ +export interface DescribeUFSVolumeMountpointRequest { + /** + * 文件系统ID + */ + VolumeId: string; +} + +/** + * DescribeUFSVolumeMountpoint - 获取文件系统挂载点信息 + */ +export interface DescribeUFSVolumeMountpointResponse { + /** + * + */ + DataSet: { + /** + * 挂载点名称 + */ + MountPointName: string; + /** + * Vpc ID + */ + VpcId: string; + /** + * Subnet ID + */ + SubnetId: string; + /** + * ${挂载点IP}:/ + */ + MountPointIp: string; + /** + * 文件系统创建时间(unix时间戳) + */ + CreateTime: number; + /** + * Subnet ID + 网段的形式,方便前端展示 + */ + SubnetDescription: string; + }[]; + /** + * 目前的挂载点总数 + */ + TotalMountPointNum: number; + /** + * 文件系统能创建的最大挂载点数目 + */ + MaxMountPointNum: number; +} + +/** + * DescribeUFSVolumePrice - 获取文件系统价格 + */ +export interface DescribeUFSVolumePriceRequest { + /** + * 文件系统大小,单位为GB,新架构容量型最小容量为500GB,以100GB递增,最大不超过100TB。新架构性能型最小容量为100GB,以100GB递增,最大不超过20TB + */ + Size: number; + /** + * 文件存储类型,枚举值,Basic表示容量型产品,Advanced表示性能型产品 + */ + StorageType: string; + /** + * 购买UFS的时长, 默认为1 + */ + Quantity?: number; + /** + * Year, Month, Dynamic,Trial,默认: Dynamic + */ + ChargeType?: string; + /** + * 文件系统id,第一次创建文件系统时不需要传这个参数 + */ + VolumeId?: string; +} + +/** + * DescribeUFSVolumePrice - 获取文件系统价格 + */ +export interface DescribeUFSVolumePriceResponse { + /** + * ufs 价格信息 + */ + DataSet?: { + /** + * Year, Month, Dynamic,Trial + */ + ChargeType?: string; + /** + * 价格 (单位: 分) + */ + Price?: number; + /** + * “UFS” + */ + ChargeName?: string; + }[]; +} + /** * ExtendUFSVolume - 文件系统扩容 */ @@ -252,3 +451,49 @@ export interface RemoveUFSVolumeRequest { * RemoveUFSVolume - 删除UFS文件系统 */ export interface RemoveUFSVolumeResponse {} + +/** + * RemoveUFSVolumeMountPoint - 删除文件系统挂载点 + */ +export interface RemoveUFSVolumeMountPointRequest { + /** + * 文件系统ID + */ + VolumeId: string; + /** + * Vpc ID + */ + VpcId: string; + /** + * Subnet ID + */ + SubnetId: string; +} + +/** + * RemoveUFSVolumeMountPoint - 删除文件系统挂载点 + */ +export interface RemoveUFSVolumeMountPointResponse {} + +/** + * UpdateUFSVolumeInfo - 更改文件系统相关信息(名称/备注) + */ +export interface UpdateUFSVolumeInfoRequest { + /** + * 文件系统ID + */ + VolumeId: string; + /** + * 文件系统名称(文件系统名称/备注至少传入其中一个) + */ + VolumeName?: string; + /** + * 文件系统备注(文件系统名称/备注至少传入其中一个) + */ + Remark?: string; +} + +/** + * UpdateUFSVolumeInfo - 更改文件系统相关信息(名称/备注) + */ +export interface UpdateUFSVolumeInfoResponse {} diff --git a/src/services/uhost/index.ts b/src/services/uhost/index.ts index 487ecfa..26881fe 100644 --- a/src/services/uhost/index.ts +++ b/src/services/uhost/index.ts @@ -619,7 +619,7 @@ export interface CreateUHostInstanceRequest { */ Size: number; /** - * 磁盘备份方案。枚举值:\\ > NONE,无备份 \\ > DATAARK,数据方舟 \\ > SNAPSHOT(SNAPSHOT模式目前仅在上海C支持),快照 \\当前磁盘支持的备份模式参考 [[api:uhost-api:disk_type|磁盘类型]],默认值:NONE + * 磁盘备份方案。枚举值:\\ > NONE,无备份 \\ > DATAARK,数据方舟 \\ > SNAPSHOT,快照 \\当前磁盘支持的备份模式参考 [[api:uhost-api:disk_type|磁盘类型]],默认值:NONE */ BackupType?: string; /** @@ -634,10 +634,6 @@ export interface CreateUHostInstanceRequest { * 云盘代金券id。不适用于系统盘/本地盘。请通过DescribeCoupon接口查询,或登录用户中心查看 */ CouponId?: string; - /** - * 磁盘id,只有云盘系统盘可以有此参数,且该系统盘id必须已经存在 - */ - Id?: string; }[]; /** * 主机登陆模式。密码(默认选项): Password,密钥:KeyPair。 @@ -656,7 +652,7 @@ export interface CreateUHostInstanceRequest { */ Tag?: string; /** - * 计费模式。枚举值为: \\ > Year,按年付费; \\ > Month,按月付费;\\ > Dynamic,按小时预付费 \\ > Postpay,按小时后付费(支持关机不收费,目前仅部分可用区支持,请联系您的客户经理) \\Preemptive计费为抢占式实例 \\ 默认为月付 + * 计费模式。枚举值为: \\ > Year,按年付费; \\ > Month,按月付费;\\ > Dynamic,按小时预付费 \\ > Postpay,按小时后付费(支持关机不收费,目前仅部分可用区支持,请联系您的客户经理) \\Preemptive计费为抢占式实例(内测阶段) \\ 默认为月付 */ ChargeType?: string; /** @@ -676,26 +672,13 @@ export interface CreateUHostInstanceRequest { */ Memory?: number; /** - * GPU类型,枚举值["K80", "P40", "V100", "T4", "T4S","2080Ti","2080Ti-4C","1080Ti"],MachineType为G时必填 + * GPU类型,枚举值["K80", "P40", "V100", "T4", "T4S","2080Ti","2080Ti-4C","1080Ti", "T4/4", "MI100", "V100S"],MachineType为G时必填 */ GpuType?: string; /** * GPU卡核心数。仅GPU机型支持此字段(可选范围与MachineType+GpuType相关) */ GPU?: number; - /** - * - */ - VirtualGpu?: { - /** - * 虚拟 GPU 类型,枚举值["vGPU_T4","vGPU_P40","vGPU_V100"] - */ - GpuType?: string; - /** - * 虚拟 GPU 核数,默认 1。注:当前暂时只支持1颗。 - */ - GPU?: number; - }; /** * 网络增强特性。枚举值:Normal(默认),不开启; Super,开启网络增强1.0; Ultra,开启网络增强2.0(仅支持部分可用区,请参考控制台) */ @@ -729,11 +712,11 @@ export interface CreateUHostInstanceRequest { */ AlarmTemplateId?: number; /** - * 云主机机型(V2.0),在本字段和字段UHostType中,仅需要其中1个字段即可。枚举值["N", "C", "G", "O", "OS", "OPRO", "OMAX", "O.BM"]。参考[[api:uhost-api:uhost_type|云主机机型说明]]。 + * 云主机机型(V2.0),在本字段和字段UHostType中,仅需要其中1个字段即可。枚举值["N", "C", "G", "O", "OS", "OM", "OPRO", "OMAX", "O.BM", "O.EPC"]。参考[[api:uhost-api:uhost_type|云主机机型说明]]。 */ MachineType?: string; /** - * 最低cpu平台,枚举值["Intel/Auto", "Intel/IvyBridge", "Intel/Haswell", "Intel/Broadwell", "Intel/Skylake", "Intel/Cascadelake";"Intel/CascadelakeR"; “Amd/Epyc2”,"Amd/Auto"],默认值是"Intel/Auto"。 + * 最低cpu平台,枚举值["Intel/Auto", "Intel/IvyBridge", "Intel/Haswell", "Intel/Broadwell", "Intel/Skylake", "Intel/Cascadelake", "Intel/CascadelakeR", "Intel/IceLake", "Amd/Epyc2", "Amd/Auto"],默认值是"Intel/Auto"。 */ MinimalCpuPlatform?: string; /** @@ -760,23 +743,6 @@ export interface CreateUHostInstanceRequest { * 绑定的共享带宽Id,仅当PayMode为ShareBandwidth时有效 */ ShareBandwidthId?: string; - /** - * - */ - GlobalSSH?: { - /** - * 填写支持SSH访问IP的地区名称,如“洛杉矶”,“新加坡”,“香港”,“东京”,“华盛顿”,“法兰克福”。Area和AreaCode两者必填其中之一。 - */ - Area?: string; - /** - * SSH端口,1-65535且不能使用80,443端口 - */ - Port?: number; - /** - * GlobalSSH的地区编码,格式为区域航空港国际通用代码。Area和AreaCode两者必填其中之一。 - */ - AreaCode?: string; - }; /** * 【若绑定EIP,此参数必填】弹性IP的线路。枚举值: 国际: International BGP: Bgp 各地域允许的线路参数如下: cn-sh1: Bgp cn-sh2: Bgp cn-gd: Bgp cn-bj1: Bgp cn-bj2: Bgp hk: International us-ca: International th-bkk: International kr-seoul:International us-ws:International ge-fra:International sg:International tw-kh:International.其他海外线路均为 International */ @@ -789,16 +755,7 @@ export interface CreateUHostInstanceRequest { /** * */ - IPv6?: { - /** - * 第N块网卡中IPv6对应的共享带宽id,默认不带外网 - */ - ShareBandwidthId?: string; - /** - * 第N个网卡对应的IPv6地址,默认不分配IPv6,“Auto”自动分配,不为空的其他字符串为实际要分配的IPv6地址 - */ - Address?: string; - }; + IPv6?: object; /** * 申请并绑定一个教育网EIP。True为申请并绑定,False为不会申请绑定,默认False。当前只支持具有HPC特性的机型。 */ @@ -815,32 +772,20 @@ export interface CreateUHostInstanceRequest { /** * */ - Volumes?: { - /** - * 存储文件卷类型,当前仅支持[CLOUD_FSX]。 - */ - Type?: string; - /** - * 存储文件卷,当前只用于数据卷,且限于 Windows,默认为 fase。 - */ - IsBoot?: string; - /** - * 存储文件卷大小,单位GB,必须是10GB的整数倍,至少 100GB。 - */ - Size?: number; - /** - * 已有存储文件卷ID,设置了,对应的 Size 可以为 0 GB。 - */ - VolumeId?: string; - /** - * 存储文件卷代金券id。不适用于系统盘/本地盘。请通过DescribeCoupon接口查询,或登录用户中心查看 - */ - CouponId?: string; - }[]; + Volumes?: object[]; /** * KeypairId 密钥对ID,LoginMode为KeyPair时此项必须 */ KeyPairId?: string; + /** + * + */ + Features?: { + /** + * 弹性网卡特性。开启了弹性网卡权限位,此特性才生效,默认 false 未开启,true 开启,仅与 NetCapability Normal 兼容。 + */ + UNI?: boolean; + }; /** * 主机代金券ID。请通过DescribeCoupon接口查询,或登录用户中心查看 */ @@ -1478,10 +1423,6 @@ export interface DescribeUHostKeyPairsResponse { * 密钥对指纹。md5(ProjectId|KeyPairId|PublicKey) */ KeyPairFingerPrint?: string; - /** - * 密钥对的私钥内容。只有创建接口才会返回。 - */ - PrivateKeyBody?: string; /** * 密钥对的创建时间,格式为Unix Timestamp。 */ @@ -1646,33 +1587,11 @@ export interface GetUHostInstancePriceRequest { /** * */ - Volumes?: { - /** - * 存储文件卷类型,当前仅支持[CLOUD_FSX]。请参考[[api:uhost-api:volume_type|卷类型]]。 - */ - Type?: string; - /** - * 存储文件卷大小,单位GB,必须是10GB的整数倍,至少 100GB。 - */ - Size?: number; - /** - * 存储文件卷,当前只用于数据卷,且限于 Windows,默认为 fase。 - */ - IsBoot?: string; - }[]; + Volumes?: object[]; /** * */ - VirtualGpu?: { - /** - * 虚拟 GPU 类型,枚举值["vGPU_T4","vGPU_P40","vGPU_V100"] - */ - GpuType?: string; - /** - * 虚拟 GPU 核数,默认 1。注:当前暂时只支持1颗。 - */ - GPU?: number; - }; + VirtualGpu?: object; } /** diff --git a/src/services/uk8s/index.ts b/src/services/uk8s/index.ts index 64685df..a445dbf 100644 --- a/src/services/uk8s/index.ts +++ b/src/services/uk8s/index.ts @@ -31,6 +31,20 @@ export default class UK8SClient extends Client { ); } + /** + * AddUK8SNodeGroup - 添加UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/add_uk8s_node_group + */ + addUK8SNodeGroup( + request?: AddUK8SNodeGroupRequest + ): Promise { + const args = { Action: 'AddUK8SNodeGroup', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as AddUK8SNodeGroupResponse + ); + } + /** * AddUK8SPHostNode - 为UK8S集群添加一台或多台物理云主机类型的节点。 * @@ -101,6 +115,20 @@ export default class UK8SClient extends Client { ); } + /** + * DescribeUK8SCluster - 获取集群信息 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/describe_uk8s_cluster + */ + describeUK8SCluster( + request?: DescribeUK8SClusterRequest + ): Promise { + const args = { Action: 'DescribeUK8SCluster', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUK8SClusterResponse + ); + } + /** * DescribeUK8SImage - 获取UK8S支持的Node节点操作系统,可基于该操作系统制定自定义镜像 * @@ -115,6 +143,20 @@ export default class UK8SClient extends Client { ); } + /** + * DescribeUK8SNode - 用于获取 UK8S 节点详情 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/describe_uk8s_node + */ + describeUK8SNode( + request?: DescribeUK8SNodeRequest + ): Promise { + const args = { Action: 'DescribeUK8SNode', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUK8SNodeResponse + ); + } + /** * ListUK8SClusterNodeV2 - 获取UK8S集群节点信息 * @@ -142,6 +184,34 @@ export default class UK8SClient extends Client { (resp) => resp.toObject() as ListUK8SClusterV2Response ); } + + /** + * ListUK8SNodeGroup - 列出UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/list_uk8s_node_group + */ + listUK8SNodeGroup( + request?: ListUK8SNodeGroupRequest + ): Promise { + const args = { Action: 'ListUK8SNodeGroup', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ListUK8SNodeGroupResponse + ); + } + + /** + * RemoveUK8SNodeGroup - 删除UK8S节点池 + * + * See also: https://docs.ucloud.cn/api/uk8s-api/remove_uk8s_node_group + */ + removeUK8SNodeGroup( + request?: RemoveUK8SNodeGroupRequest + ): Promise { + const args = { Action: 'RemoveUK8SNodeGroup', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as RemoveUK8SNodeGroupResponse + ); + } } /** @@ -199,6 +269,82 @@ export interface AddUK8SExistingUHostRequest { */ export interface AddUK8SExistingUHostResponse {} +/** + * AddUK8SNodeGroup - 添加UK8S节点池 + */ +export interface AddUK8SNodeGroupRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 节点池名字 + */ + NodeGroupName: string; + /** + * 集群ID + */ + ClusterId: string; + /** + * 镜像ID + */ + ImageId?: string; + /** + * 云主机机型。枚举值["N", "C", "G", "O", "OS"]。参考[[api:uhost-api:uhost_type|云主机机型说明]]。 + */ + MachineType?: string; + /** + * 最低cpu平台,枚举值["Intel/Auto", "Intel/IvyBridge", "Intel/Haswell", "Intel/Broadwell", "Intel/Skylake", "Intel/Cascadelake";"Intel/CascadelakeR"; “Amd/Epyc2”,"Amd/Auto"],默认值是"Intel/Auto" + */ + MinimalCpuPlatform?: string; + /** + * GPU卡核心数。仅GPU机型支持此字段(可选范围与MachineType+GpuType相关) + */ + CPU?: number; + /** + * 内存大小。单位:MB + */ + Mem?: number; + /** + * GPU类型 + */ + GpuType?: string; + /** + * GPU卡核心数 + */ + GPU?: number; + /** + * 磁盘类型 + */ + BootDiskType?: string; + /** + * 数据磁盘大小 + */ + DataDiskSize?: number; + /** + * 磁盘类型 + */ + DataDiskType?: string; + /** + * 业务组 + */ + Tag?: string; + /** + * 计费模式 + */ + ChargeType?: string; +} + +/** + * AddUK8SNodeGroup - 添加UK8S节点池 + */ +export interface AddUK8SNodeGroupResponse { + /** + * 节点池ID + */ + NodeGroupId: string; +} + /** * AddUK8SPHostNode - 为UK8S集群添加一台或多台物理云主机类型的节点。 */ @@ -275,7 +421,7 @@ export interface AddUK8SPHostNodeResponse {} */ export interface AddUK8SUHostNodeRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -287,7 +433,7 @@ export interface AddUK8SUHostNodeRequest { */ CPU: number; /** - * 最大创建Node节点数量,取值范围是[1,10]。 + * 创建Node节点数量,取值范围是[1,50]。 */ Count: number; /** @@ -313,7 +459,7 @@ export interface AddUK8SUHostNodeRequest { /** * 数据磁盘大小,单位GB。默认0。范围 :[20, 1000] */ - DataDiskSize?: string; + DataDiskSize?: number; /** * 购买时长。默认: 1。按小时购买(Dynamic)时无需此参数。 月付时,此参数传0,代表了购买至月末。 */ @@ -595,6 +741,333 @@ export interface DelUK8SClusterNodeV2Request { */ export interface DelUK8SClusterNodeV2Response {} +/** + * DescribeUK8SCluster - 获取集群信息 + */ +export interface DescribeUK8SClusterRequest { + /** + * k8s集群ID + */ + ClusterId: string; +} + +/** + * DescribeUK8SCluster - 获取集群信息 + */ +export interface DescribeUK8SClusterResponse { + /** + * 资源名字 + */ + ClusterName: string; + /** + * 集群ID + */ + ClusterId: string; + /** + * 所属VPC + */ + VPCId: string; + /** + * 所属子网 + */ + SubnetId: string; + /** + * Pod网段 + */ + PodCIDR: string; + /** + * 服务网段 + */ + ServiceCIDR: string; + /** + * Master 节点数量 + */ + MasterCount: number; + /** + * Master节点配置信息,具体参考UhostInfo。托管版不返回该信息 + */ + MasterList?: { + /** + * 所在机房 + */ + Zone: string; + /** + * 主机名称 + */ + Name: string; + /** + * Cpu数量 + */ + CPU: number; + /** + * 内存 + */ + Memory: number; + /** + * 节点IP信息 + */ + IPSet: { + /** + * 国际: Internation,BGP: Bgp,内网: Private + */ + Type?: string; + /** + * IP资源ID (内网IP无对应的资源ID) + */ + IPId?: string; + /** + * IP地址 + */ + IP?: string; + /** + * IP对应的带宽, 单位: Mb (内网IP不显示带宽信息) + */ + Bandwidth?: number; + /** + * 是否默认的弹性网卡的信息。true: 是默认弹性网卡;其他值:不是。 + */ + Default?: string; + }[]; + /** + * 节点磁盘信息 + */ + DiskSet: { + /** + * 磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk + */ + Type?: string; + /** + * 磁盘长ID + */ + DiskId?: string; + /** + * UDisk名字(仅当磁盘是UDisk时返回) + */ + Name?: string; + /** + * 磁盘盘符 + */ + Drive?: string; + /** + * 磁盘大小,单位: GB + */ + Size?: number; + /** + * 备份方案,枚举类型:BASIC_SNAPSHOT,普通快照;DATAARK,方舟。无快照则不返回该字段。 + */ + BackupType?: string; + /** + * 当前主机的IOPS值 + */ + IOPS?: number; + /** + * Yes: 加密 No: 非加密 + */ + Encrypted?: string; + /** + * LOCAL_NOMAL| CLOUD_NORMAL| LOCAL_SSD| CLOUD_SSD|EXCLUSIVE_LOCAL_DISK + */ + DiskType?: string; + /** + * True| False + */ + IsBoot?: string; + }[]; + /** + * 主机ID + */ + NodeId: string; + /** + * 镜像信息 + */ + OsName: string; + /** + * 创建时间 + */ + CreateTime: number; + /** + * 到期时间 + */ + ExpireTime: number; + /** + * 主机状态 + */ + State: string; + /** + * 节点类型:uhost表示云主机;uphost表示物理云主机 + */ + NodeType: string; + }[]; + /** + * Node节点配置信息,具体参考UhostInfo + */ + NodeList?: { + /** + * 所在机房 + */ + Zone: string; + /** + * 主机名称 + */ + Name: string; + /** + * Cpu数量 + */ + CPU: number; + /** + * 内存 + */ + Memory: number; + /** + * 节点IP信息 + */ + IPSet: { + /** + * 国际: Internation,BGP: Bgp,内网: Private + */ + Type?: string; + /** + * IP资源ID (内网IP无对应的资源ID) + */ + IPId?: string; + /** + * IP地址 + */ + IP?: string; + /** + * IP对应的带宽, 单位: Mb (内网IP不显示带宽信息) + */ + Bandwidth?: number; + /** + * 是否默认的弹性网卡的信息。true: 是默认弹性网卡;其他值:不是。 + */ + Default?: string; + }[]; + /** + * 节点磁盘信息 + */ + DiskSet: { + /** + * 磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk + */ + Type?: string; + /** + * 磁盘长ID + */ + DiskId?: string; + /** + * UDisk名字(仅当磁盘是UDisk时返回) + */ + Name?: string; + /** + * 磁盘盘符 + */ + Drive?: string; + /** + * 磁盘大小,单位: GB + */ + Size?: number; + /** + * 备份方案,枚举类型:BASIC_SNAPSHOT,普通快照;DATAARK,方舟。无快照则不返回该字段。 + */ + BackupType?: string; + /** + * 当前主机的IOPS值 + */ + IOPS?: number; + /** + * Yes: 加密 No: 非加密 + */ + Encrypted?: string; + /** + * LOCAL_NOMAL| CLOUD_NORMAL| LOCAL_SSD| CLOUD_SSD|EXCLUSIVE_LOCAL_DISK + */ + DiskType?: string; + /** + * True| False + */ + IsBoot?: string; + }[]; + /** + * 主机ID + */ + NodeId: string; + /** + * 镜像信息 + */ + OsName: string; + /** + * 创建时间 + */ + CreateTime: number; + /** + * 到期时间 + */ + ExpireTime: number; + /** + * 主机状态 + */ + State: string; + /** + * 节点类型:uhost表示云主机;uphost表示物理云主机 + */ + NodeType: string; + }[]; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * Node节点数量 + */ + NodeCount?: number; + /** + * 集群apiserver地址 + */ + ApiServer?: string; + /** + * 状态 + */ + Status?: string; + /** + * 集群外部apiserver地址 + */ + ExternalApiServer?: string; + /** + * kube-proxy配置 + */ + KubeProxy?: { + /** + * KubeProxy模式,枚举值为[ipvs,iptables] + */ + Mode?: string; + }; + /** + * K8S版本 + */ + Version?: string; + /** + * 自定义或者默认的clusterdomain + */ + ClusterDomain?: string; + /** + * 集群etcd服务证书 + */ + EtcdCert?: string; + /** + * 集群etcd服务密钥 + */ + EtcdKey?: string; + /** + * 集群CA根证书 + */ + CACert?: string; + /** + * Master配置预警:Normal正常;Warning 需要升级;Error 需要紧急升级; + */ + MasterResourceStatus?: string; +} + /** * DescribeUK8SImage - 获取UK8S支持的Node节点操作系统,可基于该操作系统制定自定义镜像 */ @@ -653,6 +1126,163 @@ export interface DescribeUK8SImageResponse { }[]; } +/** + * DescribeUK8SNode - 用于获取 UK8S 节点详情 + */ +export interface DescribeUK8SNodeRequest { + /** + * UK8S 集群 Id + */ + ClusterId: string; + /** + * K8S 节点IP或者节点ID + */ + Name: string; +} + +/** + * DescribeUK8SNode - 用于获取 UK8S 节点详情 + */ +export interface DescribeUK8SNodeResponse { + /** + * 节点名称 + */ + Name: string; + /** + * 字符串数组,每一项是类似 "kubernetes.io/arch=amd64" 的标签 + */ + Labels: string[]; + /** + * 字符串数组,每一项是类似 "node.alpha.kubernetes.io/ttl=0" 的注解 + */ + Annotations: string[]; + /** + * 时间戳,单位是 秒 + */ + CreationTimestamp: number; + /** + * 字符串,如:"UCloud://cn-sh2-02//uk8s-vsc0vgob-n-mpzxc" + */ + ProviderID: string; + /** + * 内核版本,如:"4.19.0-6.el7.ucloud.x86_64" + */ + KernelVersion: string; + /** + * 操作系统类型,如:"CentOS Linux 7 (Core)" + */ + OSImage: string; + /** + * 容器运行时版本,如:"docker://18.9.9" + */ + ContainerRuntimeVersion: string; + /** + * kubelet 版本 + */ + KubeletVersion: string; + /** + * kubeproxy 版本 + */ + KubeProxyVersion: string; + /** + * 内部 IP 地址 + */ + InternalIP: string; + /** + * 主机名 + */ + Hostname: string; + /** + * 已分配到当前节点的 Pod 数量 + */ + AllocatedPodCount: number; + /** + * 节点允许的可分配 Pod 最大数量 + */ + PodCapacity: number; + /** + * 是否禁止调度 + */ + Unschedulable: boolean; + /** + * 节点 CPU 总量 + */ + CPUCapacity: string; + /** + * 节点内存总量 + */ + MemoryCapacity: string; + /** + * 节点上已分配 Pod 的内存请求量 + */ + MemoryRequests: string; + /** + * 节点上已分配 Pod 的内存请求量占内存总量的比例,如返回值为 "4.5",则意味着请求量占总量的 4.5% + */ + MemoryRequestsFraction: string; + /** + * 节点上已分配 Pod 的内存限制量 + */ + MemoryLimits: string; + /** + * 节点上已分配 Pod 的内存限制量占内存总量的比例,如返回值为 "18",则意味着限制量占总量的 18% + */ + MemoryLimitsFraction: string; + /** + * 节点上已分配 Pod 的 CPU 请求量 + */ + CPURequests: string; + /** + * 节点上已分配 Pod 的 CPU 请求量占 CPU 总量的比例 + */ + CPURequestsFraction: string; + /** + * 节点上已分配 Pod 的 CPU 限制值 + */ + CPULimits: string; + /** + * 节点上已分配 Pod 的 CPU 限制值占 CPU 总量的比例 + */ + CPULimitsFraction: string; + /** + * 节点状态数组 + */ + Conditions: { + /** + * Condition 类型,如 MemoryPressure、DiskPressure、PIDPressure、Ready + */ + Type?: string; + /** + * 状态,False、True + */ + Status?: string; + /** + * 最后一次上报状态的时间 + */ + LastProbeTime?: string; + /** + * 最后一次状态转变时间 + */ + LastTransitionTime?: string; + /** + * 状态变化的原因 + */ + Reason?: string; + /** + * 状态变化的描述信息 + */ + Message?: string; + }[]; + /** + * 节点上镜像名称数组 + */ + ContainerImages: string[]; + /** + * 字符串数组,每一项是类似 "node-role.kubernetes.io/master:NoSchedule" 的污点 + */ + Taints?: string[]; +} + /** * ListUK8SClusterNodeV2 - 获取UK8S集群节点信息 */ @@ -684,7 +1314,7 @@ export interface ListUK8SClusterNodeV2Response { */ NodeRole: string; /** - * Node的状态 + * Node的状态:枚举值:初始化:"Initializing";启动中:"Starting";运行:"Running";停止中:"Stopping";停止:"Stopped";待删除:"ToBeDeleted";删除中:"Deleting";异常:"Error";安装失败:"Install Fail"; */ NodeStatus: string; /** @@ -739,10 +1369,6 @@ export interface ListUK8SClusterNodeV2Response { * IP对应的带宽, 单位: Mb (内网IP不显示带宽信息) */ Bandwidth?: number; - /** - * 是否默认的弹性网卡的信息。true: 是默认弹性网卡;其他值:不是。 - */ - Default?: string; /** * IP地址对应的VPC ID */ @@ -862,6 +1488,10 @@ export interface ListUK8SClusterV2Response { * 集群版本 */ K8sVersion: string; + /** + * 创建集群时判断如果为NORESOURCE则为没资源,否则为空 + */ + ClusterLogInfo?: string; /** * 创建时间 */ @@ -875,8 +1505,108 @@ export interface ListUK8SClusterV2Response { */ ExternalApiServer?: string; /** - * 状态 + * 集群状态,枚举值:初始化:"INITIALIZING";启动中:"STARTING";创建失败:"CREATEFAILED";正常运行:"RUNNING";添加节点:"ADDNODE";删除节点:"DELNODE";删除中:"DELETING";删除失败:"DELETEFAILED";错误:"ERROR";升级插件:"UPDATE_PLUGIN";更新插件信息:"UPDATE_PLUGIN_INFO";异常:"ABNORMAL";升级集群中:"UPGRADING";容器运行时切换:"CONVERTING" */ Status?: string; }[]; } + +/** + * ListUK8SNodeGroup - 列出UK8S节点池 + */ +export interface ListUK8SNodeGroupRequest { + /** + * 集群ID + */ + ClusterId: string; +} + +/** + * ListUK8SNodeGroup - 列出UK8S节点池 + */ +export interface ListUK8SNodeGroupResponse { + /** + * 节点池列表 + */ + NodeGroupList?: { + /** + * 节点池ID + */ + NodeGroupId?: string; + /** + * 节点池名字 + */ + NodeGroupName?: string; + /** + * 镜像ID + */ + ImageId?: string; + /** + * 机型 + */ + MachineType?: string; + /** + * cpu平台 + */ + MinimalCpuPlatform?: string; + /** + * 虚拟CPU核数 + */ + CPU?: number; + /** + * 内存大小 + */ + Mem?: number; + /** + * GPU类型 + */ + GpuType?: string; + /** + * GPU卡核心数 + */ + GPU?: number; + /** + * 系统盘类型 + */ + BootDiskType?: string; + /** + * 数据盘大小 + */ + DataDiskSize?: number; + /** + * 数据盘类型 + */ + DataDiskType?: string; + /** + * 业务组 + */ + Tag?: string; + /** + * 付费方式 + */ + ChargeType?: string; + /** + * 节点id列表 + */ + NodeList?: string[]; + }[]; +} + +/** + * RemoveUK8SNodeGroup - 删除UK8S节点池 + */ +export interface RemoveUK8SNodeGroupRequest { + /** + * 节点池Id + */ + NodeGroupId: string; + /** + * 集群id + */ + ClusterId: string; +} + +/** + * RemoveUK8SNodeGroup - 删除UK8S节点池 + */ +export interface RemoveUK8SNodeGroupResponse {} diff --git a/src/services/ulb/index.ts b/src/services/ulb/index.ts index 0cf8182..0f85376 100644 --- a/src/services/ulb/index.ts +++ b/src/services/ulb/index.ts @@ -247,6 +247,20 @@ export default class ULBClient extends Client { ); } + /** + * UpdateSSLAttribute - 更新修改SSL的属性,如:修改SSLName + * + * See also: https://docs.ucloud.cn/api/ulb-api/update_ssl_attribute + */ + updateSSLAttribute( + request?: UpdateSSLAttributeRequest + ): Promise { + const args = { Action: 'UpdateSSLAttribute', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as UpdateSSLAttributeResponse + ); + } + /** * UpdateULBAttribute - 更新ULB名字业务组备注等属性字段 * @@ -289,7 +303,7 @@ export interface AllocateBackendRequest { */ VServerId: string; /** - * 所添加的后端资源的类型,枚举值:UHost -> 云主机;UNI -> 虚拟网卡;UPM -> 物理云主机; UDHost -> 私有专区主机;UDocker -> 容器;UHybrid->混合云主机;CUBE->Cube;默认值为UHost。报文转发模式不支持UDocker、UHybrid、CUBE + * 所添加的后端资源的类型,枚举值:UHost -> 云主机;UNI -> 虚拟网卡;UPM -> 物理云主机; UDHost -> 私有专区主机;UDocker -> 容器;UHybrid->混合云主机;CUBE->Cube,USDP->智能大数据平台;默认值为UHost。报文转发模式不支持UDocker、UHybrid、CUBE */ ResourceType: string; /** @@ -313,7 +327,7 @@ export interface AllocateBackendRequest { */ Port?: number; /** - * 所添加的后端RS权重(在加权轮询算法下有效),取值范围[0-100],默认为1 + * 所添加的后端RS权重(在加权轮询算法下有效),取值范围[1-100],默认为1 */ Weight?: number; /** @@ -472,7 +486,7 @@ export interface CreateULBRequest { */ VPCId?: string; /** - * 内网ULB 所属的子网ID,如果不传则使用默认的子网 + * ULB 所属的子网ID,如果不传则随机选择一个。 */ SubnetId?: string; /** @@ -484,7 +498,7 @@ export interface CreateULBRequest { */ FirewallId?: string; /** - * ULB 监听器类型,枚举值:RequestProxy,请求代理; PacketsTransmit ,报文转发。默认为RequestProxy + * ULB 监听器类型,外网ULB默认RequestProxy,内网ULB默认PacketsTransmit。枚举值:RequestProxy,请求代理; PacketsTransmit ,报文转发。 */ ListenType?: string; } @@ -828,6 +842,10 @@ export interface DescribeULBResponse { * 健康检查类型,枚举值:Port -> 端口检查;Path -> 路径检查;Ping -> Ping探测, Customize -> UDP检查请求代理型默认值为Port,其中TCP协议仅支持Port,其他协议支持Port和Path; 报文转发型TCP协议仅支持Port,UDP协议支持Ping、Port和Customize */ MonitorType: string; + /** + * 负载均衡实例的Id + */ + ULBId?: string; /** * 根据MonitorType确认; 当MonitorType为Port时,此字段无意义。当MonitorType为Path时,代表HTTP检查域名 */ @@ -995,6 +1013,10 @@ export interface DescribeULBResponse { * 内容转发信息列表,具体结构见下方 ULBPolicySet */ PolicySet?: { + /** + * 内容转发规则中域名的匹配方式。枚举值:Regular,正则;Wildcard,泛域名 + */ + DomainMatchMode?: string; /** * 内容转发Id,默认内容转发类型下为空。 */ @@ -1302,7 +1324,7 @@ export interface DescribeVServerRequest { /** * 负载均衡实例的Id */ - ULBId: string; + ULBId?: string; /** * VServer实例的Id;若指定则返回指定的VServer实例的信息; 若不指定则返回当前负载均衡实例下所有VServer的信息 */ @@ -1333,6 +1355,10 @@ export interface DescribeVServerResponse { * 健康检查类型,枚举值:Port -> 端口检查;Path -> 路径检查;Ping -> Ping探测, Customize -> UDP检查请求代理型默认值为Port,其中TCP协议仅支持Port,其他协议支持Port和Path; 报文转发型TCP协议仅支持Port,UDP协议支持Ping、Port和Customize */ MonitorType: string; + /** + * 负载均衡实例的Id + */ + ULBId?: string; /** * 根据MonitorType确认; 当MonitorType为Port时,此字段无意义。当MonitorType为Path时,代表HTTP检查域名 */ @@ -1500,6 +1526,10 @@ export interface DescribeVServerResponse { * 内容转发信息列表,具体结构见下方 ULBPolicySet */ PolicySet?: { + /** + * 内容转发规则中域名的匹配方式。枚举值:Regular,正则;Wildcard,泛域名 + */ + DomainMatchMode?: string; /** * 内容转发Id,默认内容转发类型下为空。 */ @@ -1685,6 +1715,25 @@ export interface UpdatePolicyRequest { */ export interface UpdatePolicyResponse {} +/** + * UpdateSSLAttribute - 更新修改SSL的属性,如:修改SSLName + */ +export interface UpdateSSLAttributeRequest { + /** + * SSL的资源id + */ + SSLId: string; + /** + * SSL实例名称,不允许传空 + */ + SSLName: string; +} + +/** + * UpdateSSLAttribute - 更新修改SSL的属性,如:修改SSLName + */ +export interface UpdateSSLAttributeResponse {} + /** * UpdateULBAttribute - 更新ULB名字业务组备注等属性字段 */ diff --git a/src/services/umem/index.ts b/src/services/umem/index.ts index 75a2c76..184b67f 100644 --- a/src/services/umem/index.ts +++ b/src/services/umem/index.ts @@ -157,6 +157,20 @@ export default class UMemClient extends Client { ); } + /** + * DescribeUDRedisProxyInfo - 拉取udredis所有的代理信息 + * + * See also: https://docs.ucloud.cn/api/umem-api/describe_ud_redis_proxy_info + */ + describeUDRedisProxyInfo( + request?: DescribeUDRedisProxyInfoRequest + ): Promise { + const args = { Action: 'DescribeUDRedisProxyInfo', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUDRedisProxyInfoResponse + ); + } + /** * DescribeUDRedisSlowlog - 查询UDRedis慢日志 * @@ -171,6 +185,18 @@ export default class UMemClient extends Client { ); } + /** + * DescribeUMem - 获取UMem列表 + * + * See also: https://docs.ucloud.cn/api/umem-api/describe_umem + */ + describeUMem(request?: DescribeUMemRequest): Promise { + const args = { Action: 'DescribeUMem', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeUMemResponse + ); + } + /** * DescribeUMemBackup - 查询分布式redis备份 * @@ -440,6 +466,20 @@ export default class UMemClient extends Client { ); } + /** + * ISolationURedisGroup - 打开/关闭URedis + * + * See also: https://docs.ucloud.cn/api/umem-api/i_solation_uredis_group + */ + iSolationURedisGroup( + request?: ISolationURedisGroupRequest + ): Promise { + const args = { Action: 'ISolationURedisGroup', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ISolationURedisGroupResponse + ); + } + /** * ModifyUMemSpaceName - 修改UMem内存空间名称 * @@ -948,6 +988,47 @@ export interface DeleteURedisGroupRequest { */ export interface DeleteURedisGroupResponse {} +/** + * DescribeUDRedisProxyInfo - 拉取udredis所有的代理信息 + */ +export interface DescribeUDRedisProxyInfoRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * udredis实例id + */ + SpaceId: string; +} + +/** + * DescribeUDRedisProxyInfo - 拉取udredis所有的代理信息 + */ +export interface DescribeUDRedisProxyInfoResponse { + /** + * 代理数据集 + */ + DataSet: { + /** + * 代理资源id + */ + ResourceId: string; + /** + * 代理id + */ + ProxyId: string; + /** + * 代理ip + */ + Vip: string; + /** + * 代理状态 + */ + State: string; + }[]; +} + /** * DescribeUDRedisSlowlog - 查询UDRedis慢日志 */ @@ -997,6 +1078,253 @@ export interface DescribeUDRedisSlowlogResponse { }[]; } +/** + * DescribeUMem - 获取UMem列表 + */ +export interface DescribeUMemRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * 协议类型: memcache, redis + */ + Protocol: string; + /** + * 分页显示的起始偏移, 默认值为0 + */ + Offset?: number; + /** + * 分页显示的条目数, 默认值为20 + */ + Limit?: number; + /** + * 资源ID + */ + ResourceId?: string; +} + +/** + * DescribeUMem - 获取UMem列表 + */ +export interface DescribeUMemResponse { + /** + * 根据过滤条件得到的总数 + */ + TotalCount?: number; + /** + * UMem实例列表, 详细参见UMemDataSet + */ + DataSet?: { + /** + * 实例所在可用区,或者master redis所在可用区,参见 [可用区列表](../summary/regionlist.html) + */ + Zone?: string; + /** + * 是否拥有只读Slave“Yes” 包含“No” 不包含 + */ + OwnSlave: string; + /** + * UMEM实例列表 UMemSlaveDataSet 如果没有slave,则没有该字段 + */ + DataSet?: { + /** + * 实例所在可用区,或者master redis所在可用区,参见 [可用区列表](../summary/regionlist.html) + */ + Zone?: string; + /** + * 子网 + */ + SubnetId: string; + /** + * vpc + */ + VPCId: string; + /** + * + */ + VirtualIP: string; + /** + * 主备Redis返回运维时间 0//0点 1 //1点 以此类推 + */ + RewriteTime?: number; + /** + * 主实例id + */ + MasterGroupId?: string; + /** + * 资源id + */ + GroupId?: string; + /** + * 端口 + */ + Port?: number; + /** + * 实力大小 + */ + MemorySize?: number; + /** + * 资源名称 + */ + GroupName?: string; + /** + * 表示实例是主库还是从库,master,slave + */ + Role?: string; + /** + * 修改时间 + */ + ModifyTime?: number; + /** + * 资源名称 + */ + Name?: string; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * 到期时间 + */ + ExpireTime?: number; + /** + * 容量单位GB + */ + Size?: number; + /** + * 使用量单位MB + */ + UsedSize?: number; + /** + * 实例状态 Starting // 创建中 Creating // 初始化中 CreateFail // 创建失败 Fail // 创建失败 Deleting // 删除中 DeleteFail // 删除失败 Running // 运行 Resizing // 容量调整中 ResizeFail // 容量调整失败 Configing // 配置中 ConfigFail // 配置失败Restarting // 重启中SetPasswordFail //设置密码失败 + */ + State?: string; + /** + * 计费模式,Year, Month, Dynamic, Trial + */ + ChargeType?: string; + /** + * 业务组名称 + */ + Tag?: string; + /** + * distributed: 分布式版Redis,或者分布式Memcache;single:主备版Redis,或者单机Memcache;performance:高性能版 + */ + ResourceType?: string; + /** + * 节点的配置ID + */ + ConfigId?: string; + /** + * Redis版本信息 + */ + Version?: string; + }[]; + /** + * 表示实例是主库还是从库,master,slave仅主备redis返回该项参数 + */ + Role?: string; + /** + * 主备redis和分布式redis运维时间0 //0点1 //1点以此类推单机版memcache不返回该项 + */ + RewriteTime?: number; + /** + * vpc + */ + VPCId?: string; + /** + * 子网 + */ + SubnetId?: string; + /** + * 资源ID + */ + ResourceId?: string; + /** + * 资源名称 + */ + Name?: string; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * 到期时间 + */ + ExpireTime?: number; + /** + * 空间类型:single(无热备),double(热备) + */ + Type?: string; + /** + * 协议类型: memcache, redis + */ + Protocol?: string; + /** + * 容量单位GB + */ + Size?: number; + /** + * 使用量单位MB + */ + UsedSize?: number; + /** + * 实例状态 Starting // 创建中 Creating // 初始化中 CreateFail // 创建失败 Fail // 创建失败 Deleting // 删除中 DeleteFail // 删除失败 Running // 运行 Resizing // 容量调整中 ResizeFail // 容量调整失败 Configing // 配置中 ConfigFail // 配置失败Restarting // 重启中SetPasswordFail //设置密码失败 + */ + State?: string; + /** + * 计费模式,Year, Month, Dynamic, Trial + */ + ChargeType?: string; + /** + * IP端口信息请,参见UMemSpaceAddressSet + */ + Address?: { + /** + * UMem实例访问IP + */ + IP?: string; + /** + * UMem实例访问Port + */ + Port?: number; + }[]; + /** + * 业务组名称 + */ + Tag?: string; + /** + * distributed: 分布式版Redis,或者分布式Memcache;single:主备版Redis,或者单机Memcache;performance:高性能版 + */ + ResourceType?: string; + /** + * 节点的配置ID + */ + ConfigId?: string; + /** + * 是否需要自动备份,enable,disable + */ + AutoBackup?: string; + /** + * 自动备份开始时间,单位小时计,范围[0-23] + */ + BackupTime?: number; + /** + * 是否开启高可用,enable,disable + */ + HighAvailability?: string; + /** + * Redis版本信息 + */ + Version?: string; + /** + * 跨机房URedis,slave redis所在可用区,参见 [可用区列表](../summary/regionlist.html) + */ + SlaveZone?: string; + }[]; +} + /** * DescribeUMemBackup - 查询分布式redis备份 */ @@ -1091,7 +1419,7 @@ export interface DescribeUMemBackupURLResponse { */ export interface DescribeUMemBlockInfoRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -1120,10 +1448,6 @@ export interface DescribeUMemBlockInfoResponse { * 分片id */ BlockId: string; - /** - * 分片ip - */ - BlockVip: string; /** * 分片端口 */ @@ -1132,10 +1456,6 @@ export interface DescribeUMemBlockInfoResponse { * 容量单位GB */ BlockSize: number; - /** - * 使用量单位MB - */ - BlockUsedSize: number; /** * 实例状态 Starting // 创建中 Creating // 初始化中 CreateFail // 创建失败 Fail // 创建失败 Deleting // 删除中 DeleteFail // 删除失败 Running // 运行 Resizing // 容量调整中 ResizeFail // 容量调整失败 Configing // 配置中 ConfigFail // 配置失败Restarting // 重启中 SetPasswordFail //设置密码失败 */ @@ -1148,6 +1468,14 @@ export interface DescribeUMemBlockInfoResponse { * 分片维护的键槽结束值 */ BlockSlotEnd: number; + /** + * 分片ip + */ + BlockVip?: string; + /** + * 使用量单位MB + */ + BlockUsedSize?: number; }[]; } @@ -2081,6 +2409,33 @@ export interface GetUMemSpaceStateResponse { State?: string; } +/** + * ISolationURedisGroup - 打开/关闭URedis + */ +export interface ISolationURedisGroupRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 组的ID + */ + GroupId: string; + /** + * UNBind(关闭)或Bind(打开) + */ + TransformType: string; + /** + * 跨机房URedis,slave所在可用区(必须和Zone在同一Region,且不可相同) + */ + SlaveZone?: string; +} + +/** + * ISolationURedisGroup - 打开/关闭URedis + */ +export interface ISolationURedisGroupResponse {} + /** * ModifyUMemSpaceName - 修改UMem内存空间名称 */ diff --git a/src/services/unet/index.ts b/src/services/unet/index.ts index a9d8499..eeb3b44 100644 --- a/src/services/unet/index.ts +++ b/src/services/unet/index.ts @@ -210,6 +210,37 @@ export default class UNetClient extends Client { ); } + /** + * DescribeShareBandwidthPrice - 获取共享带宽价格 + * + * See also: https://docs.ucloud.cn/api/unet-api/describe_share_bandwidth_price + */ + describeShareBandwidthPrice( + request?: DescribeShareBandwidthPriceRequest + ): Promise { + const args = { Action: 'DescribeShareBandwidthPrice', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeShareBandwidthPriceResponse + ); + } + + /** + * DescribeShareBandwidthUpdatePrice - 获取共享带宽升级价格 + * + * See also: https://docs.ucloud.cn/api/unet-api/describe_share_bandwidth_update_price + */ + describeShareBandwidthUpdatePrice( + request?: DescribeShareBandwidthUpdatePriceRequest + ): Promise { + const args = { + Action: 'DescribeShareBandwidthUpdatePrice', + ...(request || {}), + }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeShareBandwidthUpdatePriceResponse + ); + } + /** * DisassociateEIPWithShareBandwidth - 将EIP移出共享带宽 * @@ -227,6 +258,20 @@ export default class UNetClient extends Client { ); } + /** + * DisassociateFirewall - 解绑资源上的防火墙 + * + * See also: https://docs.ucloud.cn/api/unet-api/disassociate_firewall + */ + disassociateFirewall( + request?: DisassociateFirewallRequest + ): Promise { + const args = { Action: 'DisassociateFirewall', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DisassociateFirewallResponse + ); + } + /** * GetEIPPayMode - 获取弹性IP计费模式 * @@ -267,6 +312,23 @@ export default class UNetClient extends Client { ); } + /** + * GetThroughputDailyBillingInfo - 获取流量计费EIP每日流量计费信息 + * + * See also: https://docs.ucloud.cn/api/unet-api/get_throughput_daily_billing_info + */ + getThroughputDailyBillingInfo( + request?: GetThroughputDailyBillingInfoRequest + ): Promise { + const args = { + Action: 'GetThroughputDailyBillingInfo', + ...(request || {}), + }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as GetThroughputDailyBillingInfoResponse + ); + } + /** * GrantFirewall - 将防火墙应用到资源上 * @@ -423,7 +485,7 @@ export default class UNetClient extends Client { */ export interface AllocateEIPRequest { /** - * 弹性IP线路,枚举值:国际线路, International;BGP线路:Bgp。使用BGP线路的地域:北京二、上海金融云、上海二、广州等,其他地域均使用国际线路。 + * 弹性IP线路,枚举值:国际线路, International;BGP线路:Bgp;精品BGP:BGPPro。使用BGP线路的地域:北京二、上海金融云、上海二、广州等,其他地域均使用国际线路。使用BGPPro线路的地域:香港 */ OperatorName: string; /** @@ -435,7 +497,7 @@ export interface AllocateEIPRequest { */ Tag?: string; /** - * 付费方式, 枚举值为: Year, 按年付费; Month, 按月付费; Dynamic, 按需付费(需开启权限); Trial, 试用(需开启权限) 默认为按月付费 + * 付费方式, 枚举值为: Year, 按年付费; Month, 按月付费; Dynamic, 按时付费,默认为按月付费。 */ ChargeType?: string; /** @@ -454,6 +516,10 @@ export interface AllocateEIPRequest { * 弹性IP的名称, 默认为 "EIP" */ Name?: string; + /** + * 购买EIP数量,默认值为1 + */ + Count?: number; /** * 弹性IP的备注, 默认为空 */ @@ -948,7 +1014,7 @@ export interface DescribeFirewallRequest { */ FWId?: string; /** - * 绑定防火墙组的资源类型,默认为全部资源类型。枚举值为:"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计. + * 绑定防火墙组的资源类型,默认为全部资源类型。枚举值为:"unatgw",NAT网关; "uhost",云主机;“uni”,虚拟网卡; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计. */ ResourceType?: string; /** @@ -1035,6 +1101,10 @@ export interface DescribeFirewallResponse { Remark?: string; }[]; }[]; + /** + * 防火墙资源数量 + */ + TotalCount?: number; } /** @@ -1046,7 +1116,7 @@ export interface DescribeFirewallResourceRequest { */ FWId: string; /** - * 返回数据长度,默认为20,最大10000000 + * 返回数据长度,默认为20,最大1000 */ Limit?: number; /** @@ -1067,6 +1137,18 @@ export interface DescribeFirewallResourceResponse { * 可用区 */ Zone?: number; + /** + * 资源绑定的虚拟网卡的名称 + */ + SubResourceName: string; + /** + * 资源绑定的虚拟网卡的ID + */ + SubResourceId: string; + /** + * 资源绑定的虚拟网卡的类型,“uni”,虚拟网卡。 + */ + SubResourceType: string; /** * 名称 */ @@ -1084,7 +1166,7 @@ export interface DescribeFirewallResourceResponse { */ ResourceID?: string; /** - * 绑定防火墙组的资源类型。"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计. + * 绑定防火墙组的资源类型。"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计,“uni”,虚拟网卡。 */ ResourceType?: string; /** @@ -1181,6 +1263,62 @@ export interface DescribeShareBandwidthResponse { TotalCount?: number; } +/** + * DescribeShareBandwidthPrice - 获取共享带宽价格 + */ +export interface DescribeShareBandwidthPriceRequest { + /** + * 付费方式, 预付费:Year 按年,Month 按月,Dynamic 按需; + */ + ChargeType: string; + /** + * 共享带宽值 + */ + ShareBandwidth: number; + /** + * 购买数量 + */ + Quantity?: number; + /** + * 香港地域支持:BGPPro和International。其他地域无需填写该字段 + */ + OperatorName?: string; +} + +/** + * DescribeShareBandwidthPrice - 获取共享带宽价格 + */ +export interface DescribeShareBandwidthPriceResponse { + /** + * 共享带宽总价格 + */ + TotalPrice?: number; +} + +/** + * DescribeShareBandwidthUpdatePrice - 获取共享带宽升级价格 + */ +export interface DescribeShareBandwidthUpdatePriceRequest { + /** + * 共享带宽Id + */ + ShareBandwidthId: string; + /** + * 共享带宽值 + */ + ShareBandwidth: number; +} + +/** + * DescribeShareBandwidthUpdatePrice - 获取共享带宽升级价格 + */ +export interface DescribeShareBandwidthUpdatePriceResponse { + /** + * 共享带宽升降级价格 + */ + Price: number; +} + /** * DisassociateEIPWithShareBandwidth - 将EIP移出共享带宽 */ @@ -1212,6 +1350,29 @@ export interface DisassociateEIPWithShareBandwidthRequest { */ export interface DisassociateEIPWithShareBandwidthResponse {} +/** + * DisassociateFirewall - 解绑资源上的防火墙 + */ +export interface DisassociateFirewallRequest { + /** + * 防火墙ID + */ + FWId: string; + /** + * 需要解绑的资源ID + */ + ResourceId: string; + /** + * 资源类型:ULB 表示负载均衡 + */ + ResourceType: string; +} + +/** + * DisassociateFirewall - 解绑资源上的防火墙 + */ +export interface DisassociateFirewallResponse {} + /** * GetEIPPayMode - 获取弹性IP计费模式 */ @@ -1318,6 +1479,59 @@ export interface GetEIPUpgradePriceResponse { Price?: number; } +/** + * GetThroughputDailyBillingInfo - 获取流量计费EIP每日流量计费信息 + */ +export interface GetThroughputDailyBillingInfoRequest { + /** + * EIP的资源ID + */ + EIPId: string; + /** + * 查询开始时间时间戳 + */ + StartTime: number; + /** + * 查询结束时间时间戳 + */ + EndTime: number; +} + +/** + * GetThroughputDailyBillingInfo - 获取流量计费EIP每日流量计费信息 + */ +export interface GetThroughputDailyBillingInfoResponse { + /** + * EIP流量计费信息,详见模型ThroughputDailyBillingInfo + */ + Stats?: { + /** + * 计费开始时间 + */ + StartTime?: number; + /** + * 计费结束时间 + */ + EndTime?: number; + /** + * 计费流量,单位“GB” + */ + QuantityOut?: number; + /** + * 是否已计费,“Yes”或者“No” + */ + BillingState?: string; + }[]; + /** + * 计费总流量 + */ + TotalOut?: number; + /** + * 资源ID + */ + EIPId?: string; +} + /** * GrantFirewall - 将防火墙应用到资源上 */ @@ -1327,7 +1541,7 @@ export interface GrantFirewallRequest { */ FWId: string; /** - * 绑定防火墙组的资源类型,默认为全部资源类型。枚举值为:"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计. + * 绑定防火墙组的资源类型,默认为全部资源类型。枚举值为:"unatgw",NAT网关; "uhost",云主机; "upm",物理云主机; "hadoophost",hadoop节点; "fortresshost",堡垒机; "udhost",私有专区主机;"udockhost",容器;"dbaudit",数据库审计,”uni“,虚拟网卡,“cube”,Cube容器实例。 */ ResourceType: string; /** diff --git a/src/services/uphost/index.ts b/src/services/uphost/index.ts index 92b436c..2b63eeb 100644 --- a/src/services/uphost/index.ts +++ b/src/services/uphost/index.ts @@ -29,6 +29,20 @@ export default class UPHostClient extends Client { ); } + /** + * CreatePHostImage - 创建裸金属2.0用户自定义镜像 + * + * See also: https://docs.ucloud.cn/api/uphost-api/create_phost_image + */ + createPHostImage( + request?: CreatePHostImageRequest + ): Promise { + const args = { Action: 'CreatePHostImage', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as CreatePHostImageResponse + ); + } + /** * DescribeBaremetalMachineType - 获取裸金属机型的详细描述信息 * @@ -127,6 +141,20 @@ export default class UPHostClient extends Client { ); } + /** + * ModifyPHostImageInfo - 修改自定义镜像名称和备注 + * + * See also: https://docs.ucloud.cn/api/uphost-api/modify_phost_image_info + */ + modifyPHostImageInfo( + request?: ModifyPHostImageInfoRequest + ): Promise { + const args = { Action: 'ModifyPHostImageInfo', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as ModifyPHostImageInfoResponse + ); + } + /** * ModifyPHostInfo - 更改物理机信息 * @@ -221,6 +249,18 @@ export default class UPHostClient extends Client { ); } + /** + * StopPHost - 关闭物理机 + * + * See also: https://docs.ucloud.cn/api/uphost-api/stop_phost + */ + stopPHost(request?: StopPHostRequest): Promise { + const args = { Action: 'StopPHost', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as StopPHostResponse + ); + } + /** * TerminatePHost - 删除物理云主机 * @@ -234,6 +274,20 @@ export default class UPHostClient extends Client { (resp) => resp.toObject() as TerminatePHostResponse ); } + + /** + * TerminatePHostImage - 删除裸金属2.0用户自定义镜像 + * + * See also: https://docs.ucloud.cn/api/uphost-api/terminate_phost_image + */ + terminatePHostImage( + request?: TerminatePHostImageRequest + ): Promise { + const args = { Action: 'TerminatePHostImage', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as TerminatePHostImageResponse + ); + } } /** @@ -337,12 +391,44 @@ export interface CreatePHostResponse { PHostId?: string[]; } +/** + * CreatePHostImage - 创建裸金属2.0用户自定义镜像 + */ +export interface CreatePHostImageRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * UPHost实例ID + */ + PHostId: string; + /** + * 镜像名称 + */ + ImageName: string; + /** + * 镜像描述 + */ + ImageDescription?: string; +} + +/** + * CreatePHostImage - 创建裸金属2.0用户自定义镜像 + */ +export interface CreatePHostImageResponse { + /** + * 镜像ID + */ + ImageId: string; +} + /** * DescribeBaremetalMachineType - 获取裸金属机型的详细描述信息 */ export interface DescribeBaremetalMachineTypeRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -356,9 +442,65 @@ export interface DescribeBaremetalMachineTypeRequest { */ export interface DescribeBaremetalMachineTypeResponse { /** - * 机型列表,模型:PHostMachineTypeSet + * 机型列表,模型:PHostCloudMachineTypeSet */ - MachineTypes?: string; + MachineTypes?: { + /** + * 物理云主机机型别名,全网唯一。 + */ + Type: string; + /** + * CPU信息 + */ + CPU?: { + /** + * CPU型号 + */ + Model?: string; + /** + * CPU主频 + */ + Frequence?: number; + /** + * CPU个数 + */ + Count?: number; + /** + * CPU核数 + */ + CoreCount?: number; + }; + /** + * 内存大小,单位MB + */ + Memory?: number; + /** + * 其他组件信息 + */ + Components?: { + /** + * 组件名称 + */ + Name?: string; + /** + * 组件数量 + */ + Count?: number; + }; + /** + * 集群库存信息 + */ + Clusters?: { + /** + * 集群名。枚举值:千兆网络集群:1G;万兆网络集群:10G;智能网卡网络:25G; + */ + Name?: string; + /** + * 库存状态。枚举值:有库存:Available;无库存:SoldOut + */ + StockStatus?: string; + }[]; + }[]; } /** @@ -366,7 +508,7 @@ export interface DescribeBaremetalMachineTypeResponse { */ export interface DescribePHostRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -385,6 +527,10 @@ export interface DescribePHostRequest { * 要挂载的云盘id,过滤返回能被UDiskId挂载的云主机。目前主要针对rssd云盘使用 */ UDiskIdForAttachment?: string; + /** + * ULB使用参数,获取同VPC下机器信息。 + */ + VPCId?: string; } /** @@ -412,7 +558,7 @@ export interface DescribePHostResponse { */ SN?: string; /** - * 物理云主机状态。枚举值:\\ > 初始化:Initializing; \\ > 启动中:Starting; \\ > 运行中:Running;\\ > 关机中:Stopping; \\ > 安装失败:InstallFailed; \\ > 重启中:Rebooting;\\ > 关机:Stopped; + * 物理云主机状态。枚举值:\\ > 初始化:Initializing; \\ > 启动中:Starting; \\ > 运行中:Running;\\ > 关机中:Stopping; \\ > 安装失败:InstallFailed; \\ > 重启中:Rebooting;\\ > 关机:Stopped; \\ > 迁移中(裸金属云盘):Migrating */ PMStatus?: string; /** @@ -481,7 +627,7 @@ export interface DescribePHostResponse { CoreCount?: number; }; /** - * 磁盘信息,见 PHostDiskSet + * 磁盘信息,见 PHostDescDiskSet */ DiskSet?: { /** @@ -586,11 +732,11 @@ export interface DescribePHostResponse { */ export interface DescribePHostImageRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** - * 镜像类别,枚举值,Base是基础镜像; + * 镜像类别,枚举值,Base是基础镜像;Custom是自制镜像。 */ ImageType?: string; /** @@ -647,6 +793,26 @@ export interface DescribePHostImageResponse { * 当前版本 */ Version?: string; + /** + * 枚举值:Base=>基础镜像,Custom=>自制镜像。 + */ + ImageType?: string; + /** + * 裸金属2.0参数。镜像创建时间。 + */ + CreateTime?: number; + /** + * 裸金属2.0参数。镜像当前状态。 + */ + State?: string; + /** + * 裸金属2.0参数。镜像大小。 + */ + ImageSize?: number; + /** + * 镜像描述 + */ + ImageDescription?: string; }[]; } @@ -655,7 +821,7 @@ export interface DescribePHostImageResponse { */ export interface DescribePHostMachineTypeRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -725,18 +891,6 @@ export interface DescribePHostMachineTypeResponse { * 磁盘IO性能,单位MB/s(待废弃) */ IOCap?: number; - /** - * 裸金属机型参数:磁盘盘符 - */ - Drive?: string; - /** - * 裸金属机型参数:磁盘ID - */ - DiskId?: string; - /** - * 裸金属机型参数:是否是启动盘。True/False - */ - IsBoot?: string; }[]; /** * 其他组件信息 @@ -749,7 +903,7 @@ export interface DescribePHostMachineTypeResponse { /** * 组件数量 */ - Count?: string; + Count?: number; }; /** * 集群库存信息 @@ -849,7 +1003,7 @@ export interface GetPHostDiskUpgradePriceResponse { */ export interface GetPHostPriceRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone?: string; /** @@ -918,6 +1072,38 @@ export interface GetPHostPriceResponse { }[]; } +/** + * ModifyPHostImageInfo - 修改自定义镜像名称和备注 + */ +export interface ModifyPHostImageInfoRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 镜像ID + */ + ImageId: string; + /** + * 镜像名称 + */ + Name?: string; + /** + * 备注 + */ + Remark?: string; +} + +/** + * ModifyPHostImageInfo - 修改自定义镜像名称和备注 + */ +export interface ModifyPHostImageInfoResponse { + /** + * 镜像ID + */ + ImageId?: string; +} + /** * ModifyPHostInfo - 更改物理机信息 */ @@ -1091,7 +1277,7 @@ export interface ResetPHostPasswordResponse { */ export interface ResizePHostAttachedDiskRequest { /** - * 可用区。参见 [可用区列表](../summary/regionlist.html) + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ Zone: string; /** @@ -1115,7 +1301,7 @@ export interface ResizePHostAttachedDiskResponse { /** * 改配成功的磁盘id */ - DiskId?: string; + UDiskId?: string; } /** @@ -1142,6 +1328,30 @@ export interface StartPHostResponse { PHostId?: string; } +/** + * StopPHost - 关闭物理机 + */ +export interface StopPHostRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone?: string; + /** + * PHost资源ID + */ + PHostId: string; +} + +/** + * StopPHost - 关闭物理机 + */ +export interface StopPHostResponse { + /** + * PHost 的资源ID + */ + PHostId: string; +} + /** * TerminatePHost - 删除物理云主机 */ @@ -1173,3 +1383,27 @@ export interface TerminatePHostResponse { */ PHostId?: string; } + +/** + * TerminatePHostImage - 删除裸金属2.0用户自定义镜像 + */ +export interface TerminatePHostImageRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 自制镜像ID + */ + ImageId: string; +} + +/** + * TerminatePHostImage - 删除裸金属2.0用户自定义镜像 + */ +export interface TerminatePHostImageResponse { + /** + * 自制镜像ID + */ + ImageId: string; +} diff --git a/src/services/usms/index.ts b/src/services/usms/index.ts index f62532b..1349541 100644 --- a/src/services/usms/index.ts +++ b/src/services/usms/index.ts @@ -176,6 +176,10 @@ export default class USMSClient extends Client { * CreateUSMSSignature - 调用接口CreateUSMSSignature申请短信签名 */ export interface CreateUSMSSignatureRequest { + /** + * 签名内容 + */ + SigContent: string; /** * 签名类型,说明如下:0-公司或企业的全称或简称;1-App应用的全称或简称;2-工信部备案网站的全称或简称;3-公众号或小程序的全称或简称;4-商标名的全称或简称;5-政府/机关事业单位/其他单位的全称或简称; */ @@ -240,6 +244,14 @@ export interface CreateUSMSTemplateRequest { * 短信模板申请原因说明,字数不超过128,每个中文、符号、英文、数字等都计为1个字。 */ Remark?: string; + /** + * 当Purpose为3时,也即会员推广类短信模板,该项必填。枚举值:TD退订、回T退订、回N退订、回TD退订、退订回T、退订回D、退订回TD、退订回复T、退订回复D、退订回复N、退订回复TD、拒收回T + */ + UnsubscribeInfo?: string; + /** + * 模板变量属性说明 + */ + Instruction?: string; } /** @@ -291,7 +303,7 @@ export interface GetUSMSSendReceiptRequest { */ Zone?: string; /** - * 发送短信时返回的SessionNo集合,SessionNoSet.0,SessionNoSet.1....格式 + * 发送短信时返回的SessionNo集合,SessionNoSet.0,SessionNoSet.1....格式,单次调用集合数需控制在100个以内 */ SessionNoSet: string[]; } @@ -439,6 +451,10 @@ export interface QueryUSMSTemplateResponse { * 创建时间 */ CreateTime: number; + /** + * 模板变量属性说明 + */ + Instruction?: string; }; } @@ -529,7 +545,7 @@ export interface SendUSMSMessageRequest { */ TemplateId: string; /** - * 模板可变参数,以数组的方式填写,举例,TempalteParams.0,TempalteParams.1,... 若模板中无可变参数,则该项可不填写;若模板中有可变参数,则该项为必填项,参数个数需与变量个数保持一致,否则无法发送; + * 模板可变参数,以数组的方式填写,举例,TemplateParams.0,TemplateParams.1,... 若模板中无可变参数,则该项可不填写;若模板中有可变参数,则该项为必填项,参数个数需与变量个数保持一致,否则无法发送; */ TemplateParams?: string[]; /** @@ -537,7 +553,7 @@ export interface SendUSMSMessageRequest { */ ExtendCode?: string; /** - * 自定义的业务标识ID,字符串( 长度不能超过32 位) + * 自定义的业务标识ID,字符串( 长度不能超过32 位),不支持 单引号、表情包符号等特殊字符 */ UserId?: string; } @@ -623,6 +639,10 @@ export interface UpdateUSMSTemplateRequest { * 短信模板申请原因说明,字数不超过128,每个中文、符号、英文、数字等都计为1个字。 */ Remark?: string; + /** + * 模板变量属性说明 + */ + Instruction?: string; } /** diff --git a/src/services/uvms/index.ts b/src/services/uvms/index.ts new file mode 100644 index 0000000..4eadd01 --- /dev/null +++ b/src/services/uvms/index.ts @@ -0,0 +1,81 @@ +import Client from '../../core/client'; +import Request from '../../core/request'; +import { ConfigOptions } from '../../core/config'; +import { CredentialOptions } from '../../core/credential'; + +/** + * This client is used to call actions of **uvms** service + */ +export default class UVMSClient extends Client { + constructor({ + config, + credential, + }: { + config: ConfigOptions; + credential: CredentialOptions; + }) { + super({ config, credential }); + } + + /** + * SendUVMSMessage - 向指定号码拨打电话 + * + * See also: https://docs.ucloud.cn/api/uvms-api/send_uvms_message + */ + sendUVMSMessage( + request?: SendUVMSMessageRequest + ): Promise { + const args = { Action: 'SendUVMSMessage', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as SendUVMSMessageResponse + ); + } +} + +/** + * SendUVMSMessage - 向指定号码拨打电话 + */ +export interface SendUVMSMessageRequest { + /** + * 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) + */ + Zone: string; + /** + * 被叫号码,采用 E.164 标准,格式为+[国家代码][用户号码]。例如:+8613512345678, 其中前面有一个+号 ,86为国家码,13512345678为手机号 + */ + CalledNumber: string; + /** + * 模板 ID,在控制台审核通过的模板 ID。 + */ + TemplateId: string; + /** + * 模板可变参数,以数组的方式填写,举例,TemplateParams.0,TemplateParams.1,... 若模板中无可变参数,则该项可不填写;若模板中有可变参数,则该项为必填项,参数个数需与变量个数保持一致,否则无法发送; + */ + TemplateParams?: string[]; + /** + * 主叫号码,号码随机时不填。专属号码时传入已购买的号码,仅支持一个号码,在控制台查看已购买的号码。 + */ + FromNumber?: string; + /** + * 自定义的业务标识ID,字符串( 长度不能超过32 位),不支持 单引号、表情包符号等特殊字符 + */ + UserId?: string; +} + +/** + * SendUVMSMessage - 向指定号码拨打电话 + */ +export interface SendUVMSMessageResponse { + /** + * 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 ReqUuid。 + */ + ReqUuid: string; + /** + * 本次提交发送语音的唯一ID,可根据该值查询本次发送详情 + */ + SessionNo?: string; + /** + * 本次提交的自定义业务标识ID,仅当发送时传入有效的UserId,才返回该字段。 + */ + UserId?: string; +} diff --git a/src/services/vpc/index.ts b/src/services/vpc/index.ts index 63b3d15..75bb1a3 100644 --- a/src/services/vpc/index.ts +++ b/src/services/vpc/index.ts @@ -193,6 +193,20 @@ export default class VPCClient extends Client { ); } + /** + * CreateSnatDnatRule - 调用接口后会自动创建内外网IP之间的SNAT和DNAT规则,支持TCP、UDP协议全端口 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/create_snat_dnat_rule + */ + createSnatDnatRule( + request?: CreateSnatDnatRuleRequest + ): Promise { + const args = { Action: 'CreateSnatDnatRule', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as CreateSnatDnatRuleResponse + ); + } + /** * CreateSubnet - 创建子网 * @@ -327,6 +341,20 @@ export default class VPCClient extends Client { ); } + /** + * DeleteSnatDnatRule - 删除NAT创建内外网IP映射规则 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/delete_snat_dnat_rule + */ + deleteSnatDnatRule( + request?: DeleteSnatDnatRuleRequest + ): Promise { + const args = { Action: 'DeleteSnatDnatRule', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DeleteSnatDnatRuleResponse + ); + } + /** * DeleteSnatRule - 删除指定的出口规则(SNAT规则) * @@ -393,6 +421,23 @@ export default class VPCClient extends Client { ); } + /** + * DescribeInstanceNetworkInterface - 展示云主机绑定的网卡信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_instance_network_interface + */ + describeInstanceNetworkInterface( + request?: DescribeInstanceNetworkInterfaceRequest + ): Promise { + const args = { + Action: 'DescribeInstanceNetworkInterface', + ...(request || {}), + }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeInstanceNetworkInterfaceResponse + ); + } + /** * DescribeNATGW - 获取NAT网关信息 * @@ -483,6 +528,20 @@ export default class VPCClient extends Client { ); } + /** + * DescribeNetworkInterface - 展示虚拟网卡信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_network_interface + */ + describeNetworkInterface( + request?: DescribeNetworkInterfaceRequest + ): Promise { + const args = { Action: 'DescribeNetworkInterface', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeNetworkInterfaceResponse + ); + } + /** * DescribeRouteTable - 获取路由表详细信息(包括路由策略) * @@ -511,6 +570,20 @@ export default class VPCClient extends Client { ); } + /** + * DescribeSnatDnatRule - 获取基于NAT创建的内外网IP映射规则信息 + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/describe_snat_dnat_rule + */ + describeSnatDnatRule( + request?: DescribeSnatDnatRuleRequest + ): Promise { + const args = { Action: 'DescribeSnatDnatRule', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as DescribeSnatDnatRuleResponse + ); + } + /** * DescribeSnatRule - 获取Nat网关的出口规则(SNAT规则) * @@ -712,6 +785,20 @@ export default class VPCClient extends Client { ); } + /** + * MoveSecondaryIPMac - 把 Secondary IP 从旧 MAC 迁移到新 MAC + * + * See also: https://docs.ucloud.cn/api/vpc2.0-api/move_secondary_ip_mac + */ + moveSecondaryIPMac( + request?: MoveSecondaryIPMacRequest + ): Promise { + const args = { Action: 'MoveSecondaryIPMac', ...(request || {}) }; + return this.invoke(new Request(args)).then( + (resp) => resp.toObject() as MoveSecondaryIPMacResponse + ); + } + /** * ReleaseVIP - 释放VIP资源 * @@ -1111,10 +1198,6 @@ export interface CreateNATGWRequest { * NAT网关名称 */ NATGWName: string; - /** - * NAT网关绑定的子网Id - */ - SubnetworkIds: string[]; /** * NAT网关绑定的EIPId */ @@ -1123,6 +1206,10 @@ export interface CreateNATGWRequest { * NAT网关绑定的防火墙Id */ FirewallId: string; + /** + * NAT网关绑定的子网Id,默认为空。 + */ + SubnetworkIds?: string[]; /** * NAT网关所属的VPC Id。默认为Default VPC Id */ @@ -1356,6 +1443,29 @@ export interface CreateRouteTableResponse { RouteTableId?: string; } +/** + * CreateSnatDnatRule - 调用接口后会自动创建内外网IP之间的SNAT和DNAT规则,支持TCP、UDP协议全端口 + */ +export interface CreateSnatDnatRuleRequest { + /** + * 内网P地址 + */ + PrivateIp: string[]; + /** + * EIP的IP地址。按入参顺序,PrivateIp与EIP一一对应建立映射关系。 + */ + EIP: string[]; + /** + * 映射所使用的NAT网关资源ID + */ + NATGWId: string; +} + +/** + * CreateSnatDnatRule - 调用接口后会自动创建内外网IP之间的SNAT和DNAT规则,支持TCP、UDP协议全端口 + */ +export interface CreateSnatDnatRuleResponse {} + /** * CreateSubnet - 创建子网 */ @@ -1596,6 +1706,29 @@ export interface DeleteSecondaryIpRequest { */ export interface DeleteSecondaryIpResponse {} +/** + * DeleteSnatDnatRule - 删除NAT创建内外网IP映射规则 + */ +export interface DeleteSnatDnatRuleRequest { + /** + * EIP的IP地址,PrivateIp与EIP需一一对应 + */ + EIP: string[]; + /** + * 内网P地址 + */ + PrivateIp: string[]; + /** + * 映射所使用的NAT网关资源ID + */ + NATGWId: string; +} + +/** + * DeleteSnatDnatRule - 删除NAT创建内外网IP映射规则 + */ +export interface DeleteSnatDnatRuleResponse {} + /** * DeleteSnatRule - 删除指定的出口规则(SNAT规则) */ @@ -1691,6 +1824,107 @@ export interface DeleteWhiteListResourceRequest { */ export interface DeleteWhiteListResourceResponse {} +/** + * DescribeInstanceNetworkInterface - 展示云主机绑定的网卡信息 + */ +export interface DescribeInstanceNetworkInterfaceRequest { + /** + * 云主机ID + */ + InstanceId: string; + /** + * 默认为0 + */ + Offset?: number; + /** + * 默认为20 + */ + Limit?: number; +} + +/** + * DescribeInstanceNetworkInterface - 展示云主机绑定的网卡信息 + */ +export interface DescribeInstanceNetworkInterfaceResponse { + /** + * 虚拟网卡信息 + */ + NetworkInterfaceSet: { + /** + * 虚拟网卡资源ID + */ + InterfaceId: string; + /** + * 所属VPC + */ + VPCId: string; + /** + * 所属子网 + */ + SubnetId: string; + /** + * 关联内网IP。当前一个网卡仅支持绑定一个内网IP + */ + PrivateIpSet: string[]; + /** + * 关联Mac + */ + MacAddress: string; + /** + * 绑定状态 + */ + Status: number; + /** + * 网卡的内网IP信息 + */ + PrivateIp: string[]; + /** + * 虚拟网卡名称 + */ + Name?: string; + /** + * 内网IP掩码 + */ + Netmask?: string; + /** + * 默认网关 + */ + Gateway?: string; + /** + * 绑定实例资源ID + */ + AttachInstanceId?: string; + /** + * 是否是绑定实例的默认网卡 false:不是 true:是 + */ + Default?: boolean; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * 备注 + */ + Remark?: string; + /** + * 业务组 + */ + Tag?: string; + /** + * 虚拟网卡绑定的EIP ID信息 + */ + EIPIdSet?: string[]; + /** + * 虚拟网卡绑定的防火墙ID信息 + */ + FirewallIdSet?: string[]; + /** + * 网卡的内网IP配额信息 + */ + PrivateIplimit?: string[]; + }[]; +} + /** * DescribeNATGW - 获取NAT网关信息 */ @@ -1720,39 +1954,39 @@ export interface DescribeNATGWResponse { /** * 查到的NATGW信息列表 */ - DataSet: { + DataSet?: { /** * natgw id */ - NATGWId: string; + NATGWId?: string; /** * natgw名称 */ - NATGWName: string; - /** - * natgw创建时间 - */ - CreateTime: number; + NATGWName?: string; /** * 业务组 */ - Tag: string; + Tag?: string; /** * 备注 */ - Remark: string; + Remark?: string; + /** + * natgw创建时间 + */ + CreateTime?: number; /** * 绑定的防火墙Id */ - FirewallId: string; + FirewallId?: string; /** * 所属VPC Id */ - VPCId: string; + VPCId?: string; /** * 子网 Id */ - SubnetSet: { + SubnetSet?: { /** * 子网id */ @@ -1769,7 +2003,7 @@ export interface DescribeNATGWResponse { /** * 绑定的EIP 信息 */ - IPSet: { + IPSet?: { /** * 外网IP的 EIPId */ @@ -1800,6 +2034,14 @@ export interface DescribeNATGWResponse { EIP: string; }[]; }[]; + /** + * VPC名称 + */ + VPCName?: string; + /** + * 枚举值,“enable”,默认出口规则使用了负载均衡;“disable”,默认出口规则未使用负载均衡。 + */ + IsSnatpoolEnabled?: string; /** * 转发策略Id */ @@ -2220,6 +2462,131 @@ export interface DescribeNetworkAclEntryResponse { }[]; } +/** + * DescribeNetworkInterface - 展示虚拟网卡信息 + */ +export interface DescribeNetworkInterfaceRequest { + /** + * 所属VPC + */ + VPCId?: string; + /** + * 所属子网 + */ + SubnetId?: string; + /** + * 虚拟网卡ID,可指定 0~n + */ + InterfaceId?: string[]; + /** + * 若为true 只返回默认网卡默认为false + */ + OnlyDefault?: boolean; + /** + * 若为true 过滤绑定在回收站主机中的网卡。默认为false。 + */ + NoRecycled?: boolean; + /** + * 业务组 + */ + Tag?: string; + /** + * 默认为20 + */ + Limit?: number; + /** + * 默认为0 + */ + Offset?: number; +} + +/** + * DescribeNetworkInterface - 展示虚拟网卡信息 + */ +export interface DescribeNetworkInterfaceResponse { + /** + * 虚拟网卡信息 + */ + NetworkInterfaceSet: { + /** + * 虚拟网卡资源ID + */ + InterfaceId: string; + /** + * 所属VPC + */ + VPCId: string; + /** + * 所属子网 + */ + SubnetId: string; + /** + * 关联内网IP。当前一个网卡仅支持绑定一个内网IP + */ + PrivateIpSet: string[]; + /** + * 关联Mac + */ + MacAddress: string; + /** + * 绑定状态 + */ + Status: number; + /** + * 网卡的内网IP信息 + */ + PrivateIp: string[]; + /** + * 虚拟网卡名称 + */ + Name?: string; + /** + * 内网IP掩码 + */ + Netmask?: string; + /** + * 默认网关 + */ + Gateway?: string; + /** + * 绑定实例资源ID + */ + AttachInstanceId?: string; + /** + * 是否是绑定实例的默认网卡 false:不是 true:是 + */ + Default?: boolean; + /** + * 创建时间 + */ + CreateTime?: number; + /** + * 备注 + */ + Remark?: string; + /** + * 业务组 + */ + Tag?: string; + /** + * 虚拟网卡绑定的EIP ID信息 + */ + EIPIdSet?: string[]; + /** + * 虚拟网卡绑定的防火墙ID信息 + */ + FirewallIdSet?: string[]; + /** + * 网卡的内网IP配额信息 + */ + PrivateIplimit?: string[]; + }[]; + /** + * 虚拟网卡总数 + */ + TotalCount?: number; +} + /** * DescribeRouteTable - 获取路由表详细信息(包括路由策略) */ @@ -2411,6 +2778,43 @@ export interface DescribeSecondaryIpResponse { }[]; } +/** + * DescribeSnatDnatRule - 获取基于NAT创建的内外网IP映射规则信息 + */ +export interface DescribeSnatDnatRuleRequest { + /** + * 获取NAT上添加的所有SnatDnatRule信息 + */ + NATGWId?: string[]; + /** + * 获取EIP对应的SnatDnatRule信息 + */ + EIP?: string[]; +} + +/** + * DescribeSnatDnatRule - 获取基于NAT创建的内外网IP映射规则信息 + */ +export interface DescribeSnatDnatRuleResponse { + /** + * 规则信息 + */ + DataSet?: { + /** + * 内网IP地址 + */ + PrivateIp?: string; + /** + * 映射所使用的NAT网关资源ID + */ + NATGWId?: string; + /** + * EIP的IP地址 + */ + EIP?: string; + }[]; +} + /** * DescribeSnatRule - 获取Nat网关的出口规则(SNAT规则) */ @@ -3255,6 +3659,33 @@ export interface ModifyRouteRuleRequest { */ export interface ModifyRouteRuleResponse {} +/** + * MoveSecondaryIPMac - 把 Secondary IP 从旧 MAC 迁移到新 MAC + */ +export interface MoveSecondaryIPMacRequest { + /** + * Secondary IP + */ + Ip: string; + /** + * 旧 Mac。Secondary IP 当前所绑定的 Mac + */ + OldMac: string; + /** + * 新 Mac。Secondary IP 迁移的目的 Mac + */ + NewMac: string; + /** + * 子网 ID。IP/OldMac/NewMac 三者必须在同一子网 + */ + SubnetId: string; +} + +/** + * MoveSecondaryIPMac - 把 Secondary IP 从旧 MAC 迁移到新 MAC + */ +export interface MoveSecondaryIPMacResponse {} + /** * ReleaseVIP - 释放VIP资源 */ @@ -3322,7 +3753,7 @@ export interface UpdateNATGWPolicyRequest { */ SrcPort: string; /** - * 目标IP。填写对饮的目标IP地址 + * 目标IP。填写对应的目标IP地址 */ DstIP: string; /** @@ -3351,7 +3782,7 @@ export interface UpdateNATGWSubnetRequest { /** * NAT网关绑定的子网Id */ - SubnetworkIds: string[]; + SubnetworkIds?: string[]; } /**