import { NextRequest, NextResponse } from "next/server"; import { cookies } from "next/headers"; const API_BASE_URL = process.env.API_BASE_URL || process.env.NEXT_PUBLIC_API_BASE_URL; async function getAuthHeader() { const token = cookies().get("session_token")?.value; if (!token) throw new Error("Unauthorized"); return { Authorization: `Bearer ${token}` }; } export async function GET() { try { const headers = await getAuthHeader(); const res = await fetch(`${API_BASE_URL}/api/email`, { headers, cache: "no-store", }); if (!res.ok) { return NextResponse.json( { error: await res.text() }, { status: res.status } ); } return NextResponse.json(await res.json()); } catch (err: any) { return NextResponse.json({ error: "Unauthorized" }, { status: 401 }); } } export async function POST(request: NextRequest) { try { const headers = await getAuthHeader(); const body = await request.json(); const res = await fetch(`${API_BASE_URL}/api/email`, { method: "POST", headers: { ...headers, "Content-Type": "application/json" }, body: JSON.stringify(body), }); if (!res.ok) { return NextResponse.json( { error: await res.text() }, { status: res.status } ); } return NextResponse.json(await res.json()); } catch (err: any) { return NextResponse.json({ error: "Unauthorized" }, { status: 401 }); } }