From eb49500592e5c50c5637c09ea585b065545f2135 Mon Sep 17 00:00:00 2001 From: Ahmet Kilinc Date: Wed, 16 Jul 2025 01:00:40 +0100 Subject: adds Vercel BotId --- apps/web/src/app/api/waitlist/route.ts | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'apps/web/src/app/api/waitlist/route.ts') diff --git a/apps/web/src/app/api/waitlist/route.ts b/apps/web/src/app/api/waitlist/route.ts index 4d64be77..031ebd5a 100644 --- a/apps/web/src/app/api/waitlist/route.ts +++ b/apps/web/src/app/api/waitlist/route.ts @@ -1,6 +1,7 @@ import { NextRequest, NextResponse } from "next/server"; import { db, eq } from "@opencut/db"; import { waitlist } from "@opencut/db/schema"; +import { checkBotId } from "botid/server"; import { nanoid } from "nanoid"; import { waitlistRateLimit } from "@/lib/rate-limit"; import { z } from "zod"; @@ -143,6 +144,12 @@ async function validateCSRFToken(request: NextRequest): Promise { } export async function POST(request: NextRequest) { + const verification = await checkBotId(); + + if (verification.isBot) { + return NextResponse.json({ error: "Access denied" }, { status: 403 }); + } + const identifier = request.headers.get("x-forwarded-for") ?? "127.0.0.1"; const { success } = await waitlistRateLimit.limit(identifier); -- cgit v1.3.1