Salebot.pro
Search
⌃K

API конструктора

Какие запросы поддерживает конструктор и как их выполнять.
Запросы выполняются методом POST на URL, типа: https://chatter.salebot.pro/api/{api_key}/{action}
Где: api_key ключ доступа к API, который получается в настройках проекта (Рисунок 1)
Рисунок 1
Получить ключ доступа можно с использованием переменной #{api_key}. В ней хранится актуальный сгенерированный ключ доступа. Не забудьте перед использованием сгенерировать токен.
При копировании url запроса с этой страницы подставляется пробел, который необходимо при вызове удалить.
Пример неправильно скопированной ссылки: https://chatter.salebot.pro /api/callback
Пробел после .pro не так просто заметить. С ним запрос не будет выполняться
При отправке запроса методом GET не используйте запрещенные символы. Изучите правильное формирование GET запросов.

Как получать сообщения на Webhook URL, указанный в настройках проекта

Настройки проекта
Каждое входящее или исходящее сообщение будет приходить следующим json POST запросом:
{
'id': идентификатор сообщения в системе,
'client': {
'id': идентификатор клиента в системе,
'recepient': идентификатор клиента в мессенджере,
'client_type': тип мессенджера,
'name': имя клиента,
'avatar': аватар клиента,
'created_at': дата создания клиента,
'tag': ключ подписки,
'group': бот, к которому привязан клиент,
},
'message': текст сообщения,
'attachments': массив ссылок на файлы
'message_id': id блока, из которого было отправлено сообщение
'project_id': идентификатор проекта,
'is_input': 1 если сообщение от клиента, 0 если оно от бота,
'delivered': 1 если сообщение успешно отправлено, 0 если произошла ошибка отправки,
'error_message': текст ошибки отправки сообщения
}
Если запрос вернул ошибку, повторной отправки не будет. Если сервер возвращает ошибки, уведомления продолжат отправляться несмотря на это.

Как использовать универсальный webhook

Перечисленные методы теперь могут быть запущены как POST, так и GET запросом.
Раньше в наших методах были жестко прописаны параметры, по которым запускались выполнения методов для подписчиков (например client_id и vk_id) и это накладывало некоторые ограничения для использования их со сторонними сервисами.
Теперь вы можете указать, в каком параметре запроса сэйлбот будет искать идентификатор пользователя: для этого используется параметр с префиксом value_, например value_user_id и value_group_id.
А еще метод отправки колбека callback, теперь можно запустить передав электронный адрес (client_email) или телефон (client_phone) клиента.
Методы callback, vk_callback, ok_callback и whatsapp_callback не привязаны к именам параметра. Вы можете указать, в каком параметре будет находиться номер телефона, email или id-клиента.
Это удобно, когда вы настраиваете прием вебхука с какого-то сайта.
Чтобы указать, в какой переменной лежит client_id, необходимо передать параметр value_client_id, в котором указать название параметра с этим значением.
Чтобы указать, в какой переменной лежит phone, необходимо передать параметр value_phone, в котором указать название параметра с этим значением.
Чтобы указать, в какой переменной лежит email, необходимо передать параметр value_email, в котором указать название параметра с этим значением.
Чтобы указать, в какой переменной лежит user_id, необходимо передать параметр value_user_id, в котором указать название параметра с этим значением.
Чтобы указать, в какой переменной лежит group_id, необходимо передать параметр value_group_id, в котором указать название параметра с этим значением.
Пример:
В адрес пропишем value_client_id = my_client
https://chatter.salebot.pro/api/d3f31dabef80ddeb73d43938b4ef8bb0/callback?value_client_id=my_client {"my_client":49177759, "message":"Hello world"}
Запрос будет эквивалентен запросу ниже:
https://chatter.salebot.pro/api/d3f31dabef80ddeb73d43938b4ef8bb0/callback {"client_id":49177759, "message":"Hello world"}
Как можно заметить, название параметра, в котором лежит имя, отличается припиской value_

Как запускать бота

post
https://chatter.salebot.pro
/api/#{api_key}/callback
Запуск бота
post
https://chatter.salebot.pro
/api/#{api_key}/vk_callback
Запуск бота по идентификатору пользователя ВКонтакте
post
https://chatter.salebot.pro
/api/#{api_key}/whatsapp_callback
Запуск бота по номеру Whatsapp
post
https://chatter.salebot.pro
/api/#{api_key}/ok_callback
Запуск бота по идентификатору пользователя Одноклассников
post
https://chatter.salebot.pro
/api/#{api_key}/tg_callback
Запуск бота по идентификатору Telegram
post
https://chatter.salebot.pro
/api/#{api_key}/send_callback_by_platform_id
Отправка Callback-сообщений списку клиентов по platform_id
post
https://chatter.Salebot.pro
/api/#{api_key}/email_callback
Отправка callback-сообщения email-клиенту

Как работать с сообщениями

Параметры отправки сообщения

attachment_type может принимать значения: image, video, link, file, audio При отправке вложения параметр message необязателен buttons - определяет кнопки, которые будут прикреплены к сообщению. Формат кнопок аналогичен расширенным настройкам кнопок. Возможны два варианта передачи кнопок: с указанием подсказки для мессенджеров без кнопок и без нее.
Пример параметра buttons:
"buttons": {"hint": "Этот текст будет отображен в вотсапе",
"buttons": [
{"type": "reply",
"text": "Расскажи об услугах",
"line": 0, "index_in_line": 0},
{"type": "reply",
"text": "Стоимость услуг",
"line": 0,
"index_in_line": 1},
{"type": "reply",
"text": "Контакты",
"line": 1, "index_in_line": 0},
{"type": "reply",
"text": "Оставить заявку",
"line": 1, "index_in_line": 1}
]
}

Как работать с сообщениями

post
https://chatter.salebot.pro
/api/#{api_key}/message
Отправка сообщения клиенту
post
https://chatter.salebot.pro
/api/#{api_key}/whatsapp_message
Отправка сообщения в Whatsapp
post
https://chatter.salebot.pro
/api/#{api_key}/broadcast
Массовая отправка сообщений
get
https://chatter.salebot.pro
/api/#{api_key}/get_history?client_id=
Получение истории сообщений
get
https://chatter.salebot.pro
/api/#{api_key}/clear_history?client_id=
Очистить историю сообщений

Как распределять клиентов

post
https://chatter.salebot.pro
/api/#{api_key}/assign_to_user
Определение клиента сотруднику
post
https://chatter.salebot.pro
/api/#{api_key}/load_clients
Загрузка клиентов в систему
post
https://chatter.salebot.pro
/api/#{api_key}/add_to_list
Добавить клиентов в список
post
https://chatter.salebot.pro
/api/#{api_key}/remove_from_list
Удалить клиентов из списка
get
https://chatter.salebot.pro
/api/#{api_key}/get_clients
Получение списка клиентов
get
https://chatter.salebot.pro
/api/#{api_key}/subscribers
Получение списка подписчиков на бота в любом месседжере
get
https://chatter.salebot.pro
/api/#{api_key}/vk_subscribers
Получение списка подписчиков на бота Вконтакте

Как работать с переменными

post
https://chatter.salebot.pro
/api/#{api_key}/save_variables
Присвоение переменных
get
https://chatter.salebot.pro
/api/#{api_key}/get_variables?client_id=
Получение переменных

Как получить id клиента (client_id)

post
https://chatter.salebot.pro
/api/#{api_key}/find_client_id_by_platform_id
Получение client_id по значению platform_id
get
https://chatter.salebot.pro
/api/#{api_key}/online_chat_client_id?recipient=
Получить id клиента из Онлайн-чата
Где взять recipient? На сайте, где размещен онлайн чат "Salebot.pro" при помощи JS получите свойство SaleBotPro.recipient_id
get
https://chatter.salebot.pro
/api/#{api_key}/whatsapp_client_id?phone=
Получение client_id по номеру Whatsapp
get
https://chatter.salebot.pro
/api/#{api_key}/find_client_id_by_phone?phone=
Получение client_id по номеру телефона
get
https://chatter.salebot.pro
/api/#{api_key}/find_client_id_by_email?email=
Получение client_id по email
get
https://chatter.salebot.pro
/api/#{api_key}/find_client_id_by_var?var=&val=
Получение client_id по значению переменной
get
https://chatter.salebot.pro
/api/#{api_key}/find_all_client_id_by_var?var=&val=
Получение списка client_id по значению переменной
get
https://chatter.salebot.pro/api/
#{api_key}/find_all_client_id_by_several_vars?var=val
Получение списка client_id по значениям нескольких переменных

Как работать со сделками

get
https://chatter.salebot.pro/
api/#{api_key}/get_current_order_id
Получение идентификатора текущей сделки
get
https://chatter.salebot.pro
/api/#{api_key}/get_orders
Получение списка сделок
post
https://chatter.salebot.pro/
api/#{api_key}/move_order_to_next_state
Перемещение сделки на следующее по порядку состояние воронки Salebot
post
https://chatter.salebot.pro
/api/#{api_key}/get_order_vars
Получение данных сделки
post
https://chatter.salebot.pro
/api/#{api_key}/set_order_vars
Добавление переменных сделки
post
https://chatter.salebot.pro/
api/#{api_key}/create_order
Создание сделки
post
https://chatter.salebot.pro
/api/#{api_key}/set_order_state
Перенос сделки в состояние SalebotCRM
post
https://chatter.salebot.pro
/api/#{api_key}/get_order_state
Получения id состояния воронки в SalebotСRM

Какие еще возможности

get
https://chatter.salebot.pro
/api/#{api_key}/check_whatsapp
Проверка, есть ли Whatsapp на номере телефона
get
https://chatter.salebot.pro
/api/#{api_key}/connected_channels
Получить список подключенных мессенджеров к проекту (в том числе group_id)
get
https://chatter.salebot.pro
/api/<api_key>/get_messages
Получение списка блоков из схемы бота
Если Вам нужны дополнительные методы, свяжитесь со службой поддержки