ASSISBOT API (1.0.0)

Download OpenAPI specification:Download

Введение

Это официальный документ, описывающий взаимодействие с сервисом ASSISTBOT.

Общее описание обмена данными с ASSISTBOT

API для интеграции с ASSISTBOT содержит две группы методов:

  1. Методы требующие авторизацию пользователя по токену партнера
  2. Методы требующие авторизацию пользователя по токену аккаунта

Авторизация запросов API

Для обращений и к первой и ко второй группе методов требуется авторизация. Т.е. передача уникального hash-ключа.

Авторизация запросов к API производится в соответствии с RFC 6749 "Resource Owner Password Credentials Grant". При запросах к API в HTTP заголовок Authorization должен быть включен ключ доступа в следущем формате:

Authorization: Bearer <токен>

Отчёт по мастерам

Добавить задания для формирования отчета по мастерам

header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Bearer account_token

Request Body schema: application/json
required
date_start
required
string
date_end
required
string
delivery_callback_url
required
string
phone
string

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Работа с аккаунтами

Проверяем наличие аккаунта

path Parameters
username
required
string
token
required
string
header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Вписываем 'Bearer partner_token'

Responses

Получаем информацию аккаунта

path Parameters
token
required
string

Токен пользователя

header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Вписываем 'Bearer partner_token'

Responses

Response samples

Content type
application/json
{
  • "status": true,
  • "errors": "",
  • "account_id": 12345,
  • "title": "My Account",
  • "messenger_id": "WhatsApp"
}

Создание аккаунта Assistbot

Request Body schema: application/json
required

Данные для создания аккаунта

login
required
string

Логин

password
required
string

Пароль

title
required
string

Название аккаунта

top_manager_name
required
string

Имя управляющего

top_manager_phone
required
string

Телефон управляющего

phone
required
string

Основной телефон, привязанный к аккаунту

test_period
required
boolean

Указывает, предоставляется ли тестовый период. Если true, даётся 3 дня.

messenger_id
required
string
Enum: "WhatsApp" "Telegram"

Идентификатор мессенджера

Responses

Request samples

Content type
application/json
{
  • "login": "MyLogin",
  • "password": "MyLogin",
  • "title": "My Account",
  • "top_manager_name": "Иванов Иван",
  • "top_manager_phone": "79011234567",
  • "phone": "79019876543",
  • "test_period": true,
  • "messenger_id": "WhatsApp"
}

Response samples

Content type
application/json
{
  • "status": true,
  • "errors": "",
  • "account_id": 12345,
  • "title": "My Account",
  • "messenger_id": "WhatsApp"
}

Работа c чатами

Отправка сообщения в чат

header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Вписываем 'Bearer partner_token'

Request Body schema: application/json
required
account_id
required
integer

ID аккаунта ASSISTBOT

phone
required
string

Номер телефона для отправки сообщения

body
required
string

Тело сообщения, если тип сообщения media содержит ссылку на файл

type
required
string
Enum: "text" "media"

Тип сообщения

caption
string

Подпись под картинкой или файлом, только при type = media

Responses

Request samples

Content type
application/json
{
  • "account_id": 17,
  • "phone": "79019876543",
  • "body": "Тело сообщения",
  • "type": "text",
  • "caption": "Подпись под картинкой"
}

Response samples

Content type
application/json
{
  • "chat_id": "77054521514@c.us",
  • "phone": "77054521514",
  • "body": "5555",
  • "user_id": 17,
  • "message_id": "BAE5E3103D05346E",
  • "type": "chat",
  • "time": 1734490159,
  • "from_me": true,
  • "group": false,
  • "status": null,
  • "author": "Сервисный бот",
  • "chat_name": "+77054521514",
  • "sender_name": "Сервисный бот",
  • "error_text": null,
  • "quoted_msg_id": null,
  • "caption": null,
  • "sender_name_user": null,
  • "quoted_message_type": null,
  • "quoted_message_body": "",
  • "user_name": null,
  • "category_message": 6
}

Работа с заявками на подключение интеграции

Добавление заявки на подключение интеграции

header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Вписываем 'Bearer partner_token'

Request Body schema: application/json
required
login
required
string

Логин для создания аккаунта

name
required
string

Имя для обращения

phone_connect
required
string

Телефон для подключения WhatsApp

phone
required
string

Телефон управляющего

email
string

email

Responses

Request samples

Content type
application/json
{
  • "login": "string",
  • "name": "string",
  • "phone_connect": "string",
  • "phone": "string",
  • "email": "string"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "meta": {
    }
}

Работа с настройками аккаунта

Установка настроек аккаунта.

path Parameters
TOKEN
required
string

TOKEN аккаунта

header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Bearer partner_token

Request Body schema: application/json
required
url_redirect_message
string

URL перенаправления

trigger_redirect_message
integer

[object Object]

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "id": 1,
  • "url_redirect_message": "https://webhook.site/",
  • "trigger_redirect_message": "0 = Выключен\n1 = Все сообщения с полным телом хука\n5 = Все сообщения\n10 - Сообщения подпадающие под фильтр\n"
}

Получение настроек аккаунта.

path Parameters
TOKEN
required
string

TOKEN аккаунта

header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Вписываем 'Bearer partner_token'

Responses

Response samples

Content type
application/json
{
  • "id": 1,
  • "url_redirect_message": "https://webhook.site/",
  • "trigger_redirect_message": "0 = Выключен\n1 = Все сообщения с полным телом хука\n5 = Все сообщения\n10 - Сообщения подпадающие под фильтр\n"
}

Отправка смс через наш бот

Отправка сообщений через наш бот.

Сообщение может содержать файлы и специальные символы:

  • #sms# — отправка через СМС-шлюз без попытки отправки в мессенджер.
  • %%Текст смс%% — экранирование сообщения для отправки через СМС-шлюз.
  • ##Название шаблона рассылки## — экранирование названия шаблона рассылки.
  • [[Кнопка1;Кнопка2]] - добавляет кнопки (опрос) к сообщению.
header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Bearer account_token

Request Body schema: application/json
required
required
Array of objects
text
string
link
string
filename
string
salon
required
string
type
string
delivery_callback_url
required
string

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "status": "0 = Не отправлено"
}

Получение статуса отправленного сообщения

Получение статуса отправленного сообщения

path Parameters
sms_id
required
string
header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Bearer account_token

Responses

Отправка шаблонных сообщений WABA

Отправка шаблонных сообщений WABA

header Parameters
Content-Type
required
string

application/json

Authorization
required
string

Bearer account_token

Request Body schema: application/json
required
name
required
string

Название шаблона в WABA

phone
required
string

Телефон получателя

params
Array of arrays

Передаваемые переменные в шаблон, в последовательности как указано в шаблоне

sms_text
string

Текст для каскадной отправки смс, через подключенный смс агрегатор. Обязателен при sms_only = true

sms_only
boolean

флаг отправки только смс, через подключенный смс агрегатор

Responses

Request samples

Content type
application/json
{
  • "name": "rewiev_request",
  • "phone": "+77054521514",
  • "params": [
    ],
  • "sms_text": "Текст смс",
  • "sms_only": true
}

Response samples

Content type
application/json
{
  • "error_code": "1 = partner_token отсутствует или невалиден",
  • "error_message": "string"
}

Исходящие хуки

Исходящие хуки для стороннего сервиса

Этот хук отправляется на сторонний сервис после выполнения определённых действий. Он содержит информацию о сообщении и метаданные.

Request Body schema: application/json
required
id
string

Уникальный идентификатор сообщения.

body
string

Текст сообщения (type = chat) или ссылка на файл (type = image или type = document).

time
integer <int64>

Временная метка отправки сообщения (Unix timestamp).

type
string
Enum: "chat" "image" "document"

Тип сообщения.

author
string

Имя автора сообщения.

chatId
string

Идентификатор чата.

fromMe
boolean

Флаг, указывающий, отправлено ли сообщение самим пользователем.

caption
string

Подпись к отправленному файлу или медиа-сообщению (type = image или type = document).

chatName
string

Имя чата.

senderName
string

Имя отправителя.

quotedMsgId
string

Идентификатор цитируемого сообщения.

object

Данные цитируемого сообщения.

account_id
integer

Идентификатор аккаунта.

category
integer
Enum: 0 1 2 3 4 5 6 7 8 9

Категория сообщения. Возможные значения:

  • 0: Сообщение отправленное из окна бота, мобильного приложения мессенджера или веб версии приложения
  • 1: Шаблонные сообщения по записям
  • 2: Шаблонные сообщения по клиентской базе
  • 3: Сообщения групповой рассылки
  • 4: Сообщения переданные через sms endpoint
  • 5: Сообщения фильтров (авто ответ бота)
  • 6: Сообщение из чата сторонней CRM
  • 7: Сообщение-триггер для фильтров (авто ответ бота)
  • 8: Сообщение мастерам
  • 9: Сообщение и ответ дерева фильтров

Responses

Request samples

Content type
application/json
{
  • "id": "BAE590092CBA2E00",
  • "body": "Этот бот работает только на уведомления.\r\nПо вопросам, если они возникли, обратитесь на WhatsApp +79261790339",
  • "time": 1734583678,
  • "type": "chat",
  • "author": "Сервисный бот",
  • "chatId": "79011111514@c.us",
  • "fromMe": true,
  • "caption": "",
  • "chatName": "Иванов Иван",
  • "senderName": "Иванов Иван",
  • "quotedMsgId": "",
  • "quotedMessage": {
    },
  • "account_id": 17,
  • "category": 0
}