REST API
Результат и статусы
GET /api/tasks/{uuid} возвращает текущий статус и, для завершённых задач, результат в поле turn.
GET
/api/tasks/{uuid}
Потеряли uuid или нужно окинуть взглядом все свои задачи — есть
список задач с фильтром по статусу.
Ответ
| Поле | Тип | Описание |
|---|---|---|
uuid | string | Идентификатор задачи. |
status | string | Текущий статус (см. ниже). |
turn | object | null | Результат от Aist Core. Заполнен при completed. См. Структура turn. |
error | string | null | Человекочитаемая причина при failed; при canceled — переданный вами reason. |
created_at | string | Момент создания задачи. |
completed_at | string | null | Момент перехода в терминальный статус. |
pending_tool_calls | array | Только при interrupted — вызовы клиентских инструментов, ждущие ответа. |
Жизненный цикл статусов
pending ──▶ processing ──┬──▶ completed # успех, turn заполнен ├──▶ failed # ошибка, error заполнен └──▶ interrupted ──┬──▶ processing ──▶ … # ждём client_tools └──▶ canceled # отказались отвечать
| Статус | Значение |
|---|---|
pending | Задача в очереди, ещё не отправлена в Aist Core. |
processing | Aist Core принял ход и обрабатывает его. |
interrupted | Модель вызвала клиентский инструмент — ждёт результата от вас. См. Клиентские инструменты. |
completed | Терминальный. Результат в turn. |
failed | Терминальный. Причина в error. |
canceled | Терминальный. Вы отказались от прерванной задачи через POST /api/tasks/{uuid}/cancel — причина в error. |
Терминальные статусы — completed, failed и canceled: после них
задача не меняется. interrupted — промежуточный: он требует вашего действия и снова
переходит в processing после отправки результатов инструментов либо заканчивается
canceled, если вы отказались отвечать.
Стратегия опроса
Опрашивайте GET /api/tasks/{uuid} с интервалом ~1–2 с, пока status не станет
терминальным (или interrupted, если используете клиентские инструменты). SDK делает это
за вас — см. waitForTask.
Доступ только владельцу
Задачу можно получить только тем же пользователем (sub в JWT), что её создал —
иначе 403. Завершённые, упавшие и отменённые задачи хранятся 30 дней, затем удаляются.