5. GET /repos/{owner}/{repo}/branches — получить список веток

Описание

Возвращает список всех веток указанного репозитория с информацией о последнем коммите и защите веток. Поддерживается пагинация и фильтрация по имени ветки.

Параметры URL

ПараметрТипОбязательныйОписание
ownerstringДаВладелец репозитория (пользователь или организация)
repostringДаНазвание репозитория

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

ПараметрТипОбязательныйОписаниеПо умолчанию
pageintegerНетНомер страницы результатов1
per_pageintegerНетКоличество веток на странице (максимум — 50)30
qstringНетФильтр: возвращает только ветки, имя которых содержит указанную подстроку

Тело запроса

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

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

curl -X GET "https://api.gitverse.ru/repos/gitverse/example-repo/branches?page=1&per_page=20&q=feature" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/vnd.gitverse.object+json;version=1"

Ответ (200 OK)

Пример JSON-ответа:

[
  {
    "name": "main",
    "commit": {
      "sha": "a1b2c3d4e5f6789012345678901234567890abcd",
      "created": "2025-10-20T14:30:00Z",
      "url": "https://api.gitverse.ru/repos/gitverse/example-repo/git/commits/a1b2c3d4e5f6789012345678901234567890abcd",
      "html_url": "https://gitverse.ru/gitverse/example-repo/commit/a1b2c3d4e5f6789012345678901234567890abcd"
    },
    "protected": false
  },
  {
    "name": "feature/auth",
    "commit": {
      "sha": "0987654321fedcba0987654321fedcba09876543",
      "created": "2025-10-22T09:15:00Z",
      "url": "https://api.gitverse.ru/repos/gitverse/example-repo/git/commits/0987654321fedcba0987654321fedcba09876543",
      "html_url": "https://gitverse.ru/gitverse/example-repo/commit/0987654321fedcba0987654321fedcba09876543"
    },
    "protected": true
  }
]

Формат ответа

application/vnd.gitverse.object+json;version=1

Поля каждой ветки

ПолеТипОписание
namestringИмя ветки
commitobjectИнформация о последнем коммите в ветке
protectedbooleanЯвляется ли ветка защищенной

Подполе commit

ПолеТипОписание
shastringSHA-хеш коммита
createdstringДата создания коммита (в формате RFC3339 / ISO 8601)
urlstringAPI-ссылка на коммит
html_urlstringСсылка на коммит в веб-интерфейсе

Коды ответа

КодСтатусОписание
200OKСписок веток успешно получен
400Bad RequestНекорректные параметры запроса
401UnauthorizedТокен отсутствует или недействителен
403ForbiddenДоступ к репозиторию запрещен
404Not FoundРепозиторий не найден
429Too Many RequestsПревышен лимит запросов
500Internal Server ErrorВнутренняя ошибка сервера