Разговоры

Список обращений, карточка разговора, закрытие. Поля объекта conversation.

Список разговоров #

GET /api/v1/conversations conversations:read
ПолеТипОбяз.Описание
statusstringнетopen, pending, resolved или closed
sinceRFC 3339неттолько изменённые после этого времени
cursorRFC 3339нетпродолжение предыдущей страницы
limitintнет1…100, по умолчанию 25
Пример вызова
curl -s "https://api.widgetchat.ru/api/v1/conversations?status=open&since=2026-08-22T00:00:00Z" -H "Authorization: Bearer wck_…"
Ответ
{"data": [ /* объекты conversation */ ], "nextCursor": "…", "hasMore": true}

Один разговор #

GET /api/v1/conversations/{id} conversations:read

Номер разговора — UUID. Разговор чужого сайта отвечает 404, а не 403: существование чужих номеров тоже сведения.

Объект conversation #

ПолеТипОбяз.Описание
iduuidданомер разговора
statusstringдаopen, pending, resolved, closed
channelstringдавсегда app: обращение приходит из виджета
visitor.idstringдапостоянный номер посетителя
visitor.namestringнетимя, если сайт его передал
visitor.emailstringнетпочта, если сайт её передал
visitor.organizationstringнеторганизация из подписанного токена
visitor.accountIdstringнетваш номер клиента из подписанного токена
visitor.rolestringнетроль посетителя из подписанного токена
sourcestringнетоткуда пришло обращение
createdAtRFC 3339дакогда заведено
lastMessageAtRFC 3339|nullнетвремя последнего сообщения
lastReadAtRFC 3339|nullнетдо какого момента посетитель прочитал

В visitor попадают только сведения, которые сайт сам передал подписанным токеном. Служебные пометки разговора — номер темы Telegram, чат открытой линии — наружу не отдаются.

Закрыть разговор #

POST /api/v1/conversations/{id}/close conversations:write

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

Ответ
{"data": {"id": "6c82f8e2-…", "status": "closed"}}