You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用IBM Global Catalog API无法获取Virtual Server for Classic价格

IBM Global Catalog API获取Classic虚拟服务器定价异常排查与正确调用方法

核心问题原因

调用无定价返回主要是两个直接错误:

  • 接口选用错误:https://globalcatalog.cloud.ibm.com/update/*路径下的接口是IBM内部运维人员更新Catalog元数据的内部接口,本身就不面向外部用户返回完整定价数据
  • 参数配置错误:你携带了?noLocations=true参数,这个参数的作用就是过滤所有和部署位置绑定的信息,而Classic虚机的定价本身就是和机房位置、实例规格强绑定的,加了这个参数自然无法返回有效定价

正确调用步骤

  1. 选用公开版V1 API作为基础入口,不要使用带/update的内部路径,Virtual Server for Classic在Global Catalog里的固定服务ID是7370c4d0-9075-4d73-a68a-8830c682c12b
  2. 基础请求示例:
GET https://globalcatalog.cloud.ibm.com/api/v1/7370c4d0-9075-4d73-a68a-8830c682c12b?pricing=true&depth=2&includeLocations=true

各必填参数说明:

  • pricing=true:强制接口返回定价模块,该参数默认关闭,不加的话只会返回服务基本介绍
  • depth=2:展开服务下的子资源,也就是不同实例规格、配置档位的信息,默认depth=0只会返回服务级别的概要内容,不会下钻到具体SKU
  • includeLocations=true:返回每个部署机房对应的差异化定价,Classic虚机不同位置的定价存在差异,不加这个参数只会返回全局统一默认价,和控制台展示的数据不一致
  1. 如果需要缩小返回范围,可以追加过滤参数:比如加location=dal13指定查询达拉斯13机房的定价,加flavor=B1_2X4指定查询对应规格的定价,减少返回数据量

常见异常排查点

  • 如果你需要查询自己账户对应的折扣价而非公开列表价,需要在请求头里携带有效IAM令牌:Authorization: Bearer <你的IBM Cloud IAM Token>,匿名调用只能返回公开的按量付费小时价,不会包含账户级折扣、预留实例折扣这类专属定价,部分受限区域的定价也会因为无有效权限被过滤
  • 注意参数拼写:所有参数都是小驼峰格式,比如不要把pricing拼成price,不要把includeLocations写错大小写,参数拼写错误会被接口直接忽略,自然不会返回对应内容
  • 不要调用旧版Gen1 Catalog接口:旧版Gen1路径下的Catalog接口从2023年开始就不再同步更新定价数据,返回的价格和控制台会有差异,必须使用V1版本的公开API

提示:API返回的基础定价仅包含vCPU、内存对应的计算成本,额外挂载的块存储、公网带宽、增值服务的定价需要在返回结果的addons子字段里单独查询,和控制台provision页面的计价逻辑完全一致。

内容的提问来源于stack exchange,提问作者Waleed Asif

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 23:18:49