Skip to main content
POST
/
cloud
/
v1
/
downloadimage
/
{project_id}
/
{region_id}
Python
import os
from gcore import Gcore

client = Gcore(
    api_key=os.environ.get("GCORE_API_KEY"),  # This is the default and can be omitted
)
task_id_list = client.cloud.instances.images.upload(
    project_id=0,
    region_id=0,
    name="my-image",
    url="http://mirror.noris.net/cirros/0.4.0/cirros-0.4.0-x86_64-disk.img",
)
print(task_id_list.tasks)
{
  "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

url
string<uri>
required

URL

Minimum string length: 1
architecture
enum<string>
default:x86_64

Image CPU architecture type: aarch64, x86_64

Available options:
aarch64,
x86_64
cow_format
boolean
default:false

When True, image cannot be deleted unless all volumes, created from it, are deleted.

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_distro
string | null

OS Distribution, i.e. Debian, CentOS, Ubuntu, CoreOS etc.

Example:

"ubuntu"

os_type
enum<string>
default:linux

The operating system installed on the image.

Available options:
linux,
windows
os_version
string | null

OS version, i.e. 22.04 (for Ubuntu) or 9.4 for Debian

Example:

"22.04"

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.