---
title: "List repository teams"
method: GET
path: "/repos/{owner}/{repo}/teams"
tags: ["repos"]
---

# List repository teams

`GET /repos/{owner}/{repo}/teams`

Lists the teams that have access to the specified repository and that are also visible to the authenticated user.

For a public repository, a team is listed only if that team added the public repository explicitly.

OAuth app tokens and personal access tokens (classic) need the `public_repo` or `repo` scope to use this endpoint with a public repository, and `repo` scope to use this endpoint with a private repository.

## Path parameters

- `owner` string, required
- `repo` string, required

## Query parameters

- `per_page` integer
- `page` integer

## Response `200`

Response

- Team[]
  - `id` integer, required
  - `node_id` string, required
  - `name` string, required
  - `slug` string, required
  - `description` string, nullable, required
  - `privacy` string
  - `notification_setting` string
  - `permission` string, required
  - `permissions` object
    - `pull` boolean, required
    - `triage` boolean, required
    - `push` boolean, required
    - `maintain` boolean, required
    - `admin` boolean, required
  - `url` string, uri, required
  - `html_url` string, uri, required
  - `members_url` string, required
  - `repositories_url` string, uri, required
  - `type` 'enterprise' | 'organization', required — The ownership type of the team
  - `access_source` 'direct' | 'organization' | 'enterprise' — How the team's access to the repository was granted. This property is only present when the team is returned in a repository context, such as `GET /repos/{owner}/{repo}/teams`.
  - `organization_id` integer — Unique identifier of the organization to which this team belongs
  - `enterprise_id` integer — Unique identifier of the enterprise to which this team belongs
  - `parent` NullableTeamSimple, nullable, required — Groups of organization members that gives permissions on specified repositories.
    - `id` integer, required — Unique identifier of the team
    - `node_id` string, required
    - `url` string, uri, required — URL for the team
    - `members_url` string, required
    - `name` string, required — Name of the team
    - `description` string, nullable, required — Description of the team
    - `permission` string, required — Permission that the team will have for its repositories
    - `privacy` string — The level of privacy this team should have
    - `notification_setting` string — The notification setting the team has set
    - `html_url` string, uri, required
    - `repositories_url` string, uri, required
    - `slug` string, required
    - `ldap_dn` string — Distinguished Name (DN) that team maps to within LDAP environment
    - `type` 'enterprise' | 'organization', required — The ownership type of the team
    - `organization_id` integer — Unique identifier of the organization to which this team belongs
    - `enterprise_id` integer — Unique identifier of the enterprise to which this team belongs

## Other responses

- `404` — Resource not found

---

[API](https://skmtc.net/github/apis/github-v3-rest-api-2.md) · [All operations](https://skmtc.net/github/apis/github-v3-rest-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/github/github-v3-rest-api-2/versions/8ae6d0c8716e/schema)
