Creating a Vault
Function
Creating a Vault
Debugging
You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.
URI
POST /v3/{project_id}/vaults
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 |
VaultCreate object |
Parameters for creating a vault |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
backup_policy_id |
No |
String |
Backup policy ID, which is used to specify the backup policy for automatic backups. The default value is null. For details about how to obtain the backup policy ID, see Obtaining a Backup Policy ID. |
billing |
Yes |
BillingCreate object |
Billing parameter for creating a vault. |
description |
No |
String |
Description of the vault. The value cannot contain angle brackets (< or >) and can contain a maximum of 255 characters. Default value: N/A |
name |
Yes |
String |
Vault name. The value can contain a maximum of 64 characters, including letters, digits, underscores (_), and hyphens (-). Default value: N/A |
resources |
Yes |
Array of ResourceCreate objects |
Resources to be associated with the vault. If there is no need to associate resources during vault creation, enter []. A maximum of 255 resources can be associated. Default value: N/A |
tags |
No |
Array of Tag objects |
Tag list. Default value: N/A Constraints: The list can contain up to 10 keys. |
enterprise_project_id |
No |
String |
Enterprise project ID. Default value: N/A For details, see Obtaining an Enterprise Project ID. |
auto_bind |
No |
Boolean |
Whether automatic association is supported. Default value: false. The options are as follows: |
bind_rules |
No |
VaultBindRules object |
Rules for automatic association |
auto_expand |
No |
Boolean |
Whether to enable automatic capacity expansion (supported for pay-per-use vaults only). The default value is false. The value can be true (supporting automatic capacity expansion) or false (not supporting automatic capacity expansion. |
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 to 100. The default value is 80. |
smn_notify |
No |
Boolean |
Whether to send SMN notifications. The default value is true. The options are as follows: |
backup_name_prefix |
No |
String |
Backup name prefix. If configured, the names of all automatic backups generated for the vault will use this prefix. Range: The value can contain a maximum of 32 characters. Default value: N/A |
demand_billing |
No |
Boolean |
Whether the vault capacity can be exceeded. The default value is false. The parameter value can be set to true only when a yearly/monthly vault is created. The value can be: |
sys_lock_source_service |
No |
String |
SMB identifier. The value can be SMB or an empty string. By default, this parameter is left blank. The value can be: |
locked |
No |
Boolean |
Whether the vault is locked. A locked vault cannot be unlocked. Default value: false For details about backup locking, see Enabling Backup Locking. The value can be: |
availability_zone |
No |
String |
Availability zone of the vault. The value can contain a maximum of 32 characters. |
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. 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: EVS disk; turbo: file system; workspace: Workspace; vmware: VMware; rds: RDS; file: file Default value: N/A |
protect_type |
Yes |
String |
Protection type. Default value: N/A. The value can be: backup or replication |
size |
Yes |
Integer |
Resource capacity, in GB. Value Range: 10-10485760 Default value: N/A |
charging_mode |
No |
String |
description: |- Billing mode. The default value is post_paid. post_paid: pay-per-use; pre_paid: yearly/monthly |
period_type |
No |
String |
The unit of the subscription term. This parameter is mandatory only when charging_mode is pre_paid. Default value: N/A The value can be: |
period_num |
No |
Integer |
Subscription term. This parameter is mandatory only when charging_mode is pre_paid. Default value: N/A; Range: [1-9] |
is_auto_renew |
No |
Boolean |
Specifies whether to automatically renew the subscription upon expiration. The default value is false. The options are as follows: |
is_auto_pay |
No |
Boolean |
Specifies whether to automatically pay for the order. The default value is false. The options are as follows: |
console_url |
No |
String |
Cloud service console URL. The URL used to switch to the cloud service console to view information after the subscription is complete. (This parameter is used only for manual payment.) Default value: N/A |
is_multi_az |
No |
Boolean |
Specifies whether the vault has the multi-AZ attribute, that is, whether the underlying backup is a multi-AZ backup. The default value is false. The options are as follows: |
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 been associated with the vault and can be backed up. Default value: N/A For details about how to obtain the ID, see Querying Information About the Resources Associated with a Vault and Querying Protectable Resources. |
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 |
ID of the volume that does not need to be backed up. This parameter is valid only for multi-disk backup. It specifies the disks that do not need to be backed up. When a disk is newly attached to a VM, the volume that does not need to be backed up can also be excluded. Default value: N/A |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
key |
Yes |
String |
Tag key. Default value: N/A A tag key consists of up to 36 characters. It cannot be an empty string. Spaces before and after a key will be discarded. 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 (/). It can contain only letters, digits, hyphens (-), and underscores (). |
value |
Yes |
String |
Tag value. Default value: N/A It is mandatory when a tag is added and optional when a tag is deleted. It consists of up to 43 characters. It can be an empty string. Spaces before and after a value will be discarded. 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 (/). The 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 (.). |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
vault |
VaultCreateResource object |
Vaults displayed during a query (displayed only during the creation of pay-per-use vaults). |
orders |
Array of CbcOrderResult objects |
Error code displayed during the creation of a yearly/monthly order. |
retCode |
Integer |
Yearly/monthly subscription result. |
errText |
String |
Error code displayed during the creation of a yearly/monthly vault. |
error_code |
String |
Error code displayed during the creation of a yearly/monthly vault. |
Parameter |
Type |
Description |
---|---|---|
billing |
Billing object |
Operation info |
description |
String |
Custom description of the vault. The value cannot contain angle brackets (< or >) and can contain a maximum of 255 characters. |
id |
String |
Vault ID. Range: N/A |
name |
String |
Vault name. The value can contain a maximum of 64 characters, including letters, digits, underscores (_), and hyphens (-). |
project_id |
String |
Project ID. Range: N/A |
provider_id |
String |
Resource type ID. Range: N/A |
resources |
Array of ResourceResp objects |
Vault resources |
tags |
Array of Tag objects |
Vault tags |
enterprise_project_id |
String |
Enterprise project ID. For details, see Obtaining an Enterprise Project ID. |
auto_bind |
Boolean |
Whether automatic association is supported. The value can be: |
bind_rules |
VaultBindRules object |
Association rule |
user_id |
String |
User ID. Range: N/A |
created_at |
String |
Creation time, for example, 2020-02-05T10:38:34.209782. Range: N/A |
auto_expand |
Boolean |
Whether to enable automatic capacity expansion (supported for pay-per-use vaults only). The value can be true (supporting automatic capacity expansion) or false (not supporting automatic capacity expansion. |
smn_notify |
Boolean |
Whether to send SMN notifications. The value can be: |
threshold |
Integer |
Vault capacity threshold. If the vault usage exceeds this threshold and smn_notify is true, a notification will be sent. Range: [1,100] |
backup_name_prefix |
String |
Backup name prefix. If configured, the names of all automatic backups generated for the vault will use this prefix. It can contain a maximum of 32 characters. |
demand_billing |
Boolean |
Whether the vault capacity can be exceeded. |
cbc_delete_count |
Integer |
Number of times that the vault is deleted. Range: N/A |
frozen |
Boolean |
Whether the vault is frozen. |
sys_lock_source_service |
String |
SMB identifier. The value can be SMB or an empty string. SMB: CBR is called as a service for SMB. An empty string: CBR is called as a common service. |
locked |
Boolean |
Whether the vault is locked. A locked vault cannot be unlocked. For details about backup locking, see Enabling Backup Locking. The options are as follows: |
availability_zone |
String |
Availability zone of the vault. The value can contain a maximum of 32 characters. |
Parameter |
Type |
Description |
---|---|---|
allocated |
Integer |
Allocated capacity, in GB. Range: 10 to 10485760 |
charging_mode |
String |
Billing mode. post_paid: pay-per-use; pre_paid: yearly/monthly |
cloud_type |
String |
Cloud type. The following types are supported: public: public cloud; hybrid: hybrid cloud |
consistent_level |
String |
Vault specifications. app_consistent: application consistency; crash_consistent: crash consistency. |
object_type |
String |
Object type. The value can be server, disk, turbo, workspace, vmware, rds, or file. server: cloud server; disk: EVS disk; turbo: file system; workspace: Workspace; vmware: VMware; rds: RDS; file: file |
order_id |
String |
Order ID, in UUID format. |
product_id |
String |
Product ID, in UUID format. |
protect_type |
String |
Protection type. The value can be: backup or replication |
size |
Integer |
Capacity, in GB. Range: 10 to 10485760 |
spec_code |
String |
Specification code. The value can be: Server backup vault: vault.backup.server.normal; Disk backup vault: vault.backup.volume.normal; File system backup vault: vault.backup.turbo.normal |
status |
String |
Vault status. The value can be: |
storage_unit |
String |
Bucket name. Range: N/A |
used |
Integer |
Used capacity, in MB. Range: N/A |
frozen_scene |
String |
Freezing scenario. The value can be: |
is_multi_az |
Boolean |
Specifies whether the vault has the multi-AZ attribute, that is, whether the underlying backup is a multi-AZ backup. The value can be: |
Parameter |
Type |
Description |
---|---|---|
extra_info |
ResourceExtraInfo object |
Extra information of the resource |
id |
String |
ID of the resource to be backed up. The resource must have been associated with the vault and can be backed up. For details about how to obtain the ID, see Querying Information About the Resources Associated with a Vault and Querying Protectable Resources. |
name |
String |
Name of the resource to be backed up. The value can contain a maximum of 255 characters. |
protect_status |
String |
Protection status. The value can be: |
size |
Integer |
Allocated capacity for the associated resources, in GB. Range: N/A |
type |
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 |
backup_size |
Integer |
Backup replica size in GB. Range: N/A |
backup_count |
Integer |
Number of replicas. Range: N/A |
Parameter |
Type |
Description |
---|---|---|
exclude_volumes |
Array of strings |
ID of the volume that does not need to be backed up. This parameter is valid only for multi-disk backup. It specifies the disks that do not need to be backed up. When a disk is newly attached to a VM, the volume that does not need to be backed up can also be excluded. Default value: N/A |
Parameter |
Type |
Description |
---|---|---|
key |
String |
Tag key. Default value: N/A A tag key consists of up to 36 characters. It cannot be an empty string. Spaces before and after a key will be discarded. 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 (/). It can contain only letters, digits, hyphens (-), and underscores (). |
value |
String |
Tag value. Default value: N/A It is mandatory when a tag is added and optional when a tag is deleted. It consists of up to 43 characters. It can be an empty string. Spaces before and after a value will be discarded. 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 (/). The value can contain only letters, digits, hyphens (-), underscores (), and periods (.). |
Parameter |
Type |
Description |
---|---|---|
tags |
Array of BindRulesTags objects |
Resources automatically filtered by tag. Minimum length: 0 characters Maximum length: 5 characters |
Parameter |
Type |
Description |
---|---|---|
key |
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 |
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 |
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 a 100-GB pay-per-use cloud server backup vault, associating resources, and adding tags
POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults { "vault" : { "backup_policy_id" : "6dd81d7d-a4cb-443e-b8ed-1af0bd3a261b", "billing" : { "cloud_type" : "public", "consistent_level" : "crash_consistent", "object_type" : "server", "protect_type" : "backup", "size" : 100, "charging_mode" : "post_paid", "is_auto_renew" : false, "is_auto_pay" : false, "console_url" : "https://console.demo.com/cbr/?agencyId=97fcd896b7914cb98f553a087232e243®ion=testregion/cbr/manager/csbs/vaultList" }, "description" : "vault_description", "name" : "vault_name", "resources" : [ { "extra_info" : { "exclude_volumes" : [ "43a320a5-3efd-4568-b1aa-8dd9183cc64b" ] }, "id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c", "type" : "OS::Nova::Server" } ], "tags" : [ { "key" : "key01", "value" : "value01" } ], "enterprise_project_id" : "0" } }
-
Creating a 40-GB pay-per-use cloud disk backup vault
POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults { "vault" : { "billing" : { "consistent_level" : "crash_consistent", "object_type" : "disk", "protect_type" : "backup", "size" : 40, "charging_mode" : "post_paid", "is_auto_renew" : false, "is_auto_pay" : false }, "name" : "test", "resources" : [ ] } }
Example Responses
Status code: 200
Response body for successful creation of a vault. For a pay-per-use vault, only vault is returned. For a yearly/monthly vault, only orders, retCode, errText, and error_code are returned.
{ "vault" : { "provider_id" : "0daac4c5-6707-4851-97ba-169e36266b66", "description" : "vault_description", "tags" : [ { "value" : "value01", "key" : "key01" } ], "enterprise_project_id" : 0, "auto_bind" : false, "id" : "ad7627ae-5b0b-492e-b6bd-cd809b745197", "user_id" : "38d65be2ecd840d19046e239e841a734", "name" : "vault_name", "billing" : { "status" : "available", "used" : 0, "protect_type" : "backup", "object_type" : "server", "allocated" : 40, "spec_code" : "vault.backup.server.normal", "size" : 100, "cloud_type" : "public", "consistent_level" : "crash_consistent", "charging_mode" : "post_paid" }, "created_at" : "2019-05-23T12:51:10.071+00:00", "project_id" : "fc347bc64ccd4589ae52e4f44b7433c7", "resources" : [ { "name" : "ecs-b977-0002", "backup_size" : 0, "protect_status" : "available", "backup_count" : 0, "extra_info" : { "exclude_volumes" : [ "1855eb9a-2b5e-4938-a9f0-aea08b6f9243", "5a51e8b3-2f65-4045-896f-f8ffae14b064" ] }, "type" : "OS::Nova::Server", "id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c", "size" : 40 } ] } }
Status Codes
Status Code |
Description |
---|---|
200 |
Response body for successful creation of a vault. For a pay-per-use vault, only vault is returned. For a yearly/monthly vault, only orders, retCode, errText, and error_code are returned. |
400 |
Bad Request |
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.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot