Skip to main content

REST / Gateway

Use REST when you want explicit memory operations. Use the OpenAI-compatible gateway when your client already speaks chat completions or responses APIs.

Registry contract

This section is generated from integrations/agent_integrations.registry.json. Edit the registry or generator, not this block.

FieldValue
Integration IDrest
LabelREST / Gateway
Tierdirect_client
Setup moderest_gateway
Agent IDrest
App IDapi
Source app / actorsource_app=api, agent_id=rest; key metadata wins over request body hints
Default scopeown
Config pathsenvironment variables, custom client config
Capabilitiesmemory.read, memory.write, memory.recall, agent.context, agent.writeback, evidence.read, courtroom.read
Supported toolsREST /api/v1, OpenAI-compatible /v1/chat/completions, OpenAI-compatible /v1/responses

Capture policy

Direct clients must send explicit source_app, agent_id, memory_plane, and container_tag metadata; writeback still passes through lifecycle gates.

Install command(s)

curl {{API_V1_BASE_URL}}/stats?container_tag={{CONTAINER_TAG}} -H "Authorization: Bearer {{KEY_REF}}"

Verify command(s)

GET /api/v1/stats
POST /api/v1/memories/search
POST /api/v2/containers/{{CONTAINER_TAG}}/agent/context

Environment

{
"UNIFIED_MEMORY_API_KEY": "{{KEY_ENV_REF}}",
"UNIFIED_MEMORY_CONTAINER": "{{CONTAINER_TAG}}",
"UNIFIED_MEMORY_URL": "{{EDGE_BASE_URL}}"
}

Risk notes

  • Scoped REST client keys default to own-agent visibility; agent_scope=all is admin/operator-only.
  • Every request must include the canonical container unless an admin grants a separate workspace.
  • Use edge for bearer auth and origin only for HMAC-signed internal traffic.

Official upstream docs

https://modelcontextprotocol.io/specification/2025-03-26/basic/transports

Scope and capabilities

SettingValue
Source apprest or client-specific
Default containerjeethendra
Default scopeown for agent keys
API basehttps://edge-api.jithendranara.dev/api/v1
Gateway basehttps://edge-api.jithendranara.dev

Verify key access

curl "https://edge-api.jithendranara.dev/api/v1/stats?container_tag=jeethendra" \
-H "Authorization: Bearer <scoped-key>"

Retain a fact

curl https://edge-api.jithendranara.dev/api/v2/containers/jeethendra/retain \
-H "Authorization: Bearer <scoped-key>" \
-H "Content-Type: application/json" \
-d '{"content":"UnifiedMemory docs are hosted at docs.jithendranara.dev.","source":"rest"}'

Recall memory

curl https://edge-api.jithendranara.dev/api/v2/containers/jeethendra/recall \
-H "Authorization: Bearer <scoped-key>" \
-H "Content-Type: application/json" \
-d '{"query":"Where are the docs hosted?","limit":5,"trust_policy":"balanced"}'

Gateway call

curl https://edge-api.jithendranara.dev/v1/responses \
-H "Authorization: Bearer <scoped-key>" \
-H "Content-Type: application/json" \
-d '{"model":"minimax/MiniMax-M3","input":"What should I remember about docs?","memory":{"container_tag":"jeethendra"}}'

Risk notes

  • Use scoped keys for clients. Keep admin keys out of application code.
  • Do not send raw credentials, cookies, or private logs as memory content.
  • If you need deletion/forget behavior, verify the key capability first.