# Мои задания агентов

> Задания пользователя по расписанию у всех перечисленных агентов, которыми он может управлять, и задания, переданные ему от ушедших сотрудников.

export default function Layout(props) {
  const { OpenAPIPage } = props.components ?? {};
  return (
    <>
      {props.children}
      ## Мои задания агентов

`GET /ws/api/agent-schedules`

Задания пользователя по расписанию у всех перечисленных агентов, которыми он может управлять, и задания, переданные ему от ушедших сотрудников.

**Авторизация:** dpop

**Параметры**

| Имя | Где | Обязательный | Тип | Описание |
| --- | --- | --- | --- | --- |
| `agent` | query | да | string (uuid) или массив string (uuid) | Агенты, чьи задания нужны |

**Ответы**

- `200` — Задания (`application/json`, object)
  - `handovers`: массив object, обязательное — Задания, переданные вам от ушедших сотрудников
    - `agentId`: string, обязательное — Идентификатор агента
    - `channels`: массив "chat" | "telegram" | "email", обязательное — Куда присылать результат
    - `createdAt`: string, обязательное — Когда передано, ISO 8601
    - `endsOn`: string, nullable, обязательное — Последний день работы; null — без окончания
    - `fromName`: string, обязательное — Имя бывшего автора
    - `fromUserId`: string, обязательное — Кто вёл задание раньше
    - `id`: string, обязательное — Идентификатор переданного задания
    - `name`: string, обязательное — Название
    - `prompt`: string, обязательное — Что делает агент
    - `repeatTimes`: integer, nullable, обязательное — Число повторов; null — без ограничения
    - `schedule`: string, обязательное — Расписание
    - `startsOn`: string, nullable, обязательное — Дата начала; null — сразу
  - `schedules`: массив object, обязательное — Задания пользователя
    - `agentId`: string, обязательное — Идентификатор агента
    - `channels`: массив "chat" | "telegram" | "email", обязательное — Куда присылать результат
    - `conversationId`: string, nullable, обязательное — Беседа, куда приходят результаты
    - `createdAt`: string, обязательное — Создано, ISO 8601
    - `endsOn`: string, nullable, обязательное — Последний день работы; null — без окончания
    - `hold`: object, обязательное — Остановка администратором; null — не остановлено
      - `at`: string, обязательное — Когда, ISO 8601
      - `byUserId`: string, обязательное — Кто остановил
      - `reason`: string, обязательное — Причина
    - `id`: string, обязательное — Идентификатор задания
    - `lastFailed`: boolean, обязательное — Последний запуск завершился ошибкой
    - `lastRunAt`: string, nullable, обязательное — Последний запуск, ISO 8601
    - `name`: string, обязательное — Название
    - `nextRunAt`: string, nullable, обязательное — Следующий запуск, ISO 8601
    - `origin`: "chat" | "telegram" | "panel" | "agent", обязательное — Где создано: chat — в чате, telegram — в Telegram, panel — в разделе «Агенты», agent — агентом
    - `overlap`: "skip" | "queue" | "replace", обязательное — Если к очередному запуску предыдущий ещё идёт: skip — пропустить очередной запуск, queue — выполнить его сразу после текущего, replace — остановить текущий и начать новый
    - `prompt`: string, обязательное — Что делает агент
    - `quotaPaused`: boolean, обязательное — Приостановлено, пока исчерпан месячный лимит работы агента; продолжится автоматически
    - `repeatDone`: integer, обязательное — Сколько раз задание уже выполнено
    - `repeatTimes`: integer, nullable, обязательное — Число повторов; null — без ограничения
    - `schedule`: string, обязательное — Расписание: выражение cron, every Nm или дата однократного запуска
    - `startsOn`: string, nullable, обязательное — Дата начала; null — сразу
    - `state`: "active" | "paused" | "running" | "finished", обязательное — active — работает по расписанию, paused — на паузе, running — выполняется прямо сейчас, finished — запусков больше не будет
    - `upcoming`: массив object, обязательное — Ближайшие запуски
      - `at`: string, обязательное — Время запуска, ISO 8601
      - `label`: string, обязательное — Время запуска по-русски в часовом поясе команды
    - `userId`: string, обязательное — Автор задания
    - `waiting`: boolean, обязательное — Ждёт даты начала
    - `webhook`: boolean, обязательное — Включён ли вебхук, по которому внешняя система запускает задание вне расписания
- `400` — Некорректный запрос: не прошла валидация параметров или тела (`application/problem+json`, ProblemDetails)
- `401` — Не авторизован
- `403` — Недостаточно прав или scope (`application/problem+json`, ProblemDetails)

    </>
  );
}
