Zacznij wysyłać własne wiadomości e-mail dzięki temu przyjaznemu interfejsowi API i minimalnej konfiguracji.

W dzisiejszym szybko zmieniającym się świecie cyfrowym marketing e-mailowy jest niezbędnym narzędziem dla firm, aby skutecznie docierać do klientów. Jednak wdrożenie systemu poczty e-mail może być złożonym i czasochłonnym procesem, zwłaszcza dla programistów, którzy dopiero rozpoczynają pracę.

Na szczęście dzięki Sendinblue wysyłanie e-maili jest bardzo łatwym zadaniem. Jako platforma oprogramowania jako usługi (SaaS), Sendinblue zapewnia wszystko, czego potrzebujesz jako właściciel firmy lub programista, aby bardzo łatwo przesyłać e-maile do użytkowników.

Co to jest Sendinblue?

SendinBlue to platforma oprogramowania jako usługi (SaaS), która oferuje łatwe w obsłudze rozwiązanie do marketingu e-mailowego dla małych, średnich i dużych firm. SendinBlue zapewnia platformę, która pomaga firmom rozwijać relacje z klientami, głównie za pośrednictwem usług e-mail i SMS.

SendinBlue oferuje również interfejsy API i narzędzia, które pozwalają programistom automatyzować i wysyłać e-maile i SMS-y. Narzędzia te można łatwo zintegrować z Node.js i innymi językami programowania w celu tworzenia niestandardowych kampanii e-mailowych i SMS-owych.

instagram viewer

Dzięki SendinBlue firmy mogą usprawnić procesy komunikacji i skuteczniej docierać do użytkowników lub klientów.

Jak uzyskać dane uwierzytelniające API SendinBlue

Aby korzystać z interfejsów API i zestawów SDK SendinBlue, pierwszym warunkiem wstępnym jest posiadanie konta SendinBlue. SendinBlue zapewnia łatwy proces rejestracji i możesz utworzyć konto na Strona rejestracji SendinBlue.

Załóż konto, wprowadź wymagane dane i wybierz odpowiedni plan w procesie onboardingu. SendinBlue przekieruje Cię następnie do pulpitu nawigacyjnego, gdzie będziesz mógł uzyskać dane uwierzytelniające API.

Aby uzyskać dane uwierzytelniające API, wykonaj poniższe czynności.

  1. Kliknij nazwę swojej organizacji w prawym górnym rogu pulpitu nawigacyjnego.
  2. Wybierać SMTP i API z rozwijanego menu.
  3. Przełącz na Klucze API zakładkę i kliknij naWygeneruj nowy klucz API przycisk.
  4. W wyskakującym okienku nadaj swojemu kluczowi nazwę, skopiuj wygenerowany ciąg, a następnie bezpiecznie go zapisz.

Ten ciąg to Twój klucz API i dane uwierzytelniające, które należy ostrożnie przechowywać, aby nie dostały się w niepowołane ręce.

Jak zbudować system wysyłania e-maili w Node.js

Node.js nie ma wbudowany pakiet e-mail, taki jak Golang. Aby wysyłać e-maile, potrzebujesz zewnętrznego pakietu, takiego jak nodemailer lub ten, który zapewnia SendinBlue.

Będziesz także potrzebować praktycznej znajomości Node.js i środowiska programistycznego Node.js na swoim komputerze.

Rozważ tę prostą aplikację Node/Express z /waitlist punkt końcowy:

// serwer.js
konst ekspres = wymagać('wyrazić');

// utwórz serwer
konst serwer = ekspres();
konst port = 3333;

server.listen (port, () => {
konsola.dziennik(`serwer nasłuchujący na porcie ${port}`);
})

// utwórz punkt końcowy listy oczekujących
serwer.użyć('/lista oczekujących', asynchroniczny (wymaganie, res) => {
próbować {
konst użytkownik = żądaj.ciało;

konsola.dziennik(`${użytkownik.pełna nazwa} dołączył do listy oczekujących`);
res.status(200.json({ wiadomość: „Dołączono do listy oczekujących pomyślnie” })
} złapać (błąd) {
konsola.błąd (błąd)
res.status(500.json({ wiadomość: 'Wystąpił błąd' })
}
})

Możesz użyć SendinBlue, aby wysłać powitalną wiadomość e-mail do użytkownika, który dołącza do listy oczekujących.

Pierwszym krokiem jest zainstalowanie zestawu SDK przy użyciu np lub jakikolwiek inny menedżer pakietów. Uruchomić npm zainstaluj sib-api-v3-sdk Lub przędza dodaj sib-api-v3-sdk w folderze projektu, aby dodać go do zależności projektu.

Po instalacji możesz rozpocząć wysyłanie wiadomości e-mail z zaledwie kilkoma wierszami kodu. W przypadku większego projektu prawdopodobnie chciałbyś wyizolować funkcjonalność poczty e-mail w osobnym pliku. Jednak w przypadku tej demonstracji możesz nadal używać tego samego serwer.js plik.

Importuj sib-api-v3-sdk package i skonfiguruj klienta SendinBlue, jak poniżej:

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

// utwórz instancję nowego klienta API SendinBlue
konst SibClient = SibApi. ApiClient.instance;

// Uwierzytelnianie
SibClient.authentications['Klucz API'].apiKey = proces.env. SIB_API_KEY
 || „TWÓJ_API_KLUCZ_TUTAJ”;

Następnie skonfiguruj konfigurację i utwórz funkcję wysyłania powitalnych wiadomości e-mail:

konst transakcjaEmailApi = nowy SibApiSDK.TransactionalEmailsApi();

pozwalać smtpMailData = nowy SibApiSDK.SendSmtpEmail();

konst nadawca = {
e-mail: '[email protected]', // Twój adres email
nazwa: „Przykładowy nadawca”,
};

konst Wyślij e-mail z listą oczekujących = asynchroniczny (dane użytkownika) => {
}

The transakcjaE-mailApizmienna przechowuje obiekt, który umożliwia wysyłanie wiadomości e-mail dotyczących transakcji (tak jak są one nazywane w SendinBlue). The smtpMailData zmienna będzie przechowywać dane e-maila transakcyjnego, którego będziesz potrzebować do wysłania każdego e-maila: odbiorca, treść itp.

Teraz przejdźmy do ciała Wyślij e-mail z listą oczekujących funkcjonować. Poniższy kod pokazuje, jak powinna wyglądać treść funkcji.

konst Wyślij e-mail z listą oczekujących = asynchroniczny (dane użytkownika) => {
próbować {
smtpMailData.sender = nadawca;

smtpMailData.to = [{
e-mail: userData.email,
nazwa: userData.fullname
}];

smtpMailData.subject = „Jesteś na liście oczekujących!”;

smtpMailData.params = {
'nazwa': userData.pełna nazwa,
'świergot': '@zrobić użytek z'
};

smtpMailData.htmlZawartość = "

Witaj {{params.name}}, "


+ „Witamy na liście oczekujących makeuseof.com. Powiadomimy Cię"
+ "kiedy startujemy. Zapraszamy do śledzenia nas na Twitterze"
+ "{{ params.twitter }}.

";

// wysłać email
czekać na transakcjaEmailApi.sendTransacEmail (smtpMailData)
.Następnie((dane) => {
konsola.log (dane) // zaloguj identyfikator e-mail
})
.złapać((błąd) => {
konsola.błąd (błąd)
rzucićnowyBłąd(błąd) // obsługuj błędy
})
} złapać (błąd) {
konsola.dziennik('Wystąpił błąd...')
konsola.błąd (błąd)
rzucićnowyBłąd(błąd) // obsługuj błędy
}
}

Większość tego kodu wypełnia kluczowe właściwości smtpMailData obiekt. W kolejności są to:

  • nadawca: Obiekt zawierający dwie właściwości: e-mail i imię. Powyższy kod używa fikcyjnego adresu e-mail, ale w aplikacjach produkcyjnych należy używać prawdziwego, działającego adresu e-mail.
  • Do: Jest to tablica odbiorców wiadomości e-mail. Elementami tej tablicy są obiekty zdefiniowane danymi (adres e-mail i imię) odbiorcy wiadomości e-mail. Możesz mieć do 50 odbiorców na wiadomość. Z technicznego punktu widzenia możliwe jest wysłanie wiadomości do ponad 50 osób jednocześnie, ale zwiększa to ryzyko, że agenci poczty e-mail traktują ją jako spam.
  • temat: To jest temat e-maila do wysłania.
  • parametry: To dodatkowe dane, które możesz wykorzystać w różnych częściach wiadomości e-mail (głównie temat i treść). Możesz użyć wartości z this parametry obiektów, umieszczając je w podwójnych nawiasach klamrowych (tj {{params.name}}).
  • htmlTreść: Ta właściwość definiuje treść wiadomości. Pomaga zdefiniować treść wiadomości e-mail, którą można sformatować za pomocą HTML. Ma też alternatywę, tekst Treść, dzięki czemu treść wiadomości jest prosta.

E-mail może mieć więcej właściwości i możesz je wszystkie odkryć w Dokumentacja deweloperska SendinBlue.

Wreszcie, wyślijTransacE-mail metoda transakcjaE-mailApi wysyła wiadomość e-mail i zwraca identyfikator wiadomości e-mail.

Po wdrożeniu Wyślij e-mail z listą oczekujących funkcję, możesz wywołać ją w punkcie końcowym listy oczekujących. Powyższy punkt końcowy listy oczekujących będzie teraz wyglądał tak:

serwer.użyć('/lista oczekujących', asynchroniczny (wymaganie, res) => {
próbować {
konst użytkownik = żądaj.ciało;

konsola.dziennik(`${użytkownik.pełna nazwa} dołączył do listy oczekujących`);

// wywołanie funkcji nadawcy wiadomości e-mail
czekać na Wyślij e-mail z listą oczekujących (użytkownik)
res.status(200.json({ wiadomość: „Dołączono do listy oczekujących pomyślnie” })
} złapać (błąd) {
konsola.błąd (błąd)
res.status(500.json({ wiadomość: „Wystąpił wewnętrzny błąd serwera” })
}
})

Możesz uruchomić swoją aplikację i przetestować punkt końcowy listy oczekujących w kliencie REST API lub z poziomu interfejsu aplikacji. Oto przykładowe żądanie testowe od Postmana.

Oto jak wygląda otrzymany e-mail. Zauważ, że wartości z parametry obiekt jest obecny.

Jeśli sprawdzisz swój terminal, zobaczysz również ID wiadomości wydrukowany w konsoli. Możesz zapisać tę wartość w bazie danych lub dzienniku, aby zidentyfikować konkretny e-mail.

Możesz również rozważyć sprawdzenie niektórych wskazówki, jak zapobiegać trafianiu e-maili do spamu odbiorców.

Chociaż ten system poczty e-mail działa poprawnie, bezpośrednie wywołanie przez punkt końcowy funkcji nadawcy wiadomości e-mail nie jest najskuteczniejszym podejściem. Może to spowodować niepotrzebne oczekiwanie aplikacji podczas wysyłania wiadomości e-mail. Aby tego uniknąć, należy zoptymalizować proces poprzez wdrożenie kolejki zadań do obsługi obciążenia poczty e-mail.

Wysyłanie e-maili w Node.js nigdy nie było łatwiejsze

Satysfakcjonujące jest uświadomienie sobie, że możesz bardzo łatwo zbudować usługę do wysyłania e-maili w Node.js.

Poza zakresem tego przewodnika, z SendinBlue możesz zrobić o wiele więcej. Możesz wysyłać różne wersje wiadomości e-mail do różnych odbiorców jednocześnie, korzystając z szablonów wiadomości e-mail dostarczonych przez SendinBlue, skonfiguruj webhooki, aby wykrywać działania podejmowane przez odbiorców wiadomości e-mail i wyświetlać je w czasie rzeczywistym analityka.

Możesz zapoznać się z tymi funkcjami, sprawdzając je w portalu dla deweloperów i wdrażając je w swoich aplikacjach Node.js.