Переезжай на Whapi · от 500 ₽/мес Наш WhatsApp API работает штатно Регистрация
Приветствие при входе · сценарий WhatsApp API

Приветственные сообщения в группе WhatsApp, когда кто-то вступает

Новые участники каждый раз видят одно и то же onboarding-сообщение — в чате группы, в личке или в обоих каналах — без ручного поста админа. Когда человек вступает, ваш backend или automation подставляет id группы и нужный текст и отправляет через Whapi.Cloud. Этот сценарий показывает интеграторам, как реализовать поток через WhatsApp API.

Старт по webhook вступления в группу Сообщение в группу и/или в личный чат
Панель админа сообщества и телефон с приветствием в групповом чате WhatsApp сразу после вступления.
Сценарий

Когда использовать этот поток

Webhook вступления должен запускать приветствие

Используйте этот поток, когда webhook канала отдаёт событие вступления участника в группу и ваш worker должен отреагировать, а не когда вы вручную жмёте кнопку отправки.

Несколько групп с разным текстом приветствия

Используйте этот поток, когда каждый id группы сопоставлен со своими правилами, личным DM или обоими вариантами, а не когда один текст подходит всем сообществам.

n8n, Make или ваш backend отвечают за dedupe и тайминг

Используйте этот поток, когда own_backend, n8n или Make дедуплицируют события вступления и выбирают публичную или личную доставку, а не когда одобрение вступления ещё в ожидании.

Групповой чат WhatsApp на телефоне с приветствием сразу после вступления нового участника.
Опыт участника

Новички сразу чувствуют себя желанными

Без автоматизации админы забывают поприветствовать или каждый раз вставляют разные правила, и новичок не понимает, что делать дальше.

После запуска потока группа может увидеть публичное приветствие и правила, а участник — личную заметку со ссылками или инструкциями. Интеграторы строят этот результат через WhatsApp API.

Поток

От события вступления к приветствию

1

Участник вступает в группу

Whapi отправляет событие участника группы на URL вашего webhook. own_backend, n8n или Make читает id группы и новичка, дедуплицирует повторные payload вступления и подгружает текст приветствия для этой группы.

2

Отправить текст приветствия

POST /messages/text

sendMessageText публикует настроенное приветствие. Укажите id группы @g.us или chat id новичка в to, а сообщение — в body. Один вызов для публичного приветствия, один для личной заметки или два, если нужны оба.

Нужно отслеживать доставку? Успешный ответ API не значит, что все уже видят приветствие в чате. Статусы доставки →

Что нужно заранее

Перед запуском потока

Подключите номер WhatsApp, который администрирует или отправляет в этих группах, включите webhook канала для событий участников и авторизуйте каждую отправку API-токеном этого номера. Dedupe, текст по группам и логика n8n или Make остаются вне Whapi.

Опционально — углубиться в этот поток

Реализация API

Один вызов доставляет приветствие

Этим вызовом onboarding-текст попадает в групповой чат или личный чат новичка после обработки webhook вступления вашим worker.

Получите бесплатный API-токен после регистрации на whapi.cloud и подставьте его в код вместо Your_Token из примеров.

Отправить текст приветствия

Отправьте настроенное приветствие в группу или новому участнику, чтобы onboarding при вступлении не зависел от ручного поста.

curl --request POST \
     --url https://gate.whapi.cloud/messages/text \
     --header 'accept: application/json' \
     --header 'authorization: Bearer Your_Token' \
     --header 'content-type: application/json' \
     --data '
{
  "to": "[email protected]",
  "body": "Welcome to the group! Read the rules below and say hello."
}
'
$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://gate.whapi.cloud/messages/text",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\"to\":\"[email protected]\",\"body\":\"Welcome to the group! Read the rules below and say hello.\"}",
  CURLOPT_HTTPHEADER => [
    "accept: application/json",
    "authorization: Bearer Your_Token",
    "content-type: application/json"
  ],
]);

$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests

url = "https://gate.whapi.cloud/messages/text"
payload = {
    "to": "[email protected]",
    "body": "Welcome to the group! Read the rules below and say hello."
}
headers = {
    "accept": "application/json",
    "authorization": "Bearer Your_Token",
    "content-type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
const response = await fetch('https://gate.whapi.cloud/messages/text', {
  method: 'POST',
  headers: {
    accept: 'application/json',
    authorization: 'Bearer Your_Token',
    'content-type': 'application/json',
  },
  body: JSON.stringify({
    to: '[email protected]',
    body: 'Welcome to the group! Read the rules below and say hello.',
  }),
});

console.log(await response.text());
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"to\":\"[email protected]\",\"body\":\"Welcome to the group! Read the rules below and say hello.\"}");
Request request = new Request.Builder()
  .url("https://gate.whapi.cloud/messages/text")
  .post(body)
  .addHeader("accept", "application/json")
  .addHeader("authorization", "Bearer Your_Token")
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
using RestSharp;

var options = new RestClientOptions("https://gate.whapi.cloud/messages/text");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("accept", "application/json");
request.AddHeader("authorization", "Bearer Your_Token");
request.AddHeader("content-type", "application/json");
request.AddJsonBody(new { to = "[email protected]", body = "Welcome to the group! Read the rules below and say hello." });
var response = await client.PostAsync(request);

Console.WriteLine("{0}", response.Content);
package main

import (
	"bytes"
	"fmt"
	"io"
	"net/http"
)

func main() {
	body := []byte(`{"to":"[email protected]","body":"Welcome to the group! Read the rules below and say hello."}`)
	req, _ := http.NewRequest("POST", "https://gate.whapi.cloud/messages/text", bytes.NewReader(body))
	req.Header.Set("accept", "application/json")
	req.Header.Set("authorization", "Bearer Your_Token")
	req.Header.Set("content-type", "application/json")

	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	out, _ := io.ReadAll(res.Body)
	fmt.Println(string(out))
}
Доставка

Когда приветствие дошло

Успешный ответ отправки не значит, что у получателя уже есть сообщение. Первый видимый статус до webhook — pending. Дальнейшие изменения приходят только в statuses.post и statuses.put. Если статус остаётся pending и не переходит в sent, delivered или следующий ack, сообщение не доставлено. Проверьте payload и право аккаунта на этот тип отправки.

  • Ответ sendMessageText не доказывает, что приветствие видно в чате.

  • pending, который не меняется, означает, что приветствие не доставлено.

  • Следите за statuses.post и statuses.put для ack по каждой ветке.

  • Повторяйте или алертуйте отдельно, если публичная ветка группы упала, а личная прошла.

Что читать про доставку и webhook

Напишите в поддержку, если что-то пошло не так
Если что-то ломается

Обрабатывайте сбои на каждом шаге

Дубли webhook вступления, неверный group JID в конфиге или отклонённое/недоставленное приветствие нужно дедуплицировать, пропускать, повторять или алертить, а не считать onboarding завершённым.

Вступление есть, а приветствие не ушло?

Дедуплицируйте по participant id и group id до send. Если JID группы неизвестен — лог, skip и алерт ops, а не пост в другой чат. Когда sendMessageText отклонён или не доставлен — retry с backoff и алерт; публичную и личную ветки обрабатывайте независимо. Если после retry доставка всё ещё падает — в поддержку Whapi с id канала и ответом ошибки.

Напишите в поддержку, если что-то пошло не так

Диагностика по шагам API

Статус Что значит Что делать
400 Wrong request parameters Неверные параметры — проверьте to и body в payload приветствия.
401 Need channel authorization for send message
402 Trial version limit exceeded
403 It is forbidden to send to this group/recipient Запрещено отправлять в эту группу или получателю — проверьте group JID, chat id новичка и права канала.
429 Too many requests
500 Internal Error
Частые вопросы

Вопросы интеграторов

Нет. Модерация вступления одобряет или отклоняет заявку до входа. Этот поток работает, когда участник уже в группе, и отправляет текст приветствия.
Нет. Invite-after-payment выдаёт ссылку-приглашение плательщику. Здесь триггер — событие вступления, а ветка — приветствие в группе и/или личном чате.
Дедуплицируйте по participant id и group id до send. Повторный webhook — незавершённый onboarding, пока worker не подтвердит успех первой отправки.
Да. Сопоставьте каждую группу с режимом доставки в own_backend, n8n или Make, затем вызовите sendMessageText с group JID, chat id новичка или обоими в отдельных запросах.
Нет для этого кастомного onboarding-текста. Вы собираете body и отправляете через sendMessageText. Правила шаблонов учитывайте только если позже перейдёте на template-based invite или utility в другом потоке.
Поддерживаемые функции WhatsApp

Всё, что нужно для создания автоматизации WhatsApp

Whapi.Cloud предоставляет доступ к полному набору функций WhatsApp — сообщениям, медиа, группам, каналам, вебхукам и не только. Создавайте ботов, автоматизации и интеграции без функциональных ограничений.

Выбор разработчиков

Нам доверяют 3 300+ разработчиков и SaaS-команд

Разработчики по всему миру используют Whapi.Cloud для создания автоматизаций, ботов, CRM-интеграций, массовых рассылок и продвинутых WhatsApp-воркфлоу. Наша инфраструктура обрабатывает миллионы API-запросов с высокой стабильностью — и этот показатель растёт каждый месяц.

Иконка функции

5,5K+

активных API-каналов

Иконка функции

21M+

API-запросов в месяц

«Всё просто, интуитивно и легко. Документация понятная, и вся нужная информация всегда под рукой. Отличная работа.»

Roberto K. / Web-разработчик

«Мы подключили WhatsApp к нашим процессам через n8n всего за несколько минут. Без кода, без сложностей — всё заработало с первого раза.»

Martin P. / Разработчик

«Whapi.Cloud стал важной частью нашей коммуникации с клиентами. Мы автоматизировали обновления по продуктам, уведомления о заказах и поддержку — без шаблонов и модерации.»

Oscar T. / CTO

Декоративный пузырь