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

# Create project

> Create a new test project inside a space.

Creates a new test project in the given space. Once created, you can add test suites, test cases, and test runs to the project.

<Info>
  You must hold write access to the target space to create a project.
</Info>

## Path parameters

<ParamField path="spaceSlug" type="string" required>
  The slug of the target space. Visible in the space URL.
</ParamField>

## Request body

<ParamField body="name" type="string" required>
  Display name for the test project.
</ParamField>

<ParamField body="description" type="string">
  Optional description of the test project.
</ParamField>

<ParamField body="icon" type="string" default="🧪">
  Emoji icon for the project. Defaults to `🧪`.
</ParamField>

## Response

<ResponseField name="id" type="string" required>
  Unique identifier of the newly created test project.
</ResponseField>

<ResponseField name="name" type="string" required>
  Display name of the test project.
</ResponseField>

<ResponseField name="description" type="string">
  Description of the test project, or `null` if not provided.
</ResponseField>

<ResponseField name="icon" type="string" required>
  Emoji icon for the project.
</ResponseField>

<ResponseField name="spaceId" type="string" required>
  UUID of the space this project belongs to.
</ResponseField>

<RequestExample>
  ```bash cURL theme={"dark"}
  curl -X POST "https://your-collabase.ch/api/v1/test-management/my-space" \
    -H "Authorization: Bearer cba_live_xYz123ABCD..." \
    -H "Content-Type: application/json" \
    -d '{
      "name": "Frontend QA",
      "icon": "🧪"
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json 201 theme={"dark"}
  {
    "id": "proj-abc123",
    "name": "Frontend QA",
    "description": null,
    "icon": "🧪",
    "spaceId": "4d71eb4d-3638-4173-8698-d883a6c2243f"
  }
  ```

  ```json 400 theme={"dark"}
  {
    "error": "Missing required field: name"
  }
  ```

  ```json 401 theme={"dark"}
  {
    "error": "Unauthorized"
  }
  ```

  ```json 403 theme={"dark"}
  {
    "error": "Forbidden"
  }
  ```
</ResponseExample>
