查询按需产品价格
功能介绍
客户在自建平台按照条件查询按需产品的价格。
如果购买该产品的租户享受折扣,可以在查询结果中返回折扣金额以及扣除折扣后的最后成交价。
如果该租户享受多种折扣,系统会优先返回客户享受的商务折扣的折扣金额和最终成交价。
接口约束
该接口可以使用客户AK/SK或者Token调用。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
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 | 云服务区编码,例如:“ap-southeast-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-intl.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": "ap-southeast-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": "ap-southeast-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": "ap-southeast-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": "ap-southeast-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 | 币种。 USD:美元。 值为空代表美元。 | 
| 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。 
         说明: 
         用户无对应权限时,该字段不返回内容,参见API调用授权(客户)。 | 
| 参数 | 参数类型 | 取值范围 | 描述 | 
|---|---|---|---|
| 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": "USD",
    "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 | 其他错误。 | 
 
     
      