Beginnen Sie mit dem Versenden Ihrer eigenen E-Mail mit dieser benutzerfreundlichen API und einem Minimum an Einrichtung.

In der heutigen schnelllebigen digitalen Welt ist E-Mail-Marketing ein unverzichtbares Instrument für Unternehmen, um ihre Kunden effektiv zu erreichen. Die Implementierung eines E-Mail-Systems kann jedoch ein komplexer und zeitaufwändiger Prozess sein, insbesondere für Entwickler, die neu in dieser Aufgabe sind.

Glücklicherweise ist das Versenden von E-Mails mit Sendinblue eine sehr einfache Aufgabe. Als Software-as-a-Service (SaaS)-Plattform bietet Sendinblue alles, was Sie als Geschäftsinhaber oder Entwickler benötigen, um Ihre E-Mails ganz einfach an Ihre Benutzer zu übermitteln.

Was ist Sendinblue?

SendinBlue ist eine Software-as-a-Service (SaaS)-Plattform, die eine benutzerfreundliche E-Mail-Marketing-Lösung für kleine, mittlere und große Unternehmen bietet. SendinBlue bietet eine Plattform, die Unternehmen hilft, ihre Beziehungen zu ihren Kunden auszubauen, hauptsächlich über E-Mail- und SMS-Dienste.

instagram viewer

SendinBlue bietet auch APIs und Tools, mit denen Entwickler E-Mails und SMS automatisieren und versenden können. Diese Tools lassen sich einfach in Node.js und andere Programmiersprachen integrieren, um benutzerdefinierte E-Mail- und SMS-Kampagnen zu erstellen.

Mit SendinBlue können Unternehmen Kommunikationsprozesse rationalisieren und Benutzer oder Kunden effizienter erreichen.

So erhalten Sie SendinBlue-API-Anmeldeinformationen

Um SendinBlue-APIs und -SDKs verwenden zu können, ist die erste Voraussetzung ein SendinBlue-Konto. SendinBlue bietet einen einfachen Anmeldeprozess, und Sie können ein Konto auf der erstellen SendinBlue-Anmeldeseite.

Erstellen Sie ein Konto, geben Sie die erforderlichen Details ein und wählen Sie im Onboarding-Prozess einen geeigneten Plan aus. SendinBlue leitet Sie dann zu Ihrem Dashboard weiter, wo Sie Ihre API-Anmeldeinformationen abrufen können.

Führen Sie die folgenden Schritte aus, um Ihre API-Anmeldeinformationen zu erhalten.

  1. Klicken Sie oben rechts im Dashboard auf den Namen Ihrer Organisation.
  2. Wählen SMTP & API aus dem Dropdown-Menü.
  3. Wechseln Sie zu API-Schlüssel Registerkarte und klicken Sie auf dieGenerieren Sie einen neuen API-Schlüssel Taste.
  4. Geben Sie im angezeigten Popup-Fenster Ihrem Schlüssel einen Namen, kopieren Sie die generierte Zeichenfolge und speichern Sie sie sicher.

Diese Zeichenfolge ist Ihr API-Schlüssel und Ihr Identitätsnachweis, den Sie sorgfältig aufbewahren sollten, damit er nicht in die falschen Hände gerät.

So erstellen Sie ein E-Mail-Sendesystem in Node.js

Node.js hat keine integriertes E-Mail-Paket wie Golang. Um E-Mails zu versenden, benötigen Sie ein externes Paket wie z Knotenmailer oder die von SendinBlue bereitgestellte.

Sie benötigen außerdem Kenntnisse über Node.js und eine Node.js-Entwicklungsumgebung auf Ihrem Computer.

Betrachten Sie diese einfache Node/Express-Anwendung mit a /waitlist Endpunkt:

// server.js
konst ausdrücken = erfordern('äußern');

// Server erstellen
konst server = ausdrücken ();
konst Hafen = 3333;

server.listen (port, () => {
Konsole.Protokoll(`Server lauscht auf Port ${port}`);
})

// Wartelisten-Endpunkt erstellen
server.use('/Warteliste', asynchron (req, res) => {
versuchen {
konst user = req.body;

Konsole.Protokoll(`${user.fullname} hat sich auf die Warteliste gesetzt);
res.status(200).json({ Nachricht: 'Warteliste erfolgreich beigetreten' })
} fangen (Fehler) {
Konsole.error (Fehler)
res.status(500).json({ Nachricht: 'Ein Fehler ist aufgetreten' })
}
})

Sie können SendinBlue verwenden, um eine Willkommens-E-Mail an einen Benutzer zu senden, der sich auf die Warteliste setzt.

Der erste Schritt besteht darin, das SDK mit zu installieren npm oder irgendein anderer Paketmanager. Laufen npm installiert sib-api-v3-sdk oder Garn hinzufügen sib-api-v3-sdk in Ihrem Projektordner, um es zu den Abhängigkeiten des Projekts hinzuzufügen.

Nach der Installation können Sie mit nur wenigen Codezeilen mehr E-Mails versenden. Bei einem größeren Projekt möchten Sie wahrscheinlich die E-Mail-Funktionalität in einer separaten Datei isolieren. Für diese Demonstration können Sie jedoch weiterhin dasselbe verwenden server.js Datei.

Importieren Sie die sib-api-v3-sdk Paket und richten Sie den SendinBlue-Client wie folgt ein:

konst SibApi = erfordern('sib-api-v3-sdk');

// neuen SendinBlue-API-Client instanziieren
konst SibClient = SibApi. ApiClient.instance;

// Authentifizierung
SibClient.authentications['API-Schlüssel'].apiKey = process.env. SIB_API_KEY
 || 'YOUR_API_KEY_HERE';

Richten Sie als Nächstes einige Konfigurationen ein und erstellen Sie eine Funktion zum Senden der Willkommens-E-Mails:

konst TransaktionE-MailApi = neu SibApiSDK.TransactionalEmailsApi();

lassen smtpMailData = neu SibApiSDK.SendSmtpEmail();

konst Absender = {
Email: '[email protected]', // Ihre E-Mail-Adresse
Name: 'Beispiel Absender',
};

konst SendWaitlistE-Mail = asynchron (Benutzerdaten) => {
}

Der TransaktionE-MailApiVariable speichert ein Objekt, mit dem Sie Transaktions-E-Mails senden können (wie sie auf SendinBlue genannt werden). Der smtpMailData Variable speichert die Transaktions-E-Mail-Daten, die Sie zum Senden jeder E-Mail benötigen: Empfänger, Inhalt usw.

Nun zum Körper der WartelisteE-Mail senden Funktion. Der folgende Code zeigt, wie der Funktionskörper aussehen sollte.

konst SendWaitlistE-Mail = asynchron (Benutzerdaten) => {
versuchen {
smtpMailData.sender = Absender;

smtpMailData.to = [{
E-Mail: userData.email,
Name: userData.vollständiger Name
}];

smtpMailData.subject = 'Du bist auf der Warteliste!';

smtpMailData.params = {
'Name': userData.vollständiger Name,
'zwitschern': '@Gebrauch machen von'
};

smtpMailData.htmlContent = "

Hallo {{ params.name }}, "


+ "Willkommen auf der Warteliste von makeuseof.com. Wir benachrichtigen Sie "
+ „Wenn wir starten. Bitte folgen Sie uns auf Twitter "
+ "{{ params.twitter }}.

";

// E-Mail senden
erwarten transactionEmailApi.sendTransacEmail (smtpMailData)
.Dann((Daten) => {
Konsole.Logdaten) // E-Mail-ID protokollieren
})
.fangen((Fehler) => {
Konsole.error (Fehler)
WurfneuFehler(Fehler) // Fehler behandeln
})
} fangen (Fehler) {
Konsole.Protokoll('Es ist ein Fehler aufgetreten...')
Konsole.error (Fehler)
WurfneuFehler(Fehler) // Fehler behandeln
}
}

Der größte Teil dieses Codes füllt Schlüsseleigenschaften der smtpMailData Objekt. Der Reihe nach sind dies:

  • Absender: Ein Objekt, das zwei Eigenschaften enthält: E-Mail und Name. Der obige Code verwendet eine Dummy-E-Mail-Adresse, aber Sie sollten eine echte, funktionierende E-Mail-Adresse für Produktionsanwendungen verwenden.
  • Zu: Dies ist ein Array von E-Mail-Empfängern. Die Elemente dieses Arrays sind Objekte, die mit den Daten (E-Mail und Name) des E-Mail-Empfängers definiert sind. Sie können bis zu 50 Empfänger pro Nachricht haben. Technisch gesehen ist es möglich, Ihre Nachricht an mehr als 50 gleichzeitig zu senden, aber dies erhöht das Risiko, dass E-Mail-Agenten sie als Spam behandeln.
  • Thema: Dies ist der Betreff der zu sendenden E-Mail.
  • Parameter: Dies sind zusätzliche Daten, die Sie in verschiedenen Teilen Ihrer E-Mail verwenden können (hauptsächlich Betreff und Inhalt). Sie können Werte daraus verwenden Parameter Objekt, indem Sie sie in doppelte geschweifte Klammern einschließen (z {{ parameter.name }}).
  • htmlInhalt: Diese Eigenschaft definiert den Nachrichtentext. Es hilft, den Nachrichtentext der E-Mail zu definieren, den Sie mit HTML formatieren können. Es hat auch eine Alternative, Textinhalt, wodurch der Nachrichtentext einfach bleibt.

Die E-Mail kann mehr Eigenschaften haben, und Sie können sie alle darin entdecken Entwicklerdokumentation von SendinBlue.

Endlich, das sendTransacEmail Methode von TransaktionE-MailApi sendet die E-Mail und gibt die ID der E-Mail zurück.

Nach der Implementierung der WartelisteE-Mail senden Funktion, können Sie sie im Wartelistenendpunkt aufrufen. Der Wartelisten-Endpunkt oben sieht nun so aus:

server.use('/Warteliste', asynchron (req, res) => {
versuchen {
konst user = req.body;

Konsole.Protokoll(`${user.fullname} hat sich auf die Warteliste gesetzt);

// E-Mail-Sender-Funktion aufrufen
erwarten SendWaitlistE-Mail (Benutzer)
res.status(200).json({ Nachricht: 'Warteliste erfolgreich beigetreten' })
} fangen (Fehler) {
Konsole.error (Fehler)
res.status(500).json({ Nachricht: 'Ein interner Serverfehler ist aufgetreten' })
}
})

Sie können Ihre Anwendung starten und Ihren Wartelisten-Endpunkt in einem REST-API-Client oder über das Front-End Ihrer Anwendung testen. Hier ist eine beispielhafte Testanfrage von Postman.

So sieht die empfangene E-Mail aus. Beachten Sie, dass die Werte aus der Parameter Objekt vorhanden sind.

Wenn Sie Ihr Terminal überprüfen, sehen Sie auch die Nachrichten ID in der Konsole gedruckt. Sie können diesen Wert in einer Datenbank oder einem Protokoll speichern, um eine bestimmte E-Mail zu identifizieren.

Sie können auch erwägen, einige zu überprüfen Tipps, um zu verhindern, dass E-Mails im Spam-Ordner der Empfänger landen.

Obwohl dieses E-Mail-System ordnungsgemäß funktioniert, ist es nicht der effizienteste Ansatz, wenn der Endpunkt die E-Mail-Absenderfunktion direkt aufruft. Dies könnte dazu führen, dass Ihre Anwendung unnötig wartet, während die E-Mail gesendet wird. Um dies zu vermeiden, sollten Sie den Prozess optimieren, indem Sie Implementieren einer Aufgabenwarteschlange um die E-Mail-Arbeitslast zu bewältigen.

Das Versenden von E-Mails in Node.js war noch nie so einfach

Es ist befriedigend zu erkennen, dass Sie in Node.js sehr einfach einen Dienst zum Versenden von E-Mails erstellen können.

Über den Rahmen dieses Leitfadens hinaus können Sie mit SendinBlue noch viel mehr tun. Sie können verschiedene E-Mail-Versionen gleichzeitig an verschiedene Empfänger senden, indem Sie die von bereitgestellten E-Mail-Vorlagen verwenden SendinBlue, konfigurieren Sie Webhooks, um Aktionen Ihrer E-Mail-Empfänger zu erkennen, und zeigen Sie sie in Echtzeit an Analytik.

Sie können diese Funktionen erkunden, indem Sie sie im Entwicklerportal auschecken und in Ihren Node.js-Anwendungen implementieren.