Updated on 2024-02-27 GMT+08:00

Creating an EVS Disk Transfer

Function

This API is used to create an EVS disk transfer. After the transfer has been created, a transfer ID and an authentication key are returned. After a disk transfer is created, the disk status changes from available to awaiting-transfer*. Once the transfer is accepted, the disk status changes to available again.

Constraints

A disk transfer can be created only when the disk status is available. The detailed constraints are as follows:

Yearly/Monthly disks cannot be transferred. Frozen disks cannot be transferred. Encrypted disks cannot be transferred. Disks having backups and snapshots cannot be transferred. Disks applied with backup policies cannot be transferred. DSS disks cannot be transferred. DESS disks cannot be transferred.

Calling Method

For details, see Calling APIs.

URI

POST /v2/{project_id}/os-volume-transfer

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

The project ID.

For details about how to obtain the project ID, see Obtaining a Project ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

The user token. It 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

transfer

Yes

CreateVolumeTransferOption object

The transfer creation marker.

Table 4 CreateVolumeTransferOption

Parameter

Mandatory

Type

Description

name

Yes

String

The transfer name. You can enter up to 64 characters.

volume_id

Yes

String

The disk ID. To obtain the disk ID, see Querying Details About All Disks.

Response Parameters

Status code: 202

Table 5 Response body parameters

Parameter

Type

Description

transfer

CreateVolumeTransferDetail object

The transfer information.

Table 6 CreateVolumeTransferDetail

Parameter

Type

Description

auth_key

String

The authentication key of the disk transfer.

created_at

String

The time when the transfer was created.

Time format: UTC YYYY-MM-DDTHH:MM:SS.XXXXXX

id

String

The transfer ID.

links

Array of Link objects

The transfer links.

name

String

The transfer name.

volume_id

String

The disk ID.

Status code: 400

Table 8 Response body parameters

Parameter

Type

Description

error

Error object

The error message returned if an error occurs.

Table 9 Error

Parameter

Type

Description

code

String

The error code returned if an error occurs.

For details about error codes and their meanings, see Error Codes.

message

String

The error message returned if an error occurs.

Example Requests

Creating a disk transfer (The disk ID is c86b9af4-151d-4ead-b62c-5fb967af0e37 and the transfer name is first volume.)

POST https://{endpoint}/v2/{project_id}/os-volume-transfer

{
  "transfer" : {
    "volume_id" : "c86b9af4-151d-4ead-b62c-5fb967af0e37",
    "name" : "first volume"
  }
}

Example Responses

Status code: 202

Accepted

{
  "transfer" : {
    "id" : "1a7059f5-8ed7-45b7-8d05-2811e5d09f24",
    "created_at" : "2015-02-25T03:56:53.081642",
    "name" : "first volume",
    "volume_id" : "c86b9af4-151d-4ead-b62c-5fb967af0e37",
    "auth_key" : "9266c59563c84664",
    "links" : [ {
      "href" : "https://localhost/v2/firstproject/os-volume-transfer/3",
      "rel" : "self"
    }, {
      "href" : "https://localhost/firstproject/os-volume-transfer/3",
      "rel" : "bookmark"
    } ]
  }
}

Status code: 400

Bad Request

{
  "error" : {
    "message" : "XXXX",
    "code" : "XXX"
  }
}

Status Codes

Status Code

Description

202

Accepted

400

Bad Request

Error Codes

See Error Codes.