---
title: "List repositories for the authenticated user"
method: GET
path: "/user/repos"
tags: ["repos"]
---

# List repositories for the authenticated user

`GET /user/repos`

Lists repositories that the authenticated user has explicit permission (`:read`, `:write`, or `:admin`) to access.

The authenticated user has explicit permission to access repositories they own, repositories where they are a collaborator, and repositories that they can access through an organization membership.

## Query parameters

- `visibility` 'all' | 'public' | 'private'
- `affiliation` string
- `type` 'all' | 'owner' | 'public' | 'private' | 'member'
- `sort` 'created' | 'updated' | 'pushed' | 'full_name'
- `direction` 'asc' | 'desc'
- `per_page` integer
- `page` integer
- `since` string, date-time
- `before` string, date-time

## Response `200`

Response

- Repository[]
  - `id` integer, required — Unique identifier of the repository
  - `node_id` string, required
  - `name` string, required — The name of the repository.
  - `full_name` string, required
  - `license` NullableLicenseSimple, nullable, required — License Simple
    - `key` string, required
    - `name` string, required
    - `url` string, uri, nullable, required
    - `spdx_id` string, nullable, required
    - `node_id` string, required
    - `html_url` string, uri
  - `organization` NullableSimpleUser, nullable — A GitHub user.
    - `name` string, nullable
    - `email` string, nullable
    - `login` string, required
    - `id` integer, required
    - `node_id` string, required
    - `avatar_url` string, uri, required
    - `gravatar_id` string, nullable, required
    - `url` string, uri, required
    - `html_url` string, uri, required
    - `followers_url` string, uri, required
    - `following_url` string, required
    - `gists_url` string, required
    - `starred_url` string, required
    - `subscriptions_url` string, uri, required
    - `organizations_url` string, uri, required
    - `repos_url` string, uri, required
    - `events_url` string, required
    - `received_events_url` string, uri, required
    - `type` string, required
    - `site_admin` boolean, required
    - `starred_at` string
  - `forks` integer, required
  - `permissions` object
    - `admin` boolean, required
    - `pull` boolean, required
    - `triage` boolean
    - `push` boolean, required
    - `maintain` boolean
  - `owner` SimpleUser, required — A GitHub user.
    - `name` string, nullable
    - `email` string, nullable
    - `login` string, required
    - `id` integer, required
    - `node_id` string, required
    - `avatar_url` string, uri, required
    - `gravatar_id` string, nullable, required
    - `url` string, uri, required
    - `html_url` string, uri, required
    - `followers_url` string, uri, required
    - `following_url` string, required
    - `gists_url` string, required
    - `starred_url` string, required
    - `subscriptions_url` string, uri, required
    - `organizations_url` string, uri, required
    - `repos_url` string, uri, required
    - `events_url` string, required
    - `received_events_url` string, uri, required
    - `type` string, required
    - `site_admin` boolean, required
    - `starred_at` string
  - `private` boolean, required — Whether the repository is private or public.
  - `html_url` string, uri, required
  - `description` string, nullable, required
  - `fork` boolean, required
  - `url` string, uri, required
  - `archive_url` string, required
  - `assignees_url` string, required
  - `blobs_url` string, required
  - `branches_url` string, required
  - `collaborators_url` string, required
  - `comments_url` string, required
  - `commits_url` string, required
  - `compare_url` string, required
  - `contents_url` string, required
  - `contributors_url` string, uri, required
  - `deployments_url` string, uri, required
  - `downloads_url` string, uri, required
  - `events_url` string, uri, required
  - `forks_url` string, uri, required
  - `git_commits_url` string, required
  - `git_refs_url` string, required
  - `git_tags_url` string, required
  - `git_url` string, required
  - `issue_comment_url` string, required
  - `issue_events_url` string, required
  - `issues_url` string, required
  - `keys_url` string, required
  - `labels_url` string, required
  - `languages_url` string, uri, required
  - `merges_url` string, uri, required
  - `milestones_url` string, required
  - `notifications_url` string, required
  - `pulls_url` string, required
  - `releases_url` string, required
  - `ssh_url` string, required
  - `stargazers_url` string, uri, required
  - `statuses_url` string, required
  - `subscribers_url` string, uri, required
  - `subscription_url` string, uri, required
  - `tags_url` string, uri, required
  - `teams_url` string, uri, required
  - `trees_url` string, required
  - `clone_url` string, required
  - `mirror_url` string, uri, nullable, required
  - `hooks_url` string, uri, required
  - `svn_url` string, uri, required
  - `homepage` string, uri, nullable, required
  - `language` string, nullable, required
  - `forks_count` integer, required
  - `stargazers_count` integer, required
  - `watchers_count` integer, required
  - `size` integer, required — The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.
  - `default_branch` string, required — The default branch of the repository.
  - `open_issues_count` integer, required
  - `is_template` boolean — Whether this repository acts as a template that can be used to generate new repositories.
  - `topics` string[]
  - `has_issues` boolean, required — Whether issues are enabled.
  - `has_projects` boolean, required — Whether projects are enabled.
  - `has_wiki` boolean, required — Whether the wiki is enabled.
  - `has_pages` boolean, required
  - `has_downloads` boolean, required — Whether downloads are enabled.
  - `archived` boolean, required — Whether the repository is archived.
  - `disabled` boolean, required — Returns whether or not this repository disabled.
  - `visibility` string — The repository visibility: public, private, or internal.
  - `pushed_at` string, date-time, nullable, required
  - `created_at` string, date-time, nullable, required
  - `updated_at` string, date-time, nullable, required
  - `allow_rebase_merge` boolean — Whether to allow rebase merges for pull requests.
  - `template_repository` object, nullable
    - `id` integer
    - `node_id` string
    - `name` string
    - `full_name` string
    - `owner` object
      - `login` string
      - `id` integer
      - `node_id` string
      - `avatar_url` string
      - `gravatar_id` string
      - `url` string
      - `html_url` string
      - `followers_url` string
      - `following_url` string
      - `gists_url` string
      - `starred_url` string
      - `subscriptions_url` string
      - `organizations_url` string
      - `repos_url` string
      - `events_url` string
      - `received_events_url` string
      - `type` string
      - `site_admin` boolean
    - `private` boolean
    - `html_url` string
    - `description` string
    - `fork` boolean
    - `url` string
    - `archive_url` string
    - `assignees_url` string
    - `blobs_url` string
    - `branches_url` string
    - `collaborators_url` string
    - `comments_url` string
    - `commits_url` string
    - `compare_url` string
    - `contents_url` string
    - `contributors_url` string
    - `deployments_url` string
    - `downloads_url` string
    - `events_url` string
    - `forks_url` string
    - `git_commits_url` string
    - `git_refs_url` string
    - `git_tags_url` string
    - `git_url` string
    - `issue_comment_url` string
    - `issue_events_url` string
    - `issues_url` string
    - `keys_url` string
    - `labels_url` string
    - `languages_url` string
    - `merges_url` string
    - `milestones_url` string
    - `notifications_url` string
    - `pulls_url` string
    - `releases_url` string
    - `ssh_url` string
    - `stargazers_url` string
    - `statuses_url` string
    - `subscribers_url` string
    - `subscription_url` string
    - `tags_url` string
    - `teams_url` string
    - `trees_url` string
    - `clone_url` string
    - `mirror_url` string
    - `hooks_url` string
    - `svn_url` string
    - `homepage` string
    - `language` string
    - `forks_count` integer
    - `stargazers_count` integer
    - `watchers_count` integer
    - `size` integer
    - `default_branch` string
    - `open_issues_count` integer
    - `is_template` boolean
    - `topics` string[]
    - `has_issues` boolean
    - `has_projects` boolean
    - `has_wiki` boolean
    - `has_pages` boolean
    - `has_downloads` boolean
    - `archived` boolean
    - `disabled` boolean
    - `visibility` string
    - `pushed_at` string
    - `created_at` string
    - `updated_at` string
    - `permissions` object
      - `admin` boolean
      - `maintain` boolean
      - `push` boolean
      - `triage` boolean
      - `pull` boolean
    - `allow_rebase_merge` boolean
    - `temp_clone_token` string
    - `allow_squash_merge` boolean
    - `allow_auto_merge` boolean
    - `delete_branch_on_merge` boolean
    - `allow_update_branch` boolean
    - `allow_merge_commit` boolean
    - `subscribers_count` integer
    - `network_count` integer
  - `temp_clone_token` string
  - `allow_squash_merge` boolean — Whether to allow squash merges for pull requests.
  - `allow_auto_merge` boolean — Whether to allow Auto-merge to be used on pull requests.
  - `delete_branch_on_merge` boolean — Whether to delete head branches when pull requests are merged
  - `allow_update_branch` boolean — Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.
  - `allow_merge_commit` boolean — Whether to allow merge commits for pull requests.
  - `allow_forking` boolean — Whether to allow forking this repo
  - `subscribers_count` integer
  - `network_count` integer
  - `open_issues` integer, required
  - `watchers` integer, required
  - `master_branch` string
  - `starred_at` string
  - `anonymous_access_enabled` boolean — Whether anonymous git access is enabled for this repository

## Other responses

- `304` — Not modified
- `401` — Requires authentication
- `403` — Forbidden
- `422` — Validation failed, or the endpoint has been spammed.

---

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