> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mixpeek.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Collection Lifecycle

> Move collections between hot, cold, and archived tiers — pay for fast vector search only where you need it, keep everything else restorable

Not every collection needs to serve low-latency vector search all the time. Seasonal campaigns, completed projects, and long-tail archives can move to cheaper tiers — without losing the data, and without re-processing anything to bring them back.

## Lifecycle states

| State                | Vector search                                                   | Storage                                                  | Restorable                              |
| -------------------- | --------------------------------------------------------------- | -------------------------------------------------------- | --------------------------------------- |
| `active` *(default)* | Fast, fully indexed                                             | Hot vector index                                         | —                                       |
| `cold`               | Evicted from the hot index; vectors preserved in object storage | Object-storage backup                                    | Yes — rehydrate to `active` at any time |
| `archived`           | Removed                                                         | Vectors permanently deleted; documents' metadata remains | No                                      |

Allowed transitions: `active → cold`, `active → archived`, `cold → active`, `cold → archived`. Archival is permanent — the vectors are deleted, not parked.

<Note>
  Going `cold` does not delete documents or metadata — it evicts the collection's vectors from the hot index after backing them up. Rehydrating restores search without re-running any extraction or embedding.
</Note>

## Check lifecycle status

```bash theme={null}
curl "https://api.mixpeek.com/v1/collections/{collection_id}/lifecycle" \
  -H "Authorization: Bearer $API_KEY" \
  -H "X-Namespace: my-namespace"
```

Returns the current state plus counts from both the hot index and the object-storage backup, so you can verify a transition completed.

## Transition a collection

```bash theme={null}
curl -X PATCH "https://api.mixpeek.com/v1/collections/{collection_id}/lifecycle" \
  -H "Authorization: Bearer $API_KEY" \
  -H "X-Namespace: my-namespace" \
  -H "Content-Type: application/json" \
  -d '{"lifecycle_state": "cold"}'
```

* **`cold`** evicts the collection from the vector store (vectors preserved via object storage).
* **`active`** (from `cold`) rehydrates — the backup is restored into the hot index.
* **`archived`** permanently removes the vectors.

<Warning>
  `archived` is irreversible for vectors. If there is any chance you'll search this collection again, use `cold` — restoring from cold is cheap; rebuilding from archive means re-processing the source objects.
</Warning>

## When to use each tier

* **`active`** — anything queried by production retrievers.
* **`cold`** — completed campaigns and historical projects you want *restorable on demand* (for example, an annual review): rehydrate, query, and send back to cold.
* **`archived`** — data you're retaining for record-keeping where the documents' metadata is enough and vector search will never be needed again.

## Related

* [Buckets & storage classes](/docs/platform/data-model) — tiering for the *source objects* (this page covers the *index* tier; the two are independent)
* [Manage data](/docs/vector-store/manage-data) — document-level operations
* [Deduplication & re-processing](/docs/processing/deduplication) — what happens if you do need to rebuild from source
