Files
webapp/api/newsletter.js

31 lines
741 B
JavaScript
Raw Normal View History

2023-05-11 21:54:05 +02:00
const formData = require('form-data')
const Mailgun = require('mailgun.js')
2022-09-09 14:53:35 +03:00
2023-05-11 21:54:05 +02:00
const mailgun = new Mailgun(formData)
2022-09-09 14:53:35 +03:00
const { MAILGUN_API_KEY } = process.env
2023-05-11 21:54:05 +02:00
const mg = mailgun.client({ username: 'discoursio', key: MAILGUN_API_KEY })
2023-02-17 10:21:02 +01:00
2023-01-30 18:10:27 +03:00
export default async (req, res) => {
2023-05-11 21:54:05 +02:00
const { email } = req.body
2023-01-30 18:10:27 +03:00
try {
2023-05-12 16:57:33 +02:00
const response = await mg.lists.members.createMember('newsletter@discours.io', {
2023-01-30 18:10:27 +03:00
address: email,
subscribed: true,
upsert: 'yes'
})
2022-09-09 14:53:35 +03:00
2023-01-30 18:10:27 +03:00
return res.status(200).json({
success: true,
2023-02-17 10:21:02 +01:00
message: 'Email was added to newsletter list',
response: JSON.stringify(response)
2023-01-30 18:10:27 +03:00
})
} catch (error) {
return res.status(400).json({
success: false,
message: error.message
})
}
2022-09-09 14:53:35 +03:00
}