Интеграция: JS Widget¶
Назначение¶
Встраиваемый чат-виджет для сайта. Работает поверх webhook/chat endpoint и передает контекст страницы.
Подключение¶
<script
src="https://storage.yandexcloud.net/<bucket>/widget/widget.js"
data-wikiflow-widget
data-tenant-id="your-tenant-id"
data-webhook-id="your-webhook-id"
data-api-url="https://your-api.example.com"
></script>
Можно использовать data-flow-id вместо data-webhook-id.
Режимы вызова backend¶
- При
flowId:POST /api/chat/{tenant_id}/{flow_id}(авторизованный чат endpoint). - При
webhookId:POST /webhook/{tenant_id}/{webhook_id}(публичный webhook endpoint).
Базовый контракт запроса¶
{
"content": "Сообщение пользователя",
"context": {
"history": [],
"userId": "generated_or_custom",
"...": "customContext + pageContext"
}
}
Базовый контракт ответа¶
{
"content": "Ответ ассистента",
"context": {
"questions": ["Быстрый ответ 1", "Быстрый ответ 2"]
}
}
Что поддерживает виджет¶
- Автогенерация
userId(или передача своего). - Передача истории чата в
context.history. - Быстрые кнопки (
context.questions). - Формы (если backend вернул
context.type = "form"). - Визуальная кастомизация (позиция, цвета, подписи, размеры).