Skip to main content

Admin: Logs

View and manage application-level and third-party API logs. Useful for debugging AI generation issues or auditing activity.

Endpoints overview​

MethodEndpointPermissionDescription
GET/api/logsadmin:logs:viewGet application logs
GET/api/logs/llm-dumpadmin:logs:viewGet LLM request/response dump
GET/api/logs/elevenlabs-dumpadmin:logs:viewGet ElevenLabs API dump
DELETE/api/logsadmin:logs:clearClear all logs

Endpoints​

Get application logs​

GET /api/logs — Auth required, Permission: admin:logs:view

Returns structured application logs from the in-memory log buffer.

Query params (all optional)

ParamTypeDescription
levelnumberMinimum pino log level: 10 trace, 20 debug, 30 info, 40 warn, 50 error, 60 fatal
limitnumberMax entries to return (default: 200, max: 500)

Response — 200

{
"entries": [
{
"level": 30,
"levelName": "info",
"time": 1714560000000,
"msg": "Episode created",
"episodeId": "ep-uuid-001",
"reqId": "req-abc123"
},
{
"level": 50,
"levelName": "error",
"time": 1714560010000,
"msg": "LLM request failed",
"err": { "message": "Timeout" },
"reqId": "req-def456"
}
],
"total": 2
}

Get LLM request/response dump​

GET /api/logs/llm-dump — Auth required, Permission: admin:logs:view

Returns the full request and response payload for a specific LLM API call. Useful for diagnosing unexpected AI output.

Query params

ParamTypeRequiredDescription
reqIdstringyesRequest ID from a log entry

Response — 200 — JSON file download (Content-Disposition: attachment)

{
"reqId": "req-abc123",
"endpoint": "ideas",
"request": { "model": "gpt-4o", "messages": [ /* ... */ ] },
"response": { "choices": [ /* ... */ ] },
"durationMs": 1430
}

Get ElevenLabs API dump​

GET /api/logs/elevenlabs-dump — Auth required, Permission: admin:logs:view

Returns the full request and response payload for a specific ElevenLabs API call.

Query params

ParamTypeRequiredDescription
reqIdstringyesRequest ID from a log entry

Response — 200 — JSON file download (same structure as LLM dump)


Clear all logs​

DELETE /api/logs — Auth required, Permission: admin:logs:clear

Clears the in-memory log buffer.

Response — 200

{ "ok": true }
caution

This only clears the in-memory buffer for the current process. Persisted dump files on disk are not affected.