Add memories
Extract and store memories from messages or raw content.
POST /v1/memories
Adds memories to a scope. By default FishMem infers durable facts from the
input (infer: true) rather than storing it verbatim. Set infer: false to
store the content as a single raw memory.
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
messages | array | one of messages/content | Chat messages, each { role, content } |
content | string | one of messages/content | Raw text to store |
user_id | string | no | User scope |
agent_id | string | no | Agent scope |
run_id | string | no | Run scope |
metadata | object | no | Arbitrary key-value metadata |
infer | boolean | no | Extract facts (default true); false stores raw |
Request
curl https://fishmem.com/v1/memories \
-H "Authorization: Bearer fm_..." \
-H "Content-Type: application/json" \
-d '{
"messages": [{"role": "user", "content": "I prefer dark mode."}],
"user_id": "alex"
}'Response
{
"results": [
{ "id": "mem_…", "memory": "Prefers dark mode", "event": "ADD" }
]
}Each result's event is one of ADD, UPDATE, or NOOP.
Credits
Inferred add (infer: true) costs 2 credits. Raw add (infer: false) costs
1 credit.
Errors
Returns the standard error shape. A missing or invalid key
returns 401 with "error": "INVALID_API_KEY".