diff --git a/backend/services/snapshot-service/src/api/controllers/snapshot.controller.ts b/backend/services/snapshot-service/src/api/controllers/snapshot.controller.ts index 8b8f75d7..1ec151ea 100644 --- a/backend/services/snapshot-service/src/api/controllers/snapshot.controller.ts +++ b/backend/services/snapshot-service/src/api/controllers/snapshot.controller.ts @@ -60,10 +60,12 @@ export class SnapshotController { @ApiQuery({ name: 'page', required: false, type: Number }) @ApiQuery({ name: 'limit', required: false, type: Number }) async listSnapshots( - @Query('page') page: number = 1, - @Query('limit') limit: number = 20, + @Query('page') page?: string, + @Query('limit') limit?: string, ) { - const result = await this.repo.findAll(page, limit); + const p = Math.max(1, parseInt(page || '1', 10) || 1); + const l = Math.min(100, Math.max(1, parseInt(limit || '20', 10) || 20)); + const result = await this.repo.findAll(p, l); return { tasks: result.tasks.map(toSnapshotResponse), total: result.total,