Для Hermes и интеграций

API v1

Токен: кабинет → Агенты или «API-токены». Заголовок Authorization: Bearer ort_…. Полное значение один раз. Не передавайте токен в query string и не встраивайте его в браузерный JS.

Базовый URL

/api/v1

Права токена (scopes)

  • read — Чтение (бренды, посты, очередь, чат, документация API)
  • write — Календарь, черновик поста, ack чата
  • run — Запуск конвейера и выпуск черновика в очередь

Полный текст для агента (тот же файл отдаёт GET /api/v1/docs с Bearer):

В репозитории: docs/HERMES-API.md. Машинный список: GET /catalog, OpenAPI: GET /openapi.

МетодПутьScopeНазначение
GET /me read Профиль владельца токена, scopes, привязка к бренду
GET /meta read Версия платформы, лимит, сети, типы постов, статусы
GET /catalog read Список эндпоинтов этого API
GET /docs read Полная документация Markdown для Hermes
GET /openapi read Черновик OpenAPI 3 (JSON)
GET /status read Флаги платформы без секретов (maintenance, kill-switch)
GET /health — Живость платформы: БД, флаги, агенты онлайн
GET /healthz — Алиас GET /health
GET /billing read Счёт, тариф, остаток токенов API владельца токена
GET /networks read Каталог соцсетей: slug, лимит, live/stub — без кредов
GET /content-types read Типы контента конвейера
GET /compliance/labels read Коды гвардов и русские подписи
GET /tenants read Бренды, доступные этому токену
GET /tenants/{id} read Карточка бренда (без биллинг-секретов)
GET /tenants/{id}/stats read Счётчики постов и очереди бренда
GET /stats read Счётчики текущего/указанного бренда
GET /kit read Бренд-кит (голос, табу, CTA). Не содержит токенов каналов
GET /calendar read Слоты календаря
POST /calendar write Добавить слот (нужна роль editor)
DELETE /calendar/{id} write Удалить слот
GET /channels read Статус каналов: сеть, dry-run, заполнен ли кред. Payload не отдаётся
GET /posts read Лента постов: tenant_id, status, network, limit, after_id
GET /posts/{id} read Карточка поста
GET /posts/{id}/log read Разобранный agent_log
POST /posts write Черновик Hermes (status=quarantine, не публикует)
POST /posts/{id}/release run Черновик → очередь публикации
POST /posts/{id}/retry run failed → очередь
GET /queue read Очередь publish_jobs
GET /queue/{id} read Одна задача очереди
POST /run run Запуск конвейера панели
GET|POST /heartbeat — Пульс; обновляет last_seen. Scope не требуется
GET /agent read Конфиг карточки агента, привязанной к токену
GET /agents read Все агенты владельца токена (команда)
POST /agents write Создать агента команды
GET /agents/{id} read Карточка агента команды
PATCH /agents/{id} write Изменить карточку агента
DELETE /agents/{id} write Удалить агента и отозвать его токен
GET /agents/{id}/skills read Скилы агента
POST /agents/{id}/skills write Привязать скил к агенту
GET /agents/{id}/memory read Память агента
GET|POST /agents/{id}/heartbeat — Пульс конкретного агента (last_seen)
POST /agents/{id}/token write Выдать API-токен агенту (секрет один раз)
GET /skill read Markdown skill (AGENTS.md) связанного агента
GET /skills read Скилы связанного агента
POST /skills write Добавить скил связанному агенту
GET /memory read Память связанного агента
POST /memory write Добавить запись в память (опционально agent_id)
DELETE /memory/{id} write Удалить запись памяти
GET /lessons read Уроки с панели
POST /lessons write Добавить урок связанному агенту
GET /training read Датасет ShareGPT (JSON-массив)
POST /training write Добавить урок в датасет связанного агента
GET /training/jsonl read Тот же датасет, application/x-ndjson
GET /events read Шина событий: after_id, type, profile, limit
POST /events write Положить событие в шину
GET /events/stream read SSE-поток новых событий (короткий long-poll)
GET /profiles read Профили Hermes (= агенты runtime=hermes и slug)
POST /gateway/{profile}/restart run Команда рестарта профиля (событие + задача, без exec)
GET|POST|DELETE /cron read/write Реестр cron-задач агента
GET /logs/{profile} read Последние логи профиля
GET /tasks/{id}/status read Статус задачи (agent_tasks или очередь публикации)
GET /chat read История чата с панелью
GET /chat/pending read Непрочитанные сообщения человека
POST /chat/reply read Ответ Hermes (text, message_id)
POST /chat/ack read Пометить pending прочитанным без текста
POST /chat/push read Сообщение агента в панель без pending

Лимит запросов в минуту задаётся в Настройках. Креды каналов и ключ ИИ API не возвращает. Ответ JSON {ok, data|error}, кроме /training/jsonl и /events/stream.