Создайте Grok-бота для WhatsApp
Grok-боты сейчас на пике. Вот как поставить такого бота в WhatsApp, где уже есть ваши клиенты: он читает каждое входящее сообщение, просит Grok ответить в стиле вашего бизнеса и отвечает с вашего собственного номера.
Что понадобится
- Номер Flow API, привязанный к WhatsApp (7 дней бесплатно)
- API-ключ xAI с console.x.ai
- n8n или небольшой сервер, который принимает вебхук
Быстрее всего: встроенный ИИ-автоответ
Без n8n и без сервера. В консоли Flow API откройте номер → «ИИ-автоответ», выберите Grok, вставьте ключ xAI, напишите инструкции и включите. Каждое входящее сообщение будит бота: он читает последнюю переписку, показывает «печатает…» и отвечает. Если вы ответили в чате сами, бот молчит в нём 30 минут.
Вариант A: без кода, в n8n
- 1Добавьте Flow API Trigger (community-нода n8n-nodes-flowapi) в режиме Incoming Message. При активации workflow вебхук настроится сам.
- 2Добавьте ноду AI Agent с моделью xAI Grok Chat Model и вашим ключом xAI.
- 3В системном сообщении агента опишите бизнес, часы работы и тон, а также когда передавать разговор человеку.
- 4Добавьте ноду Flow API: Send Text Message на {{ $json.chatId }} с ответом агента.
- 5Активируйте и напишите на свой номер с другого телефона.
Вариант B: 30 строк на Python
В консоли Flow API укажите Webhook URL вашего номера — адрес /whatsapp этого сервера, затем запустите:
import os, requests
from flask import Flask, request
app = Flask(__name__)
SEND = "https://flowapi.pro/waInstance{idInstance}/sendMessage/{apiTokenInstance}"
PROMPT = "You are the WhatsApp assistant of Bright Dental Clinic. Answer briefly and kindly."
@app.post("/whatsapp")
def whatsapp():
n = request.get_json()
if n.get("typeWebhook") != "incomingMessageReceived":
return "ok"
chat = n["senderData"]["chatId"]
text = n["messageData"].get("textMessageData", {}).get("textMessage", "")
if not text or chat.endswith("@g.us"):
return "ok"
r = requests.post("https://api.x.ai/v1/responses",
headers={"Authorization": f"Bearer {os.environ['XAI_API_KEY']}"},
json={"model": "grok-4.3", "input": [
{"role": "system", "content": PROMPT},
{"role": "user", "content": text}]}, timeout=60).json()
reply = next(c["text"] for o in r["output"] if o["type"] == "message"
for c in o["content"] if c["type"] == "output_text")
requests.post(SEND, json={"chatId": chat, "message": reply}, timeout=30)
return "ok"Чтобы было по-человечески
- Вызывайте sendTyping перед ответом, чтобы клиент видел «печатает…».
- Отвечайте коротко, в несколько строк: WhatsApp — это чат.
- Дайте боту понятный выход: «Сотрудник ответит вам в ближайшее время», если он не уверен.
Пусть Grok действует, а не только отвечает
Вместо фиксированного ответа дайте Grok ссылку MCP от Flow API как удалённый MCP-инструмент. Тогда он сможет сам читать историю переписки, отправлять прайс-лист в PDF или создавать группу с вашей командой.
Questions
Нужно ли боту одобрение Meta или шаблоны?
Нет. Flow API подключает ваш нынешний номер WhatsApp как связанное устройство, поэтому бот отвечает обычными сообщениями.
Сколько это стоит?
Flow API стоит $10 за номер в месяц. Использование Grok xAI тарифицирует по токенам.
7 days free, no credit card. Then $10 per number per month.