Newsletter utworzony w Single Sends i wiadomość do resetowania hasła wysłana przez /v3/mail/send mogą pochodzić z tego samego konta SendGrid, a mimo to dotrzeć jako zupełnie różne wiadomości e-mail, co ma znaczenie w teście spamu. Marketing Campaigns zawsze próbuje dodać nagłówki rezygnacji z subskrypcji, natomiast API dodaje je tylko wtedy, gdy tego zażądasz. Zanim cokolwiek wyślesz, zdecyduj, który z tych dwóch sposobów testujesz.
W obu przypadkach odbiór wygląda tak samo. Email Spam Tester udostępnia ci tymczasowy adres bez konieczności zakładania konta. Liczy się tylko pierwsza wiadomość, która dotrze w ciągu godziny. Otrzymasz dla niej raport obejmujący uwierzytelnianie, wyniki SpamAssassin i Rspamd, treść, reguły dla nadawców masowych określone przez Gmail i Yahoo oraz 21 list blokujących sprawdzonych przy użyciu twojego adresu IP nadawcy.
Single Sends: przycisk testowy i prefiks
Wbudowany test znajdziesz w Marketing > Single Sends. Otwórz Single Send, znajdź Test Your Email, wpisz adres testowy i kliknij Send Test Message. SendGrid wymaga nadawcy i tematu, zanim pozwoli wykonać test. Jeśli temat zawiera Handlebars, musisz też uzupełnić Test Data. Podczas wysyłania SendGrid dodaje Test - na początku tematu.
Aby przeprowadzić właściwy test, wyślij Single Send do listy. Single Sends są wysyłane do list lub segmentów, utwórz więc listę, której jedynym kontaktem będzie adres testowy, i wybierz ją w sekcji Recipients. Wtedy nagłówki, link rezygnacji z subskrypcji i śledzone linki będą takie same jak w wiadomości otrzymanej przez subskrybenta. Jeśli wykonałeś też test skrzynki odbiorczej, możesz dodać do tej listy adresy skrzynek u poszczególnych dostawców.
API i SMTP: jedno polecenie curl
Skrócony przykład z przewodnika SendGrid dla początkujących, z adresem testowym jako odbiorcą:
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"}}'
Gdy test skrzynek odbiorczych jest włączony, adresy skrzynek u dostawców trafiają do tej samej tablicy to, a znacznik do pola subject. Dzięki temu jedno żądanie pokaże też, do którego folderu Gmail, Outlook, Yahoo i inni dostawcy skierowali wiadomość.
Wstaw własny adres testowy oraz adres nadawcy zweryfikowany przez SendGrid za pomocą weryfikacji pojedynczego nadawcy lub uwierzytelniania domeny. Jeszcze lepiej wyślij wiadomość, którą rzeczywiście wysyła twoja aplikacja, wraz z jej prawdziwym HTML, ponieważ testy treści ocenią zawartość wiadomości.
Jeśli twoja aplikacja korzysta z SMTP, zmienia się tylko sposób przesyłania. Host to smtp.sendgrid.net, nazwa użytkownika to dosłownie ciąg apikey (nie twój klucz), a SSL działa na porcie 465.
Dostępny jest też endpoint do wysyłania testowego, POST /v3/marketing/test/send_email. Przyjmuje maksymalnie 10 adresów, ale działa tylko z Dynamic Transactional Templates, dlatego w przypadku większości wiadomości wysyłanych przez API zwykłe wywołanie Mail Send opisane powyżej jest miarodajnym testem.
Nagłówki rezygnacji z subskrypcji zależą od wybranej ścieżki
Marketing Campaigns zawsze próbuje dodać nagłówki List-Unsubscribe. Wiadomości wysyłane przez API lub SMTP otrzymują je tylko wtedy, gdy opcja Subscription Tracking jest włączona w sekcji Settings > Tracking. W takim przypadku SendGrid wstawia List-Unsubscribe z linkiem HTTPS oraz List-Unsubscribe-Post: List-Unsubscribe=One-Click.
Bez włączonej opcji Subscription Tracking musisz samodzielnie dodać nagłówki do żądania:
"headers": {
"List-Unsubscribe-Post": "List-Unsubscribe=One-Click",
"List-Unsubscribe": "<mailto:unsubscribe@yourdomain.com>, <https://yourdomain.com/unsubscribe>"
}
SendGrid wymaga zarówno części mailto, jak i https, oraz ostrzega przed wypisywaniem kogokolwiek z subskrypcji po zwykłym żądaniu GET do tego linku. Zachowaj ostrożność podczas kopiowania przykładów z artykułu pomocy SendGrid dotyczącego tych nagłówków. W drugim przykładzie List-Unsubscribe-Post ma wartość zawierającą adresy URL, co jest błędem. Wartością zawsze jest List-Unsubscribe=One-Click. Pozostałe informacje znajdziesz na naszej stronie naprawy List-Unsubscribe.
Jeśli wiadomość służy do resetowania hasła lub jest potwierdzeniem zakupu i nie zawiera nagłówków listy, raport oznacza grupę reguł dla nadawców masowych jako pominiętą, zamiast zgłaszać błąd. Newsletter wysłany przez API nie otrzymuje takiego wyjątku.
Odczytywanie wyników uwierzytelniania
Na koncie bez uwierzytelniania domeny odbiorcy widzą „via sendgrid.net” po adresie w polu From, a dokumentacja SendGrid podaje, że uwierzytelnianie domeny usuwa ten dopisek. Raport pokazuje więcej niż sam dopisek. Sprawdź wiersze zgodności DKIM i SPF. Jeśli podpis lub Return-Path należy do domeny SendGrid zamiast do twojej, DMARC nie może przejść dla adresu w polu From, a plan powinien wskazać uwierzytelnianie domeny. Wysyłanie z adresu gmail.com lub yahoo.com jest jeszcze gorsze. Strona SendGrid dotycząca DMARC podaje, że zarówno SPF, jak i DKIM kończą się wtedy niepowodzeniem, a sama konsola ostrzega, że takie wiadomości mogą nie przejść kontroli DMARC.
Uwierzytelnianie domeny znajdziesz w Settings > Sender Authentication. Przy włączonej automatycznej ochronie, która jest ustawieniem domyślnym, SendGrid udostępnia cztery rekordy:
- CNAME w
em[0000], który obsługuje SPF i staje się twoim Return-Path; - rekordy CNAME w
s1._domainkeyis2._domainkeydla DKIM; - rekord TXT w
_dmarcz wartościąv=DMARC1; p=none;.
Przykładowe wartości. Skopiuj rzeczywiste wartości ze swojego konta.
| Nazwa | Typ | Wartość | Zastosowanie | Kopiuj |
|---|---|---|---|---|
| Automatyczna ochrona włączona (domyślnie) | ||||
| em[0000] | CNAME | Wartość docelowa z twojego konta | SPF i Return-Path. | |
| s1. | CNAME | Wartość docelowa z twojego konta | DKIM. | |
| s2. | CNAME | Wartość docelowa z twojego konta | DKIM, drugi selektor. | |
| _dmarc | TXT | v= | DMARC. | |
| Automatyczna ochrona wyłączona | ||||
| em[0000] | MX | Host z twojego konta | Return-Path. | |
| em[0000] | TXT | v= | SPF, którym zarządzasz samodzielnie. | |
| m1. | TXT | Klucz z twojego konta | DKIM. | |
Przy wyłączonej automatycznej ochronie otrzymujesz rekord MX i rekord SPF TXT (v=spf1 include:sendgrid.net ~all) w em[0000] oraz rekord DKIM TXT w m1._domainkey. Rekordem SPF zarządzasz wtedy samodzielnie. Jeśli twój dostawca DNS odrzuca nazwy CNAME zawierające _, jest to jedyna opcja. Jeśli inna usługa używa już selektora s, SendGrid pozwala wybrać własny. Sprawdź wynik za pomocą narzędzia do sprawdzania DKIM (selektor s1) i narzędzia do sprawdzania SPF, które liczy również zapytania DNS, jeśli twój rekord SPF robi się przeładowany.
Linki, adresy IP i pozostała część raportu
Śledzenie kliknięć powoduje przepisanie każdego linku. Jeśli tekst linku sam jest adresem URL, widoczny adres przestaje być zgodny z rzeczywistym celem, a kontrola niezgodności linków w raporcie oznaczy go jako problem. Strona SendGrid dotycząca dostarczalności wskazuje ten sam problem. Używaj słów jako tekstu linku albo skonfiguruj branding linków, aby śledzone linki korzystały z twojej domeny, która musi być zgodna z domeną w polu From.
Plany Trial i Essentials wysyłają wiadomości ze współdzielonych pul adresów IP. SendGrid zaznacza, że przypisana pula może zmienić się bez powiadomienia, jeśli zmieni się twoja reputacja, dlatego obecność jednego z tych adresów na liście blokującej dotyczy wszystkich użytkowników tej puli. Narzędzie do sprawdzania list blokujących pozwala później ponownie sprawdzić ten adres IP. Odwrotny DNS można skonfigurować tylko dla dedykowanego adresu IP, dostępnego w planach Pro Email API i Advanced Marketing Campaigns.
Więcej informacji w dokumentacji SendGrid
Testowanie poczty e-mailwww.twilio.com ↗Uwierzytelnianie domenywww.twilio.com ↗List-Unsubscribewww.twilio.com ↗Branding linkówwww.twilio.com ↗Pytania
Dlaczego moje wiadomości e-mail są oznaczone jako „via sendgrid.net”?
SendGrid nie uwierzytelnił jeszcze twojej domeny wysyłającej. Skonfiguruj uwierzytelnianie domeny w Settings > Sender Authentication. Zgodnie z dokumentacją SendGrid oznaczenie zniknie.
Raport wskazuje brak List-Unsubscribe, ale używam SendGrid. Dlaczego?
Prawdopodobnie wysyłasz przez API lub SMTP z wyłączoną funkcją Subscription Tracking. Włącz ją w Settings > Tracking albo samodzielnie dodaj oba nagłówki w obiekcie headers.
Czy mogę użyć funkcji „Send Test Message” w SendGrid?
Tak, wiadomość dotrze na adres testowy. Pamiętaj tylko, że temat będzie poprzedzony ciągiem Test - . Jeśli chcesz sprawdzić nagłówki dokładnie takie, jakie otrzymują subskrybenci, lepiej użyć funkcji Single Send z listą zawierającą jeden kontakt.
Czy mogę użyć testowego endpointu API zamiast Mail Send?
Tylko w przypadku Dynamic Transactional Templates, ponieważ /v3/marketing/test/send_email akceptuje wyłącznie takie szablony. Obsługuje do 10 adresów. Wszystkie pozostałe wiadomości są wysyłane przez /v3/mail/send.
Który selektor mam wpisać w narzędziu do sprawdzania DKIM?
Jeśli automatyczne zabezpieczenia są włączone, sprawdź s1 i s2. Jeśli są wyłączone, selektorem jest m1. Jeśli podczas konfiguracji wybrałeś niestandardowy selektor, użyj go zamiast tych wartości.