REM Labs API

Quick-start endpoints up top — full OpenAPI 3.1 reference below. For guide-style docs see /docs; for the test harness see /sandbox.

Download OpenAPI (JSON) Download Postman collection Try the sandbox → A2A agent card
TL;DR · The endpoints every REM integration uses

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.

POST/v1/memory/set

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"
  }'

GET/v1/memory/search?q=&limit=

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"

POST/v1/memory/dream/start

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"] }'

GET/v1/memory/dream/status/:id

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"

GET/v1/sync/status

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"

POST/v1/sync/trigger

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"

GET/v1/coding-sessions

Multiplayer memory sessions (optional — for real-time collaborative coding). Returns { sessions: [...] }.

curl https://remlabs.ai/v1/coding-sessions \
  -H "Authorization: Bearer $REM_KEY"
If the interactive reference does not load, grab the raw spec: /openapi.json  ·  Postman: /remlabs.postman_collection.json