Deliverability

Cos'è il one-click unsubscribe e come implemento List-Unsubscribe?

Il one-click unsubscribe rimuove un destinatario tramite una richiesta POST del client di posta, usando header List-Unsubscribe firmati senza una pagina di conferma sul sito.

Strumenti di sicurezza automatizzati possono aprire i link nelle email in arrivo. La sola visita a un link non è quindi una prova sufficiente che il destinatario voglia cancellarsi.

Il one-click usa una richiesta POST HTTP dopo il consenso del destinatario, anziché trattare un link visitato come un opt-out.

RFC 8058 richiede al sistema ricevente di ottenere il consenso dell'utente prima di effettuare la richiesta.

Il mittente può quindi elaborare l'opt-out senza login o pagina di conferma. Una cancellazione semplice offre inoltre ai destinatari un'alternativa alla segnalazione di messaggi indesiderati come spam.

Quali header deve contenere il messaggio?

Il messaggio richiede un header List-Unsubscribe e un header List-Unsubscribe-Post.

Il primo fornisce la destinazione di cancellazione. Il secondo contiene il valore esatto List-Unsubscribe=One-Click. Le linee guida per i mittenti di Google mostrano questa coppia:

List-Unsubscribe-Post: List-Unsubscribe=One-Click
List-Unsubscribe: <https://solarmora.com/unsubscribe/example>

Usa un URL HTTPS per la destinazione, in modo da proteggere le richieste di cancellazione dall'intercettazione. Destinazioni aggiuntive non HTTP, come un indirizzo mailto, sono consentite.

Firma entrambi gli header con DKIM. Includili nella lista h= degli header coperti dalla firma. Senza una firma valida richiesta, RFC 8058 consiglia ai riceventi di non mostrare il controllo one-click. Fornire solo gli header non garantisce quindi la presenza di un pulsante.

Cosa deve accettare l'endpoint di cancellazione?

L'endpoint deve accettare il POST one-click senza richiedere login, cookie o autorizzazione HTTP. Il sistema di posta ricevente effettua la richiesta senza la sessione web del destinatario.

Il suo URL deve identificare il destinatario e la lista da cui rimuoverlo, perché nessuna sessione fornisce quel contesto. Il corpo del POST trasporta la coppia fissa List-Unsubscribe=One-Click.

Usa un identificatore difficile da falsificare nell'URL, perché un indirizzo prevedibile potrebbe permettere a qualcuno di cancellare un altro destinatario. Valida quell'identificatore prima di applicare la richiesta.

Il mittente non deve restituire un redirect HTTPS. Un redirect può cambiare il modo in cui viene gestito un POST, quindi l'endpoint pubblicato deve elaborare la richiesta direttamente. Una risposta di redirect 3xx non soddisfa quindi questo requisito.

Cosa succede se un firewall blocca la richiesta?

Una richiesta bloccata può comunque lasciare il mittente responsabile di una cancellazione non elaborata.

La Compliance status dashboard di Google conteggia le richieste di cancellazione riuscite anche quando un intermediario impedisce che raggiungano i tuoi server.

Una challenge bot che richiede una sessione browser è in conflitto con un POST one-click anonimo. Configura le regole di accesso dell'endpoint affinché le richieste legittime possano raggiungerlo. Un log applicativo vuoto non dimostra che nessun destinatario abbia tentato di cancellarsi.

No, Google e Yahoo richiedono anche un link di cancellazione visibile nel corpo dei messaggi marketing e con sottoscrizione.

Google richiede il metodo RFC 8058 per il controllo basato sugli header. La guida di Yahoo raccomanda quel metodo e accetta anche mailto nel suo header list-unsubscribe.

Il link nel corpo offre ai destinatari un altro modo per richiedere la rimozione. Resta necessario anche quando un client di posta mostra un proprio controllo.

Entro quanto tempo devi elaborare la richiesta?

Google e Yahoo richiedono di evadere le richieste di cancellazione entro due giorni.

Google esprime la scadenza come 48 ore nella sua compliance dashboard. Una richiesta effettuata lunedì a mezzogiorno deve quindi essere elaborata entro mercoledì a mezzogiorno.

La scadenza riguarda la rimozione del destinatario dalla lista. Un endpoint funzionante che lascia il destinatario iscritto oltre quel termine non soddisfa il requisito di elaborazione.

Come si usa la gestione della cancellazione di Bird?

Classifica un invio come marketing affinché Bird fornisca la sua gestione della cancellazione.

Il campo category di API accetta marketing per la posta promozionale o transactional per i messaggi operativi. Senza una categoria esplicita, un invio che usa un template riutilizzabile eredita la sua classificazione. Gli altri invii usano per default marketing.

Bird aggiunge la coppia di header unsubscribe ai messaggi marketing e la include nel contenuto firmato. Il suo endpoint ospitato registra l'opt-out. Gli invii marketing futuri rispettano quella soppressione, il record che impedisce la consegna a un indirizzo che ha effettuato l'opt-out.

Per invii HTTP API individuali, lascia entrambi gli header marketing unsubscribe a Bird. Fornire uno dei due header gestiti restituisce 422. Quando invii a un pubblico con i broadcast di Bird, Bird scarta qualsiasi header marketing unsubscribe fornito. Anche le submission SMTP scartano quegli header.

Bird non aggiunge automaticamente la coppia gestita ai messaggi transazionali. Gli invii HTTP API individuali possono passare header unsubscribe personalizzati su quella categoria.

La guida unsubscribe-links spiega il link visibile nel corpo e il footer predefinito. Categories spiega come la classificazione influisce sulla consegna ai destinatari che hanno effettuato l'opt-out.

In breve

  1. RFC 8058 usa una coppia di header.

    List-Unsubscribe fornisce la destinazione HTTPS e List-Unsubscribe-Post identifica la richiesta one-click.

  2. La firma deve coprire entrambi gli header.

    Una firma DKIM valida deve includere entrambi gli header unsubscribe nella sua lista di campi firmati.

  3. L'endpoint non richiede login né redirect.

    La richiesta trasporta le informazioni identificative nell'URL e deve funzionare senza cookie o autorizzazione.

  4. I link visibili e l'elaborazione tempestiva restano importanti.

    I requisiti dei provider includono un link di cancellazione nel corpo del messaggio e l'elaborazione entro due giorni.

Costruisci sulla stessa rete.

Una chiave API di test è subito tua. L'accesso alla produzione si sblocca quando aggiungi un metodo di pagamento e verifichi un mittente.

La tua prossima idea.
Pronta a partire.