Updated on 2024-05-11 GMT+08:00

Modifying a Vault

Function

This API is used to modify a vault based on its ID.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

URI

PUT /v3/{project_id}/vaults/{vault_id}

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID

vault_id

Yes

String

Vault ID

Request Parameters

Table 2 Request header 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.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

vault

Yes

VaultUpdate object

Parameters for modifying a vault.

Table 4 VaultUpdate

Parameter

Mandatory

Type

Description

billing

No

BillingUpdate object

Bill information

name

No

String

Vault name

Minimum: 1

Maximum: 64

auto_bind

No

Boolean

Whether automatic association is supported

bind_rules

No

VaultBindRules object

Association rule

auto_expand

No

Boolean

Whether to enable auto capacity expansion for the vault. Only pay-per-use vaults support auto capacity expansion.

smn_notify

No

Boolean

Exception notification function

Default: true

threshold

No

Integer

Vault capacity threshold. If the vault capacity usage exceeds this threshold and smn_notify is true, an exception notification is sent.

Minimum: 1

Maximum: 100

Default: 80

Table 5 BillingUpdate

Parameter

Mandatory

Type

Description

consistent_level

No

String

Vault specifications

Enumeration values:

  • app_consistent

  • crash_consistent

size

No

Integer

Vault size, in GB

Minimum: 1

Maximum: 10485760

Table 6 VaultBindRules

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

Table 7 BindRulesTags

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, hyphens (-), and underscores (_).

value

Yes

String

The value cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/

The value can contain only letters, digits, periods (.), hyphens (-), and underscores (_).

Response Parameters

Status code: 200

Table 8 Response body parameters

Parameter

Type

Description

vault

Vault object

Objects returned after a vault query

Table 9 Vault

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

enterprise_project_id

String

Enterprise project ID. Its default value is 0.

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. Only pay-per-use vaults support auto capacity expansion.

smn_notify

Boolean

Exception notification function

Default: true

threshold

Integer

Vault capacity threshold. If the vault capacity usage exceeds this threshold, an exception notification is sent.

Minimum: 1

Maximum: 100

Default: 80

sys_lock_source_service

String

Used to identify the SMB service. You can set it to SMB or leave it empty.

Minimum: 0

Maximum: 32

Enumeration values:

  • SMB

  • ''

Table 10 Billing

Parameter

Type

Description

allocated

Integer

Allocated capacity, in GB.

charging_mode

String

Billing mode, which can be post_paid (pay-per-use) or pre_paid (yearly/monthly). The default value is post_paid.

cloud_type

String

Cloud type, which can be public or hybrid

consistent_level

String

Vault specification, which can be crash_consistent (crash consistent backup) or app_consistent (application consistency backup)

object_type

String

Object type, which can be server, disk, turbo, workspace, vmware, rds, or file

order_id

String

Order ID

product_id

String

Product ID

protect_type

String

Protection type, which can be backup or replication

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:

  • available

  • lock

  • frozen

  • deleting

  • error

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

Table 11 ResourceResp

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:

  • available

  • error

  • protecting

  • restoring

  • removing

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, OS::Ironic::BareMetalServer, OS::Native::Server, OS::Sfs::Turbo, or OS::Workspace::DesktopV2

backup_size

Integer

Backup size

backup_count

Integer

Number of backups

Table 12 ResourceExtraInfo

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.

Table 13 Tag

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 (-), underscores (_), and periods (.).

Table 14 VaultBindRules

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

Table 15 BindRulesTags

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, hyphens (-), and underscores (_).

value

String

The value cannot contain non-printable ASCII characters (0–31) and the following characters: =*<>,|/

The value can contain only letters, digits, periods (.), hyphens (-), and underscores (_).

Example Requests

Modifying a vault (vault capacity changed to 200 GB and vault name changed to vault_name02)

PUT https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults/79bd9daa-884f-4f84-b8fe-235d58cd927d

{
  "vault" : {
    "billing" : {
      "size" : 200
    },
    "name" : "vault_name02"
  }
}

Example Responses

Status code: 200

OK

{
  "vault" : {
    "name" : "vault_name02",
    "billing" : {
      "status" : "available",
      "used" : 0,
      "protect_type" : "backup",
      "object_type" : "server",
      "allocated" : 40,
      "spec_code" : "vault.backup.server.normal",
      "size" : 200,
      "cloud_type" : "public",
      "consistent_level" : "crash_consistent",
      "charging_mode" : "post_paid"
    },
    "tags" : [ {
      "value" : "value01",
      "key" : "key01"
    } ],
    "created_at" : "2019-05-08T09:31:21.840+00:00",
    "project_id" : "4229d7a45436489f8c3dc2b1d35d4987",
    "enterprise_project_id" : 0,
    "id" : "2402058d-8373-4b0a-b848-d3c0dfdc71a8",
    "resources" : [ {
      "name" : "ecs-1f0f-0003",
      "protect_status" : "available",
      "extra_info" : {
        "exclude_volumes" : [ "bdef09bb-293f-446a-88a4-86e9f14408c4" ]
      },
      "type" : "OS::Nova::Server",
      "id" : "97595625-198e-4e4d-879b-9d53f68ba551",
      "size" : 40
    } ],
    "description" : "vault_description"
  }
}

Status Codes

Status Code

Description

200

OK

Error Codes

See Error Codes.