---
title: "Create project"
method: POST
path: "/v2/projects.createProject"
tags: ["projects"]
---

# Create project

`POST /v2/projects.createProject`

Create a project to group deployments and applications under a workspace-scoped slug.

The slug you provide is the stable, caller-defined handle used to reference this project in subsequent operations (get, update, delete). It must be unique within your workspace.

**Important**: The slug cannot collide with an existing project in your workspace. A duplicate slug returns a 409 conflict.

**Required Permissions**

Your root key must have the following permission:
- `project.*.create_project` (to create projects in your workspace)

## Request body

- V2ProjectsCreateProjectRequestBody
  - `name` string, required — Human-readable name for this project. Use a descriptive name like 'Payments Service' to identify its purpose.
  - `slug` string, required — Identifies a resource by either its unique ID or its slug. Accepts a prefixed ID (such as 'proj_' or 'app_') or a slug.

## Response `200`

Project created successfully. The response contains the project id used to reference it in subsequent operations.

- V2ProjectsCreateProjectResponseBody
  - `meta` Meta, required — Metadata object included in every API response. This provides context about the request and is essential for debugging, audit trails, and support inquiries. The `requestId` is particularly important when troubleshooting issues with the Unkey support team.
    - `requestId` string, required — A unique id for this request. Always include this ID when contacting support about a specific API request. This identifier allows Unkey's support team to trace the exact request through logs and diagnostic systems to provide faster assistance.
  - `data` V2ProjectsCreateProjectResponseData, required
    - `id` string, required — The unique identifier of the newly created project, generated by Unkey. Always begins with 'proj_' followed by a unique alphanumeric sequence.

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden - Insufficient permissions (requires `project.*.create_project`)
- `409` — Conflict - Project with this slug already exists
- `429` — Too Many Requests
- `500` — Internal server error

---

[API](https://skmtc.net/unkeyed/apis/unkey-api.md) · [All operations](https://skmtc.net/unkeyed/apis/unkey-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/unkeyed/unkey-api/revisions/4bd11a7252bc/schema)
