Получить список репозиториев команды

GET /orgs/{org}/teams/{team_slug}/repos

Описание

Возвращает список репозиториев, к которым указанная команда имеет доступ и которые видны текущему авторизованному пользователю.

Команда определяется только внутри организации, указанной в параметре org. Команда с таким же slug в другой организации не используется.

Токен

Требуется токен с правами на Чтение для Организации.

Заголовки

ПараметрОбязательныйОписание
acceptНетТип содержимого ответа. Рекомендуется установить application/vnd.github+json

Параметры пути

ПараметрТипОбязательныйОписание
orgstringДаИдентификатор организации
team_slugstringДаSlug команды внутри указанной организации

Параметры запроса

ПараметрТипОбязательныйОписаниеПо умолчанию
pageintegerНетНомер страницы1
per_pageintegerНетКоличество репозиториев на странице, максимум 10030

Параметры sort и direction не поддерживаются этим методом.

Тело запроса

Данный метод не требует тела запроса.

Пример запроса

curl -X GET "https://api.gitverse.ru/orgs/acme/teams/backend-team/repos?page=1&per_page=30" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/vnd.github+json"

Ответ (200 OK)

Ответ содержит массив объектов репозитория в GitHub-like формате.

[
  {
    "id": 545,
    "name": "platform-api",
    "full_name": "acme/platform-api",
    "private": true,
    "owner": {
      "login": "acme",
      "id": 49,
      "avatar_url": "https://api.gitverse.ru/avatars/avatar_hash",
      "html_url": "https://gitverse.ru/acme",
      "type": "Organization"
    },
    "html_url": "https://gitverse.ru/acme/platform-api",
    "description": "API сервиса платформы",
    "fork": false,
    "url": "https://api.gitverse.ru/repos/acme/platform-api",
    "clone_url": "https://gitverse.ru/acme/platform-api.git",
    "ssh_url": "git@gitverse.ru:acme/platform-api.git",
    "default_branch": "main",
    "visibility": "private",
    "permissions": {
      "pull": true,
      "push": true,
      "admin": false
    }
  }
]

Если у команды нет доступных репозиториев или ни один из них не виден текущему пользователю, метод возвращает пустой массив.

Поля ответа

ПолеТипОписание
idintegerУникальный числовой идентификатор репозитория
namestringНазвание репозитория
full_namestringПолное имя репозитория в формате owner/repo
privatebooleanПризнак приватности репозитория
ownerobjectИнформация о владельце репозитория
owner.loginstringЛогин владельца или название организации
owner.idintegerИдентификатор владельца
owner.avatar_urlstringURL аватара владельца
owner.html_urlstringURL профиля владельца
owner.typestringТип владельца, например User или Organization
html_urlstringURL репозитория в GitVerse
descriptionstring или nullОписание репозитория
forkbooleanЯвляется ли репозиторий форком
urlstringURL репозитория в Public API
clone_urlstringURL для клонирования по HTTPS
ssh_urlstringURL для клонирования по SSH
default_branchstringИмя ветки по умолчанию
visibilitystringВидимость репозитория: public, private или internal
permissionsobjectПрава текущего пользователя на репозиторий
permissions.pullbooleanЕсть ли право на чтение
permissions.pushbooleanЕсть ли право на запись
permissions.adminbooleanЕсть ли права администратора

Полное описание поддерживаемых полей объекта репозитория приведено в методе GET /orgs/{org}/repos.

Коды ответа

КодСтатусОписание
200OKСписок репозиториев команды успешно получен
403ForbiddenНедостаточно прав на просмотр команды или ее репозиториев
404Not FoundОрганизация или команда не найдена

Пример тела ошибки

При ответе 403 тело ответа имеет следующий вид:

{
  "error": {
    "code": "FORBIDDEN",
    "documentation_url": "https://gitverse.ru/docs/developers/public-api/",
    "message": "Access denied",
    "status": 403
  }
}

Примечания

  1. Команда ищется только внутри организации, указанной в параметре org.
  2. В ответ включаются только репозитории, видимые текущему авторизованному пользователю.
  3. Slug команды передается в параметре team_slug; числовой идентификатор или глобальный поиск команды не используются.