Обзор

Сетевые диски / Снапшоты

Управление снимками (снапшотами) сетевых дисков через REST API: ручные снимки, автоматические по расписанию и откат тома к снимку. Все методы требуют токен аутентификации.

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

POST /v1/volume/:volumeId/snapshot

Создаёт снимок тома типа manual. Снимок создаётся асинхронно: в ответе возвращается объект VolumeSnapshot со статусом creating, после завершения — ready. На один том можно создать не более 100 снимков.

Параметры:

Параметр Место Тип Обязательный Описание
volumeId Path UUID Да ID тома

Ответ:

{
    "id": "bb0e8400-e29b-41d4-a716-446655440034",
    "status": "creating",
    "size": 21474836480,
    "usedBytes": 5368709120,
    "diskUsage": 5368709120,
    "type": "manual",
    "createdAt": "2025-01-15T12:00:00+00:00",
    "updatedAt": "2025-01-15T12:00:00+00:00"
}

Ошибки:

  • 404 Not Found — Том не найден

DELETE /v1/volume/:volumeId/snapshot/:snapshotId

Удаляет отдельный снимок тома по его идентификатору, остальные снимки не затрагиваются. В ответе возвращается объект VolumeSnapshot со статусом deleted.

Параметры:

Параметр Место Тип Обязательный Описание
volumeId Path UUID Да ID тома
snapshotId Path UUID Да ID снимка

Ответ:

{
    "id": "bb0e8400-e29b-41d4-a716-446655440034",
    "status": "deleted",
    "size": 21474836480,
    "usedBytes": 5368709120,
    "diskUsage": 5368709120,
    "type": "manual",
    "createdAt": "2025-01-15T12:00:00+00:00",
    "updatedAt": "2025-01-15T12:00:00+00:00"
}

Ошибки:

  • 404 Not Found — Том или снимок не найдены

GET /v1/volume/:volumeId/snapshots

Возвращает все снимки тома в виде массива объектов VolumeSnapshot. Для каждого снимка доступны статус, размер, использованный размер, тип (manual или auto) и даты создания и обновления.

Параметры:

Параметр Место Тип Обязательный Описание
volumeId Path UUID Да ID тома

Ответ:

[
    {
        "id": "bb0e8400-e29b-41d4-a716-446655440034",
        "status": "ready",
        "size": 21474836480,
        "usedBytes": 5368709120,
        "diskUsage": 5368709120,
        "type": "manual",
        "createdAt": "2025-01-15T12:00:00+00:00",
        "updatedAt": "2025-01-15T12:00:00+00:00"
    }
]

Ошибки:

  • 404 Not Found — Том не найден

POST /v1/volume/:volumeId/snapshot/prune

Удаляет все снимки тома одновременно. В ответе возвращается массив объектов VolumeSnapshot со статусом deleted — по одному на каждый удалённый снимок.

Параметры:

Параметр Место Тип Обязательный Описание
volumeId Path UUID Да ID тома

Ответ:

[
    {
        "id": "bb0e8400-e29b-41d4-a716-446655440034",
        "status": "deleted",
        "size": 21474836480,
        "usedBytes": 5368709120,
        "diskUsage": 5368709120,
        "type": "manual",
        "createdAt": "2025-01-15T12:00:00+00:00",
        "updatedAt": "2025-01-15T12:00:00+00:00"
    }
]

Ошибки:

  • 404 Not Found — Том не найден

POST /v1/volume/:volumeId/snapshot/:snapshotId/rollback

Откатывает том к состоянию на момент создания снимка. В ответе возвращается объект VolumeSnapshot, к которому выполнен откат. Операция возможна только для приостановленного тома и готового снимка.

Параметры:

Параметр Место Тип Обязательный Описание
volumeId Path UUID Да ID тома
snapshotId Path UUID Да ID снимка

Ответ:

{
    "id": "bb0e8400-e29b-41d4-a716-446655440034",
    "status": "ready",
    "size": 21474836480,
    "usedBytes": 5368709120,
    "diskUsage": 5368709120,
    "type": "manual",
    "createdAt": "2025-01-15T12:00:00+00:00",
    "updatedAt": "2025-01-15T12:00:00+00:00"
}

Ошибки:

  • 404 Not Found — Том не найден
  • 404 Not Found — Том не приостановлен
  • 404 Not Found — Снимок не найден или не готов

GET /v1/volume/:volumeId/snapshot/config

Возвращает конфигурацию автоматических снимков тома: признак включённости расписания, cron-выражение, дату следующего снимка и максимальное количество снимков. Изменяется конфигурация методом PUT /v1/volume/:volumeId/snapshot/config.

Параметры:

Параметр Место Тип Обязательный Описание
volumeId Path UUID Да ID тома

Ответ:

{
    "id": "cc0e8400-e29b-41d4-a716-446655440035",
    "scheduleEnable": true,
    "scheduleCron": "0 0 * * *",
    "scheduleNextDate": "2025-01-16T00:00:00+00:00",
    "maxSnapshots": 7,
    "createdAt": "2025-01-15T10:30:00+00:00",
    "updatedAt": "2025-01-15T10:35:00+00:00"
}

Ошибки:

  • 404 Not Found — Том не найден

PUT /v1/volume/:volumeId/snapshot/config

Обновляет конфигурацию автоматических снимков тома: включает или отключает расписание, задаёт cron-выражение и максимальное количество снимков (от 1 до 100). При включённом расписании снимки создаются автоматически по cron-выражению, а в ответе возвращается объект VolumeSnapshotConfig с новой датой следующего снимка. Cron-выражение валидируется — при ошибке запрос отклоняется.

Параметры:

Параметр Место Тип Обязательный Описание
volumeId Path UUID Да ID тома

Body:

Параметр Тип Обязательный Описание
scheduleEnable boolean Да Включить автоматические снимки
scheduleCron string Да Cron-выражение для расписания
maxSnapshots number Да Максимальное количество снимков (от 1 до 100)

Пример запроса:

{
    "scheduleEnable": true,
    "scheduleCron": "0 */6 * * *",
    "maxSnapshots": 14
}

Ответ:

{
    "id": "cc0e8400-e29b-41d4-a716-446655440035",
    "scheduleEnable": true,
    "scheduleCron": "0 */6 * * *",
    "scheduleNextDate": "2025-01-15T12:00:00+00:00",
    "maxSnapshots": 14,
    "createdAt": "2025-01-15T10:30:00+00:00",
    "updatedAt": "2025-01-15T10:35:00+00:00"
}

Ошибки:

  • 404 Not Found — Том не найден
  • 400 Bad Request — Неверное cron-выражение
  • 400 Bad Request — Невалидные параметры
Назад
Сетевые диски
В этой статье
POST /v1/volume/:volumeId/snapshot
DELETE /v1/volume/:volumeId/snapshot/:snapshotId
GET /v1/volume/:volumeId/snapshots
POST /v1/volume/:volumeId/snapshot/prune
POST /v1/volume/:volumeId/snapshot/:snapshotId/rollback
GET /v1/volume/:volumeId/snapshot/config
PUT /v1/volume/:volumeId/snapshot/config

Мы используем файлы cookies

Продолжив работу с сайтом, вы соглашаетесь с   политикой использования файлов Cookies