Connect
REST API
Every memory operation is available over plain HTTP at https://api.kognite.dev — for backends, cron jobs, and agents that don’t speak MCP. Same store, same scopes as the MCP gateway.
Authentication
Pass an API key as a Bearer token. Create keys in the dashboard; the key determines the scope every request reads and writes.
Authorization: Bearer YOUR_KEYAdd a memory
POST /api/memories — persist a single durable fact. Returns 201 with the created record.
curl -X POST https://api.kognite.dev/api/memories \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Cristian deploys to Hetzner, never Railway.",
"kind": "preference",
"metadata": { "project": "missioncontrol" }
}'| Field | Type | Required | Notes |
|---|---|---|---|
content | string | yes | The fact to store. |
kind | string | no | Defaults to fact. See kinds. |
metadata | object | no | Arbitrary tags stored with the memory. |
Search memories
GET /api/memories?query=… — hybrid semantic + full-text search. Omit query to list recent memories. Returns { data: [...], meta: { total, limit, offset } }.
curl -s "https://api.kognite.dev/api/memories?query=where%20do%20I%20deploy&limit=5" \
-H "Authorization: Bearer YOUR_KEY"| Param | Type | Notes |
|---|---|---|
query | string | Natural-language search. If omitted, lists recent memories. |
limit | number | 1–100, default 20. |
offset | number | For paging the list view. |
Fetch & delete
GET /api/memories/:id returns a single memory. DELETE /api/memories/:id soft-deletes it (recoverable from the dashboard).
Ingest an episode
POST /api/memories/ingest — store a whole conversation and auto-extract atomic facts from it. This is the HTTP equivalent of the episode_log tool.
curl -X POST https://api.kognite.dev/api/memories/ingest \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"messages": [
{ "speaker": "user", "content": "I moved the DB to Postgres 16 last week." },
{ "speaker": "assistant", "content": "Noted — Postgres 16 as of last week." }
],
"extract": true,
"store_raw": true
}'extract (default true) forms atomic memories; store_raw (default true) keeps the verbatim turns for precise recall.
Assemble context
POST /api/context/assemble — one call that returns a token-budgeted bundle of the most relevant memories (plus optional skills and graph neighbours) for a query.
curl -X POST https://api.kognite.dev/api/context/assemble \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "query": "what do I know about the deploy setup?", "token_budget": 2000 }'Errors & limits
Errors return a JSON body of the shape { "error": { "code", "message" } } with a matching HTTP status:
| Status | Meaning |
|---|---|
401 | Missing or invalid Bearer key. |
402 | Monthly memory-operation quota exceeded — upgrade or wait for the reset. |
413 | Payload too large (content or message batch over the limit). |
422 | Validation failed (e.g. missing content or query). |
429 | Rate limited — back off and retry after the Retry-After header. |
Each successful operation counts as one memory operation against your plan quota. See pricing for per-plan limits.