Creating a Vault
Function
Creating a Vault
URI
POST /v3/{project_id}/vaults
Parameter | Mandatory | Type | Description |
---|---|---|---|
project_id | Yes | String | Project ID |
Request Parameters
Parameter | Mandatory | Type | Description |
---|---|---|---|
X-Auth-Token | Yes | String | User token The token can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token. |
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. If the value of this parameter is null, automatic backup is not performed. |
billing | Yes | BillingCreate object | Parameter information for creation |
description | No | String | Description Minimum: 0 Maximum: 64 |
name | Yes | String | Vault name Minimum: 1 Maximum: 64 |
resources | Yes | Array of ResourceCreate objects | Associated resources. Set this parameter to [] if no resources are associated when creating a vault. Array Length: 0 - 255 |
tags | No | Array of Tag objects | Tags. This list cannot be an empty list. A tag can contain a maximum of 10 keys. Keys in this list must be unique. |
auto_bind | No | Boolean | Whether automatic association is supported |
bind_rules | No | VaultBindRules object | Rules for automatic association |
backup_name_prefix | No | String | Backup name prefix. If configured, the names of all automatic backups generated for the vault will use this prefix. Minimum: 0 Maximum: 32 |
sys_lock_source_service | No | String | Used to identify the SMB service. You can set it to SMB or leave it empty. Enumeration values:
|
Parameter | Mandatory | Type | Description |
---|---|---|---|
cloud_type | No | String | Cloud type, which is public |
consistent_level | Yes | String | Vault specification, which is crash_consistent by default (crash consistent backup) |
object_type | Yes | String | Object type, which can be server, disk, or turbo |
protect_type | Yes | String | Protection type, which is backup |
size | Yes | Integer | Capacity, in GB Minimum: 10 Maximum: 10485760 |
charging_mode | No | String | Billing mode, which is post_paid Default: post_paid |
is_auto_renew | No | Boolean | Whether to automatically renew the subscription after expiration. By default, it is not renewed. Default: false |
is_auto_pay | No | Boolean | Whether the fee is automatically deducted from the customer's account balance after an order is submitted. The non-automatic payment mode is used by default. Default: false |
console_url | No | String | Redirection URL Minimum: 1 Maximum: 255 |
is_multi_az | No | Boolean | Multi-AZ attribute of a vault. The default value is false. Default: false |
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 |
type | Yes | String | Type of the resource to be backed up, which can be OS::Nova::Server, OS::Cinder::Volume, or OS::Sfs::Turbo |
name | No | String | Backup name Minimum: 0 Maximum: 255 |
Parameter | Mandatory | Type | Description |
---|---|---|---|
exclude_volumes | No | Array of strings | IDs of the disks that will not be backed up. This parameter is used when servers are added to a vault, which include all server disks. But some disks do not need to be backed up. Or in case that a server was previously added and some disks on this server do not need to be backed up. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
key | Yes | String | Key It can contain a maximum of 36 characters. It cannot be an empty string. Spaces before and after a key will be discarded. It cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/ It can contain only letters, digits, hyphens (-), and underscores (_). |
value | Yes | String | Value It is mandatory when a tag is added and optional when a tag is deleted. It can contain a maximum of 43 characters. It can be an empty string. Spaces before and after a value will be discarded. It cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/ It can contain only letters, digits, hyphens (-), and underscores (_). |
Parameter | Mandatory | Type | Description |
---|---|---|---|
tags | No | Array of BindRulesTags objects | Filters automatically associated resources by tag. Minimum length: 0 characters Maximum length: 5 characters Array Length: 0 - 5 |
Parameter | Mandatory | Type | Description |
---|---|---|---|
key | Yes | String | The key cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/ The key can contain only letters, digits, underscores (_), and hyphens (-). |
value | Yes | String | The value cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/ The value can contain only letters, digits, underscores (_), and hyphens (-). |
Response Parameters
Status code: 200
Parameter | Type | Description |
---|---|---|
vault | VaultCreateResource object | Objects returned after a vault query |
Parameter | Type | Description |
---|---|---|
billing | Billing object | Operation info |
description | String | User-defined vault description Minimum: 0 Maximum: 255 |
id | String | Vault ID |
name | String | Vault name Minimum: 1 Maximum: 64 |
project_id | String | Project ID |
provider_id | String | ID of the vault resource type |
resources | Array of ResourceResp objects | Vault resources |
tags | Array of Tag objects | Vault tags |
auto_bind | Boolean | Indicates whether automatic association is enabled. Its default value is false (not enabled). |
bind_rules | VaultBindRules object | Association rule |
user_id | String | User ID |
created_at | String | Creation time, for example, 2020-02-05T10:38:34.209782 |
auto_expand | Boolean | Whether to enable auto capacity expansion for the vault. |
backup_name_prefix | String | Backup name prefix Minimum: 0 Maximum: 32 |
demand_billing | Boolean | Whether the vault capacity can be exceeded. Default: false |
cbc_delete_count | Integer | Vault deletion count Default: 0 |
frozen | Boolean | Whether the vault is frozen Default: false |
sys_lock_source_service | String | Used to identify the SMB service. You can set it to SMB or leave it empty. |
Parameter | Type | Description |
---|---|---|
allocated | Integer | Allocated capacity, in GB. |
charging_mode | String | Billing mode, which is post_paid |
cloud_type | String | Cloud type, which is public |
consistent_level | String | Vault specification, which is crash_consistent by default (crash consistent backup) |
object_type | String | Object type, which can be server, disk, or turbo |
order_id | String | Order ID |
product_id | String | Product ID |
protect_type | String | Protection type, which is backup |
size | Integer | Capacity, in GB Minimum: 1 Maximum: 10485760 |
spec_code | String | Specification codeServer 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 Enumeration values:
|
storage_unit | String | Name of the bucket for the vault |
used | Integer | Used capacity, in MB. |
frozen_scene | String | Scenario when an account is frozen |
is_multi_az | Boolean | Multi-AZ attribute of a vault Default: false |
Parameter | Type | Description |
---|---|---|
extra_info | ResourceExtraInfo object | Extra information of the resource |
id | String | ID of the resource to be backed up |
name | String | Name of the resource to be backed up Minimum: 0 Maximum: 255 |
protect_status | String | Protection status Enumeration values:
|
size | Integer | Allocated capacity for the associated resource, in GB |
type | String | Type of the resource to be backed up, which can be OS::Nova::Server, OS::Cinder::Volume, or OS::Sfs::Turbo |
backup_size | Integer | Backup size |
backup_count | Integer | Number of backups |
Parameter | Type | Description |
---|---|---|
exclude_volumes | Array of strings | IDs of the disks that will not be backed up. This parameter is used when servers are added to a vault, which include all server disks. But some disks do not need to be backed up. Or in case that a server was previously added and some disks on this server do not need to be backed up. |
Parameter | Type | Description |
---|---|---|
key | String | Key It can contain a maximum of 36 characters. It cannot be an empty string. Spaces before and after a key will be discarded. It cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/ It can contain only letters, digits, hyphens (-), and underscores (_). |
value | String | Value It is mandatory when a tag is added and optional when a tag is deleted. It can contain a maximum of 43 characters. It can be an empty string. Spaces before and after a value will be discarded. It cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/ It can contain only letters, digits, hyphens (-), and underscores (_). |
Parameter | Type | Description |
---|---|---|
tags | Array of BindRulesTags objects | Filters automatically associated resources by tag. Minimum length: 0 characters Maximum length: 5 characters Array Length: 0 - 5 |
Parameter | Type | Description |
---|---|---|
key | String | The key cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/ The key can contain only letters, digits, underscores (_), and hyphens (-). |
value | String | The value cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/ The value can contain only letters, digits, underscores (_), and hyphens (-). |
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 tagsPOST 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 vaultPOST 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
OK
{"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 | OK |
400 | Bad Request |
Error Codes
See Error Codes.
- Function
- URI
- Request Parameters
- Response Parameters
- Example Requests
- Example Responses
- Status Codes
- Error Codes