В этом кратком руководстве мы собираемся создать простое приложение узла, которое использует Twilio SendGrid API v3 для отправки электронных писем.

Сначала создайте приложение node с помощью npm init:

mkdir send-email
cd send-email
npm init

Установить зависимости

npm i @sendgrid/mail dotenv

Мы будем использовать dotenv для создания переменных среды для нашего приложения.

Создайте структуру папок

send-email/
  config/
    config.env
  index.js

Зарегистрируйте учетную запись SendGrid

Посетите https://sendgrid.com/ и зарегистрируйте бесплатную учетную запись. Если у вас уже есть учетная запись, войдите в систему.

Первое, что нам нужно сделать, это создать идентификатор отправителя. Если вы не видите его при входе в систему, нажмите Настройки, а затем Аутентификация отправителя.

Если у вас есть адрес электронной почты домена, вы можете использовать Аутентификацию домена, в противном случае настройте Проверку одного отправителя.

Интегрируйте API электронной почты

Если вы не видите эту страницу, нажмите API электронной почты, а затем Руководство по интеграции.

В этом руководстве мы будем использовать веб-API.

Выберите Node.js в качестве языка.

Создайте свой ключ API и скопируйте его в буфер обмена.

Установите свои переменные env

Вернувшись в свой проект, перейдите к файлу config.env и установите свои переменные.

SENDGRID_API_KEY=(paste your API key here)
FROM_EMAIL=(your sender identity email)

Код

Откройте файл index.js. Добавьте sendgrid и dotenv

const sgMail = require('@sendgrid/mail');
const dotenv = require('dotenv');

Загрузите ваши переменные env

dotenv.config({ path: './config/config.env' });

Установите свой ключ API

sgMail.setApiKey(process.env.SENDGRID_API_KEY);

Настройте сообщение электронной почты. В поле Кому укажите адрес электронной почты, на который вы хотите отправить сообщение.

const msg = {
  to: '[email protected]',
  from: process.env.FROM_EMAIL,
  subject: 'Sending with Twilio SendGrid is Fun',
  text: 'and easy to do anywhere, even with Node.js',
  html: '<strong>and easy to do anywhere, even with
  Node.js</strong>',
};

Отправьте электронное письмо с помощью функции отправки и передайте сообщение в качестве аргумента.

sgMail.send(msg);
console.log(`Email sent to ${msg.to}`);

Запустите приложение

Последний шаг — запустить код

node index.js

Проверить интеграцию

Вернитесь в sendgrid и нажмите Проверить интеграцию.

Если бы все работало. Вы увидите это сообщение.

Поздравляем!

Теперь вы можете использовать адрес электронной почты отправителя и ключ API для отправки сообщений электронной почты из приложения узла. Это простой способ интегрировать подтверждения по электронной почте, приветственные письма, сброс пароля и т. д. в ваши приложения.

Чтобы увидеть полную реализацию кода, посетите репозиторий github: https://github.com/madeleinewoodbury/send-email

Для получения дополнительной информации о веб-API Twilio SendGrid посетите их репозиторий на github: https://github.com/sendgrid/sendgrid-nodejs