文档

账单域API使用手册

更新时间:
一键部署

本文重点介绍账单域API的功能及其选择方案。

导读

随着云上业务体量和业务场景复杂度的增加,许多企业在“多组织跨部门管理效率”,“精细化管理质量”以及“云上成本”等方面面临着越来越大的挑战。企业开始通过集成阿里云“BSS OpenAPI”、自建用云分析视图以及云管平台等方式支撑精细化用云分析。由于费用账单数据维度多,不同API汇总数据粒度差异大,账单API的选择和使用决定了能力集成的效率和准确性。

本文从“常用API概览”、“API选择方案”、“控制台功能对应API”、“数据字段对应API汇总”、“各数据源产商品字段对比”、“典型场景最佳实践”等方面介绍账单域API,帮助您更准确地选择API、更高效地使用API,进而获取各维度的账单数据。

常用API概览

DescribeInstanceBill

查询实例账单

QuerySettleBill

结算账单查询服务

QueryBillOverview

账单总览查询服务

QueryAccountBill

账号账单查询服务

DescribeSplitItemBill

分账账单服务

QueryInstanceGaapCost

查询月费用分摊服务

SubscribeBillToOSS

详单订阅服务

UnsubscribeBillToOSS

取消详单订阅服务

QueryRelationList

查询企业财务关系列表

1

API选择方案

选择账单域API时,您可以结合需要查询的数据,对比每个API的入参、出参,做出最优的API接口决策。

需查询数据字段

可使用API

入参

主要出参字段

计费项

查询实例账单服务:DescribeInstanceBill

IsBillingItem:true

按月查询:

  • BillingCycle:YYYY-MM

按日查询:

  • Granularity:DAILY

  • BillingCycle:YYYY-MM

  • BillingDate:YYYY-MM-DD

InstanceConfig:实例详细配置

InstanceID:实例ID

InstanceSpec:实例规格

BillingItem:计费项

BillingItemCode:计费项代码

CostUnit:财务单元

ResourceGroup:默认资源组

Tag:资源标签

ListPrice:单价

Usage:用量

OwnerID:财务子账号ID

实例

IsBillingItem:false

按月查询:

  • BillingCycle:YYYY-MM

按日查询:

  • Granularity:DAILY

  • BillingCycle:YYYY-MM

  • BillingDate:YYYY-MM-DD

InstanceConfig:实例详细配置

InstanceID:实例ID

IDInstanceSpec:实例规格

CostUnit:财务单元

ResourceGroup:默认资源组

Tag:资源标签

OwnerID:财务子账号ID

订单号/账单号

结算账单查询服务:QuerySettleBill

BillingCycle:YYYY-MM

BillOwnerId:财务子账号ID

RecordID:订单号/账单号

AccountID:账号ID

SubscriptionType:订阅类型

UsageStartTime、UsageEndTime:账单发生时间

RecordID:订单号/账单号

OwnerID:财务子账号ID

PipCode:产品Code

说明

产品Code与“用户中心”账单中“产品Code”字段含义一致。

CommodityCod:产品明细Code

财务云主、子账号

查询企业财务关系列表:QueryRelationList

UserId(主账号UID):XXX

StatusList:关联状态

说明

示例:RELATED。

SetupTime:关系建立时间

State:关系状态

RelationId:关系

IDAccountType:企业财务账号类型

RelationType:关系策略

说明

FinancialManagement表示“财务管理”关系

FinancialTrusteeship 表示“财务托管”关系

账号账单查询服务:QueryAccountBill

按月查询:

  • BillingCycle:YYYY-MM

按日查询:

  • Granularity:DAILY

  • BillingCycle:YYYY-MM

  • BillingDate:YYYY-MM-DD

BillingCycle:账期

BillingDate:账单日期

CostUnit:财务单元

Code:PipCode

分账账单

分账账单:DescribeSplitItemBill

按月查询:

  • BillingCycle:YYYY-MM

按日查询:

  • Granularity:DAILY

  • BillingCycle:YYYY-MM

  • BillingDate:YYYY-MM-DD

  • TagFilter:标签筛选

SplitBillingCycle:分账月

SplitItemID:分拆项ID

说明

了解更多“分拆项ID”。

InstanceID:实例ID

Usage:用量

BillingItem:计费项

Tag:资源标签

ListPrice:单价

明细账单

详单数据获取:

SubscribeBillToOSS

SubscribeBucket:abc

说明

您订阅时设置“oss”的“bucket”名称,示例值:abc

计费项明细:

  • SubscribeType:BillingItemDetailForBillingPeriod

实例明细:

  • SubscribeType:InstanceDetailForBillingPeriod

InstanceConfig:实例详细配置

InstanceID:实例ID

InstanceSpec:实例规格

BillingItem:计费项

CostUnit:财务单元

ResourceGroup:默认资源组

Tag:资源标签

ListPrice:单价

Usage:用量

PipCode:产品Code

CommodityCod:产品明细Code

RecordID:订单号/账单号

OwnerID:财务子账号ID

控制台功能对应API

1、控制台路径:用户中心 – 账单管理 – 账单详情 – 明细账单

调用DescribeInstanceBill获取明细账单“实例”、“计费项”维度数据。

调用方法可参见API选择方案中,“数据字段”为“实例”、“计费项”的接口说明。

重要

调用DescribeInstanceBill获取的数据,仅对应控制台“统计周期”为“账期或按天”的数据,明细账单数据统一通过上述API选择方案明细账单方式获取。

2

2、控制台路径:用户中心 – 账单管理 – 账单详情 – 明细账单

调用QueryAccountBill获取明细账单“账号”维度数据。

调用方法可参见API选择方案中,“数据字段”为“财务云主、子账号”的接口说明。

重要

调用QueryAccountBill获取的数据,对应控制台“统计周期”为“账期或按天”的数据。

3

3、控制台路径:用户中心 – 分账管理 – 分账账单

调用DescribeSplitItemBill获取“分账账单”数据。

调用方法可参见API选择方案中,“数据字段”为“分账账单”的接口说明。

重要

调用DescribeSplitItemBill获取的数据,对应控制台“统计周期”为“账期或按天”的数据,不支持获取“明细”维度数据。

4

4、控制台路径:用户中心 – 企业财务 – 财务关联

调用QueryRelationList获取“企业财务关系列表”数据。

调用方法可参见API选择方案中,“数据字段”为“财务云主、子账号”的接口说明。

重要

调用QueryRelationList获取的数据,对应控制台“财务关联”数据。

5

5、控制台路径:用户中心 – 账单管理 – 账单详情 – 账单流水

调用QuerySettleBill获取“订单号/账单号”维度数据。

调用方法可参见API选择方案中,“数据字段”为“订单号/账单号”中的接口说明。

重要

调用QuerySettleBill获取的数据,对应控制台“账单流水”数据。

6

6、控制台路径:用户中心 – 账单管理 – 账单详情 – 明细账单

调用SubscribeBillToOSS获取“计费项”或“实例”维度数据。

调用方法可参见API选择方案中,“数据字段”为“明细账单”的接口说明。

重要

调用SubscribeBillToOSS获取的数据,对应控制台“明细账单”数据。

7

数据维度对应API汇总

查询数据维度

可使用API

产品

结算账单查询服务QuerySettleBill

账单总览查询服务QueryBillOverview

查询实例账单服务DescribeInstanceBill

账号账单查询服务QueryAccountBill

分账账单服务DescribeSplitItemBill

查询月费用分摊服务QueryInstanceGaapCost

财务单元

查询实例账单服务DescribeInstanceBill

账号账单查询服务QueryAccountBill

分账账单服务DescribeSplitItemBill

按日

分账账单服务DescribeSplitItemBill

查询实例账单服务DescribeInstanceBill

账号账单查询服务QueryAccountBill

按月

结算账单查询服务QuerySettleBill

分账账单服务DescribeSplitItemBill

查询实例账单服务DescribeInstanceBill

账号账单查询服务QueryAccountBill

账单总览查询服务QueryBillOverview

查询月费用分摊服务QueryInstanceGaapCost

各数据源产商品字段对比

数据源

产品Code

产品明细Code

产品名称

商品名称

控制台

-

-

产品

产品明细

OSS(中文)

产品Code

产品明细Code

产品

产品明细

OSS(英文)

Product Code

Product Type

ProductName

ProductDetail

API

PipCode

CommodityCode

ProductName

ProductDetail

常见FAQ

每月的日账单汇总数据与当月账单数据对比结果不一致,为什么?

日账单中不包含后付费未结算的数据,月账单中包含后付费未结算的数据。

通过子账号调用“QueryInstanceGaapCost”,RAM子账号已被授权,为什么无返回值?

QueryInstanceGaapCost”目前只支持主账号的AK查询数据,后续会支持。

关于这些出参“PipCode、CommodityCode、ProductCode、ProductType”分别是什么意思?

  • PipCode”是“产品Code”,与控制台“用户中心”账单中“产品Code”字段含义一致;

  • CommodityCode”是“产品明细Code”,与控制台“用户中心”中“产品明细Code”一致;

  • ProductCode、ProductType”均是在API中透出的后台冗余数据,和上述pipCode以及commodityCode不是一个概念,不能作为数据汇总和对账分析使用。

为什么从出参的“ProductCode、ProductType”字段中获取数据,传到入参“ProductCode、ProductType”这两个字段中无法获取数据

目前API的出参的“ProductCode、ProductType”和API入参“ProductCode、ProductType”在底层是两套数据,且入参中“ProductCode、ProductType”目前的枚举数据没有可获取的完整list,因此不建议传入参数查询。 如需要基于“产品Code”或“产品明细Code”分析数据,可通过“PipCode(产品Code)”和“CommodityCode(产品明细Code)”汇总分析。

各个API中入参“BillOwnerId”是指什么子账号?

这里“BillOwnerId”可填入财务管理子账号,财务托管子账号账单是出在主账号上的,不需要传入子账号就可以直接获取。

实例明细账单和“计费项明细账单”有什么区别?

两份数据在出参字段上,都有“产品、产品明细、账期、实例ID、订账单号、账单类型”等字段,而“计费项明细账单”存在一个独有的“计费项(BillingItem)”字段。

说明

更多数据字段的使用,请查看常用字段说明

典型场景最佳实践

1. 通过账单数据分析资源规格变化情况

调用“DescribeInstanceBill”接口,获取“实例ID(InstanceID)”、“实例配置(InstanceConfig)”字段,和历史数据做对比即可。

2.如何批量查询所有财务管理子账号数据?

以“QuerySettleBill”为例:

通过财务云子账号list获取所有财务云账单数据

  1. 调用“QueryRelationList”(查询企业财务关系列表),获取“关联状态(RELATED)”子账号list,筛选出“财务管理(FinancialManagement)”子账号list;

  2. 将“财务管理”子账号list,枚举传入“QuerySettleBill”的“BillOwnerId”字段后,将获取的数据组合起来即可。

  • 本页导读 (0)