更新时间:2024-12-19 GMT+08:00
分享

查询资源详单

功能介绍

客户在自建平台查询自己的资源详单,用于反映各类资源的消耗情况。

客户登录费用中心查询资源详单请参见这里

  • 由于资源消费呈现的是资源维度的8位小数原始消费金额,实际从账户扣费时按2位小数进行扣费(即扣到分),会存在精度差异,所以,不推荐消费汇总和资源消费直接对账。
  • 若需要查询财务独立企业子的账单信息,前提是子账号已经接受了企业主账号的“允许查看子账号消费信息”的申请。申请方法见“变更子账号权限”。
  • 客户账号切换成为财务托管子之后,调用API查询到的账单,包含切换为财务托管子后产生的账单和切换财务托管子之前的账单。
  • 支持查看近3年的数据。

接口约束

该接口只允许使用客户AK/SK或者Token调用。

调试

您可以在API Explorer中调试该接口。

URI

POST /v2/bills/customer-bills/res-records/query

表1 Header参数

参数

是否必选

取值范围

描述

X-Language

最大长度:10

语言。

  • 中文:zh_CN
  • 英文:en_US

缺省为zh_CN。

请求消息

请求参数

参数

是否必选

参数类型

取值范围

描述

cycle

String

最大长度:8

查询的资源详单所在账期,东八区时间,格式为YYYY-MM。

示例:2019-01。

cloud_service_type

String

最大长度:64

云服务类型编码,例如OBS的云服务类型编码为“hws.service.type.obs”。您可以调用查询云服务类型列表接口获取。

此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。

resource_type

String

最大长度:64

资源类型编码,例如ECS的VM为“hws.resource.type.vm”。您可以调用查询资源类型列表接口获取。

此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。

region

String

最大长度:64

云服务区编码,例如:“cn-north-1”。具体请参见地区和终端节点对应云服务的“区域”列的值。

此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。

res_instance_id

String

最大长度:64

资源实例ID。

此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。

charge_mode

Integer

-

计费模式。

  • 1 : 包年/包月
  • 3:按需
  • 10:预留实例
  • 11:节省计划

此参数不携带或者携带值为null时,返回所有计费模式的资源详单数据记录。

bill_type

Integer

-

账单类型:

  • 1:消费-新购
  • 2:消费-续订
  • 3:消费-变更
  • 4:退款-退订
  • 5:消费-使用
  • 8:消费-自动续订
  • 9:调账-补偿
  • 14:消费-服务支持计划月末扣费
  • 16:调账-扣费
  • 18:消费-按月付费
  • 20:退款-变更
  • 23:消费-节省计划抵扣
  • 24:退款-包年/包月转按需

此参数不携带或者携带值为null时,返回所有账单类型的资源详单数据记录。

enterprise_project_id

String

最大长度:64

企业项目标识(企业项目ID)。

  • default项目对应ID:0
  • 未归集(表示该云服务不支持企业项目管理能力)项目对应ID:-1
  • 其余项目对应ID获取方法请参见如何获取企业项目ID

此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。

include_zero_record

Boolean

-

返回是否包含应付金额为0的记录。

  • true: 包含
  • false: 不包含

此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。

method

String

最大长度:64

查询方式。

  • oneself:客户自己
  • sub_customer:企业子客户
  • all:客户自己和企业子客户

此参数不携带或携带值为空串或携带值为null时,默认值为“all”,如果没有企业子客户,all的时候也是查询客户自己的数据。

说明:

若需要查询财务独立企业子的账单信息,前提是子账号已经接受了企业主账号的“允许查看子账号消费信息”的申请。申请方法见“变更子账号权限”。

sub_customer_id

String

最大长度:64

企业子账号ID。

说明:
  • 如果method取值不为sub_customer,则此参数无效。
  • 如果method取值为sub_customer,则此参数不能为空。

offset

Integer

[0-最大整数]

偏移量,从0开始。默认值为0。

说明:

offset用于分页处理,如不涉及分页,请使用默认值0。offset表示相对于满足条件的第一个数据的偏移量。如offset = 1,则返回满足条件的第二个数据至最后一个数据。

示例1,满足查询条件的结果共10条数据,limit取值为10,offset取值为1,则返回的数据为2~10,第一条数据不返回。

示例2,查询总数20条,期望每页返回10条数据,则获取第一页数据,入参offset填写0,limit填写10;获取第二页数据,入参offset填写10,limit填写10。

limit

Integer

[1-1000]

页面大小。默认值为10。

statistic_type

Integer

[1-3]

统计类型。默认值为1。

  • 1:按账期
  • 2:按天
  • 3:按明细

该参数不携带或携带值为null时,取默认值1;不支持携带为空串。

query_type

String

[0-9]

查询类型。默认值为BILLCYCLE。

  • BILLCYCLE:按账期
  • DAILY:按天

仅当statistic_type=2或3时,支持传递query_type=DAILY。

该参数不携带或携带值为null或携带为空串时,取默认值BILLCYCLE。

bill_cycle_begin

String

[0-10]

账期开始时间。格式为YYYY-MM-DD。

仅当query_type=DAILY时,必须传递账期开始时间。

该参数不携带或携带值为null或携带为空串时,不作为筛选条件。

说明:
  • 如果query_type取值不为DAILY,则该参数无效。
  • 如果query_type取值为DAILY,则该参数不能为空,必须和cycle(即资源详单所在账期)在同一个月。

bill_cycle_end

String

[0-10]

账期结束时间。格式为YYYY-MM-DD。

仅当query_type=DAILY时,必须传递账期结束时间。

该参数不携带或携带值为null或携带为空串时,不作为筛选条件。

说明:
  • 如果query_type取值不为DAILY,则该参数无效。
  • 如果query_type取值为DAILY,则该参数不能为空,必须和cycle(即资源详单所在账期)在同一个月。

payer_account_id

String

[1-64]

支付账号ID。

该参数不携带或携带值为null时,不作为筛选条件,同时该参数不支持为空串。

说明:
  • 普通客户、财务独立企业子客户查询消费记录,只能查询到客户自己的消费记录,该参数不携带或携带为自身ID时,查询的都只是自身的消费记录;
  • 企业主客户查询消费记录,不携带时,查询的是自身的、财务托管企业子、财务独立企业子的消费记录;入参自身ID时,查询的是自身的、财务托管企业子的消费记录;也可入参其名下财务独立企业子的客户ID,只查询该财务独立企业子的消费记录;
  • 财务托管企业子查询消费记录,入参自身ID时,查询的是未与企业主关联时的消费记录;入参企业主客户ID时,查询的是与企业主关联后的消费记录;不携带时查询以上全部消费记录。

请求示例

POST https://bss.myhuaweicloud.com/v2/bills/customer-bills/res-records/query HTTP/1.1
Content-Type: application/json
X-Auth-TokenMIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ
X-Language:zh_CN
{
      "cycle": "2018-12",
      "cloud_service_type": "hws.service.type.ec2",
      "resource_type": "hws.resource.type.vm",
      "region": "cn-north-1",
      "res_instance_id": "76*****7f",
      "charge_mode": 1,
      "bill_type": 1,
      "enterprise_project_id": "6***f3-3**4-4**2-9a3e-a****c24",
      "include_zero_record": "true",
       "method": "sub_customer",
       "sub_customer_id": "05b5fef62300d2ad0f98c00befba72c0",
       "offset": 1,
       "limit": 10
}

响应消息

响应参数

参数

参数类型

取值范围

描述

error_code

String

最大长度:16

状态码。具体请参考状态码。只有失败才会返回这个参数。

error_msg

String

最大长度:1024

错误描述信息。只有失败才会返回这个参数。

monthly_records

List<MonthlyBillRes>

-

资源详单数据记录。

具体请参见表2

total_count

Integer

-

结果集数量,只有成功才返回这个参数。

currency

String

最大长度:3

货币单位代码:

CNY:人民币

表2 MonthlyBillRes

参数

参数类型

取值范围

描述

cycle

String

最大长度:8

资源详单数据所在账期,东八区时间,格式为YYYY-MM。

例如2020-01。

bill_date

String

最大长度:10

消费日期,东八区时间,格式为YYYY-MM-DD。

说明:

当statistic_type=2时该字段才有值,否则返回null。

bill_type

Integer

-

账单类型。

  • 1:消费-新购
  • 2:消费-续订
  • 3:消费-变更
  • 4:退款-退订
  • 5:消费-使用
  • 8:消费-自动续订
  • 9:调账-补偿
  • 14:消费-服务支持计划月末扣费
  • 16:调账-扣费
  • 18:消费-按月付费
  • 20:退款-变更
  • 23:消费-节省计划抵扣
  • 24:退款-包年/包月转按需

customer_id

String

最大长度:64

消费的客户账号ID。

  • 如果是普通客户或者企业子客户查询消费记录,只能查询到客户自己的消费记录,且此处显示的是客户自己的客户ID。
  • 如果是企业主查询消费记录,可以查询到企业主以及企业子客户的消费记录,此处为消费的实际客户ID。如果是企业主自己的消费记录,则为企业主ID;如果是某个企业子客户的消费记录,则此处为企业子账号ID。

region

String

最大长度:64

云服务区编码,例如:“cn-north-1”。具体请参见地区和终端节点对应云服务的“区域”列的值。

region_name

String

最大长度:64

云服务区名称,例如:“华北-北京”。具体请参见地区和终端节点对应云服务的“区域名称”列的值。

cloud_service_type

String

最大长度:256

云服务类型编码,例如OBS的云服务类型编码为“hws.service.type.obs”。

resource_Type_code

String

最大长度:64

资源类型编码,例如ECS的VM为“hws.resource.type.vm”。

cloud_service_type_name

String

最大长度:200

云服务类型名称。例如ECS的云服务类型名称为“弹性云服务器”。

resource_type_name

String

最大长度:200

资源类型名称。例如ECS的资源类型名称为“云主机”。

res_instance_id

String

最大长度:256

资源实例ID。

resource_name

String

-

资源名称。客户在创建资源的时候,可以输入资源名称,有些资源也可以在管理资源时,修改资源名称。

root_resource_id

String

-

根资源标识。

parent_resource_id

String

-

父资源标识。

resource_tag

String

最大长度:8192

资源标签。客户在管理资源的时候,可以设置资源标签。

sku_code

String

最大长度:64

SKU编码,在账单中唯一标识一个资源的规格。

enterprise_project_id

String

-

企业项目标识(企业项目ID)。

  • default项目对应ID:0
  • 未归集(表示该云服务不支持企业项目管理能力)项目对应ID:null
  • 其余项目对应ID获取方法请参见如何获取企业项目ID

enterprise_project_name

String

-

企业项目名称。

charge_mode

Integer

-

计费模式。

  • 1 : 包年/包月
  • 3:按需
  • 10:预留实例
  • 11:节省计划

consume_amount

BigDecimal

-

客户购买云服务类型的消费金额,包含代金券、现金券,精确到小数点后2位。

说明:

consume_amount的值等于cash_amount,credit_amount,coupon_amount,flexipurchase_coupon_amount,stored_card_amount,bonus_amount,debt_amount,adjustment_amount的总和。

cash_amount

BigDecimal

-

现金支付金额。

credit_amount

BigDecimal

-

信用额度支付金额。

coupon_amount

BigDecimal

-

代金券支付金额。

flexipurchase_coupon_amount

BigDecimal

-

现金券支付金额。

stored_card_amount

BigDecimal

-

储值卡支付金额。

bonus_amount

BigDecimal

-

奖励金支付金额(用于现网客户未使用完的奖励金)。

debt_amount

BigDecimal

-

欠费金额。

adjustment_amount

BigDecimal

-

欠费核销金额。

official_amount

BigDecimal

-

官网价。

discount_amount

BigDecimal

-

对应官网价折扣金额。

measure_id

Integer

-

金额单位。

  • 1:元

period_type

Integer

-

周期类型:

  • 19:年
  • 20:月
  • 24:天
  • 25:小时
  • 5:一次性

trade_id

String

-

订单ID 或 交易ID。

  • 账单类型为1,2,3,4,8时为订单ID;
  • 其它场景下为: 交易ID(非月末扣费:应收ID;月末扣费:账单ID)。

id

String

最大长度:256

唯一标识。

该字段为预留字段。

product_spec_desc

String

-

产品的规格描述。

sub_service_type_code

String

最大长度:64

整机的子云服务的自身的云服务类型编码。

sub_service_type_name

String

最大长度:200

整机的子云服务的自身的云服务类型名称

sub_resource_type_code

String

最大长度:64

整机的子云服务的自身的资源类型编码

sub_resource_type_name

String

最大长度:200

整机的子云服务的自身的资源类型名称。

sub_resource_id

String

最大长度:64

整机的子云服务的自身的资源ID,资源标识。(如果为预留实例,则为预留实例标识)

sub_resource_name

String

最大长度:256

整机的子云服务的自身的资源名称,资源标识。(如果为预留实例,则为预留实例标识)

pre_order_id

String

最大长度:64

原订单ID 。

az_code_infos

List<AzCodeInfo>

-

可用区信息列表。具体请参见表 AzCodeInfo

payer_account_id

String

最大长度:64

支付账号ID。

说明:
  • 如果是普通客户或者财务独立企业子客户或者企业主客户查询消费记录,此处为客户自己的客户ID。
  • 如果是财务托管企业子查询消费记录,此处为企业主客户ID或自己的客户ID。

effective_time

String

最大长度:32

费用对应的资源使用的开始时间。

statistic_type=3有效,statistic_type=1或者2该字段保留。

expire_time

String

最大长度:32

费用对应的资源使用的结束时间。

statistic_type=3有效,statistic_type=1或者2该字段保留。

consume_time

String

最大长度:32

消费时间。

格式:yyyy-MM-dd'T'HH:mm:ss'Z'。按照UTC时间截取。

  • 计费模式为包年/包月和预留实例预付场景时为订单的交易时间。
  • 计费模式为按需和预留实例按时计费场景时为话单的生/失效时间。
说明:

当统计类型statistic_type=3时,该字段才有值。

表3 AzCodeInfo

参数

参数类型

取值范围

描述

az_code

String

最大长度:64

可用区编码。

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: length
Date: response time  
{
	"monthly_records": [{
		"cycle": "2022-05",
		"bill_date": null,
		"bill_type": 4,
		"customer_id": "05f2******00d50d0f2bc002c46e3020",
		"region": "cn-north-1",
		"region_name": "华北-北京一",
		"cloud_service_type": "hws.service.type.ebs",
		"resource_Type_code": "hws.resource.type.volume",
		"cloud_service_type_name": "云硬盘",
		"resource_type_name": "云硬盘",
		"res_instance_id": "220523_dbc6ee4a02964e04adaa0e01b7a1e8e4",
		"resource_name": "hws.resource.type.volumename",
		"resource_tag": null,
		"sku_code": "SATA",
		"enterprise_project_id": null,
		"enterprise_project_name": "未归集",
		"charge_mode": 1,
		"consume_amount": 0.0,
		"cash_amount": 0.0,
		"credit_amount": 0.0,
		"coupon_amount": 0.0,
		"flexipurchase_coupon_amount": 0.0,
		"stored_card_amount": 0.0,
		"bonus_amount": 0.0,
		"debt_amount": 0.0,
		"adjustment_amount": null,
		"official_amount": 0.0,
		"discount_amount": 0,
		"id": "037e8a2b******01-5f9eb5153cba_1",
		"measure_id": 1,
                "sub_service_type_code": null,
                "sub_service_type_name": null,
                "sub_resource_type_code": null,
                "sub_resource_type_name": null,
                "sub_resource_id": null,
                "sub_resource_name": null,
		"period_type": 20,
		"root_resource_id": null,
		"parent_resource_id": null,
		"trade_id": "CSYD******214V3CC02",
		"product_spec_desc": "普通IO|200GB",
                "pre_order_id": "CS23******54B1AEW4J",
		"az_code_infos": [{
			"az_code": "cn-north-1c"
		}],
                "payer_account_id": "ZS78******56A1BEF4J",
                "effective_time": "2024-07-06T16:00:00Z",
                "expire_time": "2024-08-06T16:00:00Z"
	}],
	"total_count": 7,
	"currency": "CNY"
}

状态码

  • 状态码4xx:由于明显的客户端错误(例如,格式错误的请求语法、参数错误等),华为云会返回4xx错误码,请及时检查请求消息的正确性,重新发起请求。
  • 状态码5xx:由于华为云系统原因,导致无法完成明显有效请求的处理,可及时联系华为云客服处理。

HTTP状态码

错误码

错误描述

400

CBC.0100

参数错误。

403

CBC.0151

访问拒绝。

500

CBC.0999

未知错误。

相关文档