Повторяющиеся напоминания WhatsApp через API
Отправляйте одно и то же сообщение WhatsApp по расписанию – об оплате аренды каждый месяц, о расписании занятий каждую неделю, ежедневную сверку – с вашего собственного номера. Создайте напоминание один раз с выражением cron и часовым поясом, и WbizTool будет ставить сообщение в очередь каждый раз, когда наступает его время. Напоминания входят во все платные тарифы, от $25 в месяц в США (ваша цена – на странице «Цены»).
Напоминаниям нужен платный тариф: от $25 в месяц в США.
Как это работает
Получите API-ключ и привяжите номер
Привяжите номер WhatsApp на странице «Номера WhatsApp» по QR-коду или коду привязки и создайте ключ в разделе «Настройки → API-ключи». Напоминаниям нужен платный тариф (Lite, Standard, Advanced или Enterprise).
Выберите расписание
Запишите его как выражение cron из пяти частей:
0 10 1 * *– 1-го числа каждого месяца в 10:00,0 9 * * 1-5– по будням в 9:00. Добавьте часовой пояс IANA, напримерAsia/Kolkata.Создайте напоминание
Отправьте POST на
/api/v1/reminder/create/сreminder_name,phone,message,cron_expressionиtimezone. Сохранитеreminder_idиз ответа.Просматривайте или отменяйте
/api/v1/reminder/list/возвращает ваши напоминания по 50 на странице./api/v1/reminder/cancel/сreminder_idостанавливает напоминание навсегда – например, когда клиент оплатил.
Примеры кода: API напоминаний
curl -X POST https://wbiztool.com/api/v1/reminder/create/ \
-H "Content-Type: application/json" \
-d '{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"reminder_name": "Monthly rent reminder",
"phone": "919876543210",
"message": "Hi Aman, a reminder that your rent is due on {current_date_formatted}.",
"cron_expression": "0 10 1 * *",
"timezone": "Asia/Kolkata"
}'import requests
response = requests.post(
"https://wbiztool.com/api/v1/reminder/create/",
json={
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"reminder_name": "Monthly rent reminder",
"phone": "919876543210",
"message": "Hi Aman, a reminder that your rent is due on {current_date_formatted}.",
"cron_expression": "0 10 1 * *",
"timezone": "Asia/Kolkata",
},
timeout=60,
)
try:
result = response.json() # read the body even when the HTTP code is 400
except ValueError:
raise SystemExit(f"HTTP {response.status_code}: not JSON. Send every text value as a string.")
if result["status"] == 1:
print("Reminder created with reminder_id", result["reminder_id"])
else:
print("Failed:", result["message"])import requests
response = requests.post(
"https://wbiztool.com/api/v1/reminder/create/",
json={
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"reminder_name": "Weekly class timetable",
"phone": "919876543210",
"msg_type": 1,
"img_url": "https://example.com/timetable.png",
"message": "Here is this week's timetable.",
"cron_expression": "0 8 * * 1",
"timezone": "Asia/Kolkata",
},
timeout=60,
)
print(response.status_code, response.text)curl -X POST https://wbiztool.com/api/v1/reminder/list/ \
-H "Content-Type: application/json" \
-d '{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"page": 1
}'curl -X POST https://wbiztool.com/api/v1/reminder/cancel/ \
-H "Content-Type: application/json" \
-d '{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"reminder_id": "3187"
}'Что можно делать
Любое расписание, которое умеет cron
Каждый день в 9:00 (
0 9 * * *), каждый понедельник (0 9 * * 1), дважды в день (0 9,18 * * *), 15-го числа каждого месяца (0 10 15 * *) или каждые 6 часов (0 */6 * * *).Даты подставляются сами
Переменные шаблона, например
{current_date_formatted},{current_time_12h}и{reminder_name}, заменяются при каждом запуске напоминания, в его часовом поясе.Изображения и файлы
msg_type1 отправляет изображение изimg_url. Для файла используйтеmsg_type2 с публичным URL файла вimg_urlи его именем вfile_name.Видно в панели управления
Напоминания, созданные через API, также появляются на странице «Напоминания», где их можно приостановить или изменить. Там же можно импортировать много напоминаний из таблицы CSV или Excel.
Отправка с выбранного номера
Укажите
whatsapp_client, чтобы выбрать номер. Если не указать, каждый запуск использует номер, подключённый в этот момент.
Полезно знать
- Напоминаниям нужен платный тариф. В пробном периоде API отвечает
Upgrade your plan to use reminders feature. - Используйте названия часовых поясов IANA, например
Asia/KolkataилиAmerica/Chicago. Сокращения вродеISTилиCSTотклоняются с ошибкойInvalid timezone; без часового пояса расписание работает по UTC. phoneпринимает номер с кодом страны, например 79161234567, – поляcountry_codeу этого эндпоинта нет.- В API нет вызовов для изменения или приостановки. Чтобы изменить расписание, отмените напоминание и создайте новое; чтобы приостановить – используйте страницу «Напоминания».
- Напоминания проверяются периодически, а не с точностью до секунды, поэтому запуск может уйти до 10 минут позже своего времени; если проверка запоздает сильнее, запуск пропускается. Каждый запуск учитывается в лимите номера – 1 000 сообщений в день.
- В списке напоминаний
next_runрассчитывается так, будто часовой пояс напоминания – UTC. Правильное следующее время смотрите на странице «Напоминания». - Если текстовое поле, например
phone,messageилиreminder_name, передано как число,trueилиnull, в ответ приходит HTML-страница ошибки (HTTP 500), поэтому передавайте текстовые значения строками и обрабатывайте ответ, который не является JSON, как в примере на Python. - Если номер
whatsapp_clientна момент создания напоминания вышел из WhatsApp, API отклоняет запрос сWhatsApp Logged Out. Please Reconnect!! - Сообщения уходят с вашего собственного номера WhatsApp, поэтому действуют правила самого WhatsApp: пишите тем, кто ждёт ваших сообщений.
Вопросы и ответы
- Чем напоминание отличается от запланированного сообщения?
- Запланированное сообщение (
/api/v1/schedule_msg/) уходит один раз, в указанные дату и время. Напоминание повторяется по своему расписанию cron, пока вы его не отмените. - Как остановить напоминание, когда клиент оплатил?
- Вызовите
/api/v1/reminder/cancel/с егоreminder_id. Оно останавливается сразу и больше не запустится. Сообщение, которое оно уже поставило в очередь до отмены, ещё может быть отправлено. - Можно ли приостановить или изменить напоминание через API?
- Пока нет. Приостановите или измените его на странице «Напоминания» в панели управления или отмените и создайте новое с новым расписанием.
- Может ли напоминание отправить PDF?
- Да. Используйте
msg_type2, укажите публичный URL файла вimg_urlи его имя с расширением (например,invoice.pdf) вfile_name. Файл скачивается при каждом запуске напоминания, поэтому ссылка должна продолжать работать. - В какие тарифы входят напоминания?
- Во все платные: Lite (1 номер), Standard (3 номера) и Advanced (10 номеров) – $25, $59 и $149 в месяц в США; на странице «Цены» показана цена для вашей страны. На всех них сообщения безлимитные в рамках честного использования. В пробный период напоминания не входят.
Читайте руководства
- API создания напоминания
- API списка напоминаний
- API отмены напоминания
- Напоминания в панели управления
- Тарифы и оплата
- API-ключи и Client ID
Смотрите также
- Напоминания об оплатеЕжемесячные или разовые напоминания об оплате с вашего номера, со счётом в PDF.
- Напоминания о записиНапоминайте клиентам о визите – из таблицы записей, из вашей программы записи или по еженедельному расписанию.
- PythonОтправляйте сообщения WhatsApp из Python с официальным клиентом или обычным requests.
- cURLОтправляйте, планируйте и отслеживайте сообщения WhatsApp одной командой cURL.
Отправьте своё первое автоматическое сообщение в WhatsApp уже сегодня
Создайте аккаунт, отсканируйте QR-код и отправьте сообщение менее чем за пять минут.
Начать бесплатноПлатные тарифы – от $25 в месяц в США. Цены
