Skip to main content
POST
/
cloud
/
v1
/
bmimages
/
{project_id}
/
{region_id}
Create image
curl --request POST \
  --url https://api.gcore.com/cloud/v1/bmimages/{project_id}/{region_id} \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "volume_id": "<string>",
  "architecture": "x86_64",
  "hw_firmware_type": "bios",
  "hw_machine_type": "q35",
  "is_baremetal": false,
  "os_type": "linux",
  "source": "volume",
  "ssh_key": "allow",
  "tags": {}
}
'
{
  "tasks": [
    "<string>"
  ]
}

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

region_id
integer
required

Region ID

Body

application/json
name
string
required

Image name

volume_id
string<uuid4>
required

Required if source is volume. Volume id

architecture
enum<string>
default:x86_64

Image CPU architecture type: aarch64, x86_64

Available options:
aarch64,
x86_64
hw_firmware_type
enum<string> | null

Specifies the type of firmware with which to boot the guest.

Available options:
bios,
uefi
Example:

"bios"

hw_machine_type
enum<string> | null

A virtual chipset type.

Available options:
pc,
q35
Example:

"q35"

is_baremetal
boolean
default:false

Set to true if the image will be used by bare metal servers. Defaults to false.

os_type
enum<string>
default:linux

The operating system installed on the image.

Available options:
linux,
windows
source
string
default:volume

Image source

Allowed value: "volume"
ssh_key
enum<string>
default:allow

Whether the image supports SSH key or not

Available options:
allow,
deny,
required
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.

Response

200 - application/json

List of created tasks

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.