webapp/api/feedback.js

29 lines
927 B
JavaScript
Raw Normal View History

2023-05-11 19:09:17 +00:00
const { formidablePromise } = require('./_shared/formidablePromise')
const mailgun = require('mailgun.js')
const FormData = require('form-data')
const { MAILGUN_API_KEY, MAILGUN_DOMAIN } = process.env
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) {
const { contact, subject, message } = await formidablePromise(req)
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:09:17 +00:00
const form = new FormData()
form.append('from', 'Discours Feedback Robot <robot@discours.io>')
form.append('to', 'welcome@discours.io')
form.append('subject', subject)
form.append('text', text)
2023-05-11 19:09:17 +00:00
try {
const response = await mg.messages.create(MAILGUN_DOMAIN, { form })
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
}