import { NextRequest, NextResponse } from 'next/server' import { CreateCampaignSchema } from '../../../lib/validation' import { createCampaign, listCampaigns } from '../../../server/db/campaigns' import { getTenantId } from '../../../lib/tenant-header' export async function GET(req: NextRequest) { const tenantId = getTenantId(req) const result = await listCampaigns(tenantId) if (!result.ok) return NextResponse.json({ error: result.error.message }, { status: 500 }) return NextResponse.json(result.data) } export async function POST(req: NextRequest) { const tenantId = getTenantId(req) const body = await req.json() const parsed = CreateCampaignSchema.safeParse(body) if (!parsed.success) return NextResponse.json({ error: parsed.error.issues }, { status: 400 }) const result = await createCampaign(tenantId, parsed.data) if (!result.ok) return NextResponse.json({ error: result.error.message }, { status: 500 }) return NextResponse.json(result.data, { status: 201 }) }