Получить значения полей для массового обновления задач

POST /repos/{owner}/{repo}/issues/bulk/values

Описание

Метод POST возвращает уникальные значения редактируемых полей выбранных задач: исполнителей, контрольные сроки, типы задач, метки, проекты и состояния.

Выбор задач задается в теле запроса (список идентификаторов) и/или query-фильтрами списка задач.

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

Важно: учитывается приватность репозитория. Если репозиторий приватный, а запрос выполняется не владельцем, соавтором или участником команды с доступом к репозиторию, возвращается ошибка 404.

Токен

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

Заголовки

ПараметрОбязательныйОписание
AcceptНетТип содержимого ответа. Рекомендуется установить значение application/vnd.gitverse.object+json;version=1
AuthorizationДаТокен доступа. Формат: Bearer <YOUR-TOKEN> или token <YOUR-TOKEN>
Content-TypeДаapplication/vnd.gitverse.object+json;version=1

Параметры

ПараметрГде передатьТипОбязательныйОписание
owner, repoпутьstringДаВладелец и имя репозитория.
statequerystringНетСостояние задач, по которому отбираются задачи.
qquerystringНетСтроковый фильтр по задачам.
labelsquerystringНетФильтр по меткам.
milestonesquerystringНетФильтр по вехам.
created_byquerystringНетФильтр по создателям задач.
assigned_byquerystringНетФильтр по исполнителям задач.
mentioned_byquerystringНетФильтр по упомянутым в задачах пользователям.
typequerystringНетФильтр по типу задачи.
sincequerystringНетФильтр по дате обновления (с этой даты).
beforequerystringНетФильтр по дате обновления (до этой даты).

Тело запроса

ПолеТипОбязательныйОписание
dataobjectДаПараметры выбора задач.
data.issue_idsarrayНетЯвный список идентификаторов задач (integer).
data.exclude_issue_idsarrayНетСписок идентификаторов задач для исключения из выбора по фильтрам (integer).

Задачу можно выбрать явным списком data.issue_ids, по query-фильтрам или комбинацией: exclude_issue_ids исключает задачи из выборки по фильтрам.

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

curl -X POST "https://api.gitverse.ru/repos/user/my-repo/issues/bulk/values?labels=bug&state=open" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/vnd.gitverse.object+json;version=1" \
  -H "Content-Type: application/vnd.gitverse.object+json;version=1" \
  -d '{
    "data": {
      "issue_ids": [101, 102, 103],
      "exclude_issue_ids": [103]
    }
  }'

Замените YOUR_TOKEN на ваш личный токен доступа.

Пример ответа (200 OK)

При успешном выполнении сервер возвращает объект с уникальными значениями редактируемых полей выбранных задач.

{
    "assignees": [
        {
            "id": 101,
            "login": "user1"
        }
    ],
    "due_dates": ["2026-10-31"],
    "issue_types": [
        {
            "id": 5,
            "name": "Bug"
        }
    ],
    "labels": [
        {
            "id": 1759,
            "name": "Priority/Blocker",
            "exclusive": true,
            "is_archived": false,
            "color": "efbee3",
            "description": "Блокирующий",
            "url": "https://api.gitverse.ru/labels/1759"
        }
    ],
    "projects": [],
    "states": ["open", "closed"]
}

Структура ответа

Ответ — объект IssueBulkValues. Полная структура описана в графе объектов, раздел 24.5.

ПолеТипОписание
assigneesarrayУникальные исполнители выбранных задач (объекты User)
due_datesarrayУникальные контрольные сроки выбранных задач (строки)
issue_typesarrayУникальные типы задач выбранных задач (объекты IssueType)
labelsarrayУникальные метки выбранных задач (объекты Label)
projectsarrayУникальные проекты выбранных задач (объекты Project)
statesarrayУникальные состояния выбранных задач (строки)

Коды ответа

КодСтатусОписание
200OKЗначения полей успешно получены.
400Bad RequestНекорректные параметры запроса.
401UnauthorizedНе передан или невалиден токен авторизации.
403ForbiddenНет прав на доступ к репозиторию.
404Not FoundРепозиторий не найден или нет доступа.
422Unprocessable EntityОшибка валидации данных запроса.
500Internal Server ErrorВнутренняя ошибка сервера GitVerse.

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

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

{
  "error": {
    "code": "UNAUTHORIZED",
    "documentation_url": "https://gitverse.ru/docs/developers/public-api/",
    "message": "Authorization is required",
    "status": 401
  }
}