import { eq } from "drizzle-orm"; import { db } from "@/lib/db"; import { user } from "@/lib/db/schema"; import { openApiErrorResponse, requireOpenApiPrincipal, } from "@/lib/access-keys/openapi-auth"; export async function GET(request: Request) { try { const principal = await requireOpenApiPrincipal(request, "canvas:read"); const [currentUser] = await db .select({ id: user.id, email: user.email, name: user.name, department: user.department, role: user.role, }) .from(user) .where(eq(user.id, principal.userId)) .limit(1); return Response.json( { success: true, data: { user: currentUser, accessKey: { id: principal.accessKeyId, name: principal.accessKeyName, scopes: principal.scopes, }, }, }, { headers: { "Cache-Control": "no-store" } } ); } catch (error) { return openApiErrorResponse(error); } }