REST API

Список задач

GET /api/tasks возвращает ваши задачи, свежие сверху: статусы, тайминги и — для прерванных — ожидающие вызовы инструментов.

GET /api/tasks

Список нужен там, где uuid задачи уже потерян: разобраться, что держит лимит после 429, подобрать хвосты после падения процесса, показать пользователю его очередь.

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

ПараметрТипОписание
statusstring | arrayФильтр по статусу. Один (?status=interrupted), несколько через запятую (?status=pending,processing) или массивом (?status[]=…). Неизвестный статус — 422, а не молчаливая выдача всего подряд.
pageintegerСтраница, с 1. Дефолт 1.
per_pageintegerРазмер страницы, 1–100. Дефолт 25.

Ответ

{
  "data": [
    {
      "uuid": "550e8400-…",
      "status": "interrupted",
      "error": null,
      "created_at": "2026-08-06T05:41:00.000000Z",
      "completed_at": null,
      "pending_tool_calls": [
        { "id": "call_abc", "name": "get_user_location", "arguments": {  } }
      ]
    }
  ],
  "meta": { "current_page": 1, "per_page": 25, "last_page": 3, "total": 64 }
}

pending_tool_calls приходит только у задач в статусе interrupted — по одному запросу видно, на что каждая из них ждёт ответа.

turn в списке не отдаётся
В строке списка нет поля turn: это ход целиком, вместе с сообщениями модели, и на странице из 25 задач ответ весил бы мегабайты. За результатом — GET /api/tasks/{uuid}.

Разобрать заваленный лимит

Штатный сценарий после 429: посмотреть, что висит, и либо ответить, либо отменить.

GET  /api/tasks?status=interrupted        # что держит лимит
POST /api/tasks/{uuid}/tool-results       # ответить на вызов…
POST /api/tasks/{uuid}/cancel             # …либо отказаться
POST /api/tasks/cancel-interrupted        # либо снести все прерванные разом

Подробности про прерванные задачи и отмену — Клиентские инструменты, про сам лимит — Ошибки и лимиты.

Доступ только к своим
Выдаются только задачи того же пользователя (sub в JWT). Завершённые, упавшие и отменённые задачи хранятся 30 дней, затем удаляются — в списке их после этого не будет.