The siftlogd REST API exposes signal history, the live event stream, and per-source health status over HTTP. It is the foundation for the SiftLog Android companion app and any custom integrations.
Enabling the API
The API is disabled by default. Users who never enable it have zero additional network surface. To enable:
api:
enabled: true
port: 8080
bind: 127.0.0.1 # change to 0.0.0.0 for remote access
api_key: YOUR_KEY # required -- siftlogd will not start without this
Authentication
All requests require the API key in the header:
Authorization: Bearer YOUR_KEY
Endpoints
GET /api/v1/signals
Recent signals. Supports ?since= (ISO 8601 timestamp), ?type=cascade|anomaly|silence, ?limit=.
{
"signals": [
{
"id": 42,
"created_at": "2026-03-30T03:14:22Z",
"signal_type": "cascade",
"service": "api-gateway",
"cascade_from": "auth-service",
"trace_id": "f8a21c",
"message": "auth-service -> api-gateway -> user-service"
}
]
}
GET /api/v1/sources
Per-source health status, last event time, and event rate.
{
"sources": [
{
"name": "auth-service",
"status": "green",
"last_event": "2026-03-30T03:14:22Z",
"rate_per_min": 847.0,
"baseline_per_min": 840.0
}
]
}
GET /api/v1/events
Windowed slice of the merged time-ordered event stream. Supports ?since=, ?limit=, ?signals_only=true.
GET /api/v1/status
Daemon version, uptime, total event count, active source count.
Privacy note
The API exposes signal metadata and event summaries — not raw log content. Raw log data never leaves siftlogd’s local processing pipeline regardless of API configuration.
Next: Troubleshooting
SiftLog Platform
Always-on log correlation daemon. Cascade, anomaly, and silence detection across every log source in your infrastructure.