REST API
All endpoints are mounted under the prefix you chose in urls.py
(/nocturne/ in the examples below).
Authentication
Two permission tiers:
view — superuser or user with
nocturne.view_nocturnepermissionadmin — superuser only
Endpoints
Health
GET /nocturne/api/health/?timeframe=1h
Returns system health summary for the given timeframe window.
Logs
GET /nocturne/api/logs/Paginated log entries. Accepts
?timeframe=,?service=,?level=,?search=. Response uses the light serializer (no stacktrace).GET /nocturne/api/logs/<id>/Full log entry including stacktrace.
POST /nocturne/api/logs/ingest/External log ingestion.
POST /nocturne/api/logs/<id>/analyse/Trigger AI root-cause analysis for a specific log entry.
Anomalies
GET /nocturne/api/anomalies/List anomaly events. Accepts
?timeframe=,?severity=,?resolved=.PATCH /nocturne/api/anomalies/<id>/Mark an anomaly as resolved. (admin)
POST /nocturne/api/detect/Run anomaly detection scan immediately. (admin)
Dashboard
GET /nocturne/api/dashboard/data/?timeframe=1hAll chart data in one response: error series, health scores, level distribution, recent anomalies, slowest endpoints, request volume, health trends.
Webhooks
GET /nocturne/api/webhooks/ List webhook configurations. (admin)
POST /nocturne/api/webhooks/ Create webhook configuration. (admin)
PUT /nocturne/api/webhooks/<id>/ Update webhook configuration. (admin)
DELETE /nocturne/api/webhooks/<id>/ Delete webhook configuration. (admin)
GET /nocturne/api/webhooks/events/ Delivery history. (view)
POST /nocturne/api/webhooks/test/ Send test ping to all active configs. (admin)
POST /nocturne/api/webhook/receive/ Simulated receiver endpoint. (admin)