REST API Whats Master

Запросы принимает сервер https://app.whatsmaster.ru. Он передаёт команду в программу на вашем компьютере. WhatsApp в облако не переезжает: аккаунт должен быть авторизован в запущенной программе.

Как начать

  1. Откройте Whats Master, авторизуйте нужный WhatsApp.
  2. На вкладке API создайте ключ. Полный ключ показывается один раз и хранится на этом компьютере.
  3. В каждый запрос передавайте access_token. ID аккаунта — instance_id, его видно в программе и в ответе статуса.

Без запущенной программы сервер отвечает, что рабочее место не на связи. Ключ без токена не принимается: 401 Authorization required.

Отправка

POST /api/send

Текст, картинка, файл или карточка контакта. Несколько номеров — поле numbers (до 50 за запрос).

ПолеОписание
access_tokenAPI-ключ
instance_idID аккаунта-отправителя
number или numbersПолучатель или массив номеров
typetext, image, document, contact. По умолчанию text
messageТекст или подпись
media, filenameСсылка или base64 и имя файла для image/document
contact_name, contact_phoneДля type=contact
curl -X POST https://app.whatsmaster.ru/api/send \
  -H 'Content-Type: application/json' \
  -d '{"access_token":"brk_ВАШ_КЛЮЧ","instance_id":"ID_АККАУНТА","number":"79991234567","type":"text","message":"Привет!"}'

Проверка номера

POST /api/contacts/check_number

Один номер — поле number. В ответе data.exists: true, если номер есть в WhatsApp, false если нет. Пачка — поле numbers, результат в data.results по каждому номеру.

curl -X POST https://app.whatsmaster.ru/api/contacts/check_number \
  -H 'Content-Type: application/json' \
  -d '{"access_token":"brk_ВАШ_КЛЮЧ","instance_id":"ID_АККАУНТА","numbers":["79991234567","70000000001"]}'

Статус

GET или POST /api/instance/status

desktop_online — программа на связи. В accounts список аккаунтов: id, имя, телефон, state. state 2 — аккаунт авторизован.

Рассылка через API

Это серверная рассылка по запросу, не список из окна «Рассылка» в программе. Сначала загрузите получателей, затем создайте рассылку.

МетодПутьНазначение
POST/api/contacts/contact_uploadГруппа получателей: name и contacts[{number, name}]. До 500 номеров. Поля контакта подставляются в текст как {name}.
POST/api/bulk/createРассылка. group — имя или id группы, accounts — id аккаунтов через запятую, caption — текст, min_interval_per_post и max_interval_per_post — пауза в секундах.
POST/api/bulk/updatestatus: 0 пауза, 1 запуск, 2 завершить.
POST/api/bulk/stopОстановить рассылку по id или все активные, если id не передан.
GET/api/bulk/get_statussent, failed, processed, total, percent. include_result=1 добавляет подробности.
GET/api/bulk/get_allСписок рассылок. page, limit, status.
POST/api/bulk/deleteУдалить рассылку по id.
curl -X POST https://app.whatsmaster.ru/api/bulk/create \
  -H 'Content-Type: application/json' \
  -d '{"access_token":"brk_ВАШ_КЛЮЧ","name":"Акция","group":"Клиенты","accounts":"ID_АККАУНТА","caption":"Привет, {name}!","min_interval_per_post":20,"max_interval_per_post":60}'

Чат-бот

МетодПутьНазначение
POST/api/chatbot/turn_on_offinstance_id и status: 1 включить, 0 выключить.
GET/api/chatbot/getНастройки чат-бота. instance_id необязателен.

Ключ создаётся и отзывается на вкладке API в программе. Запросы списка ключей ходят с сессией пользователя, не с access_token.