REST API для работы с WhatsApp
Мы добавили в OLChat REST API для работы с WhatsApp! Теперь вы можете сформировать вебхук и использовать его для вызовов методов REST в своих сценариях автоматизации и при интеграции различных сервисов.
Получение вебхука
Создать вебхук можно в приложении OLChat — «•••» (меню вызова настроек коннектора) — Настройки коннектора — Вебхук — Сгенерировать новый:

После создания вебхук можно скопировать в буфер, нажав на кнопку «Скопировать вебхук». При необходимости вебхук можно изменить, нажав на кнопку «Сгенерировать новый»:

Описание методов
Для простоты использования большая часть API допускает использование GET-запросов.
Указанные ниже технические ограничения по запросам изменить или убрать невозможно.
Для корректного срабатывания запросов в параметр «Номер телефона» необходимо вписывать значение через «7» в начале номера.
Отправка сообщения
GET https://olchat.infocom.io/rest/webhook/wa/{{token}}/sendText
Позволяет отправить текстовое сообщение на указанный номер телефона в WhatsApp.
Ограничение: 5 запросов в 3 секунды.
Path Parameters
phone_number*
str
Номер телефона
body*
text
Тело сообщения
send_to_imol*
Y|N
Отправка в чат Открытой Линии. Может принимать значение Y|N
Отправка файла
GET https://olchat.infocom.io/rest/webhook/wa/{{token}}/sendFile
Позволяет отправить файл на указанный номер телефона в WhatsApp. В качестве файла указывается прямая ссылка на файл. Подробнее в статье Создание прямой ссылки на файл.
Ограничение: 5 запросов в 3 секунды.
Path Parameters
phone_number*
str
Номер телефона
body*
url
Прямая ссылка на файл
send_to_imol*
Y|N
Отправка в чат Открытой Линии. Может принимать значение Y|N
caption
str
Текст подписи под картинкой
Проверка аккаунта на номере
GET https://olchat.infocom.io/rest/webhook/wa/{{token}}/checkPhone
Позволяет проверить наличие на номере аккаунта WhatsApp.
Ограничение: 3 запроса в 1 секунду.
ВАЖНО! Не злоупотребляйте этим методом, т.к. высока вероятность блокировки вашего аккаунта со стороны WhatsApp.
Path Parameters
phone_number*
str
Номер телефона
Проверка статуса линии
GET https://olchat.infocom.io/rest/webhook/wa/{{token}}/checkStatus
Позволяет проверить статус текущей линии.
Ограничение: 5 запросов в 3 секунды.
Проверка статуса сообщения
GET https://olchat.infocom.io/rest/webhook/wa/{{token}}/checkMessageStatus
Позволяет проверить статус сообщения.
Ограничение: 5 запросов в 3 секунды.
Path Parameters
phone_number*
str
Номер телефона
message_id*
str
ID сообщения
Где можно использовать REST API
Предположим, что у вас есть сайт или интернет-магазин, который не интегрирован с Битрикс24, но присутствует необходимость уведомить клиента, заполнившего форму WhatsApp, о том, что его заявка принята в работу или заказ оформлен.
Вы можете привязаться к событию заполнения формы и отправить запрос, содержащий метод отправки сообщения: https://olchat.infocom.io/rest/webhook/wa/{{token}}/sendText
В качестве phone_number передайте в запрос номер телефона из формы.
В качестве body – ваш текст сообщения, например: «Мы получили вашу заявку, номер вашего заказа №00001».
В send_to_imol передайте Y или N.
Другие примеры использования REST API:
Уведомление о записи на приём из сторонней системы (например, запись на приём у стоматолога).
Отправка уведомления из 1С.
Сообщение с номера телефона для интегратора.
Как добавить подпись к файлу, отправленному через REST API
Ниже приведен пример, написанный на Python с использованием библиотеки Requests:
Переменная 'send_to_imol' может иметь значение:
'Y' - публиковать в чат Открытой линии.
'N' - не публиковать в чат Открытой линии.
При выполнении этого скрипта в чате Открытой линии будет отображено следующее сообщение:

На стороне клиента это же сообщение будет выглядеть следующим образом:

Получение последних входящих сообщений
GEThttps://olchat.infocom.io/rest/webhook/wa/{{token}}/lastIncomingMessages
Возвращает последние входящие сообщения из чата Открытой линии, привязанного к сущности CRM.
Ограничение: 5 запросов в 3 секунды.
Параметры запроса (передаются в query string):
minutes — int — количество минут назад, за которые нужно получить сообщения.
Это обязательный параметр со значением по умолчанию 1440 (сутки). Допустимый диапазон: от 1 до 10080 (7 суток).
Получение последних исходящих сообщений
GEThttps://olchat.infocom.io/rest/webhook/wa/{{token}}/lastOutgoingMessages
Возвращает последние исходящие сообщения из чата Открытой линии, привязанного к сущности CRM.
Ограничение: 5 запросов в 3 секунды.
Параметры запроса (передаются в query string):
minutes — int — количество минут назад, за которые нужно получить сообщения.
Это обязательный параметр со значением по умолчанию 1440 (сутки). Допустимый диапазон: от 1 до 10080 (7 суток).
Особенности получения последних сообщений
Возвращается только текст (медиафайлы — фото, видео, документы — не возвращаются).
В ответе присутствует поле timestamp с датой и временем каждого сообщения (в формате Unix timestamp или ISO 8601 — уточняется в реальном ответе).
Работает только для чатов, привязанных к контактам, компаниям или сделкам в CRM.
Максимальная глубина истории поиска — 7 дней (10080 минут). Это жёсткое ограничение Bitrix24, его нельзя увеличить.
Если требуется знать дату самого последнего сообщения за более длительный период — рекомендуется сохранять timestamp последнего сообщения в кастомное поле CRM при каждом новом входящем или исходящем сообщении (через вебхуки или обработчики событий).
Методы не предназначены для полной выгрузки истории чата. Они подходят только для получения свежих сообщений и определения времени последнего контакта.
Last updated