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

# Create a project

`POST /api/v1/projects`

## Request

- Base URL: `https://your-deployment.example.com`
- URL: `https://your-deployment.example.com/api/v1/projects`
- Auth: one of:
  - HTTP bearer
  - API key in header `x-api-key`

Creates a project owned by the caller, optionally grouping existing sessions and files in it. Every listed session and file must be readable by the caller. A project's `file_ids` and `session_ids` are shared with it: anyone the project is shared with can read every file and session it groups. Sharing the project later shares them too. Unknown body fields are rejected.

## Request body

- CreateProjectRequest
  - `name` string, required: Unique among your live projects.
  - `description` string, required
  - `session_ids` string[]: Sessions to group in the project. Each must be readable by the caller.
  - `file_ids` string[]: Files to group in the project. Each must be readable by the caller.

## Response `201`

The created project.

- CreateProjectResponse201
  - `id` string, required
  - `name` string, required
  - `description` string, required
  - `session_ids` string[], required: Sessions grouped in the project. Anyone the project is shared with can read them.
  - `file_ids` string[], required: Files grouped in the project. Anyone the project is shared with can read them.
  - `created_at` string, nullable, required: ISO 8601 timestamp.
  - `updated_at` string, nullable, required: ISO 8601 timestamp.

## Other responses

- `400`: A listed session or file does not exist or is not readable by the caller, or the body is not valid JSON. Nothing is created.
- `401`: Missing or invalid credentials.
- `403`: The API key lacks `projects:write`.
- `405`: The path does not serve this HTTP method.
- `422`: Request body failed validation, or you already have a live project with this `name`.
- `429`: Per-user rate limit exceeded.

---

[API](https://skmtc.dev/bike4mind/apis/bike4mind-api.md) · [All operations](https://skmtc.dev/bike4mind/apis/bike4mind-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bike4mind/apis/bike4mind-api/revisions/d437aaac22ac?raw)
