Request body for buying a yearly/monthly-billed cloud WAF instance
Function
Request body for buying a yearly/monthly-billed cloud WAF instance. Expansion packages are not supported by the starter edition.
Constraints
If the payment fails, the system automatically generates a pending payment order. You can select another payment method on the console.
URI
POST /v1/{project_id}/waf/subscription/purchase/prepaid-cloud-waf
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| project_id | Yes | String | Project ID. To obtain the value, go to the Cloud management console first. Then, click your username, select My Credentials, and view the Project ID column in the Projects area. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| enterprise_project_id | No | String | You can obtain the ID by calling the ListEnterpriseProject API of EPS. |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| X-Auth-Token | Yes | String | User token. It can be obtained by calling the IAM API (value of X-Subject-Token in the response header). |
| Content-Type | Yes | String | Content type. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| project_id | Yes | String | Project ID |
| is_auto_pay | Yes | Boolean | Whether automatic payment is enabled.
|
| is_auto_renew | Yes | Boolean | Whether auto-renewal is enabled.
|
| region_id | Yes | String | region Id |
| waf_product_info | No | WafProductInfo object | Details about purchased WAF instances |
| domain_expack_product_info | No | ExpackProductInfo object | Domain name expansion packages purchased |
| bandwidth_expack_product_info | No | ExpackProductInfo object | Bandwidth expansion packages purchased |
| rule_expack_product_info | No | ExpackProductInfo object | Rule expansion packages purchased |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| resource_spec_code | No | String | WAF editions
|
| period_type | No | String | Period type in yearly/monthly billing. month (2) is for monthly billing and year(3) for yearly billing. |
| period_num | No | Integer | Number of subscription periods |
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| orderId | String | Order ID. |
Status code: 400
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code |
| error_msg | String | Error message |
Status code: 401
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code |
| error_msg | String | Error message |
Status code: 500
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code |
| error_msg | String | Error message |
Example Requests
The following example shows how to purchase yearly/monthly billed cloud WAF. Project Id:550500b49078408682d0d4f7d923f3e1. Auto-renewal: Disabled. Region ID: xx-xxxxx-x. Quantity of bandwidth expansion packages: 1.
POST https://{Endpoint}/v1/{project_id}/waf/subscription/purchase/prepaid-cloud-waf?enterprise_project_id=0
{
"project_id" : "550500b49078408682d0d4f7d923f3e1",
"is_auto_renew" : false,
"is_auto_pay" : false,
"region_id" : "xx-xxxxx-x",
"bandwidth_expack_product_info" : {
"resource_size" : 1
}
} Example Responses
Status code: 200
Request succeeded.
{
"orderId" : "38ff0cb9a10e4d5293c642bc0350fa6d"
} Status Codes
| Status Code | Description |
|---|---|
| 200 | Request succeeded. |
| 400 | Request failed. |
| 401 | The token does not have required permissions. |
| 500 | Internal server error. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.