---
title: "Create project"
method: POST
path: "/v2/workspaces/{workspace_id}/projects"
tags: ["Projects"]
---

# Create project

`POST /v2/workspaces/{workspace_id}/projects`

## Path parameters

- `workspace_id` string, uuid, required — Id of the workspace that owns the resource.

## Headers

- `Idempotency-Key` string

## Request body

- CreateProjectBody
  - `name` string, required — The project's display name. Must be unique within the workspace.
  - `description` string, nullable
  - `instructions` string, nullable

## Response `201`

Successful Response

- ProjectDetail
  - `project_id` string, uuid, required — The project's unique identifier.
  - `name` string, required — The project's display name.
  - `status` 'active' | 'archived' | 'deleted', required
  - `object_count` integer, required — Number of library objects currently linked to this project.
  - `description` string, nullable — The project's long-form description, if set.
  - `instructions` string, nullable — Project-specific instructions that guide content created within it, if set.

## Other responses

- `401` — Unauthenticated — missing or invalid Bearer token.
- `403` — Forbidden — insufficient permissions, or the access token lacks the scope the operation requires.
- `404` — Resource not found.
- `409` — The request with this `Idempotency-Key` is still running — retry after the number of seconds in `Retry-After`.
- `422` — Invalid input parameters, or an `Idempotency-Key` reused for a different request.
- `429` — Rate limited — retry after the number of seconds in `Retry-After`.
- `500` — Internal server error.

---

[API](https://skmtc.dev/layer/apis/layer-rest-api.md) · [All operations](https://skmtc.dev/layer/apis/layer-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/layer/layer-rest-api/revisions/fafc779f9ba2/schema)
