|
1 | | -import { NextRequest, NextResponse } from "next/server" |
2 | 1 | import { Resend } from "resend" |
| 2 | +import { SelectEmailTemplate } from "@/components/email-templates" |
| 3 | +import { NextRequest, NextResponse } from "next/server" |
3 | 4 |
|
4 | 5 | const resend = new Resend(process.env.RESEND_API_KEY!) |
5 | 6 |
|
6 | 7 | export async function POST(req: NextRequest) { |
7 | | - const { body } = await req.json() |
| 8 | + const body = await req.json() |
| 9 | + const { to, subject, data } = body |
| 10 | + const EmailTemplate = SelectEmailTemplate(data) |
8 | 11 |
|
9 | 12 | try { |
10 | 13 | const { data, error } = await resend.emails.send({ |
11 | | - from: "onboarding@resend.dev", |
12 | | - to: "shriprasanna32@gmail.com", |
13 | | - subject: "Hello world", |
14 | | - react: "sasa", |
| 14 | + from: "Acme <onboarding@resend.dev>", // Pear AI <accounts@pear.ai> |
| 15 | + to: [to], |
| 16 | + subject, |
| 17 | + react: EmailTemplate as JSX.Element, |
15 | 18 | }) |
16 | 19 |
|
| 20 | + if (error) { |
| 21 | + return NextResponse.json({ error, status: 500 }) |
| 22 | + } |
| 23 | + |
17 | 24 | return NextResponse.json({ message: "Email sent!", data, status: 200 }) |
18 | | - } catch (err) { |
19 | | - return NextResponse.json({ error: err, status: 400 }) |
| 25 | + } catch (error) { |
| 26 | + return NextResponse.json({ error, status: 500 }) |
20 | 27 | } |
21 | 28 | } |
0 commit comments