---
title: "Add members to a project"
method: POST
path: "/projects/{project_id}/members"
tags: ["Project"]
---

# Add members to a project

`POST /projects/{project_id}/members`

Add one or more members to a project (project owner only).

## Path parameters

- `project_id` integer, required

## Query parameters

- `cookie_name` string, nullable

## Request body

- ProjectMemberBulkIn
  - `members` ProjectMemberIn[], required — List of members to add to the project.
    - `user_id` integer, required — ID of the user to add to the project.
    - `role` string, required — Role to assign to the member (e.g. `owner` or `member`).

## Response `201`

Successful Response

- ProjectMember[]
  - `tenant_id` integer, required — ID of the tenant that owns the project membership.
  - `created_at` string, date-time — Timestamp when the membership was created.
  - `project_id` integer, required — ID of the project.
  - `user_id` integer, required — ID of the member user.
  - `role` string, required — Role of the user within the project.

## Other responses

- `401` — Missing or invalid authentication.
- `403` — Current user is not an owner of the project.
- `404` — No project exists with the given id.
- `422` — Validation Error

---

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