API V1

Получение списка диалогов

GET /v1/conversations

Запрос позволяет получить список диалогов по идентификатору бота, дате создания или обновления. Параметры фильтрации задаются через параметры запроса.

Запрос

Query параметры

НазваниеТипОбязательныйОписаниеПример
BotIDintegerНетИдентификатор бота123
PageNumberintegerНетНомер страницы1
PageCountintegerНетКоличество записей на странице20
CreatedTostringНетОкончание периода фильтрации по дате создания диалога. При необходимости можно указать время и часовой пояс. Формат - ISO 86012022-09-14
CreatedFromstringНетНачало периода фильтрации по дате создания диалога. При необходимости можно указать время и часовой пояс. Формат - ISO 86012022-09-14
UpdatedFromstringНетНачало периода фильтрации по дате последнего сообщения респондента в диалоге. При необходимости можно указать время и часовой пояс. Формат - ISO 86012022-09-14
UpdatedTostringНетОкончание периода фильтрации по дате последнего сообщения респондента в диалоге. При необходимости можно указать время и часовой пояс. Формат - ISO 86012022-09-14
Пример запроса
curl --location --request GET 'manual.bot.one/api/v1/conversations?UpdatedFrom=2023-05-01&UpdatedTo=2023-05-29&BotID=1446' \ --header 'Authorization: Basic ZC5keW1icnlsb3ZhQHByvLnRlY2g6Q2F2ZTIwMTY='

Ответ

Успешный ответ

200 - Успешное выполнение запроса. В ответе вернется список диалогов.

{
    "0": {
        "id": 341,
        "name": "#318 Meppel",
        "status": "completed",
        "ip": "37.1.220.250",
        "location": "Meppel",
        "updated": "2023-05-11T08:25:26+00:00",
        "duration": 13
    },
    "1": {
        "id": 340,
        "name": "#317 Meppel",
        "status": "completed",
        "ip": "37.1.220.250",
        "location": "Meppel",
        "updated": "2023-05-11T08:23:54+00:00",
        "duration": 6
    },
    "meta": {
        "pagination": {
            "total": 7,
            "count": 7,
            "per_page": 40,
            "current_page": 1,
            "total_pages": 1,
            "links": {}
        }
    }
}
Параметры ответа
НазваниеОписание
idИдентификатор диалога
nameНазвание диалога (норма диалога + город, из которого начат)
statusСтатус диалога
ipIP-адрес пользователя, который начал диалог
locationГород, из которого начат
updatedДата и время публикации последнего сообщения в диалоге в формате ISO
durationДлительность диалога в секундах
Коды ошибок
Код ошибкиНаименованиеОписание
400Bad RequestУбедитесь, что все параметры запроса имеют нужный формат
401UnauthorizedПроверьте логин и пароль для авторизации в системе
403ForbiddenПроблема с подключением к инстансу или диалогу. Это может быть связано с невалидным токеном, блокировкой инстанса, остановкой сервиса, удалением или завершением диалога и пр.

Получение данных диалога

GET /v1/conversation/{id}

Запрос позволяет получить данные диалога.

Запрос

Параметры пути

НазваниеТипОбязательныйОписаниеПример
idintegerДаИдентификатор диалога123

Пример запроса

curl --location --request GET 'manual.bot.one/api/v1/conversation/123' \ --header 'Authorization: Basic ZC5keW1icnlsb3ZhQHByZvLnRlY2g6Q2F2ZTIwMTY='

Ответ

Успешный ответ

200 - Успешное выполнение запроса. В ответе вернется объект с данными диалога.

{
  "id": 123,
  "name": "#108 Perm",
  "status": "in-process",
  "ip": "127.0.0.1",
  "location": "string",
  "updated": "2022-10-14T07:14:09+00:00",
  "duration": 20,
  "data": [
        {
            "question": "Ask Chat GPT",
            "type": "Text",
            "answer": "How can you help me?",
            "variable": "askjabba"
        },
        {
            "question": "ChatGPT",
            "type": "Text",
            "answer": "https://manual.bot.one/web/file/162",
            "variable": null,
            "deleted": false
        }
    ]
}
Параметры ответа
НазваниеОписание
idИдентификатор диалога
nameНазвание диалога (норма диалога + город, из которого начат)
statusСтатус диалога
ipIP-адрес пользователя, который начал диалог
locationГород, из которого начат
updatedДата и время публикации последнего сообщения в диалоге в формате ISO
durationДлительность диалога в секундах
dataВозвращается массив данных, собранных в диалоге (ответы на вопросы бота, загруженные файлы, выполненые запросы и пр.)
Коды ошибок
Код ошибкиНаименованиеОписание
401UnauthorizedПроверьте логин и пароль для авторизации в системе
403ForbiddenПроблема с подключением к инстансу или диалогу. Это может быть связано с невалидным токеном, блокировкой инстанса, остановкой сервиса, удалением или завершением диалога и пр.
404Not FoundОбъект не найден. Проверьте, правильно ли указаны значения параметров

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

GET /v1/dialog/{BotID}/create

Запрос позволяет создать новый диалог по идентификатору бота. Диалог будет создан, но не начат — то есть бот не будет публиковать сообщения.

Запрос

Параметры пути

НазваниеТипОбязательныйОписаниеПример
BotIDintegerДаИдентификатор бота1446

Query параметры

НазваниеТипОбязательныйОписаниеПример
variablesstringНетПеременные, которые можно передать в диалог (например, имя респондента, номер договора и пр){"name":"Dasha"}

Пример запроса

curl --location --request GET 'manual.bot.one/api/v1/dialog/1446/create' \
--header 'Authorization: Basic ZC5keW1icnlsb3ZhQHByvLnRlY2g6Q2F2ZTIwMTY='

Ответ

Успешный ответ

200 - Успешное выполнение запроса — возвращается уникальный идентификатор (uuid) созданного диалога.

{
    "dialogId": "db193a50-6d43-4954-9ef5-8f1fa79dd38b"
}

Параметры ответа

НазваниеОписание
dialogIdУникальный идентификатор созданного диалога

Коды ошибок

Код ошибкиНаименованиеОписание
401UnauthorizedПроверьте логин и пароль для авторизации в системе
403ForbiddenПроблема с подключением к инстансу или диалогу. Это может быть связано с невалидным токеном, блокировкой инстанса, остановкой сервиса, удалением или завершением диалога и пр.
404Not FoundОбъект не найден. Проверьте, правильно ли указаны значения параметров

Получение файла

GET /v1/file/{fileId}

Запрос позволяет получить файл по идентификатору.

Запрос

Параметры пути

НазваниеТипОбязательныйОписаниеПример
fileIdintegerДаИдентификатор файла123

Пример запроса

curl --location --request GET 'test.beta.bot.one/api/v1/file/123' \
--header 'Authorization: Basic ZC5keW1icnlsb3ZhQHByYXZvLnRlY2g6Q2F2ZTIwMTY='

Ответ

Успешный ответ

200 - Успешное выполнение запроса — возвращается файл, идентификатор которого был указан в запросe.

Коды ошибок

Код ошибкиНаименованиеОписание
401UnauthorizedПроверьте логин и пароль для авторизации в системе
403ForbiddenПроблема с подключением к инстансу или диалогу. Это может быть связано с невалидным токеном, блокировкой инстанса, остановкой сервиса, удалением или завершением диалога и пр.
404Not FoundОбъект не найден. Проверьте, правильно ли указаны значения параметров