Enviando E-mail com Anexos usando SendGrid and Node.js
Tempo de leitura: 2 minutos
Você está enviando emails do seu app em Node.js com a API Twilio SendGrid. Agora você quer anexar arquivos nos seus e-mails e a API Twilio SendGrid faz isso de uma forma bem direta. Neste post, vou anexar um documento pdf a um e-mail enviado através da SendGrid. Se você ainda não enviou nenhum e-mail com nossa API, meu colega Sam escreveu um post sobre isso (artigo em Inglês), ou se você preferir assistir a um vídeo, meu colega Brent publicou um vídeo tutorial. Continuaremos a partir do tutorial do Brent.
Pre-requisitos
Antes de comerçarmos, certifique-se que você tem o seguinte setup:
- Node.js e npm instalados (faça isso primeiro se ainda não instalou o Node na sua máquina)
- Uma conta gratuita da Twilio SendGrid
- A biblioteca Node da Twilio SendGrid instalada no seu projeto
Configuração
Se você ainda não fez isso, crie sua conta gratuida da SendGrid. Você pode usar o limite gratuito para este tutorial. Uma vez com sua conta, crie uma chave de API (API Key). Você pode fazer isso no momento que desejar, mas certifique-se de guardar a chave para usá-la depois.
A melhor forma de salvar a chave da API é configurar uma variável de ambiente que possa ser acessada pelo seu código JavaScript, evitando escrevê-la diretamente no seu código. Defina o valor da variável de ambiente SENDGRID_API_KEY
para ser a chave da sua conta da SendGrid. Aqui está um tutorial se você precisar de ajuda para configurar variáveis de ambiente. Nós usaremos isso mais tarde.
Enviando um E-mail
Vamos continuar de onde meus colegas pararam na postagem: enviando um e-mail. Você deve ter um arquivo index.js
que se parece com isso:
Certifique-se de que você instalou a biblioteca Node da Twilio SendGrid. Se você ainda não instlou, execute este comando na pasta do seu projeto.
Nós usaremos a API Node File System para ler e codificar nosso arquivo como uma string em base64. Eu usei um arquivo fictício attachment.pdf
, então certifique-se de substituir o nome do arquivo por um documento que você tenha salvo na mesma pasta do seu arquivo index.js
.
Vamos adicionar a propriedade attachments
no nosso objeto msg
. Nós podemos definir um vetor de objetos para enviar múltiplos arquivos, mas por enquanto enviaremos apenas o arquivo attachment.pdf
.
Antes de executar este código, você precisa confirmar que tem a variável de ambiente SENDGRID_API_KEY e lembrar de substituir o valor da propriedade to
com o seu endereço de e-mail, para que seu código funcione corretamente.
Finalmente, salve seu código e rode o seguinte comando no terminal para enviar um e-mail para você mesmo:
Confira sua caixa de entrada e você verá algo parecido com isso!
Resumindo
Agora você pode adicionar anexos aos e-mails que enviar com a Twilio SendGrid, mas você pode fazer muito mais! Você pode responder a e-mails recebidos usando o Webhook para E-mails Recebidos da SendGrid, integrá-lo em um bot inteligente para Facebook Messenger ou até mesmo encaminhar e-mails recebidos em mensagens de texto (artigo em Inglês). Confira também a documentação da SendGrid com muitas outras funcionalidades e usos legais.
Fique a vontade para entrar em contato comigo para tirar dúvidas ou falar sobre as coisas legais que está desenvolvendo. Estou ansioso para ver o que você vai criar!
- Twitter: @ChatterboxCoder
- Instagram: @ChatterboxCoder
- Email: nokenwa@twilio.com
Publicações relacionadas
Recursos relacionados
Twilio Docs
De APIs a SDKs e aplicativos de amostra
Documentação de referência de API, SDKs, bibliotecas auxiliares, guias de início rápido e tutoriais para sua linguagem e plataforma.
Centro de Recursos
Os mais recentes e-books, relatórios do setor e webinars
Aprenda com especialistas em engajamento do cliente para melhorar sua própria comunicação.
Ahoy
Centro da comunidade de desenvolvedores da Twilio
Melhores práticas, exemplos de código e inspiração para criar comunicações e experiências de engajamento digital.