Files
zeropost-tool/app/api/usage/summary/route.js
T
Ник (Claude) f4860f0e70 feat: /spending page — AI cost dashboard (aiprimetech + routerai)
- app/spending/page.js: расходы по периодам, разбивка по провайдерам и типам
- app/api/usage/summary/route.js: прокси к engine /api/usage/summary
- Header.js: ссылка «Расходы» для admin (TrendingUp иконка)
2026-06-11 13:20:52 +03:00

16 lines
549 B
JavaScript

import { NextResponse } from 'next/server';
import { requireUser } from '@/lib/session';
import { engine } from '@/lib/engine';
export async function GET(req) {
const user = await requireUser();
if (!user?.isAdmin) return NextResponse.json({ error: 'Forbidden' }, { status: 403 });
const { searchParams } = new URL(req.url);
try {
const data = await engine.usageSummary(Object.fromEntries(searchParams));
return NextResponse.json(data);
} catch (err) {
return NextResponse.json({ error: err.message }, { status: 500 });
}
}