---
title: "Lists access control project groups."
method: GET
path: "/api/project-groups"
tags: ["Projects", "GradleEnterprise", "Develocity"]
---

# Lists access control project groups.

`GET /api/project-groups`

## Request

- Base URL: `https://develocity.example.com`
- URL: `https://develocity.example.com/api/project-groups`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/develocity/apis/develocity-api/docs/api/project-groups/get.ts> (a function with typed inputs; its response is checked against the schema)

**<mark>Beta:</mark>** Returns a list of all project groups configured for project-level access control.
If there are a lot of project groups, then all pages will need to be retrieved in order to retrieve the full list of project groups.
The default number of project groups per page is 100.

## Query parameters

- `PageQuery` PageQuery
  - `pageNumber` integer: The index of the page to retrieve. The first page's index is zero.
  - `pageSize` integer: The maximum number of elements to include in the fetched page.

## Response `200`

A list of project groups configured for project-level access control.

- ProjectGroupsPage: A paged list of project groups configured for project-level access control in Develocity.
  - `content` ProjectGroup[], required: A list of project groups configured for project-level access control in Develocity.
    - `id` string, required: The unique identifier for the project group configured for project-level access control in Develocity. Must not contain whitespace.
    - `displayName` string: The label used when displaying the project group.
    - `description` string: The description of the project group.
    - `identityProviderAttributeValue` string: The value of an identity provider attribute this project group is associated with. Users who have this value in the identity provider attribute will be assigned this project group.
    - `projects` ProjectReference[]
      - `id` string, required: The unique identifier for the project. Must not contain whitespace.
  - `page` PageMetadata, required: Information about the current and available page of elements. Pages are returned from list operations which could contain a lot of elements. One page contains a subset of the available elements. API users can retrieve all pages in order to retrieve all of the available elements.
    - `number` integer, required: The index of the current page. Page indexes start at zero.
    - `size` integer, required: The number of elements in the current page.
    - `totalPages` integer, required: The total number of pages.
    - `totalElements` integer, required: The total number of elements across all pages.

## Other responses

- `403`: The authenticated user has insufficient permissions.
- `404`: No API key was specified in the request, the key has been revoked, or the user bearing the key lacks permissions for this operation.

---

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