Quick-start endpoints up top — full OpenAPI 3.1 reference below. For guide-style docs see /docs; for the test harness see /sandbox.
Every call is one HTTP request. Auth is a Bearer token — grab yours from the console after signing in. Replace $REM_KEY in every snippet. Full schemas are in the OpenAPI reference below.
Store a memory. Pass any string — REM auto-classifies (note / error / dream / skill) based on key prefix.
curl https://remlabs.ai/v1/memory/set \
-H "Authorization: Bearer $REM_KEY" \
-H "Content-Type: application/json" \
-d '{
"key": "note:ideas-2026-04-23",
"value": "Ship the Karpathy-style memories view before Friday",
"namespace": "project:remlabs-web"
}'
Full-text + semantic search across your memories. Returns { memories: [...] }. q=* lists everything.
curl "https://remlabs.ai/v1/memory/search?q=karpathy&limit=20" \ -H "Authorization: Bearer $REM_KEY"
Kick off a Dream Engine consolidation across your recent captures. Returns a dream ID to poll.
curl https://remlabs.ai/v1/memory/dream/start \
-H "Authorization: Bearer $REM_KEY" \
-H "Content-Type: application/json" \
-d '{ "strategies": ["synthesize","pattern_extract","reflect"] }'
Poll a running dream. Status transitions: queued → running → complete. Entries stream back as the strategies land.
curl https://remlabs.ai/v1/memory/dream/status/drm_abc123 \ -H "Authorization: Bearer $REM_KEY"
Current cloud state of your memories — total count, last update, connected peers, and whether the local sync daemon is live.
curl https://remlabs.ai/v1/sync/status \ -H "Authorization: Bearer $REM_KEY"
Force a sync cycle between a local REM client and the cloud. Returns { ok, status }; sync_not_active when daemon is dormant.
curl -X POST https://remlabs.ai/v1/sync/trigger \ -H "Authorization: Bearer $REM_KEY"
Multiplayer memory sessions (optional — for real-time collaborative coding). Returns { sessions: [...] }.
curl https://remlabs.ai/v1/coding-sessions \ -H "Authorization: Bearer $REM_KEY"