40 lines
1.2 KiB
JavaScript
40 lines
1.2 KiB
JavaScript
import sgMail from "@sendgrid/mail";
|
|
|
|
sgMail.setApiKey(process.env.SENDGRID_API_KEY);
|
|
|
|
export default async function handler(req, res) {
|
|
if (req.method !== "POST") return res.status(405).end();
|
|
|
|
// Recibe mensajeCorreo desde el body
|
|
const { email, nombre, curso, pdfBase64, mensajeCorreo } = req.body;
|
|
|
|
try {
|
|
await sgMail.send({
|
|
to: email,
|
|
from: "rviverosgonzalez@outlook.com", // Cambia esto por tu correo verificado en SendGrid
|
|
subject: "Tu diploma",
|
|
// Usa el mensajeCorreo personalizado, si no viene usa el texto por defecto
|
|
text:
|
|
mensajeCorreo ||
|
|
`Hola ${nombre}, has concluido tu curso ${curso} por lo que adjuntamos tu diploma.`,
|
|
attachments: [
|
|
{
|
|
content: pdfBase64,
|
|
filename: `Diploma_${nombre}.pdf`,
|
|
type: "application/pdf",
|
|
disposition: "attachment",
|
|
},
|
|
],
|
|
});
|
|
res.status(200).json({ ok: true });
|
|
} catch (error) {
|
|
console.error(
|
|
"Error enviando el correo:",
|
|
error.response?.body || error.message || error
|
|
);
|
|
res
|
|
.status(500)
|
|
.json({ error: error.message, details: error.response?.body });
|
|
}
|
|
}
|