---
title: "Archive or restore multiple long-term memories"
method: POST
path: "/api/memory/bulk"
tags: ["Memory"]
---

# Archive or restore multiple long-term memories

`POST /api/memory/bulk`

## Request

- Base URL: `https://api.setluca.com`
- URL: `https://api.setluca.com/api/memory/bulk`
- Auth: one of:
  - API key in cookie `luca.session_token`
  - API key in header `x-api-key`
  - HTTP bearer

Archive or restore a list of memory ids in one call. The response says which ids were affected, so ids that no longer exist are just left out. If any id is a typed fact the call answers 409 `memory_fact_locked` and changes nothing.

**API key scopes:** `memory:write`. You also need an `Idempotency-Key` header.

## Headers

- `Luca-API-Version` '1'

## Request body

- MemoryBulkRequest
  - `action` 'archive' | 'restore', required
  - `ids` string[], required

## Response `200`

ok

- MemoryBulkResponse
  - `action` 'archive' | 'restore', required
  - `affected` integer, required
  - `ids` string[], required

## Other responses

- `400`: bad request
- `401`: unauthorized
- `409`: conflict
- `429`: rate limited
- `500`: internal error
- `503`: service unavailable

---

[API](https://skmtc.dev/setluca/apis/luca-api.md) · [All operations](https://skmtc.dev/setluca/apis/luca-api/llms.txt) · [OpenAPI document](https://skmtc.dev/setluca/apis/luca-api/revisions/90a200e4100b?raw)
