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

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

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

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

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

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

Параметр

Значение

completed_at

дата и время выполнения задания

created_at

дата и время добавления задания

id

уникальный идентификатор задания в очереди

region_slug

регион, куда было отправлено задание

resource_id

уникальный идентификатор ресурса

resource_type

тип ресурса (сервер, снэпшот и проч.)

started_at

дата и время запуска отложенного задания

status

состояние задачи

type

тип задания (его суть)

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

Для проверки статуса конкретного задания отправьте запрос типа 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

задание завершено успешно