diff --git a/src/ai-requests/ai-requests.controller.ts b/src/ai-requests/ai-requests.controller.ts index fbe5be9..9f5b83d 100644 --- a/src/ai-requests/ai-requests.controller.ts +++ b/src/ai-requests/ai-requests.controller.ts @@ -1,5 +1,5 @@ -import { Controller, Get, Query } from '@nestjs/common'; -import { desc, eq, sum, count } from 'drizzle-orm'; +import { Controller, Get, NotFoundException, Param, ParseUUIDPipe, Query } from '@nestjs/common'; +import { and, desc, eq, sum, count } from 'drizzle-orm'; import { CurrentSession } from '../auth/session.decorator'; import type { AuthenticatedSession } from '../auth/tenant.guard'; import { db } from '../db/client'; @@ -72,4 +72,18 @@ export class AiRequestsController { byStatus, }; } + + @Get(':id') + async getOne( + @CurrentSession() session: AuthenticatedSession, + @Param('id', ParseUUIDPipe) id: string, + ) { + const record = await db.query.aiRequests.findFirst({ + where: and(eq(aiRequests.id, id), eq(aiRequests.tenantId, session.tenantId)), + }); + if (!record) { + throw new NotFoundException('AI request not found'); + } + return record; + } }