01Authentication
Every request carries a Bearer token in the Authorization header. Keys are scoped to a single container by default; use a workspace-level key for cross-container audit work.
curl https://agentprizm.com/api/v1/agent/recall \ -H "Authorization: Bearer ap_••••" \ -H "Content-Type: application/json"
02POST /api/v1/agent/memories
Create one or more memories. Returns assigned IDs and any contradictions detected against existing memories. Send a single memory body, or batch with { memories: [...] }.
Request body
| Field | Type | Notes |
|---|---|---|
content | string | Required. The memory itself. |
type | enum | Required. fact · lesson · directive · preference · contact · bookmark |
containers | string[] | Optional. Containers this memory belongs to. |
tags | string[] | Optional. Free-form tags for filtering. |
source | enum | Optional. direct · conversation · capture · extraction · compaction |
validFrom | ISO 8601 | Optional. Defaults to creation time. |
validUntil | ISO 8601 | Optional. Marks the memory stale after this date. |
metadata | object | Arbitrary JSON, queryable. |
03POST /api/v1/agent/recall
Retrieve the most relevant memories for a query. Recall is hybrid semantic + keyword — set searchMode to semantic, keyword, or hybrid (the default). Filter by container, type, and time range.
{
"query": "when can we close?",
"containers": ["acme-co"],
"types": ["fact"],
"limit": 5,
"searchMode": "hybrid"
}{
"memories": [
{
"id": "mem_01H...",
"content": "Procurement freezes Dec 15 → Jan 5...",
"type": "fact",
"similarity": 0.94,
"containers": ["acme-co"],
"validUntil": "2026-12-31"
}
]
}04Memory object
Every memory has a stable ID, a confidence score (0–1), a type, and provenance. Updates create a new version, and contradictions shadow rather than overwrite. Read or edit a single memory at GET / PATCH / DELETE /api/v1/agent/memories/:id.
05GET /api/v1/agent/stats
Fetch usage stats and your plan limits — memories stored, recalls used, and remaining quota. Stats queries don't bill against your quota.
curl https://agentprizm.com/api/v1/agent/stats \
-H "Authorization: Bearer ap_••••"06Errors
| Code | Status | Meaning |
|---|---|---|
invalid_request | 400 | Malformed body or missing field. |
auth_failed | 401 | Bad or expired API key. |
forbidden | 403 | Key not scoped to this container. |
not_found | 404 | Memory or trace ID doesn't exist. |
quota_exhausted | 429 | Plan cap hit. See retry-after. |
rate_limited | 429 | Too many concurrent requests. |
server_error | 500 | Something on our end. Retries are safe. |
07Rate limits
Default rate limit is 100 RPS per API key, burstable to 500 for 10 seconds. Enterprise keys are negotiated. All endpoints honor the standard X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers.