跳到主要内容

环境管理

listEnvs

1. 接口描述

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

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

2. 输入参数

3. 返回结果

字段必填类型说明
RequestIdString请求唯一标识
EnvListArray<EnvItem>环境数组

EnvItem

字段必填类型说明
EnvIdString环境 ID
SourceString来源
AliasString环境别名
StatusString环境状态
CreateTimeString创建时间
UpdateTimeString更新时间
PackageIdString环境套餐 ID
PackageNameString套餐名
DatabasesArray数据库资源详情
StoragesArray存储资源详情
FunctionsArray函数资源详情
LogServicesArray日志资源详情

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 env in EnvList) {
// 遍历envList
console.log(env)
}
}

test()

getEnvAuthDomains

1. 接口描述

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

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

2. 输入参数

3. 返回结果

字段必填类型说明
DomainsArray<Domain>域名列表
envIdString环境 ID

Domain

字段必填类型说明
IdString域名 ID
DomainString域名
TypeString域名类型。包含以下取值:system user
StatusString状态。包含以下取值:ENABLE DISABLE
CreateTimeString创建时间
UpdateTimeString更新时间

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. 输入参数

字段必填类型说明
domainsArray<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. 输入参数

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

3. 返回结果

字段必填类型说明
RequestIdString请求 ID
DeletedNumber删除成功的域名数

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. 返回结果

字段必填类型说明
RequestIdString请求 ID
EnvInfoEnvItem环境信息

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. 输入参数

字段必填类型说明
aliasString环境别名

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.updateEnvInfo('lukemodify')
console.log(res)
}

test()

getLoginConfigList

1. 接口描述

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

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

2. 输入参数

3. 返回结果

字段必填类型说明
RequestIdString请求 ID
ConfigListArray<ConfigItem>登录配置列表

ConfigItem

字段必填类型说明
IdString配置 ID
PlatformString平台类型
PlatformIdString平台 ID
StatusString配置状态
UpdateTimeString配置更新时间
CreateTimeString配置创建时间

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. 输入参数

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

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() {
await env.createLoginConfig('WECHAT-OPEN', 'appId', 'appSecret')
}

test()

updateLoginConfig

1. 接口描述

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

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

2. 输入参数

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

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 loginConfigRes = await env.getLoginConfigList()
await env.updateLoginConfig(
loginConfigRes.ConfigList[0].Id,
'ENABLE',
'appId',
'appSecret'
)
}

test()

createBillingDeal

1. 接口描述

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

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

2. 输入参数

字段必填类型说明
DealTypeString下单操作类型,可取值:purchase(购买)、renew(续费)、modify(变配)
ProductTypeString购买的产品类型,可取值:tcb-baas(baas 套餐)、tcb-promotion(大促包)、tcb-package(资源包)
PackageIdString目标下单产品/套餐 ID
CreateAndPayBoolean是否自动支付
TimeSpanNumber购买时长
TimeUnitString购买时长单位,可取值:d(天)、m(月)、y(年)、p(一次性)
ResourceIdString资源唯一标识符
SourceString来源,可取值:qcloudminiapp
AliasString资源别名
EnvIdString环境 ID
EnableExcessBoolean开启超限按量计费
ModifyPackageIdString变配目标产品/套餐 ID
ExtensionString附加信息(JSON 字符串)
AutoVoucherBoolean是否自动选择代金券支付
ResourceTypesString[]资源类型,新购环境时需要发货的资源,可取值:flexdbcoscdnscf

3. 返回结果

字段必填类型说明
RequestIdString请求 ID
EnvIdString环境 ID
TranIdString订单交易 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. 输入参数

字段必填类型说明
TranIdString订单交易 ID
UserClientIpString用户客户端 IP
WxAppIdString微信 AppId(可选)

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 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. 返回结果

字段必填类型说明
RequestIdString请求 ID
KeyIDString密钥 ID
PrivateKeyString私钥

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. 输入参数

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

3. 返回结果

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

describeEnvs

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

字段必填类型说明
EnvIdString按环境 ID 过滤
WxAppIdString微信 AppId(微信渠道必传)
IsVisibleBooleanChannels 配合,控制可见/不可见渠道的过滤方向
ChannelsString[]渠道列表,如 ["ide","qc_console"]
EnvTypeString环境类型:baas / run / weda / hosting
EnvTypesString[]环境类型列表(优先级高于 EnvType
LimitNumber分页大小
OffsetNumber分页偏移量

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. 输入参数

字段必填类型说明
AliasString环境别名,小写字母/数字/减号,不能以减号开头或结尾,最长 20 位
PackageIdString套餐 ID,可通过 describeBaasPackageList 获取
ResourcesString[]需要发货的资源:flexdb / storage / function
PeriodNumber购买时长(月),默认 1
AutoVoucherBoolean是否自动使用代金券
RenewFlagString续费策略:NOTIFY_AND_AUTO_RENEW / NOTIFY_AND_MANUAL_RENEW

3. 返回结果

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

describeBaasPackageList

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

字段必填类型说明
PackageNameString套餐 ID,不填返回全量
EnvIdString环境 ID
SourceString套餐归属方:miniapp / qcloud,默认 miniapp
TargetActionString用途:new(新购)/ modify(变配)/ renew(续费)
GroupNameString套餐分组:calculation / flux / capacity
InternationalPackageBoolean是否查询国际版套餐

3. 返回结果

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

modifyEnvPlan

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

字段必填类型说明
EnvIdString环境 ID
PackageIdString目标套餐 ID
AutoVoucherBoolean是否自动使用代金券

3. 返回结果

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

renewEnv

1. 接口描述

接口功能:续费指定环境

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

字段必填类型说明
EnvIdString环境 ID
PeriodNumber续费时长(月),默认 1
AutoVoucherBoolean是否自动使用代金券

3. 返回结果

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

calculatePackageCreatePrice

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

字段必填类型说明
packageIdString套餐 ID
regionString地域,如 ap-shanghai
periodNumber购买时长(月)
currencyString币种:CNYUSD

3. 返回结果

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

calculatePackageRenewPrice

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

字段必填类型说明
envIdString环境 ID
periodNumber续费时长(月)
currencyString币种:CNYUSD

3. 返回结果

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

calculatePackageModifyPrice

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

字段必填类型说明
envIdString环境 ID
packageIdString目标套餐 ID
currencyString币种:CNYUSD

3. 返回结果

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

describeBillingInfo

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

字段必填类型说明
EnvIdString环境 ID,不传查全量

3. 返回结果

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

describeEnvAccountCircle

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

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

3. 返回结果

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

describeCreditsUsageDetail

1. 接口描述

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

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

版本提示

自 v5.0.0 起支持此接口

2. 输入参数

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

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()