Übersicht
Jede unternehmensinitiierte WhatsApp-Nachricht muss eine von Meta genehmigte Vorlage verwenden. Die v2-Send-API ergänzt dynamische URL-Buttons, Header-Medien pro Empfänger, COPY_CODE-Buttons und AUTHENTICATION-Vorlagen gegenüber v1. Alle Sendungen gehen an POST /api/v2/whatsapp/templates/{TEMPLATE_ID}/send (ohne abschließenden Slash).
Textvariablen
Vorlagen verwenden nummerierte Platzhalter {{1}} {{2}} {{3}} im Text. body_params[0] füllt {{1}}, body_params[1] füllt {{2}} usw.
curl --request POST \
'https://app.buzzbip.com/api/v2/whatsapp/templates/1289/send' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_JWT' \
--data '{
"to": "21696816277",
"country_code": "TN",
"body_params": ["Sam", "ORD-2026-00041"]
}'- Erstellen Sie in Buzzbip eine Vorlage mit Text: "Hello {{1}}, your order {{2}} is confirmed."
- Reichen Sie ein und warten Sie auf APPROVED.
- Senden Sie mit body_params, die exakt zur Platzhalteranzahl passen.
Hinweis: body_params-Anzahl muss exakt den {{N}}-Platzhaltern entsprechen. Sonst HTTP 400.
Dynamischer URL-Button
Senden Sie eine eindeutige URL pro Empfänger in einem Call-to-Action-Button. Die Vorlagen-URL ist bei Genehmigung fest, außer einem {{1}}-Suffix. buttons[].value ersetzt dieses Suffix pro Empfänger. 💡 Tipp: Kurzen eindeutigen Slug oder Token verwenden — Bestell-ID, Hash oder Tracking-Code.
curl --request POST \
'https://app.buzzbip.com/api/v2/whatsapp/templates/1296/send' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_JWT' \
--data '{
"to": "21696816277",
"country_code": "TN",
"body_params": ["Sam"],
"buttons": [
{ "index": 0, "sub_type": "url", "value": "ord-2026-00041" }
]
}'- Erstellen Sie eine Vorlage mit URL-Button: https://shop.example.com/track/{{1}}
- Einreichen und auf APPROVED warten.
- Senden mit buttons, index 0, sub_type "url", value ist das eindeutige Suffix.
Hinweis: Meta erlaubt nur einen {{1}}-Platzhalter am URL-Ende. {{1}}/path/{{2}} ist nicht möglich.
PDF, Bild oder Video pro Empfänger
Zwei-Schritt-Ablauf für unterschiedliche Dateien pro Kunde. Für mehrere PDFs an einen Empfänger: A — PDFs serverseitig zusammenführen → ein Upload → ein Senden; B — mehrere Sendungen: Upload+Senden pro Datei wiederholen; C — Hauptdokument als Header + weitere Dateien als signierte URL-Buttons. ⚠️ Hinweis: WhatsApp erlaubt genau einen Header-Anhang pro Sendung.
curl --request POST \
'https://app.buzzbip.com/api/v2/whatsapp/media' \
--header 'Authorization: Bearer YOUR_JWT' \
--form 'file=@/path/to/invoice-sam-april.pdf'- Datei hochladen: POST /api/v2/whatsapp/media (multipart, Feld: file) → Antwort enthält media_id
- Vorlage senden mit header_media_id auf diese media_id. Bei DOCUMENT auch document_filename setzen.
- Schritte 1–2 für jeden Empfänger mit seiner Datei wiederholen.
COPY_CODE-Button und OTP
Zwei Teilmuster. D1: Promo-Code zum Kopieren — Vorlage mit COPY_CODE-Button, senden mit buttons [{ index: 0, sub_type: "copy_code", value: "SAVE25" }], anderer Code pro Kunde. D2: OTP für AUTHENTICATION-Vorlagen — nur mit otp_code senden; API fügt Code in Text und Copy-Code-Button ein.
curl --request POST \
'https://app.buzzbip.com/api/v2/whatsapp/templates/1299/send' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_JWT' \
--data '{
"to": "21696816277",
"country_code": "TN",
"body_params": ["Sam"],
"buttons": [{ "index": 0, "sub_type": "copy_code", "value": "SAVE25" }]
}'Hinweis: otp_code darf nicht mit body_params oder buttons kombiniert werden.
body params, Medien und Buttons kombinieren
Alle optionalen Felder können in einem Sendevorgang kombiniert werden, wenn die Vorlage passende Komponenten hat.
curl --request POST \
'https://app.buzzbip.com/api/v2/whatsapp/templates/1302/send' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_JWT' \
--data '{
"to": "21696816277",
"country_code": "TN",
"body_params": ["Sam", "2026-04", "99.00 TND"],
"header_media_id": 1542,
"document_filename": "invoice-sam-april-2026.pdf",
"buttons": [
{ "index": 0, "sub_type": "url", "value": "r/sam-2026-04" }
]
}'Wie geht es weiter?
Verwandt: api/v2/whatsapp-templates/send-template api/v2/whatsapp-media guides/whatsapp-common-gotchas
