Una newsletter creata in Single Sends e un'email di reimpostazione della password inviata tramite /v3/mail/send possono partire dallo stesso account SendGrid e arrivare comunque come email molto diverse, un aspetto rilevante per un test antispam. Marketing Campaigns cerca sempre di aggiungere le intestazioni per la disiscrizione, mentre l'API le aggiunge solo se lo hai richiesto. Prima di inviare, decidi quindi quale dei due tipi vuoi testare.
La procedura di ricezione è la stessa per entrambi. Email Spam Tester ti fornisce un indirizzo temporaneo, senza richiedere un account. Viene considerato solo il primo messaggio che arriva entro un'ora, per il quale ricevi un report che include l'autenticazione, i verdetti di SpamAssassin e Rspamd, i contenuti, le regole per i mittenti di massa definite da Gmail e Yahoo e i risultati delle verifiche su 21 liste di blocco eseguite usando il tuo IP di invio.
Single Sends: il pulsante di test e il relativo prefisso
Il test integrato si trova in Marketing > Single Sends. Apri il Single Send, trova Test Your Email, inserisci l'indirizzo di test e fai clic su Send Test Message. SendGrid richiede un mittente e un oggetto prima di consentirti di eseguire il test. Se l'oggetto contiene Handlebars, devi anche compilare Test Data. Al momento dell'invio, SendGrid antepone Test - all'oggetto.
Per il test effettivo, invia il Single Send a una lista. I Single Sends vengono inviati a liste o segmenti, quindi crea una lista che contenga solo l'indirizzo di test e selezionala in Recipients. In questo modo, le intestazioni, il link per annullare l'iscrizione e i link tracciati sono quelli ricevuti da un iscritto. Se hai eseguito anche il test della posta in arrivo, puoi aggiungere alla lista le caselle dei provider usate dal test.
API e SMTP: un solo comando curl
Esempio ridotto dalla guida introduttiva di SendGrid, con l'indirizzo di test come destinatario:
curl --request POST \
--url https://api.sendgrid.com/v3/mail/send \
--header 'Authorization: Bearer <<YOUR_API_KEY>>' \
--header 'Content-Type: application/json' \
--data '{"personalizations":[{"to":[{"email":"test-xxxxxxxxxxxxxxxxxxxx@t.email-spam-tester.com"}],"subject":"Hello, World!"}],"content":[{"type":"text/plain","value":"Heya!"}],"from":{"email":"you@yourdomain.com","name":"Your Name"}}'
Quando il test della posta in arrivo è attivo, gli indirizzi presso i tuoi provider vengono inseriti nello stesso array to e il marcatore viene inserito in subject. In questo modo, la stessa richiesta indica anche in quale cartella Gmail, Outlook, Yahoo e gli altri provider collocano l'email.
Inserisci il tuo indirizzo di test e un mittente verificato da SendGrid, tramite la verifica di un singolo mittente o l'autenticazione del dominio. Ancora meglio, invia il messaggio effettivamente spedito dalla tua app, con il suo HTML reale, perché i controlli del contenuto valuteranno ciò che si trova nel corpo.
Se la tua applicazione comunica tramite SMTP, cambia solo il trasporto. L'host è smtp.sendgrid.net, il nome utente è letteralmente la stringa apikey (non la tua chiave) e SSL usa la porta 465.
È disponibile anche un endpoint per gli invii di test, POST /v3/marketing/test/send_email. Accetta fino a 10 indirizzi, ma funziona solo con i Dynamic Transactional Templates. Per la maggior parte delle email inviate tramite API, la normale chiamata Mail Send riportata sopra è quindi il test più fedele.
Le intestazioni di annullamento dell'iscrizione dipendono dal percorso scelto
Marketing Campaigns tenta sempre di aggiungere le intestazioni List-Unsubscribe. I messaggi inviati tramite API o SMTP le ricevono solo quando Subscription Tracking è attivato in Settings > Tracking. In questo caso SendGrid inserisce List-Unsubscribe con un link HTTPS e List-Unsubscribe-Post: List-Unsubscribe=One-Click.
Senza Subscription Tracking, devi aggiungere tu le intestazioni nella richiesta:
"headers": {
"List-Unsubscribe-Post": "List-Unsubscribe=One-Click",
"List-Unsubscribe": "<mailto:unsubscribe@yourdomain.com>, <https://yourdomain.com/unsubscribe>"
}
SendGrid richiede sia la parte mailto sia la parte https e sconsiglia di annullare l'iscrizione di un destinatario con una semplice richiesta GET a quel link. Fai attenzione quando copi dall'articolo di supporto di SendGrid su queste intestazioni. Il secondo esempio imposta List-Unsubscribe-Post su alcuni URL, ma è errato. Il valore è sempre List-Unsubscribe=One-Click. Per il resto, consulta la nostra pagina per correggere List-Unsubscribe.
Se il messaggio serve per reimpostare una password o contiene una ricevuta e non include intestazioni per le liste, il report contrassegna come saltato il gruppo di regole per i mittenti di massa, anziché indicarlo come non superato. Una newsletter inviata tramite API non beneficia di questa eccezione.
Interpretare i risultati dell'autenticazione
Con un account senza autenticazione del dominio, i destinatari vedono "via sendgrid.net" dopo il tuo indirizzo From e, secondo la documentazione di SendGrid, l'autenticazione del dominio rimuove questa dicitura. Il report va oltre questa indicazione. Controlla le righe relative all'allineamento DKIM e SPF. Se la firma o il percorso di ritorno appartengono a un dominio SendGrid anziché al tuo, DMARC non può essere superato per il tuo indirizzo From e il piano dovrebbe indirizzarti verso l'autenticazione del dominio. Inviare da un indirizzo gmail.com o yahoo.com è ancora peggio. La pagina DMARC di SendGrid indica che, in questi casi, sia SPF sia DKIM falliscono e la console stessa avverte che questi messaggi potrebbero non superare un controllo DMARC.
L'autenticazione del dominio si trova in Settings > Sender Authentication. Quando la sicurezza automatica è attiva, come avviene per impostazione predefinita, SendGrid fornisce quattro record:
- un CNAME in
em[0000], che copre SPF e diventa il tuo percorso di ritorno; - CNAME in
s1._domainkeyes2._domainkeyper DKIM; - un TXT in
_dmarcconv=DMARC1; p=none;.
Valori di esempio. Copia quelli reali dal tuo account.
| Nome | Tipo | Valore | A cosa serve | Copia |
|---|---|---|---|---|
| Sicurezza automatica attiva (impostazione predefinita) | ||||
| em[0000] | CNAME | La destinazione indicata nel tuo account | SPF e il percorso di ritorno. | |
| s1. | CNAME | La destinazione indicata nel tuo account | DKIM. | |
| s2. | CNAME | La destinazione indicata nel tuo account | DKIM, il secondo selettore. | |
| _dmarc | TXT | v= | DMARC. | |
| Sicurezza automatica disattivata | ||||
| em[0000] | MX | L'host indicato nel tuo account | Il percorso di ritorno. | |
| em[0000] | TXT | v= | SPF, che devi gestire personalmente. | |
| m1. | TXT | La chiave indicata nel tuo account | DKIM. | |
Quando la sicurezza automatica è disattivata, ottieni un MX e un TXT SPF (v=spf1 include:sendgrid.net ~all) in em[0000], oltre a un TXT DKIM in m1._domainkey, e devi gestire personalmente il record SPF. Se il tuo provider DNS rifiuta i nomi CNAME che contengono _, questa è l'unica opzione. Se un altro servizio utilizza già il selettore s, SendGrid ti consente di sceglierne uno personalizzato. Verifica il risultato con lo strumento di controllo DKIM (selettore s1) e lo strumento di controllo SPF, che conta anche le ricerche DNS se il tuo record SPF sta diventando troppo complesso.
Link, IP e il resto del report
Il monitoraggio dei clic riscrive ogni link. Se il testo del link è a sua volta un URL, l'indirizzo visibile e la destinazione effettiva non coincidono più e il controllo delle discrepanze nei link del report lo segnala. La pagina di SendGrid sulla recapitabilità evidenzia lo stesso problema. Usa parole come testo del link oppure configura il branding dei link, in modo che i link monitorati passino attraverso il tuo dominio, che deve corrispondere al dominio From.
I piani Trial ed Essentials inviano da pool di IP condivisi che, come indica SendGrid, possono cambiare senza preavviso se cambia la tua reputazione. Di conseguenza, la presenza di uno di questi IP in una lista di blocco riguarda tutti gli utenti del pool. Puoi usare lo strumento di controllo delle liste di blocco per verificare di nuovo l'IP in seguito. Il reverse DNS è configurabile solo con un IP dedicato, disponibile con Pro Email API e Advanced Marketing Campaigns.
Per approfondire nella documentazione di SendGrid
Test delle emailwww.twilio.com ↗Autenticazione del dominiowww.twilio.com ↗List-Unsubscribewww.twilio.com ↗Branding dei linkwww.twilio.com ↗Domande
Perché le mie email mostrano "via sendgrid.net"?
SendGrid non ha ancora autenticato il tuo dominio di invio. Configura l'autenticazione del dominio in Settings > Sender Authentication e, secondo la documentazione di SendGrid, l'indicazione scomparirà.
Il report dice che List-Unsubscribe manca, ma uso SendGrid. Perché?
Probabilmente invii tramite API o SMTP con Subscription Tracking disattivato. Attivalo in Settings > Tracking oppure aggiungi manualmente entrambe le intestazioni nell'oggetto headers.
Posso usare "Send Test Message" di SendGrid per questo test?
Sì, il messaggio raggiunge l'indirizzo di test. Ricorda però che l'oggetto arriva con Test - all'inizio. Per verificare le intestazioni esattamente come le ricevono gli iscritti, è più indicato usare un Single Send verso una lista con un solo contatto.
Posso usare l'endpoint API di invio di prova invece di Mail Send?
Solo per i Dynamic Transactional Templates, perché /v3/marketing/test/send_email accetta esclusivamente quelli. Supporta fino a 10 indirizzi. Per tutto il resto viene usato /v3/mail/send.
Quale selettore devo inserire nello strumento di verifica DKIM?
Con la sicurezza automatica attivata, verifica s1 e s2. Se è disattivata, il selettore è m1. Se durante la configurazione hai scelto un selettore personalizzato, usa quello.