Метод create

Создает образ в указанном каталоге.

Вы можете создать образ из диска, моментального снимка, другого образа или URI. Метод запускает асинхронную операцию, которую можно отменить перед тем, как она завершится.

HTTP-запрос

POST https://compute.api.cloud.yandex.net/compute/v1/images

Параметры в теле запроса

 {
  "folderId": "string",
  "name": "string",
  "description": "string",
  "labels": "object",
  "family": "string",
  "minDiskSize": "string",
  "productIds": [
    "string"
  ],
  "os": {
    "type": "string"
  },

  // включает только одно из полей `imageId`, `diskId`, `snapshotId`, `uri`
  "imageId": "string",
  "diskId": "string",
  "snapshotId": "string",
  "uri": "string",
  // конец списка возможных полей

}
Поле Описание
folderId string

Обязательное поле. Идентификатор каталога для создания образа. Чтобы получить идентификатор каталога, используйте запрос list.

Максимальная длина строки в символах — 50.

name string

Название образа.

Значение должно соответствовать регулярному выражению |[a-z][-a-z0-9]{1,61}[a-z0-9].

description string

Описание образа.

Максимальная длина строки в символах — 256.

labels object

Метки ресурса в формате ключ:значение.

Не более 64 на ресурс. Длина строки в символах для каждого ключа должна быть от 1 до 63. Каждый ключ должен соответствовать регулярному выражению [a-z][-_0-9a-z]. Максимальная длина строки в символах для каждого значения — 63. Каждое значение должно соответствовать регулярному выражению [-_0-9a-z].

family string

Имя семейства образов, к которому принадлежит этот образ. Чтобы получить информацию о последнем образе в семействе, используйте запрос getLatestByFamily.

Значение должно соответствовать регулярному выражению |[a-z][-a-z0-9]{1,61}[a-z0-9].

minDiskSize string (int64)

Минимальный размер диска, который будет создан из этого образа. Указывается в байтах. Должно быть больше размера исходных данных.

Допустимые значения — от 4194304 до 4398046511104 включительно.

productIds[] string

Идентификаторы лицензий, указывающие, какие лицензии подключены к этому ресурсу. Идентификаторы лицензий используются для расчета дополнительной платы за использование виртуальной машины.

Правильный идентификатор лицензии генерируется Яндекс.Облаком. Новые ресурсы, созданные из этого ресурса, унаследуют идентификаторы от него.

Если вам известны идентификаторы лицензий, укажите их при создании образа. Например, если вы создадите образ диска с помощью сторонней утилиты и загрузите его в Yandex Object Storage, идентификаторы лицензий будут потеряны. Вы можете указать их в этом запросе.

Максимальная длина строки в символах для каждого значения — 50.

os object
os.
type
string

Тип операционной системы.

  • LINUX: Операционная система Linux.
  • WINDOWS: Операционная система Windows.
imageId string
включает только одно из полей imageId, diskId, snapshotId, uri

Идентификатор исходного образа для создания нового образа из него.

Максимальная длина строки в символах — 50.

diskId string
включает только одно из полей imageId, diskId, snapshotId, uri

Идентификатор диска для создания образа из него.

Максимальная длина строки в символах — 50.

snapshotId string
включает только одно из полей imageId, diskId, snapshotId, uri

Идентификатор снимка для создания образа из него.

Максимальная длина строки в символах — 50.

uri string
включает только одно из полей imageId, diskId, snapshotId, uri

URI образа для создания нового образа из него. В настоящее время поддерживаются только ссылки на образы, которые хранятся в Yandex Object Storage. В настоящее время поддерживаются только форматы Qcow2, VMDK и VHD.

Ответ

HTTP Code: 200 - OK

 {
  "id": "string",
  "description": "string",
  "createdAt": "string",
  "createdBy": "string",
  "modifiedAt": "string",
  "done": true,
  "metadata": "object",

  // включает только одно из полей `error`, `response`
  "error": {
    "code": "integer",
    "message": "string",
    "details": [
      "object"
    ]
  },
  "response": "object",
  // конец списка возможных полей

}

Ресурс Operation. Дополнительные сведения см. в разделе Объект Operation.

Поле Описание
id string

Только для вывода. Идентификатор операции.

description string

Описание операции. Длина описания должна быть от 0 до 256 символов.

createdAt string (date-time)

Только для вывода. Время создания ресурса в формате в RFC3339.

createdBy string

Только для вывода. Идентификатор пользователя или сервисного аккаунта, инициировавшего операцию.

modifiedAt string (date-time)

Только для вывода. Время, когда ресурс Operation последний раз обновлялся. Значение в формате RFC3339.

done boolean (boolean)

Только для вывода. Если значение равно false — операция еще выполняется. Если true — операция завершена, и задано значение одного из полей error или response.

metadata object

Метаданные операции. Обычно в поле содержится идентификатор ресурса, над которым выполняется операция. Если метод возвращает ресурс Operation, в описании метода приведена структура соответствующего ему поля metadata.

error object
включает только одно из полей error, response

Описание ошибки в случае сбоя или отмены операции.

error.
code
integer (int32)

Код ошибки. Значение из списка google.rpc.Code.

error.
message
string

Текст ошибки.

error.
details[]
object

Список сообщений с подробными сведениями об ошибке.

response object
включает только одно из полей error, response

Результат операции в случае успешного завершения. Если исходный метод не возвращает никаких данных при успешном завершении, например метод Delete, поле содержит объект google.protobuf.Empty. Если исходный метод — это стандартный метод Create / Update, поле содержит целевой ресурс операции. Если метод возвращает ресурс Operation, в описании метода приведена структура соответствующего ему поля response.