So migrieren Sie von Mailgun zu SendGrid
Veröffentlicht: 2018-11-10Wenn Mailgun Ihr aktueller E-Mail-Dienstanbieter ist und Sie eine Änderung vornehmen möchten, hilft Ihnen diese Anleitung bei der Migration zu SendGrid, indem die Unterschiede zwischen den beiden Diensten hervorgehoben werden.
Wenn Sie sich vor Beginn umsehen möchten, sehen Sie sich die SendGrid-Dokumentation an, die großartige Ressourcen enthält, bevor Sie sich mit der API-Referenz und den Details befassen.
Terminologie
Wenn Sie nach dem SendGrid-Äquivalent bestimmter Mailgun-Funktionen suchen, hilft Ihnen die folgende Tabelle:
SendGrid-Begriff | Mailgun-Begriff |
Auswechslungen/Teile | Substitutionsdaten |
Kategorien | Stichworte |
unique_args | X-Mailgun-Variablen |
Mehrere Anmeldeinformationen | Zugriff für mehrere Benutzer |
Unterbenutzer | Mailgun bietet keine diskreten Unterbenutzer. |
Unterdrückungen | Unterdrückungen |
X-SMTPAPI | Mailgun verwendet einen diskreten X-Header für jede Konfigurationsoption, z. B. X-Mailgun-Recipient-Variables |
Eingehender Parse-Webhook | Routen |
Ereignis-Webhook | Webhooks |
Marketing-Kampagnen | Kein Äquivalent |
Erhalten eines API-Schlüssels
Zunächst benötigen Sie ein SendGrid-Konto. Als Nächstes sollten Sie einen API-Schlüssel erstellen, den Sie zum Senden verwenden. Gehen Sie zu Einstellungen -> API-Schlüssel oder verwenden Sie diesen Link. Eine Best Practice für SendGrid und Sicherheit besteht darin, für jede Ihrer verschiedenen Apps einen anderen API-Schlüssel zu verwenden. API-Schlüssel verfügen über granulare Berechtigungen, sodass Sie den Lese- oder Schreibzugriff für einzelne Endpunkte aktivieren oder deaktivieren können. Stellen Sie sicher, dass der von Ihnen erstellte API-Schlüssel vollen Zugriff auf Mail Send hat. (Hinweis: Ihr Konto muss die Bereitstellung bestehen, bevor Sie einen API-Schlüssel erstellen können.)
API-Bibliotheken
Wir haben eine Reihe von offiziell unterstützten API-Bibliotheken, um die Integration für unsere Kunden zu vereinfachen. Wenn Sie im Rahmen Ihrer Migration Code umschreiben oder die Kommunikation mit Ihrem ESP umgestalten, ist jetzt ein guter Zeitpunkt, um diese Bibliotheken zu evaluieren:
- sendgrid-csharp – Offizielle C#-Bibliothek
- sendgrid-go – Offizielle Go-Bibliothek
- sendgrid-java – Offizielle Java-Bibliothek
- sendgrid-nodejs – Offizielle NodeJS-Bibliothek
- sendgrid-php – Offizielle PHP-Bibliothek
- sendgrid-python – Offizielle Python-Bibliothek
- sendgrid-ruby – Offizielle Ruby-Bibliothek
SMTP
Wenn Sie über SMTP senden, gibt es einige Unterschiede, die Sie beachten sollten. Geben Sie zur Authentifizierung die Zeichenfolge „apikey“ als SMTP-Benutzernamen ein und verwenden Sie Ihren API-Schlüssel als Passwort. Zeigen Sie dann mit Ihrem Hostnamen auf smtp.sendgrid.net .
Sie können eine Verbindung mit SMTP über unverschlüsselte oder TLS auf den Ports 25, 2525 und 587 herstellen. Sie können sich auch über SSL auf Port 465 verbinden. Im Allgemeinen empfehlen wir Port 587, da dieser normalerweise zu den wenigsten Problemen mit Hosting-Providern führt.
Der Mechanismus zum Anpassen von E-Mails, die über SMTP gesendet werden, ist unser X-SMTPAPI-Header. Mit diesem Header können Sie Ersetzungen definieren, Anfragen im Stapelformat für Serienbriefe senden und Filter (wie Klick-Tracking) steuern, die für Ihre Sendung aktiv sind.
HTTP
Der Hauptendpunkt zum Senden von E-Mails ist der Mail-Endpunkt. Anfragen an diesen Endpunkt werden über einen Autorisierungsheader authentifiziert, wobei Ihr API-Schlüssel als Trägertoken dargestellt wird. Ein ausführlicheres Beispiel finden Sie in unseren Dokumenten.
Mithilfe von Personalisierungen können Sie Empfänger und Metadaten für jede Nachricht definieren, z. B. Ersatzwerte zum Anpassen von Inhalten oder custom_args zum Zuordnen von Nachrichten zu Benutzer-IDs oder Bestellnummern. Es gibt eine Reihe von Beispielen für Personalisierungen für allgemeine Anwendungsfälle. Sie können auch cURL-Beispielaufrufe finden.
Funktionen wie das Klick-Tracking werden über die Parameter „tracking_settings“ und „mail_settings“ konfiguriert. Sie können den Versand auch bis zu 72 Stunden im Voraus planen, indem Sie den Parameter „send_at“ verwenden.
Über HTTP gesendete Anhänge werden anders behandelt als Mailgun. Mailgun erfordert einen POST mit mehreren Teilen/Formulardaten, der die anzuhängenden Dateien enthält. Mit SendGrid werden Inhalte als Base64 kodiert und neben MIME-Informationen direkt in die JSON-Nutzlast eingebettet, wodurch Ihre gesamte Nachricht in derselben Nutzlast bleibt und Ihre HTTP-Anforderung vereinfacht wird. Weitere Informationen zum Einfügen von Anhängen finden Sie im folgenden Abschnitt unseres Dokumentations-Klassenzimmers.
Webhooks
SendGrid bietet zwei Webhooks: den Event-Webhook zum Veröffentlichen von Echtzeitereignissen und den Inbound Parse-Webhook zum Empfangen von E-Mails und zum programmgesteuerten Antworten darauf. Die Datenformen und Nutzlasten unterscheiden sich ein wenig von dem, was Mailgun bietet. Wir unterstützen derzeit auch nicht das Weiterleiten eingehender Nachrichten an verschiedene Rückruf-URLs. Sie müssen diese Art von Logik eher im Code als auf API-Ebene handhaben.
Nicht-E-Mail-API-Endpunkte
Informationen zu API-Endpunkten, die keine E-Mails senden, finden Sie in der API v3-Übersicht. Wir verwenden in den meisten Fällen intuitive HTTP-Methoden und Antwortcodes und erzwingen Ratenbegrenzungen für Anrufe. API v2 ist veraltet, obwohl es keinen Zeitplan gibt, um die Unterstützung einzustellen. Alle neuen Integrationen sollten v3 bevorzugen. Die API v3-Authentifizierung wird durch einen Authentifizierungsheader mit einem Bearer-Token erreicht.
Marketing-Kampagnen
Wir haben eine voll funktionsfähige Plattform zum Verwalten von Kontaktlisten, Erstellen und Entwerfen von Vorlagen, A/B-Testen verschiedener Vorlagen und Planen von Kampagnen. All dies ist in eine Benutzeroberfläche eingebettet, die für Nicht-Entwickler einfach zu verwenden ist. Und natürlich können Sie auf alle diese Funktionen auch über unsere Marketingkampagnen-API zugreifen.
Ein paar FAQs
F: Unterstützen Sie Vorlagen für Transaktions-E-Mails?
A: Ja – und sie sind dynamisch! Die Transaktionsvorlagen von SendGrid bieten native Unterstützung für die Handlebars-Syntax. Zusätzlich zu einfachen Ersetzungen und Ersetzungen können Sie Aufzählungen verwenden/Listen durchlaufen, Bedingungen nutzen und vieles mehr. Um mehr zu erfahren, klicken Sie hier.
F: Gibt es eine Sandbox oder eine Möglichkeit, meine E-Mails zu testen, ohne sie zu senden?
A: Sie können den Sandbox-Modus aktivieren, wenn Sie über HTTP senden. Es gibt auch eine „Senke“-Adresse, die Sie zum Testen verwenden können.
F: Ist es möglich, meine IP-Adresse/Absenderreputation an SendGrid zu übertragen?
A: Wir können keine IP oder Reputation migrieren, aber wir können Ihnen helfen, automatisch eine neue IP aufzuwärmen.
F: Unterstützt SendGrid erzwungenes TLS ?
A: Absolut. Sie können verlangen, dass empfangende Server TLS unterstützen, und Nachrichten an nicht konforme Server verwerfen.
F: Kann ich meinen Empfängern erlauben, die Arten von E-Mails zu definieren, die sie erhalten möchten?
A: Ja. Wenn Sie Ihren Empfängern mehr Kontrolle über ihre E-Mails geben, können Sie E-Mails senden, die die Leute wollen, was für alle besser ist. Weitere Informationen finden Sie in Abmeldegruppen.
Wenn Sie an einer Migration zu SendGrid interessiert sind, finden Sie weitere Informationen unter sendgrid.com/pricing.