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

GET /repos/{owner}/{repo}/issues/{issue_number}/comments

Описание

Метод GET возвращает список всех комментариев, оставленных в задаче или запросе на слияние с указанным индексом (issue_number). Поддерживается фильтрация по дате создания комментариев.

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

Токен

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

Заголовки

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

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

В URL запроса необходимо передать следующие идентификаторы ресурса:

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

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

Для фильтрации результатов по времени можно использовать следующие параметры:

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

💡 Совет: оба параметра (since и before) можно использовать одновременно для ограничения временного диапазона.

Тело запроса

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

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

Ниже приведен пример использования curl для получения комментариев к запросу на слияние с индексом 42, созданных после 1 октября 2025 года.

curl -X GET "https://api.gitverse.ru/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"

Замените YOUR_TOKEN на ваш личный токен доступа. Заголовок Accept фиксирует использование первой версии API.

Ответ при успешном получении (200 OK)

Если запрос выполнен успешно, сервер вернет ответ с кодом 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/repos/gitverse-team/core-api/issues/42",
    "author_association": "MEMBER"
  }
]

Структура объекта комментария

Каждый элемент массива в ответе содержит следующие поля:

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

Коды ответа

Результат выполнения запроса определяется по HTTP-статусу:

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

Формат ответа и заголовки

Метод возвращает ответ в формате JSON. Заголовок Content-Type устанавливается в application/vnd.gitverse.object+json;version=1.