---
title: "Create project"
method: POST
path: "/projects"
tags: ["Projects"]
---

# Create project

`POST /projects`

Create a project in your workspace.

## Request body

- Project
  - `id` string, uuid, required — The project id.
  - `workspaceId` string, uuid, nullable, required — The workspace id.
  - `creatorId` string, uuid, nullable, required — The project creator id.
  - `name` string, required — The project name.
  - `dateCreated` string, date-time, required — The project creation date.
  - `dateUpdated` string, date-time, required — The project last updated date.
  - `description` string, nullable — The project description.
  - `source` 'web' | 'api' | 'null', nullable, required — The source of the project.
  - `taskType` 'llm-base' | 'tabular-classification' | 'tabular-regression' | 'text-classification', required — The task type of the project.
  - `versionCount` integer, required — The number of versions (commits) in the project.
  - `inferencePipelineCount` integer, required — The number of inference pipelines in the project.
  - `goalCount` integer, required — The total number of tests in the project.
  - `developmentGoalCount` integer, required — The number of tests in the development mode of the project.
  - `monitoringGoalCount` integer, required — The number of tests in the monitoring mode of the project.
  - `links` object, required — Links to the project.
    - `app` string, required
  - `gitRepo` GitRepo
    - `id` string, uuid, required
    - `gitId` integer, required
    - `dateConnected` string, date-time, required
    - `dateUpdated` string, date-time, required
    - `branch` string
    - `name` string, required
    - `private` boolean, required
    - `slug` string, required
    - `url` string, url, required
    - `rootDir` string
    - `projectId` string, uuid, required
    - `gitAccountId` string, uuid, required

## Response `201`

Status OK.

- Project
  - `id` string, uuid, required — The project id.
  - `workspaceId` string, uuid, nullable, required — The workspace id.
  - `creatorId` string, uuid, nullable, required — The project creator id.
  - `name` string, required — The project name.
  - `dateCreated` string, date-time, required — The project creation date.
  - `dateUpdated` string, date-time, required — The project last updated date.
  - `description` string, nullable — The project description.
  - `source` 'web' | 'api' | 'null', nullable, required — The source of the project.
  - `taskType` 'llm-base' | 'tabular-classification' | 'tabular-regression' | 'text-classification', required — The task type of the project.
  - `versionCount` integer, required — The number of versions (commits) in the project.
  - `inferencePipelineCount` integer, required — The number of inference pipelines in the project.
  - `goalCount` integer, required — The total number of tests in the project.
  - `developmentGoalCount` integer, required — The number of tests in the development mode of the project.
  - `monitoringGoalCount` integer, required — The number of tests in the monitoring mode of the project.
  - `links` object, required — Links to the project.
    - `app` string, required
  - `gitRepo` GitRepo
    - `id` string, uuid, required
    - `gitId` integer, required
    - `dateConnected` string, date-time, required
    - `dateUpdated` string, date-time, required
    - `branch` string
    - `name` string, required
    - `private` boolean, required
    - `slug` string, required
    - `url` string, url, required
    - `rootDir` string
    - `projectId` string, uuid, required
    - `gitAccountId` string, uuid, required

## Other responses

- `default` — Unexpected error.

---

[API](https://skmtc.net/openlayer/apis/openlayer-api.md) · [All operations](https://skmtc.net/openlayer/apis/openlayer-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openlayer/openlayer-api/versions/d0e74f00c900/schema)
