webapp/api/feedback.js

30 lines
799 B
JavaScript
Raw Normal View History

2023-05-11 19:34:43 +00:00
const formData = require('form-data')
const Mailgun = require('mailgun.js')
2023-05-11 19:09:17 +00:00
2023-05-11 19:34:43 +00:00
const mailgun = new Mailgun(formData)
2023-05-11 19:09:17 +00:00
2023-05-11 19:34:43 +00:00
const { MAILGUN_API_KEY, MAILGUN_DOMAIN } = process.env
2023-05-11 19:09:17 +00:00
const mg = mailgun.client({ username: 'discoursio', key: MAILGUN_API_KEY })
2022-09-09 11:53:35 +00:00
export default async function handler(req, res) {
2023-05-11 19:54:05 +00:00
const { contact, subject, message } = req.body
2022-09-09 11:53:35 +00:00
const text = `${contact}\n\n${message}`
2023-02-17 09:21:02 +00:00
2023-05-11 19:34:43 +00:00
const data = {
from: 'Discours Feedback Robot <robot@discours.io>',
to: 'welcome@discours.io',
subject,
text
}
2023-05-11 19:09:17 +00:00
try {
2023-05-11 19:34:43 +00:00
const response = await mg.messages.create(MAILGUN_DOMAIN, data)
2023-05-11 19:09:17 +00:00
console.log('Email sent successfully!', response)
res.status(200).json({ result: 'great success' })
} catch (error) {
console.log('Error:', error)
res.status(400).json(error)
}
2022-09-09 11:53:35 +00:00
}