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

# Catalogs API

## Get Catalogs

> Retrieves a list of available catalogs for the authenticated user.

```json
{"openapi":"3.1.0","info":{"title":"Dynamic Mockups Catalog API","version":"1.0"},"servers":[{"url":"https://app.dynamicmockups.com/api/v1"}],"security":[{"apiKeyAuth":[]}],"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"API key required for authentication."}}},"paths":{"/catalogs":{"get":{"summary":"Get Catalogs","description":"Retrieves a list of available catalogs for the authenticated user.","operationId":"getCatalogs","parameters":[{"in":"header","name":"Accept","required":true,"schema":{"type":"string","enum":["application/json"]},"description":"The request must accept JSON responses."},{"in":"header","name":"x-api-key","required":true,"schema":{"type":"string"},"description":"API key required for authentication."}],"responses":{"200":{"description":"A list of catalogs retrieved successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"uuid":{"type":"string","description":"The UUID of the catalog."},"name":{"type":"string","description":"The name of the catalog."},"type":{"type":"string","description":"The type of the catalog (e.g., custom, default)."},"created_at":{"type":"string","format":"date-time","description":"The creation time of the catalog."},"created_at_timestamp":{"type":"integer","description":"The creation time of the catalog in UNIX timestamp format."}}}},"success":{"type":"boolean","description":"Indicates if the operation was successful."},"message":{"type":"string","description":"A message about the operation."}}}}}},"400":{"description":"Bad request due to invalid input parameters."},"401":{"description":"Unauthorized request, invalid or missing API key."}}}}}}
```

Export OpenAPI specification for the Get Mockups API

## Create Catalog

> Creates a custom catalog in the workspace bound to the API key. Keep the returned catalog UUID and pass it as catalog\_uuid when creating collections for that seller store. Requests are not idempotent; retrying a request can create another catalog with the same name.

```json
{"openapi":"3.1.0","info":{"title":"Dynamic Mockups Catalog API","version":"1.0"},"servers":[{"url":"https://app.dynamicmockups.com/api/v1"}],"security":[{"apiKeyAuth":[]}],"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"API key required for authentication."}}},"paths":{"/catalogs":{"post":{"summary":"Create Catalog","description":"Creates a custom catalog in the workspace bound to the API key. Keep the returned catalog UUID and pass it as catalog_uuid when creating collections for that seller store. Requests are not idempotent; retrying a request can create another catalog with the same name.","operationId":"createCatalog","parameters":[{"in":"header","name":"Accept","required":true,"schema":{"type":"string","enum":["application/json"]},"description":"The request must accept JSON responses."},{"in":"header","name":"x-api-key","required":true,"schema":{"type":"string"},"description":"API key required for authentication."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name"],"properties":{"name":{"type":"string","minLength":1,"maxLength":255,"description":"The name of the custom catalog to create."}}}}}},"responses":{"200":{"description":"The custom catalog was created successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"uuid":{"type":"string","format":"uuid","description":"Use this catalog UUID as catalog_uuid when creating collections or filtering catalog content."},"name":{"type":"string"},"type":{"type":"string","enum":["custom"]},"created_at":{"type":"string","description":"The creation time of the catalog."},"created_at_timestamp":{"type":"integer","description":"The creation time of the catalog in UNIX timestamp format."}}},"success":{"type":"boolean"},"message":{"type":"string"}}}}}},"400":{"description":"The workspace is not eligible to create custom catalogs, or the catalog could not be created."},"401":{"description":"The API key is missing or invalid, or its user no longer has access to the key-bound workspace."},"422":{"description":"The name is missing, empty, or longer than 255 characters."}}}}}}
```

{% file src="/files/2YE9WZOTD0JOUZL1W7sp" %}

### Use catalog\_uuid to filter collections and mockups

Catalogs are powerful and give you more flexibility and organization in your projects.

Use the Catalog UUID as `catalog_uuid` an optional query parameter in the [Get Mockups API](/api-reference/get-mockups-api.md)  and [Collections API](/api-reference/get-collections-api.md) to list mockups and collections that belong to the provided catalog UUID.

This way, you can list only specific mockups and collections from the chosen catalog and switch between them as needed.

### Example Use Cases

There are many use cases where you can find the catalog useful:

#### **Multiple stores**

You run several e-commerce stores and want each store to show only its own mockups and collections.

#### **Season-specific catalogs**

You keep separate catalogs for different seasons so you can quickly switch between winter and summer mockups.

**Client-based catalogs**\
Agencies working with many clients can store each client’s collections and mockups in their own dedicated catalog for cleaner organization.

**Campaign-based catalogs**\
For marketing teams, each major campaign (e.g., “Back to School,” “Halloween,” “Black Friday”) can get its own catalog of relevant mockups and collections.

**Platform-specific catalogs**\
If you publish to multiple platforms like Etsy, Shopify, Amazon, or WooCommerce, you may want different mockup sets optimized for each platform’s image style and requirements.

**Experimental or beta content**\
If you test new mockups or designs, keep them in a “Beta” or “Experimental” catalog that doesn’t affect the main production workflow.

**Different membership access**\
Some mockups may be restricted to specific users or membership tiers; you can keep that in a separate catalog to control how it’s accessed.

[Tell us](/getting-started/how-can-i-get-support.md) about your use case and how the catalog feature fits into your workflow.
