Skip to main content
All API endpoints are served under the /v1/ prefix when running plog serve.

Base URL

http://localhost:7600/v1

Authentication

When the server is started with --api-keys, all endpoints require a Bearer token:
curl -H "Authorization: Bearer your-api-key" http://localhost:7600/v1/events

Endpoints

Ingest

MethodPathDescription
POST/v1/eventsIngest a single event
POST/v1/batchIngest multiple events (207 on partial failure)

Query

MethodPathDescription
GET/v1/eventsList events with filters
GET/v1/events/:idGet a single event by ID
GET/v1/searchFull-text search
GET/v1/agentsList agents with event counts
GET/v1/statsAggregate statistics

Integrity

MethodPathDescription
GET/v1/verifyVerify hash chain
GET/v1/merkle/rootCompute Merkle root
GET/v1/exportExport verifiable package

Timestamping

MethodPathDescription
POST/v1/timestampRequest RFC 3161 timestamp
GET/v1/timestampsList stored timestamps
GET/v1/timestamps/verifyVerify latest timestamp

Policy

MethodPathDescription
POST/v1/policy/checkRun policy checks against the audit trail

Real-time

MethodPathDescription
GET/v1/streamWebSocket live event stream

Other

MethodPathDescription
GET/v1/dashboard/configDashboard feature configuration
POST/v1/tracesOTLP trace receiver (when --otlp is enabled)

Error handling

The API uses standard HTTP status codes:
StatusDescription
200Success
201Created (single event or full batch success)
207Multi-status (batch endpoint — partial failure)
400Bad request (validation error)
401Unauthorized (missing or invalid API key)
404Not found
500Internal server error