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 Partner 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 |
---|---|---|---|---|---|
Product Management |
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 |
|||
Customer Management |
Registering a customer |
POST /v2/bills/ratings/on-demand-resources |
5/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
POST /v2/bills/ratings/period-resources/subscribe-rate |
10/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 |
|||
Requesting real-name authentication |
POST /v2/customers/realname-auths/individual |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
POST /v2/customers/realname-auths/enterprise |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
PUT /v2/customers/realname-auths/enterprise |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
GET /v2/customers/realname-auths/result |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Managing customers |
POST /v2/partners/sub-customers/query |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
POST /v2/partners/sub-customers/freeze |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
POST /v2/partners/sub-customers/unfreeze |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Reseller Management |
Querying resellers |
POST /v2/partners/indirect-partners/query |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
Credit Management |
Managing credits |
GET /v2/partners/credit/consumption-quota |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
Transaction Management |
Managing customer budgets |
GET /v2/partners/sub-customers/budget |
25/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
POST /v2/partners/sub-customers/budget/query |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
POST /v2/partners/sub-customers/budget |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
Managing coupons |
POST /v2/partners/indirect-partners/query |
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 |
|||
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/suscriptions/resources/query |
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 |
|||
POST /v2/orders/subscriptions/resources/autorenew/{resource_id} |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|||
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 pay-per-use resources |
POST /v2/partners/sub-customers/on-demand-resources/query |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
||
Bill Management |
Managing partner bills |
GET /v2/bills/partner-bills/postpaid-bill-summary |
10/1(s) |
API request throttling dimensions: Source IP address, API, and ParentUid |
|
Invoice Management |
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 partner operations capability APIs. Users can increase the quota based on their service requirements. They 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. They 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