Skip to main content

Monitoring

Recent authentication failures, the system health check and API usage statistics.

Recent authentication failures

GET/api/admin/monitoring/auth-failures

Returns failed admin logins, rejected session tokens and rejected API keys recorded in the audit log, newest first. attemptedActor is the Discord user id or the API key prefix when known; actorId is set when the credential resolved to a member. path is null for failed OAuth logins, which the callback service records instead of a route.

Authentication: Admin session token (Authorization: Bearer <token>)

Parameters

NameInTypeRequiredDescription
dateFromquerystringnoStart date (ISO 8601)
dateToquerystringnoEnd date (ISO 8601)
limitquerynumbernoMax results (1-500, default 50) Default: 50.
offsetquerynumbernoPagination offset Default: 0.

Responses

StatusDescriptionBody
200Authentication failures retrieved.any
400Invalid query parameters.
401Authentication required.
403System Admin access required.

Open in Swagger (opens in a new tab)

System health check

GET/api/admin/monitoring/health

Returns health status for API, database, Redis, and Discord.

Authentication: Admin session token (Authorization: Bearer <token>)

Responses

StatusDescriptionBody
200Health status retrieved.any
401Authentication required.
403System Admin access required.

Open in Swagger (opens in a new tab)

API usage statistics

GET/api/admin/monitoring/usage

Returns request counts aggregated by period, project, and endpoint.

Authentication: Admin session token (Authorization: Bearer <token>)

Parameters

NameInTypeRequiredDescription
periodquery"7d" or "30d" or "90d"noTime period (default 30d)
projectIdquerystringnoFilter by project ID

Responses

StatusDescriptionBody
200Usage statistics retrieved.any
400Invalid query parameters.
401Authentication required.
403System Admin access required.

Open in Swagger (opens in a new tab)

Source: apps/api/openapi.json.