Creare applicazioni su Instagram Direct
Un percorso operativo pensato per chi si avvicina per la prima volta all'API di messaggistica di Instagram: dai concetti di base alla configurazione, fino a cinque casi d'uso reali con esempi di codice.
Fondamenti
Instagram ha reso più semplice l'accesso diretto ai Direct Message: dal 2023 non serve più obbligatoriamente una Pagina Facebook collegata, grazie all'Instagram Login.
Account Professional
Serve un account Instagram Business o Creator: gli account personali non possono usare l'API di messaggistica.
Instagram Login vs Facebook Login
Due modalità: Instagram Login (diretta, moderna, senza Pagina Facebook) oppure Facebook Login (classica, tramite Pagina collegata). In questo modulo usiamo la prima, più semplice.
Instagram User Access Token
Token inviato nell'header Authorization: Bearer: autentica ogni chiamata a graph.instagram.com.
IG_ID e IGSID
IG_ID identifica il tuo account professional; IGSID (Instagram-Scoped ID) identifica l'utente con cui stai parlando, ottenuto solo da un evento webhook reale.
Finestra di 24 ore
Come su Messenger, puoi rispondere liberamente entro 24 ore dall'ultimo messaggio. Il tag HUMAN_AGENT estende la finestra a 7 giorni quando interviene un operatore umano.
Token Refresh
I token hanno una scadenza: vanno rinnovati periodicamente tramite l'endpoint di refresh, idealmente quando mancano meno di 7 giorni alla scadenza.
Setup operativo passo-passo
Segui questi quattro passaggi in ordine. Spunta ogni step man mano che lo completi.
01Trasforma il profilo in account Professional e crea l'app
Dalle impostazioni Instagram, passa a un account Business o Creator. Poi su developers.facebook.com crea un'app e aggiungi il prodotto Instagram con configurazione "Instagram API with Instagram Login".
02Autentica e ottieni token + IG_ID
Completa il flusso OAuth di Instagram Login richiedendo lo scope instagram_manage_messages: otterrai l'Instagram User Access Token e l'IG_ID del tuo account.
03Invia il tuo primo messaggio di prova
Scrivi tu stesso un DM al tuo account professional da un altro profilo, poi recupera il tuo IGSID dal webhook (o dallo strumento di test nella dashboard). Prova quindi:
curl -X POST "https://graph.instagram.com/v25.0/{IG_ID}/messages" \
-H "Authorization: Bearer {INSTAGRAM_USER_ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"recipient": {"id": "{IGSID}"},
"message": {"text": "Ciao! Questo è il mio primo messaggio via Instagram API."}
}'
Segna come completato quando ricevi il messaggio nei tuoi DM
04Configura il webhook di ricezione
Nella sezione Webhook dell'app, sottoscrivi il campo messages per il tuo account, con un URL pubblico HTTPS (in fase di apprendimento puoi usare un tunnel come ngrok).
Le cinque tipologie di applicazione
Clicca su ciascuna scheda per aprire scenario, esempio di codice e avvertenze.
Assistenza clienti su DM
app.post('/webhook', async (req, res) => { const evento = req.body.entry[0].messaging[0]; if (evento.message?.text?.toLowerCase().includes('spedizion')) { await inviaMessaggio(evento.sender.id, 'Sì, spediamo in tutta Italia comprese le isole!'); } res.sendStatus(200); });
Comment-to-DM
if (commento.text.toLowerCase().includes('info')) { await inviaMessaggio(commento.autore_igsid, 'Ciao! Ecco il listino che hai richiesto: link.it/listino'); }
Notifiche e aggiornamenti
{
"recipient": {"id": "{IGSID}"},
"message": {"text": "Le confermiamo che il problema è stato risolto."},
"tag": "HUMAN_AGENT"
}
Chatbot conversazionale
{
"recipient": {"id": "{IGSID}"},
"message": {
"text": "Cosa ti interessa?",
"quick_replies": [
{"content_type":"text", "title":"Catalogo", "payload":"CATALOGO"},
{"content_type":"text", "title":"Assistenza", "payload":"ASSISTENZA"}
]
}
}
E-commerce e reazioni rapide
curl -X POST "https://graph.instagram.com/v25.0/{IG_ID}/messages" \
-H "Authorization: Bearer {TOKEN}" -H "Content-Type: application/json" \
-d '{
"recipient": {"id": "{IGSID}"},
"message": {"attachment": {"type": "image", "payload": {"url": "{URL_IMMAGINE}"}}}
}'
Glossario interattivo
Clicca su un termine per rivelarne la definizione.
Esercitazioni pratiche
Verifica quanto hai appreso con questo quiz di autovalutazione.
Attestato di completamento
Completa tutti i passaggi della Sezione 2 per sbloccare il tuo attestato personale in PDF.