import { getDiscordAppInfo } from "@/lib/game/discord-app"; import { invalidIdResponse, jsonErrorWithCors, jsonWithCors, parseAppId, requestOrigin, } from "@/lib/api-route"; import { warnDev } from "@/lib/log"; import type { NextResponse } from "next/server"; export async function GET( request: Request, context: { params: Promise<{ id: string }> }, ): Promise { const origin = requestOrigin(request); const id = await parseAppId(context); if (!id) { return invalidIdResponse(origin); } let info; try { info = await getDiscordAppInfo(id); } catch (error) { warnDev( `discord-app upstream failed: ${id} -> ${error instanceof Error ? error.message : error}`, ); return jsonErrorWithCors({ error: "Upstream unavailable" }, 502, 60, origin); } if (!info) { return jsonErrorWithCors({ error: "Application not found" }, 404, 60, origin); } return jsonWithCors(info, 86400, origin); }