Request Throttling
What Is Request Throttling?
Request throttling is a method used by Huawei Cloud to control the frequency of calling open APIs. A quota refers to the maximum number of calls made to a single API within a specified time window.
Request Throttling for Customer Operations Capability APIs
Traffic quota: 10/1(s); API request throttling dimensions: source IP address, API, and ParentUid, indicating that a single user or source IP address can send up to 10 requests to the API every second.
Scenario |
Sub-Scenario |
API |
URL |
Traffic Quota |
Quota Dimension |
---|---|---|---|---|---|
Managing Products |
Querying product information |
GET /v2/products/service-types |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
GET /v2/products/resource-types |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/products/service-resources |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/products/usage-types |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/bases/measurements |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/bases/conversions |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Querying product price |
POST /v2/bills/ratings/on-demand-resources |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
POST /v2/bills/ratings/period-resources/subscribe-rate |
30/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
POST /v2/bills/ratings/period-resources/renew-rate |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Managing Accounts |
- |
GET /v2/accounts/customer-accounts/balances |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
Managing Transactions |
Managing coupons |
GET /v2/accounts/partner-accounts/account-change-records |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
Managing yearly/monthly orders |
GET /v2/orders/customer-orders |
20/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
GET /v2/orders/customer-orders/details/{order_id} |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/orders/customer-orders/order-discounts |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
POST /v3/orders/customer-orders/pay |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
PUT /v2/orders/customer-orders/cancel |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/orders/customer-orders/refund-orders |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Managing yearly/monthly resources |
POST /v2/orders/subscriptions/resources/renew |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
POST /v2/orders/subscriptions/resources/renew |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
POST /v2/orders/subscriptions/resources/unsubscribe |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Enabling Automatic Subscription Renewal for Yearly/Monthly Resources |
POST /v2/orders/subscriptions/resources/autorenew/{resource_id} |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
Disabling Automatic Subscription Renewal for Yearly/Monthly Resources |
DELETE /v2/orders/subscriptions/resources/autorenew/{resource_id} |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
Enabling/Canceling the Change from Yearly/Monthly to Pay-per-Use upon Expiration |
POST /v2/orders/subscriptions/resources/to-on-demand |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
Managing resource packages |
POST /v3/payments/free-resources/query |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
POST /v2/payments/free-resources/usages/details/query |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/bills/customer-bills/free-resources-usage-records |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Managing Bills |
Managing bills |
GET /v2/bills/customer-bills/monthly-sum |
25/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
POST /v2/bills/customer-bills/res-records/query |
30/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/bills/customer-bills/res-fee-records |
30/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Management Costs |
Management costs |
POST /v4/costs/cost-analysed-bills/query |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
Managing an Enterprise |
Managing enterprise projects |
POST /v2/enterprises/enterprise-projects/authority |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
Managing Invoices |
Managing invoices |
GET /v1.0/{domain_id}/payments/intl-invoices |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
Troubleshooting for Request Throttling Failure
The following is an example of error returned by an API:
{"status_code":429,"request_id":"7e6c1***********c610","error_code":"APIGW.0308","error_message":"The throttling threshold has been reached: policy user over ratelimit,limit:10,time:1 second","encoded_authorization_message":""}
Troubleshooting
Huawei Cloud provides default traffic quotas for customer operations capability APIs. Users can increase the quota based on their service requirements. Users can monitor status code 429 and construct a retry mechanism. The retry mechanism should follow an exponential backoff plan to reduce the number of requests if necessary. The user can also establish some randomness in the backoff timesheets to avoid severe herd mentality.
Adjusting Quotas
If the traffic quota cannot meet your service requirements and concurrency scenarios, submit a Huawei Cloud service ticket with the service scenario description attached. After receiving the service ticket, the Huawei Cloud after-sales service team will adjust the quota based on your requirements.
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