更新时间:2024-03-18 GMT+08:00

查询资源详单

功能介绍

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

开通月度结算的后付费客户登录费用中心查询资源详单请参见这里

接口约束

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

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

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

请求消息

请求参数

参数

是否必选

参数类型

取值范围

描述

cycle

String

最大长度:8

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

示例:2019-01。

说明:

不支持2019年1月份之前的资源详单。

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

云服务区编码,例如:“ap-southeast-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:消费-服务支持计划月末扣费
  • 15:消费-税金
  • 16:调账-扣费
  • 17:消费-保底差额
    说明:

    保底差额=客户签约保底合同后,如果没有达到保底消费,客户需要补交的费用,仅限于直销或者伙伴顾问销售类子客户,且为后付费用户。

  • 20:退款-变更
  • 23:消费-节省计划抵扣
  • 24:退款-包年/包月转按需
  • 100:退款-退订税金
  • 101:调账-补偿税金
  • 102:调账-扣费税金

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

enterprise_project_id

String

最大长度:64

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

  • default项目对应ID:0
  • 未归集(表示该云服务不支持企业项目管理能力)项目对应ID:-1或null

此参数不携带或携带值为空串或携带值为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-2]

统计类型。默认值为1。

  • 1:按账期
  • 2:按天

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

query_type

String

[0-9]

查询类型。默认值为BILLCYCLE。

  • BILLCYCLE:按月
  • DAILY:按天

仅当statistic_type=2时,支持传递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(即资源详单所在账期)在同一个月。

请求示例

POST https://bss-intl.myhuaweicloud.com/v2/bills/customer-bills/res-records/query HTTP/1.1
Content-Type: application/json
X-Auth-TokenMIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ
{
      "cycle": "2018-12",
      "cloud_service_type": "hws.service.type.ec2",
      "resource_type": "hws.resource.type.vm",
      "region": "ap-southeast-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>

-

资源详单数据记录。

具体请参见表1

total_count

Integer

-

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

currency

String

最大长度:3

货币单位代码:

USD:美元

表1 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:消费-服务支持计划月末扣费
  • 15:消费-税金
  • 16:调账-扣费
  • 17:消费-保底差额
    说明:

    保底差额=客户签约保底合同后,如果没有达到保底消费,客户需要补交的费用,仅限于直销或者伙伴顾问销售类子客户,且为后付费用户。

  • 20:退款-变更
  • 23:消费-节省计划抵扣
  • 24:退款-包年/包月转按需
  • 100:退款-退订税金
  • 101:调账-补偿税金
  • 102:调账-扣费税金

customer_id

String

最大长度:64

消费的客户账号ID。

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

region

String

最大长度:64

云服务区编码,例如:“ap-southeast-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

-

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

sku_code

String

最大长度:64

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

enterprise_project_id

String

-

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

  • default项目对应ID:0
  • 未归集(表示该云服务不支持企业项目管理能力)项目对应ID:-1或null

enterprise_project_name

String

-

企业项目名称。

charge_mode

Integer

-

计费模式。

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

consume_amount

BigDecimal

-

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

说明:

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

最大长度:64

唯一标识。

该字段为预留字段。

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

表2 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": "ap-southeast-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"
		}]
	}],
	"total_count": 7,
	"currency": "USD"
}

状态码

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

HTTP状态码

错误码

错误描述

400

CBC.0100

参数错误。

403

CBC.0151

访问拒绝。

500

CBC.0999

未知错误。