查询按需产品价格
功能介绍
客户在自建平台按照条件查询按需产品的价格。
如果购买该产品的租户享受折扣,可以在查询结果中返回折扣金额以及扣除折扣后的最后成交价。
如果该租户享受多种折扣,系统会优先返回客户享受的商务折扣的折扣金额和最终成交价。
接口约束
该接口可以使用客户AK/SK或者Token调用。
调试
您可以在API Explorer中调试该接口。
URI
POST /v2/bills/ratings/on-demand-resources
请求消息
请求参数
参数 |
是否必选 |
参数类型 |
取值范围 |
描述 |
---|---|---|---|---|
project_id |
是 |
String |
最大长度:64 |
项目ID。 |
product_infos |
是 |
List<DemandProductInfo> |
最大个数:100 |
产品信息列表,询价时要询价产品的信息的列表,具体参见表1。 |
inquiry_precision |
否 |
Integer |
- |
查询价格结果的精度模式。此参数默认值为“0:询价结果默认精度截取”。
说明:
如果询价结果只到元后2位或者3位,那么价格也只到元后2位或者3位,不管传0或者传1都一样,只有询价结果到了小数点后面6位以上,传0和传1才有区别。 |
参数 |
是否必选 |
参数类型 |
取值范围 |
描述 |
---|---|---|---|---|
id |
是 |
String |
最大长度:64 |
ID标识,同一次询价中不能重复,用于标识返回询价结果和请求的映射关系。 |
cloud_service_type |
是 |
String |
最大长度:400 |
云服务类型编码,例如OBS的云服务类型编码为“hws.service.type.obs”。您可以调用查询云服务类型列表接口获取。 |
resource_type |
是 |
String |
最大长度:400 |
资源类型编码,例如ECS的VM为“hws.resource.type.vm”。您可以调用查询资源类型列表接口获取。 ResourceType是CloudServiceType中的一种资源,CloudServiceType由多种ResourceType组合提供。 |
resource_spec |
是 |
String |
最大长度:400 |
云服务类型的资源规格。详情请参见各云服务官方文档。 部分云服务类型和资源规格举例如下:
|
region |
是 |
String |
最大长度:64 |
云服务区编码,例如:“cn-north-1”。具体请参见地区和终端节点对应云服务的“区域”列的值。 |
usage_factor |
是 |
String |
最大长度:64 |
使用量因子编码,大小写不敏感,取值和话单中的使用量因子一致,云服务和使用量因子对应关系举例如下:
|
usage_value |
是 |
BigDecimal |
- |
使用量值。 例如按小时询价,使用量值为1,使用量单位为小时。 |
usage_measure_id |
是 |
Integer |
最大长度:4 |
使用量度量单位,您可以调用查询度量单位列表接口获取。 例如按小时询价,使用量值为1,使用量单位为小时。 |
subscription_num |
是 |
Integer |
[1-10000] |
订购数量。 |
available_zone |
否 |
String |
最大长度:64 |
可用区标识。大小写不敏感。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 |
resource_size |
否 |
Integer |
[1-214783647] |
资源容量大小,例如购买的卷大小或带宽大小。 线性产品时此参数必填。线性产品为包括硬盘,带宽等在订购时需要指定大小的产品。例如硬盘在订购时需选择10G、20G等不同大小。 非线性产品时此参数不携带或者携带值为null时,不作为筛选条件。 |
size_measure_id |
否 |
Integer |
最大长度:4 |
资源容量度量标识,枚举值如下:
该字段随resource_size字段一起填写或不填写。 线性产品为包括硬盘,带宽等在订购时需要指定大小的产品。例如硬盘在订购时需选择10G、20G等不同大小。 非线性产品时此参数不携带或者携带值为null时,不作为筛选条件。 |
请求示例
POST https://bss.myhuaweicloud.com/v2/bills/ratings/on-demand-resources HTTP/1.1 Content-Type: application/json X-Auth-Token:MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ { "project_id": "06488a********832f55c016b0e337d7", "product_infos": [ { "id": "1", "cloud_service_type": "hws.service.type.ec2", "resource_type": "hws.resource.type.vm", "resource_spec": "c3.3xlarge.2.linux", "region": "cn-north-1", "usage_factor": "Duration", "usage_value": 2, "usage_measure_id": 4, "subscription_num": 1, "available_zone": null }, { "id": "2", "cloud_service_type": "hws.service.type.ebs", "resource_type": "hws.resource.type.volume", "resource_spec": "SSD", "region": "cn-north-1", "usage_factor": "Duration", "usage_value": 2, "usage_measure_id": 4, "subscription_num": 1, "resource_size": 10, "size_measure_id": 17 }, { "id": "3", "cloud_service_type": "hws.service.type.vpc", "resource_type": "hws.resource.type.ip", "resource_spec": "5_bgp", "region": "cn-north-1", "usage_factor": "Duration", "usage_value": 3, "usage_measure_id": 4, "subscription_num": 1, "available_zone": null }, { "id": "4", "cloud_service_type": "hws.service.type.vpc", "resource_type": "hws.resource.type.bandwidth", "resource_spec": "12_sbgp", "region": "cn-north-1", "usage_factor": "upflow", "usage_value": 4, "usage_measure_id": 10, "subscription_num": 1, "available_zone": "cn-north-1a", "resource_size": 1, "size_measure_id": 15 } ], "inquiry_precision": 1 }
响应消息
响应参数
参数 |
参数类型 |
取值范围 |
描述 |
---|---|---|---|
error_code |
String |
最大长度:20 |
状态码。具体请参考状态码。只有失败才返回该字段。 |
error_msg |
String |
最大长度:1000 |
错误描述信息。只有失败才返回该字段。 |
amount |
BigDecimal |
- |
优惠后的最终金额。 |
discount_amount |
BigDecimal |
- |
优惠额(官网价和总价的差)。 |
official_website_amount |
BigDecimal |
- |
按需产品的官网价。 |
measure_id |
Integer |
最大长度:4 |
度量单位标识。 1:元 |
currency |
String |
最大长度:20 |
币种。 CNY:人民币。 值为空代表人民币。 |
product_rating_results |
List<DemandProductRatingResult> |
- |
产品询价结果,具体参见表2。 |
参数 |
参数类型 |
取值范围 |
描述 |
---|---|---|---|
id |
String |
最大长度:64 |
同一次询价中不能重复,用于标识返回询价结果和请求的映射关系。 |
product_id |
String |
最大长度:64 |
按需产品的ID。 |
amount |
BigDecimal |
- |
优惠后的最终金额。 |
discount_amount |
BigDecimal |
- |
优惠额(官网价和总价的差)。 |
official_website_amount |
BigDecimal |
- |
按需产品的官网价。 |
measure_id |
Integer |
最大长度:4 |
价格度量单位标识。 1:元 |
discount_rating_results |
List<DemandDiscountRatingResult> |
- |
折扣优惠明细,包含产品本身的促销信息,同时包含商务或者伙伴折扣的优惠信息,具体参见表3。 |
参数 |
参数类型 |
取值范围 |
描述 |
---|---|---|---|
discount_id |
String |
最大长度:64 |
优惠标识ID。 |
discount_type |
Integer |
最大长度:4 |
折扣优惠类型。 |
amount |
BigDecimal |
- |
折扣的金额。 |
measure_id |
Integer |
最大长度:4 |
度量单位标识。 1:元 |
discount_name |
String |
最大长度:256 |
折扣名称。 |
响应示例
HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 Content-Length: length Date: response time { "amount": 8.128, "discount_amount": 0.0, "official_website_amount": 8.128, "measure_id": 1, "currency": "CNY", "product_rating_results": [ { "id": "1", "product_id": "00301-243025-0--0_merge", "amount": 5.48, "discount_amount": 0.0, "official_website_amount": 5.48, "measure_id": 1, "discount_rating_results": [] }, { "id": "2", "product_id": "00301-290407774-0--1", "amount": 0.028, "discount_amount": 0.0, "official_website_amount": 0.028, "measure_id": 1, "discount_rating_results": [] }, { "id": "3", "product_id": "00301-238601-0--0_merge", "amount": 0.06, "discount_amount": 0.0, "official_website_amount": 0.06, "measure_id": 1, "discount_rating_results": [] }, { "id": "4", "product_id": "00301-290407706-0--1", "amount": 2.56, "discount_amount": 0.0, "official_website_amount": 2.56, "measure_id": 1, "discount_rating_results": [] } ] }
状态码
- 状态码4xx:由于明显的客户端错误(例如,格式错误的请求语法、参数错误等),华为云会返回4xx错误码,请及时检查请求消息的正确性,重新发起请求。
- 状态码5xx:由于华为云系统原因,导致无法完成明显有效请求的处理,可及时联系华为云客服处理。
HTTP状态码 |
错误码 |
错误描述 |
---|---|---|
400 |
CBC.0100 |
参数错误。 |
400 |
CBC.99006006 |
产品未发现。 |
400 |
CBC.99006050 |
使用量单位错误。 |
400 |
CBC.99006055 |
询价结果超过金额最大限制。 |
400 |
CBC.99006074 |
计费因子不存在。 |
403 |
CBC.0151 |
拒绝访问。 |
500 |
CBC.0999 |
其他错误。 |