Очередь заданий

Общие сведения

Некоторые операции асинхронны - то есть вы отправляете запрос, он принимается, но выполняется в фоне. При этом в очередь ставится задание, которому присваивается уникальный идентификатор

Например, в результате отправки запроса на перезагрузку сервера может быть получен следующий ответ:

{
    "action": {
        "completed_at": "2018-07-12 01:31:44",
        "id": 119123,
        "region_slug": "msk1",
        "resource_id": 6867,
        "resource_type": "reglet",
        "started_at": "2018-07-12 01:31:44",
        "status": "in-progress",
        "type": "reboot"
    }
}

Параметры следующие:

Параметр Значение
id уникальный идентификатор задания в очереди
region_slug регион, куда было отправлено задание
type тип задания (его суть)
resource_id уникальный идентификатор ресурса
resource_type тип ресурса (сервер, снэпшот и проч.)
status состояние задачи

Как проверить статус задания?

Для проверки статуса конкретного задания отправьте запрос типа GET к /v1/actions/<идентификатор-запроса>

curl \
-X GET \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
'https://api.cloudvps.reg.ru/v1/actions/120639'

В полученном ответе необходимо проверить поле status, которое будет принимать следующие значения:

Статус Значение
new поставлено в очередь, но еще не начало исполняться
in-progress в процессе выполнения
errored задание завершено с ошибкой
completed задание завершено успешно