---
title: "Create a new project within an organization, assigning creator as Project Admin"
method: POST
path: "/projects"
---

# Create a new project within an organization, assigning creator as Project Admin

`POST /projects`

## Request

- Base URL: `https://api.ionworks.com`
- URL: `https://api.ionworks.com/projects`
- Auth: none declared

## Request body

- CreateProject
  - `name` string, required: The name of the project.
  - `description` string, nullable: An optional description for the project.

## Response `201`

Successful Response

- Project
  - `name` string, required: The name of the project.
  - `description` string, nullable: An optional description for the project.
  - `id` string, required: The unique identifier for the project.
  - `organization_id` string, required: The ID of the organization this project belongs to.
  - `created_at` string, date-time, required: Timestamp of when the project was created.
  - `updated_at` string, date-time, required: Timestamp of when the project was last updated.
  - `created_by` string, nullable: User ID of the creator.
  - `my_role` string, nullable: The caller's role in the project, or null if they are not a member.
  - `my_permissions` string[]: The permission actions the caller's project role grants, e.g. ``pipeline:read``. Empty if they are not a member.

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-30** `fb09ebb2c64e`: 1 warning, 2 info
  - removed the optional property `user_project_roles` from the response with the `201` status
  - added the optional property `my_permissions` to the response with the `201` status
  - added the optional property `my_role` to the response with the `201` status

[Operation history](https://skmtc.dev/ionworks/apis/ionworks-api/changes/projects/post.md)

---

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