Dai al tuo SaaS accesso a Posta in arrivo degli utenti via API Email
Un'API di posta elettronica per SaaS consente al tuo prodotto di leggere, inviare e sincronizzare e-mail direttamente dagli account Gmail, Outlook o IMAP dei tuoi utenti, senza dover gestire le password. Crea integrazioni CRM, strumenti di vendita, helpdesk e assistenti AI su una base unificata OAuth.
import {UnipileClient } from 'unipile-node-sdk';
const cliente = new UnipileClient('IL_TUO_DSN', 'IL_TUO_TOKEN');
// Effettua il collegamento alla casella di posta di un utente
const collegamento = await client.account.create({
tipo: 'google',
indirizzo_reindirizzamento: 'https://app.com/cb'
});
// Recupera le ultime 50 email
const { elementi } = await client.email.ottieniTutti({
account_id: 'user_account_id',
limite: 50
});
// Invia dall'indirizzo dell'utente
await client.email.inviare({
account_id: 'user_account_id',
a: [{ identificatore: 'lead@co.com' }],
oggetto: 'Seguito',
body: 'Ciao, solo per un controllo...'
});Cos'è un'API di posta elettronica per SaaS?
La maggior parte degli sviluppatori sente "API email" e pensa a strumenti come SendGrid o Mailgun, servizi per l'invio di email transazionali (ricevute, notifiche, link magici) dal proprio dominio. Quello è un mercato completamente diverso. Un'API email per SaaS risolve un problema fondamentalmente diverso: dare al tuo prodotto accesso programmatico agli account email dei tuoi utenti.
Un API per email per SaaS è un insieme di endpoint HTTP che consente al tuo prodotto di autenticarsi con il provider di posta elettronica di un utente (Gmail, Outlook o IMAP) tramite OAuth, quindi leggere, inviare, sincronizzare e cercare email per suo conto, tutto tramite una singola integrazione, senza archiviare password o gestire le particolarità specifiche del provider.
Invia e-mail dal tuo dominio ai tuoi utenti. Utilizzato per reset password, fatture, notifiche e campagne di marketing. Il tuo prodotto controlla l'indirizzo del mittente.
Offre al tuo SaaS accesso a le caselle di posta dei tuoi utenti tramite OAuth. Il tuo prodotto legge, invia e sincronizza le email per conto di ciascun utente, dal loro account Gmail, Outlook o IMAP.
Quali prodotti SaaS costruiscono effettivamente con un'API di posta elettronica
Qualsiasi prodotto in cui gli utenti debbano agire sulle email o in cui le email debbano fluire nel tuo modello dati è un candidato per un'API email di sincronizzazione utente. Ecco i cinque modelli più comuni con cui gli sviluppatori spediscono Unipile.
Cattura automaticamente ogni e-mail scambiata tra un addetto alle vendite e un contatto. Nessun inserimento manuale, nessun contatto perso. Il tuo CRM rimane aggiornato senza alcun intervento dell'utente.
Esegui sequenze di outreach multi-step dal proprio indirizzo Gmail o Outlook di ciascun rappresentante, non da un dominio di invio condiviso. Le risposte atterrano nella casella di posta reale del rappresentante e vengono rilevate automaticamente.
Porta le email di supporto da più caselle di posta del team in una coda di ticket unificata. Le risposte inviate dall'interfaccia del tuo helpdesk escono tramite l'account collegato dell'agente, preservando la recapitalità.
Concedi al tuo prodotto AI l'accesso alla cronologia completa delle email di un utente. Riassumi thread, bozza risposte, estrai elementi d'azione o classifica lead, tutto basato sui dati reali della casella di posta dell'utente.
Consenti agli utenti di collegare la propria casella di posta per attivare automazioni: crea attività dalle email, estrai dati dalle fatture, instrada allegati allo storage o collega email a Slack, Notion o al tuo motore di workflow personalizzato.
Collega le caselle di posta dei recruiter al tuo ATS. Associa automaticamente le e-mail dei candidati alle candidature, monitora i tassi di risposta e consenti ai recruiter di rispondere direttamente dal loro account collegato senza abbandonare la tua piattaforma.
Cosa dovrebbe supportare un'API di email di produzione per SaaS
Costruire un'integrazione email affidabile è più che chiamare un endpoint REST. Ecco le sei funzionalità che qualsiasi integrazione API email SaaS seria deve coprire, e dove si nasconde la complessità in ognuna.
Ogni utente collega la propria casella di posta tramite un consenso OAuth separato. La tua SaaS agisce per conto di ogni utente autenticato, non tramite un unico account di servizio condiviso. Google e Microsoft richiedono la verifica dell'app prima di poter emettere token OAuth su larga scala.
I vostri utenti avranno caselle di posta Gmail, Outlook (personali e Microsoft 365) e basate su IMAP. Una robusta API di posta elettronica per SaaS normalizza questi tre provider in un formato di risposta unico e unificato in modo che la logica del tuo prodotto rimanga indipendente dal provider.
Il polling ogni pochi minuti è fragile e lento. I SaaS di produzione richiedono notifiche webhook quando arrivano nuove email o lo stato del messaggio cambia. Gmail usa Pub/Sub, Microsoft Graph usa le sottoscrizioni - il tuo livello API dovrebbe astrarre entrambi in un unico formato di evento.
I client di posta elettronica raggruppano i messaggi in thread. La tua API di posta elettronica deve esporre un identificatore di thread coerente tra i provider in modo da poter rispondere nei thread, collassare conversazioni e rilevare se una sequenza in uscita ha ricevuto una risposta, senza dover analizzare manualmente gli header grezzi di Message-ID.
La lettura degli allegati significa decodificare parti MIME, gestire immagini inline e scaricare blob binari tramite API specifiche del provider. L'endpoint deve permetterti di recupera allegati per ID senza dover scaricare nuovamente l'intero corpo del messaggio ad ogni richiesta.
I dati delle email sono sensibili. La tua integrazione deve crittografia dei token a riposo, autorizzazioni OAuth con ambito ristretto (richiedi solo ciò di cui hai bisogno), log di controllo e un percorso di eliminazione dei dati documentato per soddisfare le richieste di diritto all'oblio del GDPR e le verifiche SOC 2 di tipo II.
I costi nascosti dell'integrazione della propria API di posta elettronica
Le API di Gmail, Microsoft Graph e le librerie IMAP sono tutte gratuite e ben documentate. Allora perché la maggior parte dei team SaaS sottovaluta il costo di sviluppo di 3-5 volte? Perché la complessità non risiede nell'integrazione iniziale, ma in tutto ciò che viene dopo.
Le app che richiedono ambiti Gmail oltre il profilo di base devono passare Valutazione di sicurezza di livello 2 CASA di Google prima di poter servire più di 100 utenti di prova. Il processo prevede il coinvolgimento di un laboratorio di sicurezza esterno, richiede dalle 4 alle 8 settimane e costa tra 4.000 e 75.000 TP4T, a seconda dell'ambito.
Microsoft richiede verifica dell'editore per le app che richiedono ambiti dell'API Graph con privilegi elevati. Senza di esso, ogni utente vedrà un banner di avviso rosso durante la schermata di consenso OAuth, un importante fattore di conversione per i flussi di onboarding delle SaaS B2B.
Esistono centinaia di implementazioni di server IMAP in circolazione. Ognuna ha delle particolarità: nomi di cartelle non standard, supporto IDLE difettoso, casi limite dei certificati TLS, comportamento dei timeout di connessione e flussi di autenticazione per server. Ogni cliente enterprise che acquisite potrebbe presentare un nuovo caso limite che blocca la loro squadra.
I token OAuth scadono. I token di aggiornamento possono essere revocati dall'utente o dalle policy del provider. Su larga scala, gestione del ciclo di vita dei token per migliaia di account collegati attraverso tre provider richiede un reliable background job, alerting sui fallimenti e un flusso UX di re-autenticazione graceful.
Google e Microsoft deprecano e aggiornano le superfici API. Gmail Basic Auth è stata rimossa. Microsoft ha deprecato gli endpoint legacy di Exchange. Tenere il passo con i changelog di tre provider è un onere di manutenzione continuo che ricade interamente sul tuo team di ingegneria.
I dati di posta elettronica rientrano nell'ambito del GDPR e del SOC 2 Type II. Sono necessari flussi di dati documentati, crittografia a riposo e in transito, politiche di archiviazione dei token e un processo di eliminazione verificabile. Costruire questo da zero per un audit SaaS può richiedere settimane e richiede una revisione legale.
Costruzione interna vs. API di aggregazione email per SaaS
Ecco un confronto tra la creazione della tua integrazione email a tre provider e l'utilizzo di un'API email unificata per SaaS su ogni dimensione che conta su scala di produzione.
| Capacità | Costruire internamente | API Email di Unipile |
|---|---|---|
| Integrazione Gmail OAuth | Manuale - CASA di livello 2 richiesto |
Incluso - CASA Tier 2 certified |
| Outlook / Microsoft 365 OAuth | Manuale - verifica dell'editore richiesta |
Incluso - editore verificato |
| Supporto IMAP | Costruisciti - casi limite su larga scala |
Completamente astratto - tutte le peculiarità del server gestite |
| Formato di risposta unificato | 3 modelli di dati separati da normalizzare |
Schema singolo per tutti i fornitori |
| Webhook in tempo reale | Pub/Sub + sottoscrizioni Grafico - configurazione separata per provider |
Un unico endpoint webhook per tutti i provider |
| Aggiornamento del token OAuth | Il tuo job in background: gestione dei fallimenti richiesta |
Gestito automaticamente |
| Modello di thread e conversazione | Specifico del fornitore - normalizzazione personalizzata necessaria |
ID di thread coerenti tra tutti i provider |
| API Allegati | Parsing MIME - creazione separata per provider |
Recupera per ID allegato - indipendente dal provider |
| Cancellazione dati GDPR | La tua responsabilità - audit trail personalizzato |
Percorso di eliminazione documentato - pronto per il GDPR |
| Copertura SOC 2 Tipo II | Limita i tuoi controlli |
Certificazione SOC 2 Tipo II |
| Tempo alla prima sincronizzazione email | 4-6 mesi (tutti e tre i fornitori) |
Meno di 1 giorno |
| Manutenzione in corso | Il tuo team tiene traccia di tutte le modifiche alle API dei provider |
Gestito da Unipile - zero manutenzione fornitori |
Come Unipile offre un'API per le email per le SaaS in una singola integrazione
Unipile è un'API email unificata per SaaS costruita specificamente per il mercato della sincronizzazione utenti. Un insieme di endpoint copre Gmail, Outlook e IMAP, con OAuth, webhook, gestione thread, allegati e conformità gestiti per te. Ecco come appare ogni integrazione del provider sotto il cofano.
Unipile usa Google OAuth 2.0 per richiedere gli scope minimi necessari. La piattaforma è certificata CASA Tier 2, quindi la tua app eredita lo stato verificato senza dover superare una tua valutazione.
Unipile si connette tramite API Microsoft Graph Utilizzando la piattaforma Microsoft Identity. Ciò copre sia gli account Outlook personali che gli tenant Microsoft 365 aziendali attraverso un unico flusso OAuth.
Per gli utenti di Yahoo, Fastmail, server aziendali personalizzati o qualsiasi altro provider, Unipile si collega tramite IMAP. Tutte le particolarità specifiche del server, i casi limite di TLS e le differenze nella denominazione delle cartelle sono astratte dal tuo codice.
account_id. Memorizzalo nel tuo record utente. Tutte le successive chiamate via email faranno riferimento a questo ID, senza token né segreti nel tuo database.GET /email elencare messaggi, POST /email inviare, e GET /email/:id/allegati per i file. Stessi endpoint per tutti e tre i provider.Sincronizzazione delle e-mail degli utenti nel tuo SaaS: esempio di codice completo
Tre lingue, un unico pattern. Collega un inbox utente, recupera le sue email e invia dal suo indirizzo: tutto tramite l'API unificata per email di Unipile. Lo stesso codice funziona per account collegati Gmail, Outlook e IMAP.
import {UnipileClient } from 'unipile-node-sdk';
const cliente = new UnipileClient('IL_TUO_DSN', 'IL_TUO_TOKEN');
// Passo 1: Genera un link OAuth ospitato per il tuo utente
const authLink = await client.account.create({
tipo: 'google', // o 'microsoft' o 'imap'
indirizzo_reindirizzamento: 'https://yourapp.com/callback'
});
// Reindirizza il tuo utente a authLink.url per completare il consenso OAuth
// Passaggio 2: Elenco delle 50 email più recenti per un account collegato
const { elementi: email } = await client.email.ottieniTutti({
account_id: 'ID_ACCOUNT',
limite: 50
});
email.per ciascunoemail => {
console.log(oggetto.email, identificatore.da_partecipante.email);
});
// Passaggio 3: Invia dall'indirizzo dell'utente
await client.email.inviare({
account_id: 'ID_ACCOUNT',
a: [{ identificatore: 'lead@company.com', nome_visualizzato: 'Prospettiva' }],
oggetto: 'In seguito alla nostra chiamata',
body: 'Ciao, volevo solo fare un controllo...
'
});
// Passaggio 4: Registra un webhook per eventi di nuove email in tempo reale
await client.webhook。.create({
url: 'https://yourapp.com/webhooks/email',
eventi: ['email.ricevuto', 'email.inviata']
});import richieste
BASE = "https://api9.unipile.com:13234/api/v1"
TOKEN = "ILTUOTOKEN"
HEADERS = {"X-API-KEY"TOKEN., "Content-Type": "application/json"}
# Fase 1: Crea un link di autenticazione in hosting per il tuo utente
resp = richieste.posta(f"{BASE}/hosted/accounts/link", json={
"tipo": "google",
"url_di_reindirizzamento": "https://yourapp.com/callback"
}, headers=HEADERS)
auth_url = resp.json()["url"]
# Fase 2: Recupera le 50 e-mail più recenti
email = richieste.ottenere({BASE}/email", parametri={
"account_id": "ID_ACCOUNT",
"limite": 50
}, intestazioni=INTESTAZIONI).json()["articoli"]
per e-mail in email:
print(email["soggetto", email["dal_partecipante"]["identificatore"])
# Fase 3: Inviare dall'indirizzo dell'utente stesso
richieste.posta({BASE}/email", json={
"account_id": "ID_ACCOUNT",
"a": [{"identificatore": "lead@company.com"}],
"soggetto": "Seguente",
"corpo": "Ciao, volevo solo fare un controllo...
"
}, headers=HEADERS)# Fase 1: Creare un link di autenticazione in hosting
ricciolo -X POST \
"https://api9.unipile.com:13234/api/v1/hosted/accounts/link" \
-H "X-API-KEY: IL_TUO_TOKEN" \
-H "Content-Type: application/json" \
-d '{"type":"google","redirect_url":"https://yourapp.com/callback"}'
# Fase 2: Elenca le 50 e-mail più recenti
ricciolo -G
"https://api9.unipile.com:13234/api/v1/emails" \
-H "X-API-KEY: IL_TUO_TOKEN" \
--codifica-url "ID_ACCOUNT=ID_ACCOUNT" \
--codifica-url "limite=50"
# Fase 3: Inviare dall'indirizzo dell'utente stesso
ricciolo -X POST \
"https://api9.unipile.com:13234/api/v1/emails" \
-H "X-API-KEY: IL_TUO_TOKEN" \
-H "Content-Type: application/json" \
-d '{"account_id":"ACCOUNT_ID","to":[{"identifier":"lead@company.com"}],"subject":"Seguito","body":"Ciao...
"}'Unipile genera l'URL OAuth. Il tuo utente ci clicca sopra, acconsente e viene reindirizzato alla tua app. Non gestisci mai i token OAuth direttamente.
GET /email e POST /email funziona in modo identico per Gmail, Outlook e IMAP. Cambia account_id - tutto il resto rimane uguale.
Registra un singolo URL. Unipile normalizza le notifiche Pub/Sub di Gmail, gli eventi di modifica di Microsoft Graph e i segnali IMAP IDLE in un unico payload di eventi unificato.
Domande frequenti
Domande comuni da parte di fondatori e ingegneri SaaS che valutano un'API email per la sincronizzazione della casella di posta elettronica degli utenti.