---
title: "Assign a group to the project"
method: POST
path: "/workspaces/{workspace_domain}/projects/{project_name}/groups"
tags: ["Project API"]
---

# Assign a group to the project

`POST /workspaces/{workspace_domain}/projects/{project_name}/groups`

## Path parameters

- `workspace_domain` string, required
- `project_name` string, required

## Request body

- AddProjectGroupRequest
  - `id` integer, required — The ID of the group
  - `permission_set` PermissionSetIdRequest, required — User permission set configuration
    - `id` integer, required — The ID of the permission set

## Response `201`

- ProjectGroupView
  - `url` string — API endpoint to GET this object
  - `html_url` string — Web URL to view this object in Buddy.works
  - `id` integer, required — The ID of the group
  - `name` string — The name of the group
  - `permission_set` PermissionSetView, required — User permission set configuration
    - `url` string — API endpoint to GET this object
    - `html_url` string — Web URL to view this object in Buddy.works
    - `name` string, required — The name of the permission set
    - `repository_access_level` 'DENIED' | 'READ_ONLY' | 'READ_WRITE' | 'MANAGE', required — The repository access level
    - `pipeline_access_level` 'DENIED' | 'READ_ONLY' | 'RUN_ONLY' | 'READ_WRITE', required — The pipeline access level
    - `sandbox_access_level` 'DENIED' | 'READ_ONLY' | 'RUN_ONLY' | 'READ_WRITE', required — The sandbox access level
    - `project_team_access_level` 'READ_ONLY' | 'MANAGE', required — The project team access level
    - `environment_access_level` 'DENIED' | 'MANAGE' | 'USE_ONLY', required — The environment access level
    - `artifact_access_level` 'DENIED' | 'READ_ONLY' | 'READ_WRITE' | 'MANAGE', required — The artifact access level
    - `routing_access_level` 'DENIED' | 'READ_ONLY' | 'MANAGE', required — The routing access level
    - `target_access_level` 'DENIED' | 'READ_ONLY' | 'USE_ONLY' | 'MANAGE', required — The target access level
    - `tunnel_agent_access_level` 'DENIED' | 'READ_ONLY' | 'USE_ONLY' | 'MANAGE', required — Tunnel agent access level
    - `note` string — Note for this resource
    - `agent_note` string — YAML note for AI agents operating on this resource
    - `id` integer, required — The ID of the permission set
    - `type` 'DEVELOPER' | 'READ_ONLY' | 'CUSTOM' | 'PROJECT_MANAGER' — The type of the permission set

## Changes

> 8 revisions in range; 3 could not be searched.

- **2026-08-04** `2426d67c249a` — 1 warning, 2 info
  - removed the optional property `permission_set/description` from the response with the `201` status
  - added the optional property `permission_set/agent_note` to the response with the `201` status
  - added the optional property `permission_set/note` to the response with the `201` status

[Change history](https://skmtc.dev/buddy/apis/buddy-api/changes/workspaces/:workspace_domain/projects/:project_name/groups/post.md)

---

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