The memory consolidation object
⚠️
Preview — this feature is being built; the design below is the spec.
The memory_consolidation object as the API returns it. Every field below appears in every response that returns this object; fields with no value are null rather than missing.
Example
{
"id": "mcj_01JCG6J8L0N2Q4S6U8W0",
"type": "memory_consolidation",
"store_id": "mem_01JC1A3C5E7G9J1L3N5Q",
"scope": "customer:*",
"strategies": [
"merge_duplicates",
"resolve_conflicts",
"expire_stale"
],
"dry_run": false,
"status": "succeeded",
"changes": {
"examined": 2318,
"merged": 41,
"rewritten": 9,
"expired": 133,
"unchanged": 2135
},
"usage": {
"input_tokens": 412880,
"output_tokens": 18406,
"cost_usd": "1.2530"
},
"created_at": "2026-11-05T02:00:00Z",
"finished_at": "2026-11-05T02:06:12Z",
"error": null,
"report_file_id": "file_01JCG7K9M1P3R5T7V9X1"
}Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique id of this object. |
type | string | The object type, always memory_consolidation. |
store_id | string | The memory store. |
scope | string | Scope it applies to. |
strategies | array | merge_duplicates folds near-identical memories into one; resolve_conflicts keeps the newest of two contradicting memories and rewrites the other; expire_stale sets expires_at on memories no session has read for stale_after_days. |
dry_run | boolean | When true, nothing changes and changes reports what would have happened; the proposed edits are in the job’s report file. |
status | string | queued, running, succeeded, failed or canceled. |
changes | object | Counts of memories examined, merged, rewritten, expired and left alone. |
usage | object | The model work the job did, billed like any request. |
created_at | string | When it was created, RFC 3339 UTC (some older objects use Unix seconds). |
finished_at | string | When it ended, or null. |
error | string or null | Set when something failed: code and message. |
report_file_id | string or null | Download with file content. |
Returned by
POST /v1/memory_stores/{store_id}/consolidations/{job_id}/cancelPOST /v1/memory_stores/{store_id}/consolidationsGET /v1/memory_stores/{store_id}/consolidationsGET /v1/memory_stores/{store_id}/consolidations/{job_id}
Was this page helpful?