> For the complete documentation index, see [llms.txt](https://docs.monolithforensics.com/monolith/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.monolithforensics.com/monolith/monolith-api/storage-api/summary.md).

# Summary

The Storage API manages **storage items** (preservations)—physical or logical storage devices (e.g. drives, media) that can be assigned to cases, located in offices, and audited.

**Base path:** `/storage` (relative to the Monolith API root; exact base URL depends on deployment).

All endpoints require API key authentication via the Monolith API middleware.

## Summary

| Method | Path                            | Description                                 |
| ------ | ------------------------------- | ------------------------------------------- |
| GET    | `/storage`                      | List storage (optional filters, pagination) |
| GET    | `/storage/:uuid`                | Get one storage item by UUID                |
| POST   | `/storage`                      | Create a storage item                       |
| POST   | `/storage/:uuid/assign-to-case` | Assign storage to a case                    |
| PATCH  | `/storage/:uuid`                | Update a storage item                       |
| DELETE | `/storage/:uuid`                | Delete a storage item                       |

***

## Error responses

* 400 Bad Request — Validation failed. Response includes `message` and `errors` (e.g. Zod validation details).
* 500 Internal Server Error — Server or database error. Response includes `message`.

***

## Authentication

All `/storage` routes are behind the Monolith API’s API key middleware. Include the required API key (e.g. header or query, as configured) on every request.
