src/app/api/session/route.ts
Linked repository file from this build.
import { NextResponse } from "next/server";
import { errorResponse } from "@/lib/api-route";
import { AccountSetupError, getActor } from "@/lib/auth/server";
export async function GET(request: Request) {
try {
return NextResponse.json({ actor: await getActor(request) });
} catch (error) {
// The client shows account setup for these fields instead of a plain error.
if (error instanceof AccountSetupError)
return NextResponse.json(
{ error: error.message, setupFields: error.fields },
{ status: error.status },
);
return errorResponse(error, "Unable to load session.");
}
}