Writing memories

Store a conversation turn

POST/api/v1/memory/store-turn

In the SDKs: add_turn

One user + assistant exchange into short-term and long-term memory.

Authentication

Every call carries your API key in an X-API-Key header. Keys are created in the console.

X-WOS-Modeloptional

Picks the memory model that answers. Omit it and the account default is used.

Idempotency-Keyoptional

Makes a retry safe: the same key returns the first result instead of writing twice.

Request body

JSON, required. Out-of-range values are refused with a 400 rather than quietly clamped.

user_id string required

The store to operate on. Stores are explicit: create one first or use the built-in "default".

user_msg string required

The person’s words. Empty string = store nothing for this side.

assistant_msg string required

The assistant’s reply. Empty string = store nothing for this side.

Returns

The 200 body. Fields nested one level are shown as parent.child.

status string

Example

cURL
curl -X POST https://api.wontopos.com/api/v1/memory/store-turn \
  -H "X-API-Key: $WOS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"user_id":"alice","user_msg":"I switched to tea, coffee wrecks my sleep","assistant_msg":"Noted — tea from now on."}'

Status codes

StatusMeaning
200Success.
401Missing or invalid API key.
404Store (user_id) does not exist. Create it first: POST /api/v1/memory/collection.
429Rate limited (per-account, per-tier RPM). Retry after the indicated delay.

Rate limits per tier and the full status list are in Errors & limits.

In the SDKs

The Python, TypeScript, and Rust SDKs wrap this endpoint so you do not build the request by hand — pip install wontopos, npm i wontopos, or cargo add wontopos, then the method list is on the SDK reference. A coding agent can take the whole API in one file at llms.txt, or over MCP with npx -y wontopos-mcp.