diff --git a/jellyseerr-api.yml b/jellyseerr-api.yml index 69484e24a..767e336ba 100644 --- a/jellyseerr-api.yml +++ b/jellyseerr-api.yml @@ -6153,7 +6153,7 @@ paths: get: summary: Gets request counts description: | - Returns the number of pending and approved requests. + Returns the number of requests by status including pending, approved, available, and completed requests. tags: - request responses: @@ -6180,6 +6180,8 @@ paths: type: number available: type: number + completed: + type: number /request/{requestId}: get: summary: Get MediaRequest diff --git a/server/routes/request.ts b/server/routes/request.ts index 8773b87f2..a142a6c06 100644 --- a/server/routes/request.ts +++ b/server/routes/request.ts @@ -381,6 +381,12 @@ requestRoutes.get('/count', async (_req, res, next) => { ) .getCount(); + const completedCount = await query + .where('request.status = :requestStatus', { + requestStatus: MediaRequestStatus.COMPLETED, + }) + .getCount(); + return res.status(200).json({ total: totalCount, movie: movieCount, @@ -390,6 +396,7 @@ requestRoutes.get('/count', async (_req, res, next) => { declined: declinedCount, processing: processingCount, available: availableCount, + completed: completedCount, }); } catch (e) { logger.error('Something went wrong retrieving request counts', {