import { NextRequest, NextResponse } from "next/server"; import { db, webhooks, webhookDeliveries, eq, and, desc } from "@epicure/db"; import { requireSession } from "@/lib/api-auth"; type Params = { params: Promise<{ id: string }> }; export async function GET(_req: NextRequest, { params }: Params) { const { session, response } = await requireSession(); if (response) return response; const { id } = await params; const hook = await db.query.webhooks.findFirst({ where: and(eq(webhooks.id, id), eq(webhooks.userId, session!.user.id)), columns: { id: true }, }); if (!hook) return NextResponse.json({ error: "Not found" }, { status: 404 }); const deliveries = await db .select() .from(webhookDeliveries) .where(eq(webhookDeliveries.webhookId, id)) .orderBy(desc(webhookDeliveries.createdAt)) .limit(20); return NextResponse.json(deliveries); }