I modelli di messaggi multimediali ampliano il contenuto che è possibile inviare ai destinatari oltre il tipo di modello di messaggio standard, in modo da includere contenuto multimediale, intestazioni, piè di pagina e pulsanti mediante un oggetto components
. L'oggetto components
consente di indicare il type
di messaggio e i parameters
del messaggio.
POST
a /messages
POST /v1/messages { "to": "recipient_wa_id", "type": "template", "template": { "namespace": "your-namespace", "language": { "policy": "deterministic", "code": "your-language-and-locale-code" }, "name": "your-template-name", "components": [ { "type" : "header", "parameters": [ # The following parameters code example includes several different possible header types, # not all are required for a media message template API call. { "type": "text", "text": "replacement_text" } # OR { "type": "document", "document": { "id": "your-media-id", # filename is an optional parameter "filename": "your-document-filename" } } # OR { "type": "document", "document": { "link": "the-provider-name/protocol://the-url", # provider and filename are optional parameters "provider": { "name" : "provider-name" }, "filename": "your-document-filename" } } # OR { "type": "video", "video": { "id": "your-media-id" } } # OR { "type": "video", "video": { "link": "the-provider-name/protocol://the-url" # provider is an optional parameter "provider": { "name" : "provider-name" } } } # OR { "type": "image", "image": { "link": "http(s)://the-url", # provider is an optional parameter "provider": { "name" : "provider-name" }, } } ] # end header }, { "type" : "body", "parameters": [ { "type": "text", "text": "replacement_text" }, { "type": "currency", "currency" : { "fallback_value": "$100.99", "code": "USD", "amount_1000": 100990 } }, { "type": "date_time", "date_time" : { "fallback_value": "February 25, 1977", "day_of_week": 5, "day_of_month": 25, "year": 1977, "month": 2, "hour": 15, "minute": 33, #OR "timestamp": 1485470276 } }, { ... # Any additional template parameters } ] # end body }, ] } }
Una risposta positiva include un oggetto messages
con un id
.
{ "messages": [{ "id": "gBEGkYiEB1VXAglK1ZEqA1YKPrU" }] }
Una risposta non riuscita contiene un oggetto error con una stringa di errore, un codice di errore e altre informazioni.
Se viene inviato un modello a un account che non è in grado di ricevere quello specifico modello, nell'oggetto error viene inviato l'errore 1026 (ReceiverIncapable)
al server del webhook configurato.
Per ulteriori informazioni sugli errori, consulta Codici di errore e di stato.
Questi esempi illustrano il processo di impostazione dei modelli di messaggi multimediali a partire dalla creazione di modelli in Business Manager e inviando i modelli di messaggi con chiamate API all'endpoint messages
.
Questi esempi sono solo a scopo illustrativo e non possono essere utilizzati. Devi creare nuovi esempi e farli approvare per poter testare la funzionalità relativa ai modelli di messaggi multimediali.
Questo esempio mostra la creazione di un modello di messaggio multimediale con l'immagine di un codice QR.
messages
aggiunge le informazioni relative ai parametri.POST /v1/messages { "to": "your-test-recipient-wa-id", "recipient_type": "individual", "type": "template", "template": { "namespace": "88b39973_f0d5_54e1_29cf_e80f1e3da4f2", "name": "movie_ticket_update", "language": { "code": "en", "policy": "deterministic" }, "components": [ { "type": "header", "parameters": [ { "type": "image", "image": { "id": "your-image-id" } } ] }, { "type": "body", "parameters": [ { "type": "text", "text": "Star Rangers" }, { "type": "date_time", "date_time" : { "fallback_value": "May 1st, 2019 8:45pm", "day_of_month": 20, "year": 2019, "month": 9, "hour": 20, "minute": 45 } }, { "type": "text", "text": "Carnival, Sangam" }, { "type": "text", "text": "Silver" }, { "type": "text", "text": "F6, F7, F8" } ] } ] } }
Questo esempio mostra la creazione di un modello di messaggio multimediale con un documento PDF.
messages
aggiunge le informazioni relative ai parametri.POST /v1/messages { "to": "your-test-recipient-wa-id", "recipient_type": "individual", "type": "template", "template": { "namespace": "88b39973_f0d5_54e1_29cf_e80f1e3da4f2", "name": "flight_confirmation", "language": { "code": "en", "policy": "deterministic" }, "components": [ { "type": "header", "parameters": [ { "type": "document", "document": { "filename": "MRRATH-CGK-KUL.pdf", "link": "link-to-your-document" } } ] }, { "type": "body", "parameters": [ { "type": "text", "text": "CGK (Jakarta)" }, { "type": "text", "text": "KUL (Kuala Lumpur)" }, { "type": "date_time", "date_time" : { "fallback_value": "20th April 2019, 12:20pm", "day_of_month": 20, "year": 2019, "month": 9, "hour": 12, "minute": 10 } } ] } ] } }