Jak przeprowadzić migrację z usługi Dyn Email Delivery do SendGrid

Opublikowany: 2016-11-23

W związku z niedawną wiadomością, że firma Dyn została przejęta przez Oracle w celu zarządzania DNS, ludzie szukali rozwiązań całkowicie skoncentrowanych na poczcie e-mail. Nasz zespół odnotował wzrost liczby pytań dotyczących migracji z dostarczania poczty e-mail Dyn do SendGrid, więc zdecydowaliśmy się zebrać ten przewodnik.

Jeśli chcesz się rozejrzeć, zanim zaczniesz, zapoznaj się z dokumentacją SendGrid. Classroom to świetne miejsce, by zacząć uczyć się o poczcie e-mail przed zagłębieniem się w materiały i szczegóły dotyczące interfejsu API.

Od samego początku jesteśmy firmą, która stawia na API i obsługuje wyłącznie pocztę e-mail, co znajduje odzwierciedlenie w naszych produktach. Nasz punkt końcowy poczty e-mail HTTP, elementy webhook, SMTP i inne niż e-mail API są podstawą naszej działalności, co widać w ich możliwościach. Ten przewodnik ma na celu przedstawienie podstaw konfiguracji w SendGrid, jednocześnie podkreślając przydatne funkcje, których brakuje obecnemu dostawcy.

Uzyskiwanie klucza API

Najpierw potrzebujesz konta SendGrid. Następnie powinieneś utworzyć klucz API, którego będziesz używać do wysyłania. Przejdź do Ustawienia -> Klucze API lub użyj tego linku. Najlepszym rozwiązaniem dotyczącym SendGrid i zabezpieczeń jest użycie innego klucza interfejsu API dla każdej z różnych aplikacji. Klucze API mają szczegółowe uprawnienia, dzięki czemu możesz włączyć lub wyłączyć dostęp do odczytu lub zapisu dla poszczególnych punktów końcowych. Upewnij się, że utworzony klucz API ma pełny dostęp do funkcji Wysyłanie poczty . (Uwaga: Twoje konto musi przejść obsługę administracyjną, zanim będzie można utworzyć klucz API).

Biblioteki API

Chociaż Dyn udostępnia oficjalne zestawy SDK w językach Python i PHP, my mamy siedem oficjalnie obsługiwanych bibliotek API, aby ułatwić naszym klientom integrację. Jeśli w ramach migracji piszesz dowolny kod lub refaktoryzujesz sposób komunikowania się z ESP, teraz jest dobry moment, aby ocenić te biblioteki:

  • sendgrid-csharp – oficjalna biblioteka C#
  • sendgrid-go – oficjalna biblioteka Go
  • sendgrid-java – oficjalna biblioteka Java
  • sendgrid-nodejs – Oficjalna biblioteka NodeJS
  • sendgrid-php – Oficjalna biblioteka PHP
  • sendgrid-python – oficjalna biblioteka Pythona
  • sendgrid-ruby – Oficjalna biblioteka Ruby

SMTP

Jeśli wysyłasz przez SMTP, jest kilka różnic, o których powinieneś wiedzieć. Po pierwsze, nie musisz się martwić o używanie konkretnego serwera SMTP w oparciu o rozmiar wiadomości, tak jak wymaga tego Dyn. Akceptujemy również wiadomości do ~19,5 MB w porównaniu z limitem Dyn wynoszącym 10 MB. Aby uwierzytelnić, podaj ciąg „apikey” jako nazwę użytkownika SMTP i użyj klucza API jako hasła. Następnie wskaż swoją nazwę hosta na smtp.sendgrid.net .

Oferujemy również dodatkowe opcje portów w porównaniu z Dyn. Możesz łączyć się za pomocą protokołu SMTP przez nieszyfrowany lub TLS na portach 25, 2525 i 587. Możesz także łączyć się przez SSL na porcie 465. Ogólnie zalecamy port 587, ponieważ zwykle powoduje on najmniej problemów z dostawcami usług hostingowych.

Mechanizmem dostosowywania wiadomości e-mail wysyłanych przez SMTP jest nasz nagłówek X-SMTPAPI. Ten nagłówek pozwoli Ci zdefiniować podstawienia klucz/wartość, wysyłać grupowe żądania w stylu korespondencji seryjnej oraz kontrolować filtry (takie jak śledzenie kliknięć), które są aktywne podczas wysyłania. Możesz grupować e-maile według kategorii lub śledzić metadane na e-mail za pomocą unique_args. Są to potężne funkcje, które mogą skrócić czas wysyłania i przepustowość potrzebną do transakcji e-mail, i są warte poznania.

HTTP

Głównym punktem końcowym wysyłania wiadomości e-mail jest punkt końcowy poczty/wysyłania. Żądania do tego punktu końcowego są uwierzytelniane za pomocą nagłówka autoryzacji z Twoim kluczem API przedstawionym jako token okaziciela. Bardziej szczegółowy przykład można znaleźć w naszych dokumentach.

W porównaniu z API Dyn HTTP, nasz punkt końcowy zapewnia więcej funkcji, które umożliwiają dostosowywanie odbiorców i zarządzanie nimi, a nawet wysyłanie kilku różnych wiadomości w jednym żądaniu.

Personalizacje umożliwiają zdefiniowanie odbiorców i metadanych dla każdej wiadomości, takich jak wartości podstawienia do dostosowywania treści lub custom_args do kojarzenia wiadomości z identyfikatorami użytkowników lub numerami zamówień. Istnieje wiele przykładów personalizacji dla typowych przypadków użycia. Możesz również znaleźć przykładowe wywołania cURL.

Funkcje takie jak śledzenie kliknięć są konfigurowane za pomocą parametrów tracking_settings i mail_settings. Możesz także zaplanować wysyłkę z 72-godzinnym wyprzedzeniem za pomocą parametru „send_at”.

Ułatwiamy również dodawanie załączników do żądania API. Wystarczy zakodować plik jako ciąg znaków Base64 i osadzić go bezpośrednio w ładunku JSON obok informacji o zawartości MIME. Więcej informacji na temat dołączania załączników można znaleźć w następnej sekcji naszej Klasie z dokumentacją.

Webhooki

SendGrid udostępnia dwa elementy webhook: element Webhook zdarzenia do publikowania zdarzeń wiadomości e-mail w czasie rzeczywistym, takich jak anulowanie subskrypcji, odbicia itp., oraz element Webhook analizy przychodzącej do odbierania wiadomości e-mail i programowego odpowiadania na nie.

Te funkcje nie są dostępne w Dyn, ale mogą być świetne do dodania dodatkowej automatyzacji do zarządzania pocztą e-mail. Warto je zobaczyć, gdy zaczynasz konfigurować.

Punkty końcowe interfejsu API bez poczty e-mail

W przypadku punktów końcowych interfejsu API, które nie wysyłają wiadomości e-mail, zapoznaj się z omówieniem interfejsu API v3. W większości przypadków stosujemy intuicyjne metody HTTP i kody odpowiedzi oraz wymuszamy limity stawek dla połączeń. API v2 jest przestarzałe, ale nie ma harmonogramu, aby przestać go wspierać. Wszystkie nowe integracje powinny preferować wersję 3. Uwierzytelnianie API v3 jest realizowane przez nagłówek uwierzytelniania z tokenem Bearer.

Kampanie marketingowe

Inną oferowaną przez nas funkcją jest solidna platforma kampanii marketingowych, umożliwiająca zarządzanie listami, tworzenie dynamicznych segmentów, przesyłanie zasobów i projektowanie szablonu wiadomości e-mail za pomocą edytora wizualnego, wykonywanie automatycznych testów A/B i nie tylko. Oczywiście za wszystkimi tymi funkcjami kryje się również otwarte API.

Kilka często zadawanych pytań

P: Czy obsługujecie szablony e-maili transakcyjnych?

O: Tak – i są dynamiczne! Szablony transakcyjne SendGrid zawierają natywną obsługę składni Handlebars. Oprócz podstawowego zastępowania i podstawienia możesz używać wyliczeń/iteracji po listach, korzystać z warunków warunkowych i nie tylko. Aby dowiedzieć się więcej, kliknij tutaj.

P: Czy istnieje piaskownica lub sposób na przetestowanie moich e-maili bez ich wysyłania?

O: Możesz włączyć tryb piaskownicy podczas wysyłania przez HTTP. Istnieje również adres „zlewu”, którego możesz użyć do testowania.

P: Czy można przenieść mój adres IP/reputację nadawcy do SendGrid?

Odp.: Nie możemy przenieść adresu IP ani reputacji, ale możemy pomóc w automatycznym podgrzaniu nowego adresu IP.

P: czy SendGrid obsługuje wymuszone TLS ?

O: Absolutnie. Możesz wymagać, aby serwery odbierające obsługiwały TLS i odrzucały wiadomości kierowane do serwerów, które nie są zgodne.

P: Czy mogę zezwolić moim odbiorcom na zdefiniowanie typów wiadomości e-mail, które chcą otrzymywać?

O: Tak. Zapewnienie odbiorcom większej kontroli nad ich pocztą e-mail umożliwia wysyłanie wiadomości e-mail, których chcą ludzie, co jest lepsze dla wszystkich. Sprawdź grupy rezygnacji z subskrypcji, aby uzyskać więcej informacji.

Jeśli interesuje Cię migracja do SendGrid, możesz znaleźć więcej informacji na stronie sendgrid.com/pricing.