---
title: "Compute consolidation candidates; optionally execute (execute=true)."
method: POST
path: "/v1/memories/consolidate"
tags: ["Lifecycle"]
---

# Compute consolidation candidates; optionally execute (execute=true).

`POST /v1/memories/consolidate`

## Request body

- object
  - `execute` boolean
  - `user_id` string, required — Required. user_id.

## Response `200`

Consolidation result.

- union — Consolidation result — scan or execute.
  - object — Consolidation dry-run (execute=false).
    - `clusters` object[], required
      - `avg_affinity` number, required
      - `member_contents` string[], required
      - `member_count` number, required
      - `member_ids` string[], required
    - `clusters_found` number, required
    - `memories_in_clusters` number, required
    - `memories_scanned` number, required
  - object — Consolidation execution result (execute=true).
    - `clusters_consolidated` number, required
    - `consolidated_memory_ids` string[], required
    - `memories_archived` number, required
    - `memories_created` number, required

## Other responses

- `400` — Input validation error
- `500` — Internal server error
- `502` — Upstream AI provider returned an unrecoverable failure (auth, non-retryable 4xx).
- `503` — Upstream AI provider is rate-limited, quota-exhausted, or returned 5xx; consult `retryable`.

---

[API](https://skmtc.dev/atomicstrata/apis/atomicmemory-http-api.md) · [All operations](https://skmtc.dev/atomicstrata/apis/atomicmemory-http-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/atomicstrata/atomicmemory-http-api/revisions/d501daa39bb2/schema)
