---
title: "List group assignment sources for a project task"
method: GET
path: "/v3/projects/{taskId}/group-assignments"
tags: ["[v3] Projects"]
---

# List group assignment sources for a project task

`GET /v3/projects/{taskId}/group-assignments`

Returns all visible direct and inherited group assignment sources from the requested task hierarchy. The same groupId can occur more than once when it is assigned at multiple hierarchy levels. A null inheritedFromTaskId identifies an assignment created directly on the requested task; otherwise the value identifies the ancestor task providing that assignment. Descendant groups covered by withSubgroups are not expanded into additional rows.

## Path parameters

- `taskId` integer, required

## Response `200`

Direct and inherited group assignment sources, sorted by group ID and then from the requested task toward its ancestors.

- ProjectGroupAssignmentsResponse
  - `data` ProjectGroupAssignmentEffective[], required — Direct and inherited assignment sources. The same groupId can occur more than once when assignments exist at multiple levels of the task hierarchy.
    - `groupId` integer, required
    - `roleId` integer, required
    - `withSubgroups` boolean, required — Whether users from descendant groups are included by this assignment.
    - `inheritedFromTaskId` integer, nullable, required — Null for a direct assignment; otherwise the ancestor task that is the source of this assignment.

## Other responses

- `401` — Authentication is required.
- `403` — The caller cannot edit assignments for the selected task.
- `500` — Internal server error.

---

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