Перейти к содержимому

Quickchat AI сохраняет все разговоры на всех каналах. Эти endpoints позволяют получать список разговоров и их данные.

Quickchat AI автоматически сохраняет и анализирует каждый разговор AI-агента на всех каналах: виджет, Slack, WhatsApp, Telegram и других. API разговоров предоставляет программный доступ к этим данным для собственных панелей мониторинга, аналитических процессов, CRM-сценариев и интеграции с существующими средствами бизнес-аналитики.

Каждый разговор включает анализ AI: определение тональности, классификацию тем, отслеживание решения вопроса и автоматическую отметку разговоров, которым может понадобиться внимание человека. Вместе с полной историей сообщений, отслеживанием переходов по ссылкам и пользовательскими метаданными это помогает понять взаимодействие посетителей с AI-агентом.

Данные разговоров распределены по нескольким endpoints:

  • Список разговоров: основные сведения, данные посетителя, статус. Для панелей, обзоров и запросов с фильтрацией
  • Детали разговора: полная информация, включая unified_analysis (аналитику AI) и client_metadata
  • События разговора: полная история сообщений, отслеживаемые переходы и записи журнала
  • Получение и запись метаданных: пользовательские данные в виде пар ключ-значение (см. Метаданные разговора)
Права: read_all

GET https://app.quickchat.ai/v1/api_core/conversations

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

ПараметрОписание
limit
целое число
Число элементов на странице
offset
целое число
Число пропускаемых элементов
query
строка
Поиск по порядковому номеру, UUID или тексту сообщения
assignee_type
строка
"ai_assistant", "human_operator" или "unassigned"
source
строка
"widget", "slack", "telegram", "whatsapp" и т. д.
resolution_status
строка
"open" или "resolved"
created_timestamp_start_date дата и времяФильтр по дате создания (начало)
created_timestamp_end_date дата и времяФильтр по дате создания (конец)
last_message_at_start_date дата и времяФильтр по дате последнего сообщения (начало)
last_message_at_end_date дата и времяФильтр по дате последнего сообщения (конец)
most_frequent_language
строка
Фильтр по определённому языку
order
строка
"desc" (по умолчанию, сначала новые) или "asc" (сначала старые). Возрастание предназначено для обхода вперёд от известного разговора, поэтому сочетайте его с last_message_at_start_date
Окно терминала
curl 'https://app.quickchat.ai/v1/api_core/conversations?limit=10&resolution_status=open' \
-H 'Authorization: Bearer <API_TOKEN>'

Ответ 200 OK

{
"items": [
{
"id": "conv-uuid-1234",
"ord": 42,
"created_at": "2026-01-15T10:30:00Z",
"last_message_at": "2026-01-15T10:35:00Z",
"title": "Return policy question",
"source": "widget",
"terminated": false,
"resolution_status": "open",
"has_unread_messages": true,
"supports_inbox_control": true,
"last_message_content": "What is your return policy?",
"most_frequent_language": "en",
"assignee": {
"type": "ai_assistant"
},
"visitor_name": "John",
"visitor_email": "john@example.com",
"visitor_phone_number": null,
"visitor_label": null
}
],
"offset": 0,
"limit": 10,
"count": 42
}
ПолеОписание
id
строка
UUID разговора
ord
целое число
Последовательный номер разговора
created_at
строка
Время создания разговора
last_message_at
строка
Время последнего сообщения
title
строка
Заголовок разговора, созданный AI
source
строка
Канал, из которого пришёл разговор (например, "widget", "slack", "whatsapp")
terminated
логическое значение
Завершён ли разговор
resolution_status
строка
"open" или "resolved"
has_unread_messages
логическое значение
Есть ли непрочитанные сообщения
supports_inbox_control
логическое значение
Поддерживает ли источник управление во Входящих (назначение, передачу)
last_message_content
строка
Содержимое последнего сообщения разговора
most_frequent_language
строка
Наиболее часто определяемый язык разговора
assignee
объект
Текущий исполнитель (type: "ai_assistant", "human_operator" или "unassigned")
visitor_name
строка или null
Имя посетителя (из формы перед чатом или профиля канала)
visitor_email
строка или null
Email посетителя
visitor_phone_number
строка или null
Телефон посетителя
visitor_label
строка или null
Пользовательская метка посетителя
Права: read_all

GET https://app.quickchat.ai/v1/api_core/conversations/{conversation_id}/

Окно терминала
curl https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/ \
-H 'Authorization: Bearer <API_TOKEN>'

Ответ 200 OK

{
"id": "conv-uuid-1234",
"ord": 42,
"created_at": "2026-01-15T10:30:00Z",
"last_message_at": "2026-01-15T10:35:00Z",
"title": "Return policy question",
"source": "widget",
"terminated": false,
"resolution_status": "open",
"has_unread_messages": true,
"supports_inbox_control": true,
"last_message_content": "What is your return policy?",
"most_frequent_language": "en",
"assignee": {
"type": "ai_assistant"
},
"url": null,
"client_metadata": {"userId": 12},
"last_visitor_message_at": "2026-01-15T10:34:00Z",
"unified_analysis": {
"sentiment": "neutral",
"resolution_status": "open",
"topic": "Return policy",
"is_flagged": false,
"flag_reason": null
},
"visitor_name": "John",
"visitor_email": "john@example.com",
"visitor_phone_number": null,
"visitor_label": null
}

Ответ с деталями содержит все поля ответа со списком, а также:

ПолеОписание
url
строка или null
URL страницы, где начался разговор (только виджет)
client_metadata
объект или null
Пользовательские пары ключ-значение, прикреплённые к разговору
last_visitor_message_at
строка
Время последнего сообщения посетителя
unified_analysis
объект или null
Анализ разговора, выполненный AI (см. ниже)

Поля unified_analysis:

ПолеОписание
sentiment
строка
Определённая AI тональность (например, "positive", "neutral", "negative")
resolution_status
строка
Оценка решения вопроса AI (может отличаться от верхнеуровневого resolution_status)
topic
строка
Тема разговора, определённая AI
is_flagged
логическое значение
Отметил ли AI разговор для проверки человеком
flag_reason
строка или null
Причина отметки разговора

Верхнеуровневое поле resolution_status ("open" или "resolved") является основным статусом, заданным вручную или правилами автоматизации.

unified_analysis.resolution_status вычисляется анализом AI и может отличаться. Например, AI может считать вопрос решённым по содержимому разговора, хотя основной статус всё ещё "open". Используйте верхнеуровневое поле для фильтрации и рабочих процессов, а unified_analysis для аналитики и выводов.

Получите все события разговора: сообщения, отслеживаемые ссылки и журналы.

Права: read_all

GET https://app.quickchat.ai/v1/api_core/conversations/{conversation_id}/events/

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

ПараметрОписание
limit
целое число
Число элементов на странице
offset
целое число
Число пропускаемых элементов
Окно терминала
curl 'https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/events/?limit=20' \
-H 'Authorization: Bearer <API_TOKEN>'

Ответ 200 OK

{
"items": [
{
"type": "message",
"data": {
"id": "msg-uuid-001",
"ord": 1,
"created_at": "2026-01-15T10:30:00Z",
"content": "Hello! How can I help you today?",
"author": "ai_assistant",
"handoff_state": null,
"message_insights": null,
"feedback": null,
"client_metadata": null,
"sources_generated": [],
"is_welcome": true,
"attachments": []
}
},
{
"type": "message",
"data": {
"id": "msg-uuid-002",
"ord": 2,
"created_at": "2026-01-15T10:31:00Z",
"content": "What is your return policy?",
"author": "visitor",
"handoff_state": null,
"message_insights": null,
"feedback": null,
"client_metadata": null,
"sources_generated": [],
"is_welcome": false,
"attachments": []
}
}
],
"offset": 0,
"limit": 20,
"count": 2
}

Типы событий: message, tracked_link, log

Типы авторов: ai_assistant, visitor, human_operator

ПолеОписание
type
строка
Тип события: "message", "tracked_link" или "log"
data.id
строка
Уникальный идентификатор сообщения
data.ord
целое число
Последовательный номер сообщения
data.created_at
строка
Время события
data.content
строка
Содержимое сообщения
data.author
строка
"ai_assistant", "visitor" или "human_operator"
data.handoff_state
строка или null
Состояние передачи, если применимо
data.message_insights
объект или null
Аналитика сообщения, созданная AI
data.feedback
объект или null
Отзыв пользователя о сообщении
data.client_metadata
объект или null
Пользовательские метаданные сообщения
data.sources_generated
массив
Статьи Базы знаний, использованные AI при создании ответа
data.is_welcome
логическое значение
Является ли сообщение приветственным
data.attachments
массив
Прикреплённые файлы