import { auth } from "@/lib/auth"; import { prisma } from "@/lib/prisma"; export async function GET() { const session = await auth(); if (!session) return new Response("Unauthorized", { status: 401 }); const campaigns = await prisma.campaign.findMany({ orderBy: { createdAt: "desc" }, include: { _count: { select: { assets: true, agentRuns: true } }, }, }); return Response.json(campaigns); } export async function POST(request: Request) { const session = await auth(); if (!session) return new Response("Unauthorized", { status: 401 }); const body = await request.json(); const { name, platforms, config } = body; if (!name || !platforms) { return Response.json( { error: "Name and platforms are required" }, { status: 400 } ); } const campaign = await prisma.campaign.create({ data: { name, platforms: JSON.stringify(platforms), config: config ? JSON.stringify(config) : null, }, }); return Response.json(campaign, { status: 201 }); }