---
title: "Consolidate"
method: POST
path: "/api/v1/memory/consolidate"
tags: ["memory"]
---

# Consolidate

`POST /api/v1/memory/consolidate`

## Request

- Base URL: `https://core.mnemoverse.com`
- URL: `https://core.mnemoverse.com/api/v1/memory/consolidate`
- Auth: one of:
  - API key in header `X-Api-Key`
  - HTTP bearer

Run soft consolidation behind the explicit single-worker safety gate.

## Request body

- ConsolidateRequestSchema: Request body for guarded soft sleep consolidation.
  - `domain` string, nullable: Domain to consolidate (null = general).

## Response `200`

Successful Response

- ConsolidationResponseSchema: Response after running consolidation.
  - `domain` string, required: Domain that was consolidated.
  - `atoms_before` integer, required: Number of memories in the domain before consolidation, Vault secrets excluded.
  - `atoms_after` integer, required: Logical survivors after clustering, Vault secrets excluded; not physical row count in soft mode.
  - `prototypes_created` integer, required: Number of new prototype atoms created.
  - `singletons_protected` integer, required: Number of Von Restorff-protected singletons.
  - `compression_ratio` number, required: Logical survivor ratio atoms_after/atoms_before (0..1).
  - `duration_ms` number, required: Consolidation duration in milliseconds.

## Other responses

- `400`: Validation error
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not found
- `409`: Consolidation conflict; retry the request
- `422`: Validation Error
- `429`: Rate limited
- `500`: Internal server error
- `503`: Consolidation unavailable or an operator safety gate is unsatisfied

---

[API](https://skmtc.dev/mnemoverse/apis/mnemoverse-core.md) · [All operations](https://skmtc.dev/mnemoverse/apis/mnemoverse-core/llms.txt) · [OpenAPI document](https://skmtc.dev/mnemoverse/apis/mnemoverse-core/revisions/1f5e0048f017?raw)
