Метод: POST
Authorization: Bearer Token
URL: https://twin24.ai/bot/api/v1/dialogs
curl --location 'https://twin24.ai/bot/api/v1/dialogs' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer TOKEN' \ --data-raw '{ "botId": "bce7d22e-dde6-4427-b391-ebbdfda44de6", "ttl": 3600, "returnAnswerAsync": false, "callbackUrl": "https://webhook.site/bce7d22e-dde6-4427-b391-ebbdfda44de6", "callbackData": "Some data", "clientMetadata": { "var": "Переменная из метадаты" }, "variables": { "var": "Просто переменная" }, "clientTimezoneOffset": 0, "communicationType": "TEXT", "channelType": "MOBILE", "messengerType": null, "referer": "example.com", "message": "Привет, Мир!", "clientId": "bce7d22e-dde6-4427-b391-ebbdfda44de6", "clientEmail": "test@example.com", "clientPhone": "70001234567", "clientName": "Иван Иванов", "clientNickname": "IvanIvanov1998", "clientExternalId": "123", "messengerUserId": null }' |
{ "botId": "bce7d22e-dde6-4427-b391-ebbdfda44de6", "ttl": 3600, "returnAnswerAsync": false, "callbackUrl": "https://webhook.site/bce7d22e-dde6-4427-b391-ebbdfda44de6", "callbackData": "Some data", "clientMetadata": { "var": "Переменная из метадаты" }, "variables": { "var": "Просто переменная" }, "clientTimezoneOffset": 0, "communicationType": "TEXT", "channelType": "MOBILE", "messengerType": null, "referer": "example.com", "message": "Привет, Мир!", "clientId": "bce7d22e-dde6-4427-b391-ebbdfda44de6", "clientEmail": "test@example.com", "clientPhone": "70001234567", "clientName": "Иван Иванов", "clientNickname": "IvanIvanov1998", "clientExternalId": "123", "messengerUserId": null } |
Описание полей метода:
Поле | Тип | Обязательно | Описание |
---|---|---|---|
botId | string | да | Идентификатор сценария для старта диалога |
ttl | int | да | Время жизни сессии бота в секундах |
returnAnswerAsync | boolean | нет | Возвращать ли ответа ассинхронно
|
callbackUrl | string | нет | URL для отправки результата работы бота в асснихронном режиме |
callbackData | string | нет | Дополнительные данные при отправке результата работы бота в асснихронном режиме |
clientMetadata | List[object] | нет | Объект с переменными, доступными в боте как {clientMetadata.имя_переменной} |
| var | string | нет | Произвольная переменная |
variables | List[object] | нет | Объект с переменными, доступными в боте как {имя_переменной} |
| var | string | нет | Произвольная переменная |
clientTimezoneOffset | int | нет | Таймзона клиента заданная в виде отклоненния от UTC+0, задаваемого в минутах |
communicationType | string | нет | Тип коммуникации с клиентом. Допустимые значения: "TEXT", "VOICE" |
channelType | string | нет | Тип канала общения. Допустимые значения: "WEB", "MOBILE", "MESSENGER" |
messengerType | string | нет | Тип мессенджера. Допустимые значения: "WHATSAPP", "VIBER", "TELEGRAM", "VKONTAKTE", "FACEBOOK", "SKYPE", "SLACK", "YANDEX", "ALICE", "THREADS", "AVITO" |
referer | string | нет | Адрес главной страницы сайта, на которой размещен виджет |
message | string | нет | Стартовое сообщение клиента боту |
clientId | string | нет | Идентификатор клиента в системе Twin |
clientEmail | string | нет | Email клиента. Доступно в виде системной переменной в боте |
clientPhone | string | нет | Номер телефона клиента. Доступно в виде системной переменной в боте |
clientName | string | нет | Имя клиента. Доступно в виде системной переменной в боте |
clientNickname | string | нет | Псевдоним клиента. Доступно в виде системной переменной в боте |
clientExternalId | string | нет | Внешний идентификатор клиента. Доступно в виде системной переменной в боте |
messengerUserId | string | нет | Идентификатор учетной записи пользователя в мессенджере. Доступно в виде системной переменной в боте |
{ "dialogId": "bce7d22e-dde6-4427-b391-ebbdfda44de6", "botId": "bce7d22e-dde6-4427-b391-ebbdfda44de6", "status": "OK", "language": "RU", "result": { "initialVariables": { "var": "Просто переменная" }, "date": "04.03.2024", "evaluation": "5", "confirmation": "Подтверждение", "nps": "NPS", "status": "01", "Результат": "Значение произвольного результата" }, "messages": [ { "body": "Просто переменная\nПеременная из метадаты\nIvanIvanov1998", "actions": [], "substitutions": { "{var}": { "value": "Просто переменная", "type": "NAME", "name": "var", "formatted": "Просто переменная" }, "{clientMetadata.var}": { "value": "Переменная из метадаты", "type": "NAME", "name": "clientMetadata.var", "formatted": "Переменная из метадаты" }, "{clientNickname}": { "value": "IvanIvanov1998", "type": "NAME", "name": "clientNickname", "formatted": "IvanIvanov1998" }, "nodeId": "bce7d22e-dde6-4427-b391-ebbdfda44de6", "botId": "bce7d22e-dde6-4427-b391-ebbdfda44de6" }, "answers": [], "keyboard": [], "meta": [], "attachments": [ "bce7d22e-dde6-4427-b391-ebbdfda44de6" ] }, { "body": "Как дела?", "actions": [], "substitutions": { "nodeId": "bce7d22e-dde6-4427-b391-ebbdfda44de6", "botId": "bce7d22e-dde6-4427-b391-ebbdfda44de6" }, "answers": [ "1", "2" ], "keyboard": { "buttonsInRow": 1, "buttons": [ { "type": "text", "text": "1" }, { "type": "text", "text": "2" } ] }, "meta": [], "attachments": [] } ] } |
Описание полей ответа:
Поле | Тип | Описание |
---|---|---|
dialogId | string | Идентификатор диалога |
botId | string | Идентификатор бота/сценария |
status | string | Статус сообщения. Возможные значения: OK, STOP, HELP |
language | string | Язык бота/сценария |
result | object | Объект с результатами диалога |
| initialVariables | object | Объект со стартовыми переменными диалога |
| | var | string | Произвольная стартовая переменная диалога |
| date | string | Значение поля "дата" Устанавливается в сценарии в блоке "Результат" |
| evaluation | string | Значение поля "оценка" Устанавливается в сценарии в блоке "Результат" |
| confirmation | string | Значение поля "Подтверждение" Устанавливается в сценарии в блоке "Результат" |
| nps | string | Значение поля "NPS" Устанавливается в сценарии в блоке "Результат" |
| status | string | Значение поля "статус" Устанавливается в сценарии в блоке "Результат" |
| Результат | string | Значение произвольного результата заданого пользователем в сценарии Устанавливается в сценарии в блоке "Результат" |
messages | List[object] | Массив сообщений от бота |
| body | string | Текст сообщения |
| actions | List | Дополнительные действия в блоке |
| substitutions | object | Развернутая информация об использованный в сообщении переменных и блоке в сценарии |
| | {var} | object | Вызов переменной в блоке |
| | | value | string | Значение переменной |
| | | type | string | Тип переменной |
| | | name | string | Имя переменной |
| | | formatted | string | Форматированное значение переменной |
| | nodeId | string | Идентификатор блока с сообщением |
| | botId | string | Идентификатор бота/сценария, в котором находится блок |
| answers | List[string] | Массив вариантов ответов для пользователя |
| keyboard | object | Объект клавиатуры для сообщения |
| | buttonsInRow | int | Количество кнопок в одном ряду |
| | buttons | List[object] | Массив кнопок |
| | | type | string | Тип кнопки |
| | | text | string | Текст на кнопке |
| meta | List | Дополнительная мета информация |
| attachments | List[string] | Массив идентификаторов вложений в блоке |