# Create Collection

POST /api/v2/projects/{projectId}/knowledge/collections

Creates a collection: the folder that groups articles in a help center's navigation. Collections can nest via `parentId`, up to 3 levels deep. Set `icon` to a Lucide icon name, an emoji, or an https://storage.saasco.com URL, or send `iconImage` to upload an image file the same way the product icon picker does.

## Request

- projectId: string, path, required — ID of the project that will own the collection.
- helpCenterId: string, required — ID of this project's help center. Use knowledge_getHelpCenter, and knowledge_createHelpCenter if that returns null.
- name: string, required
- description: string
- icon: string — Lucide icon name (for example book-open), an emoji, or a public storage URL (https://storage.saasco.com/...). Send iconImage to upload an image file instead.
- iconImage: object — Image file to upload as the collection icon, using the same project image upload as the product icon picker. The stored icon becomes the public storage URL. When set, this replaces icon.
  - contentType: string, required — Image MIME type, for example image/png or image/svg+xml.
  - dataBase64: string, required — Base64-encoded image bytes. A data: URL is also accepted.
  - fileName: string — File name including the extension, for example analytics.svg.
- parentId: string
- url: string

## Response

- 200: Successful response
  - createdAt: string, required
  - helpCenterId: string, required
  - id: string, required
  - name: string, required
  - order: integer, required
  - projectId: string, required
  - updatedAt: string, required
  - description: string
  - icon: string
  - parentId: string
  - url: string
- 400: Invalid input data
- 401: Authorization not provided
- 403: Insufficient access
- 500: Internal server error
