git clone https://github.com/pedroFnseca/SendMail-API.git
cd SendMail-API
npm install
EMAIL_USER="[email protected]"
EMAIL_PWD_APP="senha-app"
Caso use um email @gmail neste link tem o passo a passo para configurar o email: https://support.google.com/accounts/answer/185833?hl=pt-BR
node src/index.js
Método | Descrição |
---|---|
POST | Envia um email |
GET | Retorna a lista de emails enviados |
{
"to": "[email protected]",
"subject": "Assunto do email",
"text": "Envio de texto simples"
}
{
"to": "[email protected]",
"subject": "Assunto do email",
"html": "<h1>Envio de html</h1>"
}
import axios from "axios"
import { config } from "dotenv"
config() // Carrega as variáveis de ambiente do .env
// Cria uma instância do axios
const api = axios.create({
baseURL: process.env.URL_SERVER_EMAIL = "http://localhost:4652"
})
// Método para enviar e-mail
async function sendMail(data) {
// Verifica se os dados foram passados corretamente
if (!data.to || !data.subject || !data.html) {
throw new Error('Data is not valid')
}
// Envia o e-mail
await api.post('/send/html', {
to: data.to,
subject: data.subject,
html: data.html,
})
// Retorna o resultado
return true
}
// Exporta o método sendMail
export default sendMail
import sendMail from 'caminho/services/SendMail.js'
await sendMail({
to: '[email protected]',
subject: 'Assunto do email',
html: '<h1>Mensagem para o usuário</h1>'
})
console.log('E-mail enviado com sucesso 🚀')