Skip to main content
POST
https://app.famulor.de
/
api
/
user
/
whatsapp
/
send
curl -X POST "https://app.famulor.de/api/user/whatsapp/send" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "sender_id": 12,
    "template_id": 45,
    "recipient_phone": "+1234567890",
    "recipient_name": "John Doe",
    "variables": {
      "1": "John",
      "2": "January 15, 2026",
      "3": "2:00 PM"
    }
  }'
{
  "success": true,
  "conversation_id": 1234,
  "message_id": 567,
  "whatsapp_message_id": 890,
  "message_sid": "SMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "status": "queued"
}

WhatsApp-Template-Nachricht senden

Eine WhatsApp-Nachricht mit einem freigegebenen Template senden
Dieser Endpunkt sendet eine WhatsApp-Nachricht mithilfe eines vorab freigegebenen Templates. Template-Nachrichten sind erforderlich, um eine Konversation mit einem Nutzer erstmals zu starten oder um ihn außerhalb des 24-Stunden-Messaging-Fensters zu kontaktieren.
This endpoint is rate-limited to 5 requests per second per user.

Anfrage-Body

sender_id
integer
required
Die ID des WhatsApp-Senders, von dem gesendet werden soll (erhalten über WhatsApp-Sender abrufen)
template_id
integer
required
Die ID des zu verwendenden Nachrichtentemplates (erhalten über WhatsApp-Templates abrufen)
recipient_phone
string
required
Die Telefonnummer des Empfängers im internationalen Format (z.B. +1234567890)
recipient_name
string
Der Name des Empfängers, max. 255 Zeichen (für Konversations-Tracking und CRM-Zwecke)
variables
object
Key-Value-Paare für Template-Variablen. Keys müssen den Variablennamen aus dem Template entsprechen. Wenn das Template Variablen {{1}}, {{2}} usw. hat, geben Sie sie als {\"1\": \"value1\", \"2\": \"value2\"} oder mit den benannten Keys aus dem variables-Array des Templates an.

Antwort-Felder

success
boolean
Ob die Nachricht erfolgreich gesendet wurde
conversation_id
integer
Die ID der (neuen oder bestehenden) Konversation, die mit dieser Nachricht verknüpft ist
message_id
integer
Die ID des Konversations-Nachrichteneintrags
whatsapp_message_id
integer
Die ID des WhatsApp-Nachrichteneintrags
message_sid
string
Die Twilio Message SID zur Sendungsverfolgung
status
string
Der initiale Zustellstatus der Nachricht (z.B. queued, sent)

Fehler-Antworten

402 Insufficient Balance
404 Not Found
422 Unprocessable Entity
curl -X POST "https://app.famulor.de/api/user/whatsapp/send" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "sender_id": 12,
    "template_id": 45,
    "recipient_phone": "+1234567890",
    "recipient_name": "John Doe",
    "variables": {
      "1": "John",
      "2": "January 15, 2026",
      "3": "2:00 PM"
    }
  }'
{
  "success": true,
  "conversation_id": 1234,
  "message_id": 567,
  "whatsapp_message_id": 890,
  "message_sid": "SMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "status": "queued"
}

Notes

  • Template messages must use approved templates. Templates with pending or rejected status will fail.
  • The sender must be online. Offline senders cannot send messages.
  • Message costs are automatically deducted from your account balance (credits for tenant users, minutes for direct users).
  • After sending a template message, a 24-hour messaging window opens. During this window, you can send freeform messages without needing a template.
  • If a conversation already exists with the recipient, the message is added to the existing conversation.
  • Rate limit: 5 requests per second per user.