Диалоги

Диалоги пользователя вашего приложения с агентом: список, переименование, удаление и история сообщений. Диалог создаётся первым сообщением без dialog_id.

Все методы страницы работают только с диалогами переданного user_id. Диалоги, которые этот пользователь начал через прежнюю версию API с тем же идентификатором пользователя, в списке тоже есть.

Список диалогов

GET /v1/dialogs

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

Параметр

Тип

Обязательный

Описание

user_id

string

да

Идентификатор пользователя

limit

integer

нет

Сколько диалогов вернуть: от 1 до 100, по умолчанию 20

cursor

string

нет

next_cursor из предыдущего ответа — для следующей части списка

Ответ

200 — список с курсором: items — диалоги от последней активности к более ранней, has_more, next_cursor.

Dialog:

Поле

Тип

Описание

id

string

Идентификатор диалога

name

string

Название диалога

variables

object

Значения переменных старта диалога

created_at

string

Время создания

updated_at

string

Время последнего изменения

curl "https://api.evo-ai.ru/v1/dialogs?user_id=user-42&limit=2" \ -H "Authorization: Bearer evo_agent_..."
{ "items": [ { "id": "7d4e2b18-9c05-4a3f-b6e1-2f8c0a9d5b73", "name": "Сроки ответа на претензию", "variables": {"company": "ООО «Ромашка»"}, "created_at": "2026-09-24T10:15:00Z", "updated_at": "2026-09-24T10:18:42Z" } ], "has_more": false, "next_cursor": null }

Переименование диалога

PATCH /v1/dialogs/{dialog_id}

Тело запроса

Поле

Тип

Обязательное

Описание

user_id

string

да

Идентификатор пользователя

name

string

нет

Новое название, от 1 до 255 символов

Ответ

200 — объект Dialog с новым названием.

Диалог другого user_id или несуществующий — 404 с кодом dialog_not_found.

Удаление диалога

DELETE /v1/dialogs/{dialog_id}?user_id={user_id}

Ответ

204 — без тела. Если диалога нет или он принадлежит другому user_id, ответ тоже 204, и ничего не удаляется.

История диалога

GET /v1/dialogs/{dialog_id}/messages

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

Параметр

Тип

Обязательный

Описание

user_id

string

да

Идентификатор пользователя

limit

integer

нет

Сколько сообщений вернуть: от 1 до 100, по умолчанию 20

cursor

string

нет

next_cursor из предыдущего ответа — для более ранних сообщений

Ответ

200 — список с курсором. Первый ответ содержит последние сообщения диалога, next_cursor ведёт к более ранним. Внутри одного ответа сообщения идут по времени, от раннего к позднему.

Message:

Поле

Тип

Описание

id

string

Идентификатор сообщения

dialog_id

string

Идентификатор диалога

text

string

Сообщение пользователя

answer

string

Ответ агента; пустая строка, если генерацию остановили

files

array

Файлы сообщения — приложенные пользователем и созданные агентом (MessageFile)

sources

array

Источники ответа (Source)

tools

array

Вызовы инструментов агентом, по одному элементу на инструмент

rating

string

Оценка ответа: like, dislike или null

error

object

Ошибка генерации {code, message} или null

created_at

string

Время сообщения

Объекты MessageFile и Source описаны на странице Отправка сообщений.

Если соединение с потоком оборвалось, ответ появится в истории, когда агент его закончит. Сообщение, которое API отклонило до обращения к агенту, в историю не попадает.

curl "https://api.evo-ai.ru/v1/dialogs/7d4e2b18-9c05-4a3f-b6e1-2f8c0a9d5b73/messages?user_id=user-42" \ -H "Authorization: Bearer evo_agent_..."

Ошибки

HTTP

Код

Когда

404

dialog_not_found

Диалога нет или он принадлежит другому user_id