Querying Orders
Function
After a customer purchases yearly/monthly resources, it can query the orders in different statuses, such as in the pending approval, processing, canceled, completed, and pending payment statuses.
A partner can log in to Partner Center and follow the instructions described in Viewing a Customer's Orders to view orders of a customer.
If you want to query the resource information of a specified order, invoke this API to obtain the order ID and then invoke the API described in Querying Customer's Yearly/Monthly Resources. Enter the order ID in the request to query the resource information.
Constraints
This API can be invoked using the AK/SK or token of the partner or of the partner's customer. If partner's AK/SK or token is used, the orders paid by all customers of the partner can be queried.
Debugging
You can debug the API in API Explorer which supports automatic authentication. API Explorer can automatically generate and debug example SDK code.
URI
Parameter |
Mandatory |
Type |
Maximum Length/Value Range |
Description |
---|---|---|---|---|
order_id |
No |
String |
A maximum of 64 characters |
Order ID. Order IDs are case insensitive. If this parameter is not included or is left empty, it will not be used as a filter criterion. If it is set to null, it can be used as a filter criterion. This parameter cannot be set to "".
NOTE:
When special characters are used for query, perform the URL code conversion. For example, % should be converted to %25. |
customer_id |
No |
String |
A maximum of 64 characters |
Customer account ID. To obtain the customer ID, call the API in Querying Customers. If this parameter is not included, it will not be used as a filter criterion. If it is set to null, it can be used as a filter criterion. This parameter cannot be set to "" or left empty. |
create_time_begin |
No |
String |
A maximum of 20 characters |
Start time of order creation. UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, such as 2019-05-06T08:05:01Z The range of HH is 0-23, and the range of mm and ss is 0-59. The span between the order creation time and end time cannot be more than 1 year. If this parameter is not included or is left empty, it will not be used as a filter criterion. It cannot be set to "" or null. |
create_time_end |
No |
String |
A maximum of 20 characters |
End time of order creation. UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, such as 2019-05-06T08:05:01Z The range of HH is 0-23, and the range of mm and ss is 0-59. The span between the order creation time and the end time cannot be more than 1 year. If this parameter is not included or is left empty, it will not be used as a filter criterion. It cannot be set to "" or null. |
service_type_code |
No |
String |
A maximum of 64 characters |
Cloud service type code. For example, the cloud service type code of OBS is hws.service.type.obs. Cloud service type code is case insensitive. You can call Querying Cloud Service Types to obtain a specific service type. If this parameter is not included or is left empty, it will not be used as a filter criterion. If this parameter is set to "" or null, it will be used as a filter criterion. |
status |
No |
Integer |
- |
Order status. The value can be:
If this parameter is not included, is left empty, or is set to null, it will not be used as a filter criterion. It cannot be set to "". |
order_type |
No |
String |
A maximum of 64 characters |
Order type. The value can be:
If this parameter is not included or is left empty, it will not be used as a filter criterion. It cannot be set to "" or null. |
limit |
No |
Integer |
1 to 100 |
Number of orders queried each time. The default value is 10. If this parameter is not included, is left empty, or is set to null, the value 10 is used. This parameter cannot be set to "". |
offset |
No |
Integer |
0 to a maximum integer |
Offset, which starts from 0. The default value is 0. If this parameter is not included, is left empty, or is set to null, the value 0 is used. This parameter cannot be set to "".
NOTE:
This parameter is used for pagination. Retain its default value 0 if pagination is not required. offset indicates the offset relative to the first data record among all that meets the conditions configured. If you set offset to 1, the second and subsequent data records are returned. For example, if there are 10 records that meet query conditions, when you set limit to 10 and offset to 1, the second to the tenth records are returned. If there are 20 records that meet query conditions, when you set offset to 0 and limit to 10 for the first page and set offset to 10 and limit to 10 for the second page, then each page will respectively have 10 records. |
order_by |
No |
String |
A maximum of 36 characters |
Sorting order of the orders. This parameter is case insensitive. You can sort the orders by creation time. If you set the value to createTime, the system sorts orders by creation time in ascending order. If you set the value to -createTime, the system sorts orders by creation time in descending order. If this parameter is not included, is left empty, or is set to "" or null, orders will be sorted by creation time in descending orders. |
payment_time_begin |
No |
String |
A maximum of 20 characters |
Start time of order payment. UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, such as 2019-05-06T08:05:01Z The range of HH is 0-23, and the range of mm and ss is 0-59. The span between the order payment start time and end time cannot be more than 1 year. If this parameter is not included or is left empty, it will not be used as a filter criterion. It cannot be set to "" or null. |
payment_time_end |
No |
String |
A maximum of 20 characters |
End time of order payment. UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, such as 2019-05-06T08:05:01Z The range of HH is 0-23, and the range of mm and ss is 0-59. The span between the order payment start time and end time cannot be more than 1 year. If this parameter is not included or is left empty, it will not be used as a filter criterion. It cannot be set to "" or null. |
indirect_partner_id |
No |
String |
A maximum of 64 characters |
Reseller ID. For details about how to obtain such IDs, see Query Huawei Cloud Resellers. If a distributor needs to query orders of their resellers' customers, this parameter must be included. If it is not included, orders of the distributor's customers will be returned. If this parameter is not included or is left empty, it will not be used as a filter criterion. If this parameter is set to "" or null, it will be used as a filter criterion. |
method |
No |
String |
A maximum of 64 characters |
Query method.
If this parameter is not included in the request parameters, is set to "", or is set to null, the default value oneself is used. |
Request
Request Parameters
None
Example Request
GET https://bss-intl.myhuaweicloud.com/v2/orders/customer-orders?order_id=CS1905251035OA1AF&customer_id=c9e731c4663646988ef4cdb3122837b6&create_time_begin=2020-05-06T08:05:01Z&create_time_end=2020-05-07T08:05:01Z&service_type_code=hws.service.type.obs&status=5&order_type=1&limit=10&offset=0&order_by=-createTime&payment_time_begin=2020-05-06T08:05:01Z&payment_time_end=2020-05-07T08:05:01Z&indirect_partner_id=646988ef4cdb3122834feswrygfd HTTP/1.1 Content-Type: application/json X-Auth-Token: MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ
Response
Response Parameters
Parameter |
Type |
Maximum Length/Value Range |
Description |
---|---|---|---|
error_code |
String |
A maximum of 20 characters |
Status code. For details, see Returned Values. |
error_msg |
String |
A maximum of 2,000 characters |
Error description. |
total_count |
Integer |
An integer greater than or equal to 0 |
An integer greater than or equal to 0. Number of records that match the query conditions. |
order_infos |
List<CustomerOrderV2> |
- |
Order details. For details, see Table 2. |
Parameter |
Type |
Maximum Length |
Description |
---|---|---|---|
order_id |
String |
A maximum of 64 characters |
Order ID |
customer_id |
String |
A maximum of 64 characters |
Customer account ID. |
service_type_code |
String |
A maximum of 64 characters |
Cloud service type code. For example, the cloud service type code of OBS is hws.service.type.obs. |
service_type_name |
String |
A maximum of 200 characters |
Cloud service type. For example, the cloud service type of ECS is Elastic Cloud Server. |
source_type |
Integer |
- |
Customer order source type. The value can be:
|
status |
Integer |
- |
Order status. The value can be:
|
order_type |
Integer |
- |
Order type. The value can be:
|
official_amount |
Double |
- |
Order amount (list price). In the unsubscription order, this amount equals the value of amount_after_discount. |
amount_after_discount |
Double |
- |
Order amount after a discount (excluding the vouchers or cards). |
measure_id |
Integer |
- |
Order amount unit.
|
create_time |
String |
A maximum of 20 characters |
Creation time. UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, such as 2019-05-06T08:05:01Z The range of HH is 0-23, and the range of mm and ss is 0-59. |
payment_time |
String |
A maximum of 20 characters |
Payment time. UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, such as 2019-05-06T08:05:01Z The range of HH is 0-23, and the range of mm and ss is 0-59. |
currency |
String |
A maximum of 4 characters |
Currency code. |
contract_id |
String |
A maximum of 64 characters |
Contract ID. |
amount_info |
AmountInfoV2 Object |
- |
Order details For details, see Table 3. |
enterprise_projects |
List<EnterpriseProject> |
- |
Enterprise project details of a customer order. For details, see Table 5.
NOTE:
You can query enterprise project information for each order in batch unsubscription and renewal scenarios by order ID. |
Parameter |
Type |
Maximum Length |
Description |
---|---|---|---|
discounts |
List<DiscountItemV2> |
- |
Item For details, see Table 4. |
flexipurchase_coupon_amount |
Double |
- |
Flexi-purchase coupon amount (reserved). |
coupon_amount |
Double |
- |
Cash coupon amount. |
stored_card_amount |
Double |
- |
Stored-value card amount (reserved). |
commission_amount |
Double |
- |
Handling fee (only for unsubscription orders). |
consumed_amount |
Double |
- |
Consumptions (only for unsubscription orders). |
Parameter |
Type |
Maximum Length |
Description |
---|---|---|---|
discount_type |
String |
A maximum of 8 characters |
Discount type.
|
discount_amount |
Double |
- |
Discounted amount. |
Parameter |
Type |
Maximum Length |
Description |
---|---|---|---|
id |
String |
A maximum of 256 characters |
Enterprise project ID. |
name |
String |
A maximum of 256 characters |
Enterprise project name. |
HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 Content-Length: length Date: response time { "total_count": 1, "order_infos": [ { "order_id": "CS2405161952CE7IU5QmodifyJobAndPartFailJob", "customer_id": "0c7fd9bdfb80d4170fb1c0056128d420", "service_type_code": "hws.service.type.ec2", "service_type_name": "Elastic Cloud Server" "source_type": 1, "status": 5, "order_type": 1, "amount_after_discount": 274.6, "official_amount": 349.5, "measure_id": 1, "create_time": "2024-05-16T11:52:10Z", "payment_time": "2024-05-16T12:18:35Z", "currency": "USD", "contract_id": null, "amount_info": { "discounts": [ { "discount_type": "700", "discount_amount": 69.9 }, { "discount_type": "301", "discount_amount": 5.0 } ], "flexipurchase_coupon_amount": 0.0, "coupon_amount": 5.0, "stored_card_amount": 0.0, "commission_amount": null, "consumed_amount": null }, "enterprise_projects": [ { "id": "0", "name": "default" } ] } ] }
Returned Values
- 4xx: This class of HTTP status code is intended for situations in which the error seems to have been caused by the client, for example, the request contains bad syntax or incorrect parameters. You must ensure the request is correct.
- 5xx: This class of HTTP status code is intended for cases in which the Huawei Cloud server is aware that it has encountered an error or is otherwise incapable of performing the request. In this case, contact Huawei Cloud customer service.
HTTP Value |
Error Code |
Description |
---|---|---|
400 |
CBC.0100 |
Parameter error. |
400 |
CBC.0101 |
Invalid parameter. |
400 |
CBC.99000037 |
You do not have the permission to operate this reseller. |
403 |
CBC.0155 |
Request denied. The possible causes are as follows: The account authentication information is incorrect. The account or member account does not have the permission to call the API. |
500 |
CBC.0999 |
Other errors. |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot