Публичный APIРепозитории16. GET /repos/{owner}/{repo}/issues/{index}/comments — получить комментарии к задаче или к запросу на слияние

16. GET /repos/{owner}/{repo}/issues/{index}/comments — получить комментарии к задаче или пул-реквесту

Описание

Возвращает список всех комментариев, оставленных к задаче (issue) или пул-реквесту (pull request) с указанным индексом.
Поддерживается фильтрация по дате создания комментариев.

Метод полезен для отображения обсуждений, синхронизации с внешними системами и анализа активности.

В настоящий момент метод позволяет получить комментарии только к запросам на слияние (pr). Работа с комментариями к задачам (issues) будет добавлена позже.

Параметры URL

ПараметрОбязательныйОписание
ownerДаВладелец репозитория (пользователь или организация)
repoДаНазвание репозитория (без расширения .git)
indexДаИндекс задачи или пул-реквеста в репозитории (целое число)

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

ПараметрТипОбязательныйОписание
sincestringНетТолько комментарии, созданные после указанной даты (в формате RFC3339, например: 2025-01-01T00:00:00Z)
beforestringНетТолько комментарии, созданные до указанной даты (в формате RFC3339)

⚠️ Оба параметра (since, before) можно использовать одновременно для ограничения временного диапазона.

Тело запроса

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

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

curl -X GET "https://api.gitverse.ru/public/api/repos/gitverse-team/core-api/issues/42/comments?since=2025-10-01T00:00:00Z" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/vnd.gitverse.object+json;version=1"

Ответ (200 OK)

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

[
  {
    "id": 98765,
    "body": "Спасибо за замечание! Исправим в ближайшем релизе.",
    "user": {
      "login": "developer1",
      "id": 789,
      "avatar_url": "https://gitverse.ru/avatars/789.png",
      "html_url": "https://gitverse.ru/developer1"
    },
    "created_at": "2025-10-01T14:30:00Z",
    "updated_at": "2025-10-01T14:30:00Z",
    "html_url": "https://gitverse.ru/gitverse-team/core-api/issues/42#issuecomment-98765",
    "issue_url": "https://gitverse.ru/api/public/api/repos/gitverse-team/core-api/issues/42",
    "author_association": "MEMBER"
  }
]

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

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

Поля каждого комментария

ПолеТипОписание
idintegerУникальный идентификатор комментария
bodystringТекст комментария
userobjectИнформация об авторе
user.loginstringЛогин автора
user.idintegerID автора
user.avatar_urlstringСсылка на аватар
user.html_urlstringСсылка на профиль
created_atstringДата создания (RFC3339)
updated_atstringДата последнего изменения
html_urlstringПрямая ссылка на комментарий в веб-интерфейсе
issue_urlstringСсылка на задачу или пул-реквест
author_associationstringРоль автора: OWNER, MEMBER, CONTRIBUTOR, NONE

Коды ответа

КодСтатусОписание
200OKСписок комментариев успешно получен
400Bad RequestНекорректный формат параметров (например, неверная дата)
401UnauthorizedНе передан или недействителен токен авторизации
403ForbiddenНет прав на чтение репозитория
404Not FoundРепозиторий или задача с указанным индексом не найдены
500Internal Server ErrorВнутренняя ошибка сервера