fns-back
This commit is contained in:
parent
1f326c7611
commit
71e38d233a
27
api/feedback.js
Normal file
27
api/feedback.js
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
import FormData from 'form-data'
|
||||||
|
import Mailgun from 'mailgun.js'
|
||||||
|
|
||||||
|
const mailgun = new Mailgun(FormData)
|
||||||
|
const mg = mailgun.client({ username: 'discoursio', key: process.env.MAILGUN_API_KEY })
|
||||||
|
|
||||||
|
export default async function handler(req, res) {
|
||||||
|
const { contact, subject, message } = req.body
|
||||||
|
|
||||||
|
const text = `${contact}\n\n${message}`
|
||||||
|
|
||||||
|
const data = {
|
||||||
|
from: 'Discours Feedback Robot <robot@discours.io>',
|
||||||
|
to: 'welcome@discours.io',
|
||||||
|
subject,
|
||||||
|
text,
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
const response = await mg.messages.create('discours.io', data)
|
||||||
|
console.log('Email sent successfully!', response)
|
||||||
|
res.status(200).json({ result: 'great success' })
|
||||||
|
} catch (error) {
|
||||||
|
console.log('Error:', error)
|
||||||
|
res.status(400).json(error)
|
||||||
|
}
|
||||||
|
}
|
28
api/newsletter.js
Normal file
28
api/newsletter.js
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
import FormData from 'form-data'
|
||||||
|
import Mailgun from 'mailgun.js'
|
||||||
|
|
||||||
|
const mailgun = new Mailgun(FormData)
|
||||||
|
const mg = mailgun.client({ username: 'discoursio', key: process.env.MAILGUN_API_KEY })
|
||||||
|
|
||||||
|
export default async (req, res) => {
|
||||||
|
const { email } = req.body
|
||||||
|
|
||||||
|
try {
|
||||||
|
const response = await mg.lists.members.createMember('newsletter@discours.io', {
|
||||||
|
address: email,
|
||||||
|
subscribed: true,
|
||||||
|
upsert: 'yes',
|
||||||
|
})
|
||||||
|
|
||||||
|
return res.status(200).json({
|
||||||
|
success: true,
|
||||||
|
message: 'Email was added to newsletter list',
|
||||||
|
response: JSON.stringify(response),
|
||||||
|
})
|
||||||
|
} catch (error) {
|
||||||
|
return res.status(400).json({
|
||||||
|
success: false,
|
||||||
|
message: error.message,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user