跳到主要内容

环境管理

平台版接口说明

方法名带 Platform 前缀的接口用于管理平台版套餐资源,通过 app.platform 访问(如 app.platform.createPlatformEnv),其余接口通过 app.env 访问。平台版是账号维度的套餐方案,详见平台版概述。

listEnvs​

1. 接口描述​

接口功能:获取所有环境信息

接口声明:listEnvs(): Promise<Object>

2. 输入参数​

无

3. 返回结果​

字段必填类型说明
RequestId是String请求唯一标识
EnvList是Array<EnvItem>环境数组

EnvItem​

字段必填类型说明
EnvId是String环境 ID
Source是String环境来源。miniapp 微信小程序 / qcloud 腾讯云
Alias是String环境别名
Status是String环境状态。NORMAL 正常 / UNAVAILABLE 不可用
CreateTime是String创建时间
UpdateTime是String更新时间
Region是String地域,如 ap-shanghai
PackageId是String环境套餐 ID
PackageName是String套餐中文名称
PackageType否String套餐类型。空 / baas / tcbr
EnvType否String环境类型。baas / run / hosting / weda
PayMode否String付费方式。prepayment 预付费 / postpaid 后付费
IsAutoDegrade否Boolean是否到期自动降为免费版
IsDefault否Boolean是否为默认环境
EnvChannel否String环境渠道
Databases否Array数据库资源详情
Storages否Array存储资源详情
Functions否Array函数资源详情
LogServices否Array日志资源详情
StaticStorages否StaticStorageInfo[]静态资源信息(含静态托管域名)
Tags否Array<{Key, Value}>环境标签
EnvPreferences否Record<string, any>用户环境配置

StaticStorageInfo​

静态 CDN 资源信息。

字段类型说明
StaticDomainString静态托管 CDN 域名,如 xxx.tcloudbaseapp.com
DefaultDirNameString静态 CDN 默认文件夹,当前为根目录
StatusString资源状态。process / online / offline / init
RegionStringCOS 所属区域

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.listEnvs()
const { EnvList } = res
for (let envItem of EnvList) {
console.log(envItem.EnvId, envItem.Alias)
// 获取静态托管域名
const staticDomain = envItem.StaticStorages?.[0]?.StaticDomain
if (staticDomain) {
console.log('静态托管域名:', staticDomain)
}
}
}

test()

getEnvAuthDomains​

1. 接口描述​

接口功能:获取合法域名列表

接口声明:getEnvAuthDomains(): Promise<Object>

2. 输入参数​

无

3. 返回结果​

字段必填类型说明
Domains是Array<Domain>域名列表
envId是String环境 ID

Domain

字段必填类型说明
Id是String域名 ID
Domain是String域名
Type是String域名类型。包含以下取值:system user
Status是String状态。包含以下取值:ENABLE DISABLE
CreateTime是String创建时间
UpdateTime是String更新时间

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.getEnvAuthDomains()
const { Domains } = res
for (let domain in Domains) {
console.log(domain)
}
}

test()

createEnvDomain​

1. 接口描述​

接口功能:添加环境安全域名

接口声明:createEnvDomain(domains: string[]): Promise<Object>

2. 输入参数​

字段必填类型说明
domains是Array<String>安全域名数组

3. 返回结果​

字段类型说明
RequestIdString请求 ID

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.createEnvDomain(['luke.com'])
console.log(res)
}

test()

deleteEnvDomain​

1. 接口描述​

接口功能:删除环境安全域名

接口声明:deleteEnvDomain(domains: string[]): Promise<Object>

2. 输入参数​

字段必填类型说明
domains是Array<String>安全域名数组

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID
Deleted是Number删除成功的域名数

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.deleteEnvDomain(['luke.com'])
const { Deleted } = res
console.log(Deleted) // 删除域名数
}

test()

getEnvInfo​

1. 接口描述​

接口功能:获取环境信息

接口声明:getEnvInfo(): Promise<Object>

2. 输入参数​

无

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID
EnvInfo是EnvItem环境信息

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.getEnvInfo()
const { EnvInfo } = res
console.log(EnvInfo)
}

test()

updateEnvInfo​

1. 接口描述​

接口功能:修改环境别名

接口声明:updateEnvInfo(alias: string): Promise<Object>

2. 输入参数​

字段必填类型说明
alias是String环境别名

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.updateEnvInfo('lukemodify')
console.log(res)
}

test()

getLoginConfigList​

1. 接口描述​

接口功能:拉取登录配置列表

接口声明:getLoginConfigList(): Promise<Object>

2. 输入参数​

无

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID
ConfigList是Array<ConfigItem>登录配置列表

ConfigItem​

字段必填类型说明
Id是String配置 ID
Platform是String平台类型
PlatformId是String平台 ID
Status是String配置状态
UpdateTime是String配置更新时间
CreateTime是String配置创建时间

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.getLoginConfigList()
const { ConfigList } = res
for (let config in ConfigList) {
console.log(config)
}
}

test()

createLoginConfig​

1. 接口描述​

接口功能:创建登录方式

接口声明:createLoginConfig(platform, appId, appSecret): Promise<Object>

2. 输入参数​

字段必填类型说明
platform是String平台 "WECHAT-OPEN" "WECHAT-PUBLIC" "QQ" "ANONYMOUS"
appId是String第三方平台的 AppID 注意:如果是匿名登录方式(platform:ANONYMOUS),appId 填: anonymous
appSecret否String第三方平台的 AppSecret,注意:如果是 匿名登录方式(platform:ANONYMOUS), appSecret 可不填

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
await env.createLoginConfig('WECHAT-OPEN', 'appId', 'appSecret')
}

test()

updateLoginConfig​

1. 接口描述​

接口功能:更新登录方式配置

接口声明:updateLoginConfig(configId, status, appId, appSecret): Promise<Object>

2. 输入参数​

字段必填类型说明
configId是String配置的记录 ID
status是String”ENABLE”, “DISABLE”
appId是String第三方平台的 AppId,如果是匿名登录, appId 填: anonymous
appSecret否String第三方平台的 AppSecret,如果是匿名登录,可不填该字段

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const loginConfigRes = await env.getLoginConfigList()
await env.updateLoginConfig(
loginConfigRes.ConfigList[0].Id,
'ENABLE',
'appId',
'appSecret'
)
}

test()

createBillingDeal​

1. 接口描述​

接口功能:创建环境计费订单

接口声明:createBillingDeal(params: CreateBillingDealParams): Promise<Object>

2. 输入参数​

字段必填类型说明
DealType是String下单操作类型,可取值:purchase(购买)、renew(续费)、modify(变配)
ProductType是String购买的产品类型,可取值:tcb-baas(baas 套餐)、tcb-promotion(大促包)、tcb-package(资源包)
PackageId是String目标下单产品/套餐 ID
CreateAndPay否Boolean是否自动支付
TimeSpan否Number购买时长
TimeUnit否String购买时长单位,可取值:d(天)、m(月)、y(年)、p(一次性)
ResourceId否String资源唯一标识符
Source否String来源,可取值:qcloud、miniapp
Alias否String资源别名
EnvId否String环境 ID
EnableExcess否Boolean开启超限按量计费
ModifyPackageId否String变配目标产品/套餐 ID
Extension否String附加信息(JSON 字符串)
AutoVoucher否Boolean是否自动选择代金券支付
ResourceTypes否String[]资源类型,新购环境时需要发货的资源,可取值:flexdb、cos、cdn、scf

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID
EnvId是String环境 ID
TranId是String订单交易 ID

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.createBillingDeal({
DealType: 'purchase',
ProductType: 'tcb-baas',
PackageId: 'baas_personal',
CreateAndPay: false,
TimeSpan: 1,
TimeUnit: 'm',
Alias: 'test',
EnvId: 'test-12345'
})
console.log(res.TranId) // 订单交易ID
}

test()

cancelDeal​

1. 接口描述​

接口功能:取消未支付的订单

接口声明:cancelDeal(params: Object): Promise<Object>

2. 输入参数​

字段必填类型说明
TranId是String订单交易 ID
UserClientIp是String用户客户端 IP
WxAppId否String微信 AppId(可选)

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
// 先创建订单
const dealRes = await env.createBillingDeal({
DealType: 'purchase',
ProductType: 'tcb-baas',
PackageId: 'baas_personal',
CreateAndPay: false,
TimeSpan: 1,
TimeUnit: 'm',
Alias: 'test',
EnvId: 'test-12345'
})

// 取消订单
const res = await env.cancelDeal({
TranId: dealRes.TranId,
UserClientIp: '127.0.0.1'
})
console.log(res)
}

test()

createCustomLoginKeys​

1. 接口描述​

接口功能:创建自定义登录密钥

接口声明:createCustomLoginKeys(): Promise<Object>

2. 输入参数​

无

3. 返回结果​

字段必填类型说明
RequestId是String请求 ID
KeyID是String密钥 ID
PrivateKey是String私钥

4. 示例代码​

import CloudBase from '@cloudbase/manager-node'

const { env } = new CloudBase({
secretId: 'Your SecretId',
secretKey: 'Your SecretKey',
envId: 'Your envId' // 云开发环境ID,可在腾讯云云开发控制台获取
})

async function test() {
const res = await env.createCustomLoginKeys()
const { KeyID, PrivateKey } = res
console.log(KeyID, PrivateKey)
}

test()

destroyEnvWithParams​

1. 接口描述​

接口功能:销毁指定环境,支持强制删除和绕过资源检查等选项

接口声明:app.env.destroyEnvWithParams(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId是String环境 ID
IsForce否Boolean是否强制删除(针对预付费隔离中的环境),默认 false
BypassCheck否Boolean是否绕过资源数据检查直接删除,默认 false

3. 返回结果​

字段类型说明
RequestIdString请求唯一标识

destroyPlatformEnv​

1. 接口描述​

接口功能:删除平台版环境,环境内数据同时清除且不可恢复

接口声明:app.platform.destroyPlatformEnv(params): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId是String环境 ID

3. 返回结果​

字段类型说明
RequestIdString请求唯一标识

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.destroyPlatformEnv({
EnvId: 'env-to-destroy'
})
console.log(res.RequestId)
}

test()

describeEnvs​

1. 接口描述​

接口功能:查询账号下的云开发环境列表,支持多维度过滤

接口声明:app.env.describeEnvs(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId否String按环境 ID 过滤
WxAppId否String微信 AppId(微信渠道必传)
IsVisible否Boolean与 Channels 配合,控制可见/不可见渠道的过滤方向
Channels否String[]渠道列表,如 ["ide","qc_console"]
EnvType否String环境类型:baas / run / weda / hosting
EnvTypes否String[]环境类型列表(优先级高于 EnvType)
Limit否Number分页大小
Offset否Number分页偏移量

3. 返回结果​

字段类型说明
EnvListArray环境列表
RequestIdString请求唯一标识

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const { EnvList } = await app.env.describeEnvs({ EnvType: 'baas' })
EnvList.forEach(e => console.log(e.EnvId, e.Alias))
}

test()

createEnv​

1. 接口描述​

接口功能:创建新的云开发环境

接口声明:app.env.createEnv(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
Alias是String环境别名,小写字母/数字/减号,不能以减号开头或结尾,最长 20 位
PackageId是String套餐 ID,可通过 describeBaasPackageList 获取
Resources是String[]需要发货的资源:flexdb / storage / function
Period否Number购买时长(月),默认 1
AutoVoucher否Boolean是否自动使用代金券
RenewFlag否String续费策略:NOTIFY_AND_AUTO_RENEW / NOTIFY_AND_MANUAL_RENEW
ExternalStorage否ExternalStorage云存储使用共享 COS 桶。传入后不再为环境分配独立的存储桶,文件存放在共享桶内的目录前缀(BasePath)下。Resources 需包含 storage;只作用于云存储,静态托管的共享桶由平台在开通托管时分配,见 附录:共享 COS 桶(ExternalStorage)

ExternalStorage​

字段必填类型说明
Enabled否Boolean是否启用外部存储,建议显式传 true
BucketName是String共享桶名称
Region是String共享桶所在地域,例如 ap-shanghai
BasePath是String环境在共享桶内的目录前缀,同一共享桶内各环境需唯一

外部存储目前只支持腾讯云对象存储 COS,BucketName 填写 COS 存储桶名称,无需指定存储提供商。

3. 返回结果​

字段类型说明
EnvIdString新创建的环境 ID
RequestIdString请求唯一标识

createPlatformEnv​

1. 接口描述​

接口功能:在已购平台版套餐下创建新环境

接口声明:app.platform.createPlatformEnv(params): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

平台版为账号维度套餐,创建环境时无需指定 PackageId,环境资源统一从平台版套餐中计量扣减。ReqKey 为幂等键,可用于防止重复创建。

2. 输入参数​

字段必填类型说明
Alias是String环境别名,用于区分环境
PlatformId是String平台版套餐 ID,可通过 describePlatforms 获取
ReqKey是String幂等键,用于防止重复创建

3. 返回结果​

字段类型说明
EnvIdString新创建的环境 ID
RequestIdString请求唯一标识

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.createPlatformEnv({
Alias: 'user-001',
PlatformId: 'your-platform-id',
ReqKey: 'create-user-001-20260920'
})
console.log(res.EnvId)
}

test()

modifyPlatformEnv​

1. 接口描述​

接口功能:修改平台版环境状态,支持启用/禁用环境,以及云存储(Storage)、FlexDB(文档型数据库)资源的状态变更,未传入的资源不做更新

接口声明:app.platform.modifyPlatformEnv(params): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId否String环境 ID,不传使用当前环境
Status否String环境状态:ENABLE(启用)/ DISABLE(禁用)
Storage否PlatformEnvResource云存储资源状态变更
FlexDB否PlatformEnvResourceFlexDB(文档型数据库)资源状态变更

PlatformEnvResource​

字段必填类型说明
Status否String资源状态:ENABLE(正常)/ DISABLE(彻底禁用)/ READONLY(只读),不传则不更新

3. 返回结果​

字段类型说明
StatusString环境最终状态,如 manualLimited
RequestIdString请求唯一标识

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
// 禁用指定环境
const res = await app.platform.modifyPlatformEnv({
EnvId: 'your-env-id',
Status: 'DISABLE'
})
console.log(res.Status)
}

test()

describeBaasPackageList​

1. 接口描述​

接口功能:查询云开发套餐列表,用于创建/变配/续费前获取可选套餐

接口声明:app.env.describeBaasPackageList(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
PackageName否String套餐 ID,不填返回全量
EnvId否String环境 ID
Source否String套餐归属方:miniapp / qcloud,默认 miniapp
TargetAction否String用途:new(新购)/ modify(变配)/ renew(续费)
GroupName否String套餐分组:calculation / flux / capacity
InternationalPackage否Boolean是否查询国际版套餐

3. 返回结果​

字段类型说明
PackageListBaasPackageInfo[]套餐列表
RequestIdString请求唯一标识

describePlatformPackageList​

1. 接口描述​

接口功能:查询在售的平台版套餐列表,用于购买前查询可选套餐,不涉及已购资源

接口声明:app.platform.describePlatformPackageList(params?): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

2. 输入参数​

字段必填类型说明
PackageId否String平台版套餐 ID,不传返回全量

3. 返回结果​

字段类型说明
PackageListPlatformPackageInfo[]在售平台版套餐列表
RequestIdString请求唯一标识

PlatformPackageInfo​

字段类型说明
PackageIdString套餐 ID
NameString套餐名称
BillTagsString计费下单参数(JSON 字符串)
SpecString套餐规格信息(JSON 字符串)
DescriptionString套餐描述
IdNumber套餐数字 ID

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.describePlatformPackageList()
res.PackageList.forEach(pkg => {
console.log(pkg.PackageId, pkg.Name)
})
}

test()

describePlatforms​

1. 接口描述​

接口功能:查询当前账号下已购的平台版资源实例列表,返回计费信息及存储、日志、静态托管等底层资源明细

接口声明:app.platform.describePlatforms(params?): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

创建平台版环境(createPlatformEnv)所需的 PlatformId 可通过此接口获取。

2. 输入参数​

字段必填类型说明
PlatformIds否String[]平台版套餐 ID 列表,不传分页返回账号下所有平台版资源
Limit否Number分页大小,取值范围 10~100,默认 10
Offset否Number分页偏移量,默认 0

3. 返回结果​

字段类型说明
PlatformListPlatformInfo[]平台版资源列表
TotalNumber总数
RequestIdString请求唯一标识

PlatformInfo​

字段类型说明
PlatformIdString平台版套餐 ID
AliasString套餐别名
PackageIdString套餐 ID
BillStatusString计费状态:normal(正常)/ isolated(已隔离)/ destroyed(已销毁)
StatusNumber套餐资源状态:0(可用)/ 5(发货中)
SpecString资源配置(JSON 字符串)
BillTimeString购买时间,格式 YYYY-MM-DD HH:mm:ss
ExpireTimeString套餐过期时间,格式 YYYY-MM-DD HH:mm:ss
IsAutoRenewNumber自动续费设置:0(未设置)/ 1(自动续费)/ 2(到期不续费)
ResourcesPlatFormResourceInfo[]资源信息列表
RegionString所属地域,如 ap-shanghai(上海)/ ap-singapore(新加坡)

PlatFormResourceInfo​

字段类型说明
ResTypeString资源类型:log(日志)/ storage(云存储)/ hosting(静态托管)
ResNameString资源唯一标识
DetailString资源详细信息(JSON 字符串)
StatusNumber资源状态:0(正常)/ 5(初始化中)
PlatformIdNumber资源 ID
IdNumber对应平台资源 ID

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.describePlatforms({ Limit: 20 })
console.log('平台版资源总数:', res.Total)
res.PlatformList.forEach(p => {
console.log(p.PlatformId, p.Alias, p.BillStatus)
})
}

test()

modifyEnvPlan​

1. 接口描述​

接口功能:变更指定环境的套餐(升降配)

接口声明:app.env.modifyEnvPlan(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId是String环境 ID
PackageId是String目标套餐 ID
AutoVoucher否Boolean是否自动使用代金券

3. 返回结果​

字段类型说明
RequestIdString请求唯一标识

renewEnv​

1. 接口描述​

接口功能:续费指定环境

接口声明:app.env.renewEnv(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId是String环境 ID
Period否Number续费时长(月),默认 1
AutoVoucher否Boolean是否自动使用代金券

3. 返回结果​

字段类型说明
RequestIdString请求唯一标识

calculatePackageCreatePrice​

1. 接口描述​

接口功能:计算新购套餐的预估价格

接口声明:app.env.calculatePackageCreatePrice(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
packageId是String套餐 ID
region是String地域,如 ap-shanghai
period否Number购买时长(月)
currency否String币种:CNY 或 USD

3. 返回结果​

返回价格计算结果,包含原价、折后价等字段。

calculatePackageRenewPrice​

1. 接口描述​

接口功能:计算续费套餐的预估价格

接口声明:app.env.calculatePackageRenewPrice(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
envId是String环境 ID
period否Number续费时长(月)
currency否String币种:CNY 或 USD

3. 返回结果​

返回价格计算结果,包含原价、折后价等字段。

calculatePackageModifyPrice​

1. 接口描述​

接口功能:计算变配套餐的预估价格

接口声明:app.env.calculatePackageModifyPrice(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
envId是String环境 ID
packageId是String目标套餐 ID
currency否String币种:CNY 或 USD

3. 返回结果​

返回价格计算结果,包含原价、折后价等字段。

describeBillingInfo​

1. 接口描述​

接口功能:查询指定环境的计费信息

接口声明:app.env.describeBillingInfo(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId否String环境 ID,不传时查询账号下的环境
Limit否Number分页条数
Offset否Number分页偏移

3. 返回结果​

返回环境计费详情(包含套餐、到期时间、计费状态等,具体结构依后端实现)。

分页查询时,返回的 Total 可能与实际可翻页的条数不一致,建议按本页返回条数是否达到 Limit 判断是否还有下一页。

describeEnvAccountCircle​

1. 接口描述​

接口功能:查询环境的计费周期信息(当前周期及历史周期)

接口声明:app.env.describeEnvAccountCircle(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId是String环境 ID
WxAppId否String微信 AppId
WithHistoryCircle否Boolean是否同时返回上一个和上上个计费周期,默认 false

3. 返回结果​

字段类型说明
StartTimeString当前计费周期开始时间
EndTimeString当前计费周期结束时间
HistoryTimeArray历史周期列表(含开始/结束时间)
RequestIdString请求唯一标识

describePlatformAccountCircle​

1. 接口描述​

接口功能:查询平台版资源当前所处的计费周期

接口声明:app.platform.describePlatformAccountCircle(params): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

平台版资源点按月结算,计费周期自购买日起算,每个周期享有一笔抵扣额度。例如 2026-01-05 购买 3 个月(2026-04-05 到期),则三个周期分别为 01-05 ~ 02-05、02-06 ~ 03-05、03-06 ~ 04-05。

2. 输入参数​

字段必填类型说明
PlatformId是String平台版套餐 ID
WithHistoryCircle否Boolean是否附带返回最近两个历史周期,默认 false

3. 返回结果​

字段类型说明
StartTimeString当前计费周期开始时间
EndTimeString当前计费周期结束时间
HistoryTimeCircleTime[]历史周期列表,依次为上个、上上个周期
ExpiredBoolean套餐当前是否过期
RequestIdString请求唯一标识

CircleTime​

字段类型说明
StartTimeString周期开始时间
EndTimeString周期结束时间

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.describePlatformAccountCircle({
PlatformId: 'your-platform-id',
WithHistoryCircle: true
})
console.log('当前周期:', res.StartTime, '~', res.EndTime)
}

test()

describeCreditsUsageDetail​

1. 接口描述​

接口功能:查询环境资源点的用量明细,支持按模块和日期过滤

接口声明:app.env.describeCreditsUsageDetail(params): Promise<Object>

版本提示

自 v5.0.0 起支持此接口

2. 输入参数​

字段必填类型说明
EnvId是String环境 ID
Modules是String[]模块列表,可选:EKS / Database / SCF / COS / AI / HOSTING / Auth / Other
StartDate是String开始日期,格式 YYYY-MM-DD
EndDate是String结束日期,格式 YYYY-MM-DD
NeedUsageDetails是Boolean是否返回每日用量明细

3. 返回结果​

返回各模块资源点用量明细(具体结构依后端实现)。

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.env.describeCreditsUsageDetail({
EnvId: 'your-env-id',
Modules: ['SCF', 'Database', 'COS'],
StartDate: '2025-01-01',
EndDate: '2025-01-31',
NeedUsageDetails: true
})
console.log(JSON.stringify(res, null, 2))
}

test()

describePlatformCreditsUsage​

1. 接口描述​

接口功能:查询平台版资源的资源点用量汇总

接口声明:app.platform.describePlatformCreditsUsage(params): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

返回指定时间范围内的资源点用量统计,包括套餐内抵扣、资源包抵扣、按量上报、原价消耗四类总量及每日明细。

2. 输入参数​

字段必填类型说明
PlatformId是String平台版套餐 ID
StartDate是String开始日期,格式 YYYY-MM-DD
EndDate是String结束日期,格式 YYYY-MM-DD

3. 返回结果​

字段类型说明
DeductValueCountNumber资源点套餐内抵扣总量
PackageDeductValueCountNumber资源点资源包抵扣总量
ReportValueCountNumber资源点按量上报总量
OriginCreditsCountNumber资源点原价消耗总量
DailyListPlatformCreditsUsageDaily[]每日资源点用量列表
RequestIdString请求唯一标识

PlatformCreditsUsageDaily​

字段类型说明
DateString日期
DeductValueNumber资源点套餐内用量
PackageDeductValueNumber资源点资源包用量
ReportValueNumber资源点按量用量
OriginCreditsNumber资源点原价消耗

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.describePlatformCreditsUsage({
PlatformId: 'your-platform-id',
StartDate: '2026-09-01',
EndDate: '2026-09-20'
})
console.log('套餐内抵扣总量:', res.DeductValueCount)
}

test()

describePlatformCreditsUsageDetail​

1. 接口描述​

接口功能:查询平台版资源的资源点用量明细

接口声明:app.platform.describePlatformCreditsUsageDetail(params): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

按模块(Usages)→ 指标(MetricUsageDetail)→ 每日明细(ValueDetailList)三个层级返回各模块的资源点用量及原始用量明细。

2. 输入参数​

字段必填类型说明
PlatformId是String平台版套餐 ID
Modules是String[]模块列表,见下方枚举
StartDate是String开始日期,格式 YYYY-MM-DD
EndDate是String结束日期,格式 YYYY-MM-DD
NeedUsageDetails是Boolean是否返回每日用量明细

Modules 可选取值:FLEXDB(文档数据库)、TDSQL(MySQL 数据库)、SCF(云函数)、AI(大模型)、EKS(云托管)、COS(云存储)、HOSTING(静态托管)、Auth(用户权限)、APIInvocation(API 调用)、HTTPInvocation(HTTP 调用)、VM(主机)、Workflow(工作流)、PostgreSQL、Token、Other(其他)

3. 返回结果​

字段类型说明
UsagesPlatformPkgCreditsUsage[]各模块用量数据
RequestIdString请求唯一标识

PlatformPkgCreditsUsage​

字段类型说明
PlatformIdString平台版套餐 ID
ModuleString模块
CreditsValueNumber模块总资源点用量
MetricUsageDetailMetricUsage[]指标用量明细
DeductValueNumber资源点套餐内用量
PackageDeductValueNumber资源点资源包用量
ReportValueNumber资源点按量用量
OriginCreditsNumber资源点原价消耗

MetricUsage​

字段类型说明
MetricNameString指标名称
ResourceTypeString资源类型
ValueNumber原始资源用量
CreditsValueNumber资源点用量
BillingCycleTypeString计费周期类型:hourly / daily
UnitString原始资源用量单位
ValueDetailListValueDetail[]原始资源用量按日明细
DeductValueNumber资源点套餐内用量
PackageDeductValueNumber资源点资源包用量
ReportValueNumber资源点按量用量
OriginCreditsNumber资源点原价消耗

ValueDetail​

字段类型说明
CalcTimeString时间,格式 YYYY-MM-DD HH:mm:ss
RawValueNumber原始资源用量
CreditsValueNumber资源点用量
DeductValueNumber资源点套餐内用量
PackageDeductValueNumber资源点资源包用量
ReportValueNumber资源点按量用量
OriginCreditsNumber资源点原价消耗

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.describePlatformCreditsUsageDetail({
PlatformId: 'your-platform-id',
Modules: ['SCF', 'FLEXDB'],
StartDate: '2026-09-01',
EndDate: '2026-09-20',
NeedUsageDetails: true
})
res.Usages.forEach(u => {
console.log(u.Module, u.CreditsValue)
})
}

test()

describePlatformEnvCreditsRanking​

1. 接口描述​

接口功能:查询平台版下各环境的资源点用量排行

接口声明:app.platform.describePlatformEnvCreditsRanking(params?): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

按指定时间范围返回各环境的资源点用量排序。排行数据由后台定时计算,可能存在小时级延迟。

2. 输入参数​

字段必填类型说明
PlatformId否String平台版套餐 ID
TimeRange否String查询时间范围,默认 Today
PageSize否Number每页条数,默认 50
AfterRank否Number分页偏移量,传上一页最后一条的 Rank

TimeRange 可选取值:Today(近 1 天)、Recent7Days(近 7 天)、CurrentCycle(当前计费周期)、PreviousCycle(上一个计费周期)、Previous2Cycle(上两个计费周期)

3. 返回结果​

字段类型说明
TimeRangeString查询时间范围
StartTimeString起始时间,格式 YYYY-MM-DD HH:mm:ss
EndTimeString结束时间,格式 YYYY-MM-DD HH:mm:ss
DataAsOfTimeString统计截止时间,格式 YYYY-MM-DD HH:mm:ss
HasMoreBoolean是否还有下一页数据
NextAfterRankNumber下一条数据的分页偏移值
TotalCountNumber总数量
CreditsScaleNumber资源点精度
SnapshotIdString排行快照版本
ItemsEnvCreditsRank[]环境排行列表
RequestIdString请求唯一标识

EnvCreditsRank​

字段类型说明
EnvIdString环境 ID
TotalCreditsNumber总资源点用量
RankNumber排行序号

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.describePlatformEnvCreditsRanking({
PlatformId: 'your-platform-id',
TimeRange: 'Recent7Days'
})
res.Items?.forEach(item => {
console.log(item.Rank, item.EnvId, item.TotalCredits)
})
}

test()

describePlatformEnvUsage​

1. 接口描述​

接口功能:查询平台版环境内各资源类型的用量

接口声明:app.platform.describePlatformEnvUsage(params): Promise<Object>

版本提示

自 v5.8.8 起支持此接口

按资源类型(存储、函数、数据库等)返回各指标的用量及按日明细,包括资源点用量与原始用量值及对应单位。

2. 输入参数​

字段必填类型说明
EnvId否String环境 ID,不传使用当前环境
StartDate否String查询起始日期,格式 YYYY-MM-DD
EndDate否String查询结束日期,格式 YYYY-MM-DD
ResourceTypes否String[]资源类型列表,见下方枚举
NeedUsageDetails否Boolean是否展示用量明细

ResourceTypes 可选取值:Storage(云存储)、Function(云函数)、Database(数据库)、HOSTING(静态托管)、Log(日志)、Gateway(网关)、Cloudrun(云托管)、Token、EO(EdgeOne)

3. 返回结果​

字段类型说明
ResourcesPlatformResUsageItem[]资源用量信息
TotalCreditsNumber资源点总量
CreditsScaleNumber资源点取整倍数
RequestIdString请求唯一标识

PlatformResUsageItem​

字段类型说明
ResourceTypeString资源类型
TotalCreditsNumber该资源类型的资源点总量
MetricsPlatformMetricUsageItem[]指标用量信息

PlatformMetricUsageItem​

字段类型说明
MetricNameString指标名称
OriginalResourceTypeString原始资源类型
OriginalMetricNameString原始指标名
UsageValueNumber资源用量
UsageUnitString资源用量单位,如 MB、Count
CreditsNumber资源点用量
DailyUsageListDailyUsageList[]用量按日明细列表

DailyUsageList​

字段类型说明
DateString日期,格式 YYYY-MM-DD
CreditsNumber资源点用量
UsageValueNumber原始资源用量

4. 示例代码​

const CloudBase = require('@cloudbase/manager-node')
const app = new CloudBase({ secretId: 'Your SecretId', secretKey: 'Your SecretKey', envId: 'your-env-id' })

async function test() {
const res = await app.platform.describePlatformEnvUsage({
EnvId: 'your-env-id',
StartDate: '2026-09-01',
EndDate: '2026-09-20',
ResourceTypes: ['Storage', 'Function']
})
console.log('资源点总量:', res.TotalCredits)
res.Resources?.forEach(r => {
console.log(r.ResourceType, r.TotalCredits)
})
}

test()