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

# List Categories

> Retrieve all model categories with dynamic model counts.

## Authentication

<Note>
  This is a **public endpoint**. No authentication required.
</Note>

## Response

Returns an array of category objects with dynamic model counts.

<ResponseField name="categories" type="array">
  <Expandable title="Category Object">
    <ResponseField name="id" type="string">Unique category identifier.</ResponseField>
    <ResponseField name="name" type="string">Display name of the category.</ResponseField>
    <ResponseField name="description" type="string">Description of the category.</ResponseField>
    <ResponseField name="modelCount" type="number">Number of models in this category.</ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET https://api.muvi.video/v1/catalog/categories
  ```

  ```python Python theme={null}
  import requests

  response = requests.get("https://api.muvi.video/v1/catalog/categories")

  categories = response.json()
  for cat in categories:
      print(f"{cat['name']}: {cat['modelCount']} models")
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch("https://api.muvi.video/v1/catalog/categories");

  const categories = await response.json();
  categories.forEach(cat => {
    console.log(`${cat.name}: ${cat.modelCount} models`);
  });
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  [
    {
      "id": "video",
      "name": "Video",
      "description": "AI models for video generation and editing",
      "modelCount": 8
    },
    {
      "id": "image",
      "name": "Image",
      "description": "AI models for image generation and manipulation",
      "modelCount": 5
    }
  ]
  ```
</ResponseExample>
