API di messaggisticaAPI

Messaggi diretti su ogni rete, dal tuo codice

FoPost tiene in un solo posto ogni thread di DM dei tuoi account collegati. Elenca le conversazioni, avviane di nuove, scrivi a un segmento di contatti in un colpo solo o distribuisci una serie di messaggi nell’arco di più giorni, tutto con la stessa chiave API.

GET /v1/inbox/conversations
curl "https://api.fopost.com/v1/inbox/conversations?workspace_id=9b2f6c1e-..." \
  -H "X-API-Key: $API_KEY"

{
  "data": [
    {
      "workspace_id": "9b2f6c1e-...",
      "account_id": "4a71d80b-...",
      "conversation_id": "t_1029384756",
      "message_count": 6,
      "unread_count": 2,
      "last_message_at": "2026-11-10T16:42:08Z",
      "last_message_text": "Is the large size back in stock?",
      "last_message_outbound": false,
      "participant": { "name": "Jordan P.", "handle": "jordanp", "avatar_url": "https://..." },
      "account": { "id": "4a71d80b-...", "platform": "instagram", "username": "yourbrand" }
    }
  ],
  "meta": { "page": 1, "per_page": 25, "total": 1, "total_pages": 1 }
}

Un unico elenco di thread

Ogni conversazione DM di ogni account collegato, dalla più recente.

Broadcast

Un messaggio nei thread esistenti di un insieme filtrato di contatti.

Sequenze

Una serie di messaggi, ciascuno inviato un numero stabilito di ore dopo il precedente.

Conversazioni

Leggi un thread, rispondi o aprine uno nuovo

Rispondi all’interno di un thread esistente con POST /v1/inbox/:id/reply. Avvia una nuova conversazione tramite handle su X, Mastodon, Reddit e Slack, oppure passa comment_id per rispondere in privato a un commento di Instagram o Facebook. Su Facebook e Instagram puoi anche mostrare l’indicatore di digitazione, e su Messenger passare un thread a un’altra app e riprenderlo.

Leggi il riferimento delle conversazioni
POST /v1/inbox/conversations
curl -X POST https://api.fopost.com/v1/inbox/conversations \
  -H "X-API-Key: $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "account_id": "4a71d80b-...",
    "handle": "jordanp",
    "text": "Thanks for the order. Your tracking link is on its way."
  }'

{ "conversation_id": "t_1029384756", "item": { "id": "2c9d4e81-...", "type": "dm", ... } }

Testo e contenuti multimediali

Fino a 10 ID di media dalla tua libreria vengono allegati dove la rete lo consente.

Digitazione e passaggio

POST /v1/inbox/conversations/:id/typing e /handover per le conversazioni Meta.

X Chat

Le conversazioni X cifrate passano come testo cifrato; la chiave resta nel browser.

Broadcast

Scrivi a un segmento senza violare le regole delle piattaforme

Un broadcast entra nelle conversazioni che il tuo account ha già con un insieme di contatti, filtrato per rete, etichetta, origine o campo personalizzato. Facebook, Instagram e WhatsApp consentono un messaggio aziendale solo entro 24 ore dall’ultimo messaggio del contatto, quindi i destinatari fuori da questa finestra vengono saltati con un motivo e non vengono mai contattati. Su WhatsApp un template approvato può andare oltre.

Vedi il riferimento dei broadcast
POST /v1/broadcasts/:id/send
curl -X POST https://api.fopost.com/v1/broadcasts \
  -H "X-API-Key: $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "workspace_id": "9b2f6c1e-...",
    "account_id": "4a71d80b-...",
    "name": "Restock, November",
    "text": "The large size is back in stock this week.",
    "audience": { "platforms": ["instagram"], "label_ids": ["d41e7a90-..."] }
  }'

curl -X POST https://api.fopost.com/v1/broadcasts/8e2a5c13-.../send -H "X-API-Key: $API_KEY"

{ "id": "8e2a5c13-...", "status": "sending", "recipients": 212 }

Invia ora o più tardi

Imposta scheduled_at per metterlo in coda, oppure annullalo prima dell’invio.

Esito per destinatario

GET /v1/broadcasts/:id/recipients mostra inviato, saltato o fallito, e perché.

Inviato una sola volta

Ogni destinatario viene riservato prima dell’invio, quindi un nuovo tentativo non scrive mai due volte.

Sequenze

Fai follow-up nell’arco di giorni, in automatico

Una sequenza è un elenco di massimo 20 passaggi, ciascuno con un messaggio e un ritardo in ore rispetto al precedente. Iscrivi i contatti per ID o con lo stesso filtro di pubblico di un broadcast, e disiscrivili in qualsiasi momento. Un passaggio che cade fuori dalla finestra di messaggistica viene saltato e la sequenza prosegue.

Vedi il riferimento delle sequenze
POST /v1/sequences/:id/enroll
curl -X POST https://api.fopost.com/v1/sequences/5b9c2e40-.../enroll \
  -H "X-API-Key: $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "contact_ids": ["a7f3c2d1-..."] }'

{ "id": "5b9c2e40-...", "enrolled": 1 }

Metti in pausa quando vuoi

Imposta status su paused e nessun altro passaggio parte finché non riprendi.

Disiscrizione

POST /v1/sequences/:id/unenroll ferma subito un contatto.

Conteggi delle iscrizioni

Attive, completate, interrotte e fallite, per sequenza.

Contatti

Sappi con chi stai parlando

Chi scrive ai tuoi account diventa automaticamente un contatto. Aggiungine altri a mano oppure importa un CSV fino a 5.000 righe con una colonna per la piattaforma e una per l’handle. Definisci fino a 50 campi personalizzati per workspace (testo, numero, data, selezione o sì/no) e usali per filtrare broadcast e sequenze.

Inizia a sviluppare
Account collegati di ogni rete in un unico workspace

Importazione CSV

POST /v1/contacts/import restituisce le righe create, unite e saltate, con i motivi.

Campi personalizzati

Le colonne che corrispondono alla chiave di un campo vengono compilate all’importazione.

Cronologia completa

GET /v1/contacts/:id/conversations elenca ciò che ha scritto ogni contatto.

API di messaggistica: le risposte alle tue domande

A quali reti posso scrivere?

Le conversazioni vengono lette da Bluesky, Facebook, Instagram, Mastodon, Reddit, Slack, Telegram, WhatsApp e X quando l’account ha concesso il permesso di messaggistica. Avviare una nuova conversazione tramite handle funziona su X, Mastodon, Reddit e Slack.

Cos’è la finestra di messaggistica?

Facebook, Instagram e WhatsApp accettano un messaggio aziendale solo entro 24 ore dall’ultimo messaggio del contatto. Broadcast e sequenze la verificano prima di ogni invio e saltano chi è fuori finestra, registrandone il motivo.

Di quali scope della chiave API ho bisogno?

Leggere conversazioni, contatti, broadcast e sequenze richiede lo scope inbox. Qualsiasi azione che metta un messaggio su una rete, come inviare un broadcast o iscrivere un contatto, richiede anche publish.

Un broadcast può scrivere a persone che non ci hanno mai scritto?

No. Un broadcast arriva in una conversazione che l’account ha già con il contatto. I contatti senza conversazione vengono saltati come mai contattati.

Qualcosa viene inviato senza una mia richiesta?

Un broadcast parte quando chiami send o all’ora che hai programmato. Una sequenza invia i suoi passaggi dopo che hai iscritto qualcuno. Non viene scritto a nessuno che tu non abbia configurato.

C’è un limite di frequenza?

Sì, 100 richieste al minuto per chiave. Anche le reti applicano limiti propri, e un invio rifiutato torna con il motivo della rete.

Sviluppa oggi con API di messaggistica

Iniziare è gratis e l'API completa è inclusa. Crea una chiave e fai la tua prima chiamata in pochi minuti.

Ottieni la tua chiave API