Die unterhaltungsbasierte Preisgestaltung wurde geändert. Unter Preisgestaltung findest du weitere Informationen darüber, wie unsere neue unterhaltungsbasierte Preisgestaltung funktioniert.
Außerdem wurde am 1. Juli 2023 die Sichtbarkeit von metric_types
geändert. Weitere Details findest du in der Unterhaltungsanalyseparameter-Tabelle.
Authentifizierungsvorlagen
Ab dem 1. April 2024 können bestehende Authentifizierungsvorlagen, die keinen Einmalpasswort-Button enthalten, nicht mehr gesendet oder bearbeitet werden und du kannst keinen Einspruch mehr gegen sie einlegen.
Authentifizierungsvorlagen werden ab dem 1. Juli 2024 in Indien verfügbar sein.
Vorlagen werden verwendet, wenn du Vorlagennachrichten über die von Meta gehostete Cloud API oder die On-Premises API sendest. Die Cloud API prüft Vorlagen und Variablenparameter anhand von maschinellem Lernen, um die Sicherheit und Integrität der Cloud API-Services zu gewährleisten. Beim Prüfen von Vorlagen und Variablentext durch die Cloud API werden keine Informationen mit WhatsApp geteilt.
Du kannst Vorlagen entweder mit der Business Management API oder über den WhatsApp Business Manager erstellen. Die Anzahl von Nachrichtenvorlagen, über die ein WhatsApp Business-Konto verfügen kann, wird von dessen Mutterunternehmen bestimmt. Wenn das Mutterunternehmen nicht verifiziert ist, ist jedes seiner WhatsApp Business-Konten auf 250 Vorlagen beschränkt. Wenn das Mutterunternehmen jedoch verifiziert ist und mindestens eines seiner WhatsApp Business-Konten über eine geschäftliche Telefonnummer mit genehmigtem Display-Namen verfügt, kann jedes seiner WhatsApp Business-Konten bis zu 6.000 Vorlagen haben.
Voraussetzungen:
Du kannst beim Erstellen einer Vorlage eine Nachrichtenvorlage in einer bestimmten Sprache hinzufügen. Diese Vorlagen werden auf deine Mengenbeschränkung angerechnet. Achte bei der Bereitstellung von Übersetzungen auf Konsistenz. Weitere Informationen findest du im Hilfebereich im Artikel Warum sehe ich in meinem Rückruf die Fehler „Struktur nicht verfügbar“.
Sende eine POST-Anfrage an den Endpunkt WhatsApp Business-Konto > Nachrichtenvorlagen, um eine Vorlage zu erstellen.
POST /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates
{ "name": "<NAME>", "category": "<CATEGORY>", "allow_category_change": <ALLOW_CATEGORY_CHANGE>, "language": "<LANGUAGE>", "components": [<COMPONENTS>] }
Platzhalter | Beschreibung | Beispielwert |
---|---|---|
String | Erforderlich. Vorlagenname. Maximal 512 Zeichen. |
|
Enum | Erforderlich. Vorlagenkategorie. Siehe nachfolgend Vorlagenkategorien. |
|
Boolesch | Optional. Lege „true“ fest, damit wir automatisch eine Kategorie zuweisen können. Wenn dies nicht festgelegt wird, kann es sein, dass deine Vorlage wegen falscher Kategorisierung abgelehnt wird. |
|
Enum | Erforderlich. Sprache und Ländercode der Vorlage. |
|
String | Optional. Der genaue Name der Vorlage der Verwaltungsvorlagenbibliothek. Erfahre, wie du Vorlagen mit der Verwaltungsvorlagenbibliothek erstellst. |
|
Array von Objekten | Optional. Die Website und/oder Telefonnummer des Unternehmens, das in der Vorlage verwendet wird. Hinweis: Für Verwaltungsvorlagen, die über Buttons verfügen, ist diese Eigenschaft nicht optional. Erfahre, wie du Vorlagen mit der Verwaltungsvorlagenbibliothek erstellst. |
|
Array von Objekten | Erforderlich. Komponenten, aus denen die Vorlage besteht. Siehe nachfolgend Vorlagenkomponenten. | Siehe nachfolgend Vorlagenkomponenten. |
Vorlagen müssen anhand der folgenden Kategorien kategorisiert werden. Kategorien haben Auswirkungen auf die Preisgestaltung und die von dir ausgewählte Kategorie wird bei der Vorlagenerstellung geprüft.
AUTHENTICATION
MARKETING
UTILITY
Im Dokument zur Vorlagenkategorisierung findest du Informationen, die dir bei der Wahl der richtigen Kategorie beim Erstellen von Vorlagen helfen.
Vorlagen bestehen basierend auf deinen Unternehmensanforderungen aus verschiedenen Text-, Medien- und interaktiven Komponenten. In der Dokumentation zu Vorlagenkomponenten findest du eine Liste aller möglichen Komponenten und ihrer Voraussetzungen sowie Beispiele und Beispielabfragen.
Definiere beim Erstellen einer Vorlage ihre Komponenten, indem du der „components“-Eigenschaft im Text der Anfrage einen Array von Komponentenobjekten zuweist.
Dies ist z. B. ein Array, das eine Text-Komponente mit zwei Variablen und Beispielwerten enthält sowie eine Telefonnummer-Button-Komponente und eine URL-Button-Komponente:
[ { "type": "BODY", "text": "Thank you for your order, {{1}}! Your confirmation number is {{2}}. If you have any questions, please use the buttons below to contact support. Thank you for being a customer!", "example": { "body_text": [ [ "Pablo","860198-230332" ] ] } }, { "type": "BUTTONS", "buttons": [ { "type": "PHONE_NUMBER", "text": "Call", "phone_number": "15550051310" }, { "type": "URL", "text": "Contact Support", "url": "https://www.luckyshrub.com/support" } ] } ]
In der Dokumentation zu Vorlagenkomponenten findest du eine Liste aller möglichen Komponenten und ihrer Voraussetzungen sowie Beispiele und Beispielabfragen.
Beachte, dass für Vorlagen mit der Kategorie AUTHENTICATION
eigene Komponentenanforderungen gelten. Siehe Authentifizierungsvorlagen.
Wenn du eine Anfrage zur Vorlagenerstellung sendest, prüfen wir sofort die Kategorie anhand unserer Richtlinien zur Vorlagenkategorisierung.
status
auf PENDING
. Anschließend wird die Vorlage einer Vorlagenüberprüfung unterzogen.status
jedoch auf REJECTED
und lösen einen Webhook zur Statusaktualisierung der Nachrichtenvorlage aus, bei dem für reason
der Wert INCORRECT_CATEGORY
festgelegt ist. Wir empfehlen dir, auf diesen Webhook zu warten, um abgelehnte Vorlagen zu identifizieren, oder das Feld rejected_reason
bei neu erstellten Vorlagen anzufordern, das den Wert TAG_CONTENT_MISMATCH
enthält.In beiden Fällen wird der anfängliche Status der Vorlage als Teil der API-Antwort zurückgegeben.
Wenn dein Vorlagenstatus im Rahmen der Kategorieprüfung REJECTED
lautet, hast du mehrere Möglichkeiten:
Du kannst die Eigenschaft allow_category_change
in deine Anfrage aufnehmen, damit wir automatisch eine Kategorie anhand des Inhalts deiner Vorlage und unserer Richtlinien zur Vorlagenkategorisierung zuweisen. Dies kann verhindern, dass der Status deiner Vorlage aufgrund falscher Kategorisierung sofort auf REJECTED
festgelegt wird.
Beachte, dass die automatische Kategorisierung nur beim Erstellen einer Vorlage möglich ist.
Vorlagen mit dem Status PENDING
werden einer Vorlagenüberprüfung unterzogen. Wir überprüfen den Inhalt aller neu erstellen oder bearbeiteten Vorlagen, um sicherzustellen, dass sie unseren Content-Richtlinien entsprechen. Basierend auf dem Ergebnis dieser Überprüfung ändern wir den Status automatisch in APPROVED
oder REJECTED
, was wiederum einen Webhook zur Statusaktualisierung der Nachrichtenvorlage auslöst.
Basierend auf dem Ergebnis der Kategorie- und Vorlagenüberprüfung ändern oder setzen wir den status
deiner Vorlage auf einen der folgenden Werte:
APPROVED
– Die Vorlage hat die Vorlagenüberprüfung bestanden und wurde genehmigt. Sie kann jetzt in Vorlagennachrichten gesendet werden.PENDING
– Die Vorlage hat die Kategorieüberprüfung bestanden und wird derzeit einer Vorlagenüberprüfung unterzogen.REJECTED
– Die Vorlage hat die Kategorie- oder Vorlagenüberprüfung nicht bestanden. Du kannst das Feld „rejected_reason“ für die Vorlage anfordern, um den Grund zu erhalten.Du findest alle möglichen Felder und Status in der Endpunktreferenz für WhatsApp-Nachrichtenvorlagen.
Bei Erfolg gibt die API eine Antwort mit der ID, dem Status und der Kategorie der neu erstellen Vorlage zurück. Es gibt drei mögliche Ergebnisse:
status
ist auf PENDING
festgelegt).status
ist auf REJECTED
festgelegt).status
ist auf APPROVED
festgelegt). Dies ist nur bei Authentifizierungsvorlagen mit Einmalpasswort-Buttons möglich.{ "id": "<ID>", "status": "<STATUS>", "category": "<CATEGORY>" }
Platzhalter | Beschreibung | Beispielwert |
---|---|---|
| Vorlagen-ID. |
|
|
| |
| Die Vorlagenkategorie, die du festgelegt hast oder die wir zugewiesen haben. |
|
Dies ist eine Beispielanfrage für das Erstellen einer Vorlage für ein saisonales Angebot, die aus folgenden Komponenten besteht:
Weitere Beispiele findest du unter Beispielanfragen.
curl 'https://graph.facebook.com/v19.0
/102290129340398/message_templates' \
-H 'Authorization: Bearer EAAJB...' \
-H 'Content-Type: application/json' \
-d '
{
"name": "seasonal_promotion",
"language": "en_US",
"category": "MARKETING",
"components": [
{
"type": "HEADER",
"format": "TEXT",
"text": "Our {{1}} is on!",
"example": {
"header_text": [
"Summer Sale"
]
}
},
{
"type": "BODY",
"text": "Shop now through {{1}} and use code {{2}} to get {{3}} off of all merchandise.",
"example": {
"body_text": [
[
"the end of August","25OFF","25%"
]
]
}
},
{
"type": "FOOTER",
"text": "Use the buttons below to manage your marketing subscriptions"
},
{
"type":"BUTTONS",
"buttons": [
{
"type": "QUICK_REPLY",
"text": "Unsubscribe from Promos"
},
{
"type":"QUICK_REPLY",
"text": "Unsubscribe from All"
}
]
}
]
}'
{ "id": "572279198452421", "status": "PENDING", "category": "MARKETING" }
Nutze die Cloud API oder die On-Premises API, um eine Vorlage in einer Vorlagennachricht zu senden.
Wir empfehlen dir, einen Schnellantwort-Button zu deinen Vorlagen hinzuzufügen, die als MARKETING
kategorisiert wurden. So können Kund*innen sich einfacher vom Erhalt deiner Marketing-Nachrichten abmelden. Auf diese Weise können Nutzer*innen dem Erhalt deiner Marketing-Nachrichten widersprechen, ohne dein Geschäft zu blockieren. Möglicherweise kannst du dann das Nachrichtenvolumen schneller skalieren. In diesem Artikel findest du weitere Details zu den Vorteilen des „Abmelden“-Buttons für deine Marketing-Vorlagen.
Dein Unternehmen muss die erforderlichen Schritte durchführen, damit keine Marketing-Nachrichten mehr an Kund*innen gesendet werden, die sich vom Erhalt dieser Nachrichten abgemeldet haben. Wenn dein Unternehmen das nicht tut, wirkt sich dies negativ auf deine Blockierrate und Qualitätsbewertung aus.
Sende eine GET-Anfrage an den Endpunkt WhatsApp Business-Konto > Nachrichtenvorlagen, um eine Liste der Vorlagen eines WhatsApp Business-Kontos abzurufen.
GET /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates ?fields=<FIELDS> &limit=<LIMIT>
Platzhalter | Beschreibung | Beispielwert |
---|---|---|
Kommagetrennte Liste | Optional. Liste der Vorlagenfelder, die zurückgegeben werden sollen |
|
Integer | Optional. Maximale Anzahl an Vorlagen, die auf jeder Ergebnisseite zurückgegeben werden sollen |
|
curl 'https://graph.facebook.com/v19.0
/102290129340398/message_templates?fields=name,status&limit=3' \
-H 'Authorization: Bearer EAAJB...'
{
"data": [
{
"name": "seasonal_promotion_text_only",
"status": "APPROVED",
"id": "564750795574598"
},
{
"name": "seasonal_promotion_video",
"status": "PENDING",
"id": "1252715608684590"
},
{
"name": "seasonal_promotion_image_header",
"status": "PENDING",
"id": "1372429296936443"
}
],
"paging": {
"cursors": {
"before": "MAZDZD",
"after": "MgZDZD"
},
"next": "https://graph.facebook.com/v19.0
/102290129340398/message_templates?fields=name%2Cstatus&limit=3&after=MgZDZD"
}
}
Du kannst nur Vorlagen mit bestimmten Feldwerten zurückgeben, indem du das Feld und den gewünschten Wert in deiner Anfrage angibst. Gib beispielsweise status=REJECTED
an, um nur abgelehnte Vorlagen abzurufen.
curl 'https://graph.facebook.com/v19.0
/104996122399160/message_templates?fields=name,status&status=REJECTED' \
-H 'Authorization: Bearer EAAJB...'
{ "data": [ { "name": "seasonal_promotion_text_only_v4", "status": "REJECTED", "id": "564750795574598" }, { "name": "discount_qualifier", "status": "REJECTED", "id": "163917509772674" }, { "name": "limited_time_offer_tuscan_getaway_2023", "status": "REJECTED", "id": "202389039167147" }, { "name": "2023_mar_promo_2", "status": "REJECTED", "id": "1116034925734553" }, { "name": "2023_mar_promo", "status": "REJECTED", "id": "952600926095321" } ] }
Der Namespace der Nachrichtenvorlage ist erforderlich, um Nachrichten unter Verwendung der Nachrichtenvorlagen zu senden.
Um den Namespace für eine Vorlage abzurufen, sendest du eine GET
-Anfrage an den /{whatsapp-business-account-ID}
-Endpunkt und schließt das message_template_namespace
-Feld ein.
curl -i -X GET "https://graph.facebook.com/v19.0
/{whatsapp-business-account-ID}
?fields=message_template_namespace
&access_token={system-user-access-token}"
Bei einer erfolgreichen Anfrage wird ein JSON-Objekt mit der WhatsApp Business-Konto-ID und dem Namespace zurückgegeben:
{ "id": "1972385232742141", "message_template_namespace": "12abcdefghijk_34lmnop" }
Sende eine POST-Anfrage an den Endpunkt WhatsApp-Nachrichtenvorlage, um eine Vorlage zu bearbeiten. Über den Bereich WhatsApp Manager > Konto-Tools > Nachrichtenvorlagen kannst du Vorlagen auch manuell bearbeiten.
APPROVED
, REJECTED
oder PAUSED
können bearbeitet werden.category
oder components
einer Vorlage können bearbeitet werden.category
-Wert einer genehmigten Vorlage kannst du nicht bearbeiten.POST /<WHATSAPP_MESSAGE_TEMPLATE_ID>
{ "category": "<CATEGORY>", "components": [<COMPONENTS>] }
Platzhalter | Beschreibung | Beispielwert |
---|---|---|
String | Erforderlich, wenn die components-Eigenschaft weggelassen wird. Vorlagenkategorie. |
|
Array | Erforderlich, wenn die category-Eigenschaft weggelassen wird. Array mit Vorlagenkomponentenobjekten. | Siehe Beispielanfrage (Komponenten bearbeiten) unten. |
Beispielanfrage zum Ändern des Haupttexts einer Vorlage, der sowohl Marketing- als auch Utility-Inhalt enthielt, damit er nur noch Marketing-Content enthält.
curl 'https://graph.facebook.com/v19.0
/564750795574598' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"components": [
{
"type": "HEADER",
"format": "TEXT",
"text": "Our {{1}} is on!",
"example": {
"header_text": [
"Spring Sale"
]
}
},
{
"type": "BODY",
"text": "Shop now through {{1}} and use code {{2}} to get {{3}} off of all merchandise.",
"example": {
"body_text": [
[
"the end of April",
"25OFF",
"25%"
]
]
}
},
{
"type": "FOOTER",
"text": "Use the buttons below to manage your marketing subscriptions"
},
{
"type": "BUTTONS",
"buttons": [
{
"type": "QUICK_REPLY",
"text": "Unsubcribe from Promos"
},
{
"type": "QUICK_REPLY",
"text": "Unsubscribe from All"
}
]
}
]
}'
Beispielanfrage zum Ändern der Kategorie einer Vorlage von UTILITY
in MARKETING
.
curl 'https://graph.facebook.com/v19.0
/1252715608684590' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"category": "MARKETING"
}'
Beispielantwort bei Erfolg.
{ "success": true }
Verwende den WhatsApp Business-Konto > Nachrichtenvorlagen-Endpunkt, um eine Vorlage anhand des Namens oder der ID zu löschen.
PENDING_DELETION
festgelegt und wir versuchen 30 Tage lang, die Nachricht zuzustellen. Nach Ablauf dieser Zeit erhältst du die Fehlermeldung „Struktur nicht verfügbar“ und der*die Kund*in empfängt die Nachricht nicht.Wenn du eine Vorlage anhand des Namens löschst, werden alle Vorlagen mit dem entsprechenden Namen gelöscht (d. h. Vorlagen mit demselben Namen doch mit unterschiedlichen Sprachen werden ebenfalls gelöscht).
DELETE /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates ?name=<NAME>
curl -X DELETE 'https://graph.facebook.com/v16.0/102290129340398/message_templates?name=order_confirmation' \ -H 'Authorization: Bearer EAAJB...'
{ "success": true }
Um eine Vorlage anhand der ID zu löschen, beziehe die ID der Vorlage zusammen mit ihrem Namen in deine Anfrage ein. Es wird nur die Vorlage mit der entsprechenden Vorlagen-ID gelöscht.
DELETE /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates ?hsm_id=<HSM_ID>, &name=<NAME>
curl -X DELETE 'https://graph.facebook.com/v19.0
/102290129340398/message_templates?hsm_id=1407680676729941&name=order_confirmation' \
-H 'Authorization: Bearer EAAJB...'
{ "success": true }