docs/api.md
REST V1 is mounted under /v1; legacy worker routes remain under /api.
Available beta endpoints:
GET /healthzGET /v1/infoGET /v1/projectsPOST /v1/projectsGET /v1/projects/:idPOST /v1/sessions/startPOST /v1/sessions/:id/endGET /v1/sessions/:idPOST /v1/eventsPOST /v1/events/batchGET /v1/events/:idPOST /v1/memoriesGET /v1/memories/:idPATCH /v1/memories/:idPOST /v1/searchPOST /v1/contextGET /v1/audit?projectId=<id>When CLAUDE_MEM_AUTH_MODE=api-key, send Authorization: Bearer <key>. Read endpoints require memories:read; write endpoints require memories:write.
POST /v1/events accepts two query flags that control observation generation:
generate=false — write the event but do not enqueue a generation job.wait=true — return the generationJob descriptor in the response, so
callers can poll GET /v1/jobs/:id for completion.Without wait=true, the response includes the new event row and a best-
effort generationJob field. With wait=true, the generationJob field is
always populated (or null only when generation was explicitly disabled).
The actual provider call happens in a separate BullMQ worker process
(claude-mem server worker start); the HTTP path never blocks on a
provider response.