Skip to content

API Overview

Base URL: http://localhost:8080

All responses are JSON. All request bodies use Content-Type: application/json.

No authentication is required when running locally.

MethodPathDescription
GET/healthHealth check
POST/api/v1/retainIngest content, extract memories
POST/api/v1/retain/batchBatch retain multiple items
POST/api/v1/recallSemantic search
POST/api/v1/reflectConsolidate memories
POST/api/v1/forgetRemove a memory from active queries
POST/api/v1/evictPermanently delete a memory (GDPR)
POST/api/v1/ingestBulk memory ingestion
GET/api/v1/memoriesList memories
GET/api/v1/memories/:idGet single memory
DELETE/api/v1/memories/:idDelete memory
GET/api/v1/memories/:id/childrenGet child memories
GET/api/v1/memories/:id/historyMemory change history
POST/api/v1/relationshipsFetch relationships for memory IDs
GET/api/v1/namespacesList namespaces
GET/api/v1/stats/memoriesMemory statistics
GET/api/v1/stats/consistencyData consistency check
POST/api/v1/admin/resetReset database (dev/test only)

All endpoints that return memories use this shape:

{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"content": "User prefers Neovim as their primary editor",
"layer": "fact",
"importance": 0.75,
"source": "conversation",
"namespace": "default",
"parent-id": null,
"display-title": "Editor preference"
}
FieldTypeDescription
idUUIDUnique memory identifier
contentstringThe stored knowledge
layerstringSemantic layer: "domain", "concept", "fact", "episode", or "summary"
importancefloat (0-1)How important this memory is
sourcestring or nullOrigin identifier
namespacestringMemory namespace (default: "default")
parent-idUUID or nullParent in the layer hierarchy
display-titlestring or nullShort title (present when generated)

See Memories for detailed endpoint documentation.