Skip to main content
POST
/
cloud
/
v1
/
volumes
/
{project_id}
/
{region_id}
Create volume
curl --request POST \
  --url https://api.gcore.com/cloud/v1/volumes/{project_id}/{region_id} \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "instance_id_to_attach_to": "88f3e0bd-ca86-4cf7-be8b-dd2988e23c2d",
  "name": "volume-1",
  "size": 10,
  "source": "new-volume",
  "type_name": "ssd_hiiops"
}
'
{
  "tasks": [
    "d478ae29-dedc-4869-82f0-96104425f565"
  ]
}

Authorizations

Authorization
string
header
required

API key for authentication. Make sure to include the word apikey, followed by a single space and then your token. Example: apikey 1234$abcdef

Path Parameters

project_id
integer
required

Project ID

Example:

1

region_id
integer
required

Region ID

Example:

1

Body

application/json

Volume can be created from image, snapshot or as a new volume

image_id
string<uuid4>
required

Image ID

Example:

"169942e0-9b53-42df-95ef-1a8b6525c2bd"

name
string
required

Volume name

Pattern: ^[a-zA-Z0-9][a-zA-Z 0-9._\-]{1,61}[a-zA-Z0-9._]$
Example:

"volume-1"

size
integer
required

Volume size in GiB

Required range: x >= 1
Example:

10

source
string
required

Volume source type

Allowed value: "image"
Example:

"image"

attachment_tag
string

Block device attachment tag (not exposed in the user tags). Only used in conjunction with instance_id_to_attach_to

Pattern: ^[^,/]{1,60}$
Example:

"device-tag"

instance_id_to_attach_to
string

instance_id to attach newly-created volume to

Example:

"88f3e0bd-ca86-4cf7-be8b-dd2988e23c2d"

lifecycle_policy_ids
integer[]

List of lifecycle policy IDs (snapshot creation schedules) to associate with the volume

Example:
[1, 2]
tags
CreateTagsSerializer · object

Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.

Example:
{ "my-tag": "my-tag-value" }
type_name
enum<string>

Volume type. Defaults to standard. If not specified for source snapshot, volume type will be derived from the snapshot volume.

Available options:
cold,
ssd_hiiops,
ssd_local,
ssd_lowlatency,
standard,
ultra
Example:

"standard"

Response

200 - application/json

OK

tasks
string[]
required

List of task IDs representing asynchronous operations. Use these IDs to monitor operation progress:

  • GET /v1/tasks/{task_id} - Check individual task status and details Poll task status until completion (FINISHED/ERROR) before proceeding with dependent operations.
Example:
["d478ae29-dedc-4869-82f0-96104425f565"]