Creating a Yearly/Monthly Vault
Function
This API is used to create a yearly/monthly vault.
Debugging
You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.
Authorization Information
Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.
- If you are using role/policy-based authorization, see Permissions Policies and Supported Actions for details on the required permissions.
- If you are using identity policy-based authorization, no identity policy-based permission required for calling this API.
URI
POST /v3/{project_id}/vaults/order
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| project_id | Yes | String | Project ID. Default value: N/A For details about how to obtain the project ID, see Obtaining a Project ID. |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| X-Auth-Token | Yes | String | User token. You can obtain it by calling the IAM API for obtaining a user token. The user token is the value of X-Subject-Token in the response header. Default value: N/A |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| vault | Yes | PrePaidVaultOrder object | Vaults |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| name | No | String | Vault name. The value can contain a maximum of 64 characters, including letters, digits, underscores (_), and hyphens (-). Default value: N/A |
| billing | Yes | PrePaidBillingCreate object | Billing parameter for creating a vault. |
| resources | Yes | Array of ResourceCreate objects | Associated resources to be backed up. If no resource is associated during vault creation, enter []. |
| description | No | String | Vault description. Range: 0–255. Default value: N/A |
| backup_policy_id | No | String | Backup policy ID. The default value is null, indicating that automatic backup is not enabled. For details about how to obtain the backup policy ID, see Querying the Policy List. |
| tags | No | Array of Tag objects | Tag list. tags cannot be an empty list. tags can contain up to 10 keys. key in tags must be unique. |
| enterprise_project_id | No | String | Enterprise project ID. The default value is 0. For details, see How Do I Obtain an Enterprise Project ID? |
| auto_bind | No | Boolean | Whether automatic association is supported. The default value is false. Range: |
| bind_rules | No | VaultBindRules object | Automatic association rule. |
| threshold | No | Integer | Vault capacity threshold. If the vault usage exceeds this threshold and smn_notify is true, a notification will be sent. Range: 1–100. The default value is 80. |
| smn_notify | No | Boolean | Whether to send SMN notifications. The default value is true. Range: |
| parameters | No | VaultCreateParameters object | Vault order combined parameters. |
| auto_expand | No | Boolean | Whether to enable automatic capacity expansion (supported for pay-per-use vaults only). The default value is false. Range: |
| locked | No | Boolean | Whether the vault is locked. A locked vault cannot be unlocked. The default value is false. For details about backup locking, see Enabling Backup Locking. Range: |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| cloud_type | No | String | Cloud type. The default value is public. The following types are supported: public: public cloud; hybrid: hybrid cloud |
| consistent_level | Yes | String | Vault specifications. Range: app_consistent (application consistency); crash_consistent (crash consistency). Default value: N/A |
| object_type | Yes | String | Object type. The value can be server, disk, turbo, workspace, vmware, rds, or file. server: cloud server; disk: cloud disk; turbo: file system; workspace: cloud desktop; vmware: VMware; rds: relational database; file: file. Default value: N/A |
| protect_type | Yes | String | Protection type. Default value: N/A. Range: backup or replication |
| size | Yes | Integer | Resource capacity, in GB. Range: 10–10485760. Default value: N/A |
| charging_mode | Yes | String | Billing mode. Only pre_paid is supported, indicating the yearly/monthly billing mode. |
| period_type | Yes | String | Unit of the subscription term. period_type is valid and mandatory only when charging_mode is pre_paid. Default value: N/A Range: |
| period_num | Yes | Integer | Subscription term. period_num is valid and mandatory only when charging_mode is pre_paid. Default value: N/A Range: 1–9 |
| is_auto_renew | No | Boolean | Whether to automatically renew the subscription upon expiration. The default value is false. Range: |
| is_auto_pay | No | Boolean | Whether to automatically pay for the order. The default value is false. Range: |
| console_url | No | String | URL used to switch to the cloud service console to view information after the payment is made. (Involved only with manual payments.) Default value: N/A |
| is_multi_az | No | Boolean | Whether the vault has the multi-AZ attribute, that is, whether the underlying backup is a multi-AZ backup. The default value is false. Range: |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| extra_info | No | ResourceExtraInfo object | Extra information of the resource |
| id | Yes | String | ID of the resource to be backed up. The resource must have not been associated with the vault and can be backed up. Default value: N/A For details about how to obtain the ID, see Querying a Specified Vault and Querying a Specified Protectable Resource. |
| type | Yes | String | Type of the resource to be backed up: OS::Nova::Server: ECS; OS::Cinder::Volume: EVS disks; OS::Ironic::BareMetalServer: Bare Metal Servers; OS::Sfs::Turbo: SFS Turbo file systems; OS::Workspace::DesktopV2: Workspaces Default value: N/A |
| name | No | String | Name of the resource. The value can contain a maximum of 255 characters. Default value: N/A |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| exclude_volumes | No | Array of strings | Definition IDs of the disks that do not need to be backed up. This parameter is valid only for multi-disk backup to specify disks that do not need to be backed up. When a disk is newly attached to a VM, existing disks that do not need to be backed up can also be excluded. Range N/A |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| key | Yes | String | Tag key. A key consists of up to 36 characters. A key cannot be an empty string. Spaces before and after a key will be discarded. A key cannot contain the following characters: ASCII (0-31), equal signs (=), asterisks (*), left angle brackets (<), right angle brackets (>), backslashes (), commas (,), vertical bars (|), and slashes (/). A key can contain only letters, digits, hyphens (-), and underscores (_). When creating tags, if the request body contains duplicate keys, an error will be reported. When creating tags, if a new tag's key duplicates an existing tag's key, the new tag overwrites the existing one. When deleting tags, duplicate keys are allowed. When deleting tags, non-existent tags are treated as successfully deleted by default. The character set of tags is not verified. When deleting tags, the tags structure must be provided, and key cannot be null or an empty string. |
| value | Yes | String | Tag value. A value is mandatory when a tag is added and optional when a tag is deleted. A value consists of up to 43 characters. A value can be an empty string. Spaces before and after a value will be discarded. A value cannot contain the following characters: ASCII (0-31), equal signs (=), asterisks (*), left angle brackets (<), right angle brackets (>), backslashes (), commas (,), vertical bars (|), and slashes (/). A value can contain only letters, digits, hyphens (-), underscores (_), and periods (.). |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| tags | No | Array of BindRulesTags objects | Resources automatically filtered by tag. Minimum length: 0 characters Maximum length: 5 characters |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| key | Yes | String | The key cannot contain the following characters: ASCII (0-31), equal signs (=), asterisks (*), left angle brackets (<), right angle brackets (>), backslashes (), commas (,), vertical bars (|), and slashes (/). Default value: N/A The key can contain only letters, digits, hyphens (-), and underscores (). |
| value | Yes | String | The value cannot contain the following characters: ASCII (0-31), equal signs (=), asterisks (*), left angle brackets (<), right angle brackets (>), backslashes (), commas (,), vertical bars (|), and slashes (/). Default value: N/A The value can contain only letters, digits, hyphens (-), underscores (), and periods (.). |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| combined_order | No | CombinedOrder object | Combined order |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| combined_order_id | No | String | Combined order ID. Range: N/A; Default value: N/A |
| combined_order_ecs_num | No | Integer | Number of ECSs in a combined order. The value ranges from 1 to 1000. Default value: N/A |
| combined_order_num | No | Integer | Number of combined orders. Range: [1,1000]; Default value: N/A |
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| orders | Array of CbcOrderResult objects | Order details |
| retCode | Integer | Creation result code. 0: The creation is successful. Other values indicate that the creation fails. Default value: N/A |
| errText | String | Information about the creation result. Range: N/A; Default value: N/A |
| error_code | String | Operation error code. 0: No error occurs. Other values indicate the error code of the creation failure. Default value: N/A |
| Parameter | Type | Description |
|---|---|---|
| cloudServiceId | String | Cloud service ID. Range: N/A; Default value: N/A |
| orderId | String | Order ID. Range: N/A; Default value: N/A |
| subscribeResult | Integer | Subscription result. The value can be: |
| resourceId | String | ID of a pre-generated yearly/monthly resource. Range: N/A; Default value: N/A |
Status code: 400
| Parameter | Type | Description |
|---|---|---|
| error_code | String | For details, see Error Codes. |
| error_msg | String | Error message |
Example Requests
-
Creating an 80-GB yearly/monthly server backup vault, setting the duration to 1 month, and associating a resource with the vault
POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults/order { "vault" : { "name" : "vault_name", "billing" : { "consistent_level" : "app_consistent", "object_type" : "server", "protect_type" : "backup", "size" : 80, "charging_mode" : "pre_paid", "period_type" : "month", "period_num" : 1 }, "resources" : [ { "id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c", "type" : "OS::Nova::Server" } ] } } -
Creating an 80-GB yearly/monthly server backup vault using the combined purchase (allowing up to 5 servers in an order), setting the duration to 1 month, associating a resource, and adding tags
POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults/order { "vault" : { "name" : "123", "description" : "description", "backup_policy_id" : "70e9c916-7109-472d-94e7-120900e4ba61", "tags" : [ { "key" : "key", "value" : "value" } ], "auto_bind" : false, "threshold" : 80, "smn_notify" : true, "parameters" : { "combined_order" : { "combined_order_id" : "CS2303030959MR1IT", "combined_order_ecs_num" : 5, "combined_order_num" : 5 } }, "bind_rules" : { "tags" : [ { "key" : "bind_rules_key", "value" : "bind_rules_value" } ] }, "billing" : { "cloud_type" : "public", "is_auto_renew" : false, "is_auto_pay" : false, "console_url" : "https://www.com", "consistent_level" : "app_consistent", "object_type" : "server", "protect_type" : "backup", "size" : 80, "charging_mode" : "pre_paid", "period_type" : "month", "period_num" : 1 }, "resources" : [ { "id" : "8ef08ba1-81f7-4e41-ae49-d3e2fb0ba388", "type" : "OS::Nova::Server", "name" : "server_name", "extra_info" : { "exclude_volumes" : [ "1855eb9a-2b5e-4938-a9f0-aea08b6f9243" ] } } ] } }
Example Responses
Status code: 200
{
"orders" : [ {
"orderId" : "CS2303030941NJJIW",
"cloudServiceId" : "cbr",
"subscribeResult" : 1,
"resourceId" : "ef3bf6bb-1ffb-46c0-8b23-f935ded5024a"
} ],
"retCode" : 0,
"errText" : "success",
"error_code" : "0"
} Status Codes
| Status Code | Description |
|---|---|
| 200 | OK |
| 400 | Bad Request |
Error Codes
See Error Codes.
What is your overall rating for this page?
Thank 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