---
title: "Create a catalog"
method: PUT
path: "/catalogs"
tags: ["Catalogs"]
---

# Create a catalog

`PUT /catalogs`

## Query parameters

- `name` string, required
- `path` string, required
- `type` 'local' | 'beets' | 'remote' | 'subsonic' | 'seafile' | 'beetsremote'
- `media_type` string
- `file_pattern` string
- `folder_pattern` string
- `username` string
- `password` string

## Response `200`

Catalog object

- CatalogObject
  - `id` string, required
  - `name` string, nullable, required
  - `type` string, nullable, required
  - `gather_types` string, nullable, required
  - `enabled` boolean, required
  - `last_add` integer, required
  - `last_clean` integer, nullable, required
  - `last_update` integer, required
  - `path` string, required
  - `rename_pattern` string, nullable, required
  - `sort_pattern` string, nullable, required

## Other responses

- `400` — Ampache API error response payload.

## Changes

- **2026-07-21** `2ff18e50dcc1` — 11 info
  - added the required property `enabled` to the response with the `200` status
  - added the required property `gather_types` to the response with the `200` status
  - added the required property `id` to the response with the `200` status
  - added the required property `last_add` to the response with the `200` status
  - …7 more
- **2026-07-20** `531d5bc1344e` — 1 info
  - `query` request parameter `password` was deprecated
- **2026-07-17** `9abb9bf6d3bf` — 1 info
  - removed the non-success response with the status `400`
- **2026-06-25** `7ed7a764efd9` — 1 info
  - added the non-success response with the status `400`
- **2026-02-24** `3c57979a295f` — 1 info
  - endpoint added

[Full history](https://skmtc.dev/ampache/apis/ampache-rest-api/changes/catalogs/put.md)

---

[API](https://skmtc.dev/ampache/apis/ampache-rest-api.md) · [All operations](https://skmtc.dev/ampache/apis/ampache-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ampache/ampache-rest-api/revisions/2ff18e50dcc1/schema)
