Vai al contenuto

Tipi di messaggio

Nove tipi di messaggio, un solo corpo della richiesta

Una richiesta di invio indica un canale, un destinatario e un tipo, con il contenuto sotto una chiave che porta il nome del tipo. Questa pagina mostra ogni tipo, il corpo che lo produce e dove è supportato.

Matrice di supporto

Quale canale accetta quale tipo

Un canale dichiara ciò che accetta in capabilities. L’invio di un tipo non supportato dal canale restituisce 400 unsupported_message_type e non viene addebitato nulla.

Supporto dei tipi di messaggio per tipo di canale
TipoWhatsAppSMSSMS OTPTelegramMessengerInstagramTikTok
TestotextSupportatoSupportatoSupportatoSupportatoSupportatoSupportatoSupportato
AllegatiattachmentsSupportatoSupportatoNon supportatoSupportatoSupportatoSupportatoSupportato
ModellotemplateSupportatoNon supportatoNon supportatoNon supportatoNon supportatoNon supportatoNon supportato
Pulsanti di rispostabuttonSupportatoNon supportatoNon supportatoSupportatoSupportatoSupportatoSupportato
ElencolistSupportatoNon supportatoNon supportatoNon supportatoNon supportatoNon supportatoNon supportato
Pulsante URLcta_urlSupportatoNon supportatoNon supportatoNon supportatoNon supportatoNon supportatoNon supportato
PosizionelocationSupportatoNon supportatoNon supportatoSupportatoNon supportatoNon supportatoNon supportato
ContatticontactsSupportatoNon supportatoNon supportatoSupportatoNon supportatoNon supportatoNon supportato
SondaggiopollNon supportatoNon supportatoNon supportatoSupportatoNon supportatoNon supportatoNon supportato
type: "text"

Testo

Testo semplice, accettato da tutti i tipi di canale. Imposta preview_url per consentire al canale di mostrare l’anteprima di un link.

body: da 1 a 4.096 caratteri.

  • WhatsApp Business
  • SMS
  • SMS OTP
  • Telegram
  • Messenger
  • Instagram
  • TikTok
POST /v1/messages
{
  "channel": "ch_7Hq2mN5vB8cX1zL0pK3j",
  "to": "+971501234567",
  "type": "text",
  "text": {
    "body": "Il tuo ordine n. 1042 è stato spedito. Seguilo su https://example.com/t/1042",
    "preview_url": true
  },
  "reference": "order-1042"
}
type: "attachments"

Allegati

Un elemento multimediale per messaggio, indicato da un URL https: immagine, video, documento, audio, messaggio vocale o sticker, con una didascalia facoltativa.

Esattamente un elemento. caption: fino a 1.024 caratteri.

  • WhatsApp Business
  • SMS
  • Telegram
  • Messenger
  • Instagram
  • TikTok
POST /v1/messages
{
  "channel": "ch_7Hq2mN5vB8cX1zL0pK3j",
  "to": "+971501234567",
  "type": "attachments",
  "attachments": [
    {
      "type": "image",
      "url": "https://example.com/receipts/1042.jpg",
      "caption": "La ricevuta del tuo ordine n. 1042."
    }
  ]
}
type: "template"

Modello

Un modello WhatsApp approvato con variabili. I modelli sono gli unici messaggi che WhatsApp accetta al di fuori della finestra di assistenza clienti di 24 ore.

name e language devono corrispondere a un modello approvato del canale.

  • WhatsApp Business
POST /v1/messages
{
  "channel": "ch_7Hq2mN5vB8cX1zL0pK3j",
  "to": "+971501234567",
  "type": "template",
  "template": {
    "name": "order_out_for_delivery",
    "language": {
      "code": "en"
    },
    "components": [
      {
        "type": "body",
        "parameters": [
          {
            "type": "text",
            "text": "Giulia"
          },
          {
            "type": "text",
            "text": "#1042"
          },
          {
            "type": "text",
            "text": "18:00"
          }
        ]
      }
    ]
  }
}
type: "button"

Pulsanti di risposta

Un messaggio con un massimo di tre risposte rapide. L’ID del pulsante toccato torna al tuo webhook in un evento message.received.

Da 1 a 3 pulsanti. title: fino a 20 caratteri.

  • WhatsApp Business
  • Telegram
  • Messenger
  • Instagram
  • TikTok
POST /v1/messages
{
  "channel": "ch_7Hq2mN5vB8cX1zL0pK3j",
  "to": "+971501234567",
  "type": "button",
  "button": {
    "body": {
      "text": "Il tuo tavolo per due è prenotato per stasera alle 19:30. Confermi la tua presenza?"
    },
    "action": {
      "buttons": [
        {
          "reply": {
            "id": "confirm",
            "title": "Conferma"
          }
        },
        {
          "reply": {
            "id": "reschedule",
            "title": "Cambia orario"
          }
        },
        {
          "reply": {
            "id": "cancel",
            "title": "Annulla prenotazione"
          }
        }
      ]
    }
  }
}
type: "list"

Elenco

Un menu che si apre da un unico pulsante, con righe raggruppate in sezioni dotate di titolo.

action.button: fino a 20 caratteri.

  • WhatsApp Business
POST /v1/messages
{
  "channel": "ch_7Hq2mN5vB8cX1zL0pK3j",
  "to": "+971501234567",
  "type": "list",
  "list": {
    "body": {
      "text": "Quale team può aiutarti oggi?"
    },
    "action": {
      "button": "Scegli un team",
      "sections": [
        {
          "title": "Team",
          "rows": [
            {
              "id": "orders",
              "title": "Ordini",
              "description": "Consegne, resi e rimborsi"
            },
            {
              "id": "billing",
              "title": "Fatturazione",
              "description": "Fatture e metodi di pagamento"
            },
            {
              "id": "technical",
              "title": "Assistenza tecnica",
              "description": "Configurazione e risoluzione dei problemi"
            }
          ]
        }
      ]
    }
  }
}
type: "cta_url"

Pulsante URL

Un messaggio con un pulsante che apre un URL, per pagine di tracciamento, pagamenti e link di accesso.

Un pulsante per messaggio.

  • WhatsApp Business
POST /v1/messages
{
  "channel": "ch_7Hq2mN5vB8cX1zL0pK3j",
  "to": "+971501234567",
  "type": "cta_url",
  "cta_url": {
    "body": {
      "text": "Il tuo pacco è in viaggio. Seguilo in tempo reale."
    },
    "action": {
      "parameters": {
        "display_text": "Traccia l’ordine",
        "url": "https://example.com/t/1042"
      }
    }
  }
}
type: "location"

Posizione

Un segnaposto con un nome e un indirizzo che si apre nell’app di mappe del destinatario.

latitude e longitude sono espressi in gradi decimali.

  • WhatsApp Business
  • Telegram
POST /v1/messages
{
  "channel": "ch_7Hq2mN5vB8cX1zL0pK3j",
  "to": "+971501234567",
  "type": "location",
  "location": {
    "latitude": 25.2048,
    "longitude": 55.2708,
    "name": "Punto di ritiro",
    "address": "Sheikh Zayed Road, Dubai"
  }
}
type: "contacts"

Contatti

Una o più schede contatto. L’array viene inoltrato al canale così com’è, quindi usa il formato dei contatti del fornitore.

L’esempio mostra il formato dei contatti di WhatsApp.

  • WhatsApp Business
  • Telegram
POST /v1/messages
{
  "channel": "ch_7Hq2mN5vB8cX1zL0pK3j",
  "to": "+971501234567",
  "type": "contacts",
  "contacts": [
    {
      "name": {
        "formatted_name": "Servizio clienti",
        "first_name": "Assistenza"
      },
      "phones": [
        {
          "phone": "+971800123456",
          "type": "WORK"
        }
      ]
    }
  ]
}
type: "poll"

Sondaggio

Un sondaggio nativo di Telegram con una domanda e una serie di opzioni.

Solo Telegram.

  • Telegram
POST /v1/messages
{
  "channel": "ch_4Tn8rW2yK6dF9sA1mQ5v",
  "to": "584201337",
  "type": "poll",
  "poll": {
    "question": "Quando preferisci ricevere il tuo ordine?",
    "options": [
      "Mattina, dalle 09:00 alle 12:00",
      "Pomeriggio, dalle 12:00 alle 17:00",
      "Sera, dalle 17:00 alle 21:00"
    ]
  }
}

Prova tutti i tipi nella sandbox

Ogni account ha un canale sandbox per ciascun tipo di canale. Invia con una chiave di test qualsiasi tipo supportato: nulla viene consegnato né addebitato.