← back to Hub

app/api/auth/session/route.ts

23 lines

import { NextRequest, NextResponse } from 'next/server';
import { verifyAuth } from '@/lib/auth';
import { registry } from '@/lib/accounts';

export async function GET(request: NextRequest) {
  const username = verifyAuth(request);

  if (!username) {
    return NextResponse.json({ authenticated: false }, { status: 401 });
  }

  const caps = registry.getCapabilities(username);
  return NextResponse.json({
    authenticated: true,
    user: caps.username,
    role: caps.role,
    isAdmin: caps.isAdmin,
    canWrite: caps.canWrite,
    canUseAI: caps.canUseAI,
    displayName: caps.displayName,
  });
}