Получить значения полей для массового обновления задач
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 | Да | Владелец и имя репозитория. |
state | query | string | Нет | Состояние задач, по которому отбираются задачи. |
q | query | string | Нет | Строковый фильтр по задачам. |
labels | query | string | Нет | Фильтр по меткам. |
milestones | query | string | Нет | Фильтр по вехам. |
created_by | query | string | Нет | Фильтр по создателям задач. |
assigned_by | query | string | Нет | Фильтр по исполнителям задач. |
mentioned_by | query | string | Нет | Фильтр по упомянутым в задачах пользователям. |
type | query | string | Нет | Фильтр по типу задачи. |
since | query | string | Нет | Фильтр по дате обновления (с этой даты). |
before | query | string | Нет | Фильтр по дате обновления (до этой даты). |
Тело запроса
| Поле | Тип | Обязательный | Описание |
|---|---|---|---|
data | object | Да | Параметры выбора задач. |
data.issue_ids | array | Нет | Явный список идентификаторов задач (integer). |
data.exclude_issue_ids | array | Нет | Список идентификаторов задач для исключения из выбора по фильтрам (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.
| Поле | Тип | Описание |
|---|---|---|
assignees | array | Уникальные исполнители выбранных задач (объекты User) |
due_dates | array | Уникальные контрольные сроки выбранных задач (строки) |
issue_types | array | Уникальные типы задач выбранных задач (объекты IssueType) |
labels | array | Уникальные метки выбранных задач (объекты Label) |
projects | array | Уникальные проекты выбранных задач (объекты Project) |
states | array | Уникальные состояния выбранных задач (строки) |
Коды ответа
| Код | Статус | Описание |
|---|---|---|
200 | OK | Значения полей успешно получены. |
400 | Bad Request | Некорректные параметры запроса. |
401 | Unauthorized | Не передан или невалиден токен авторизации. |
403 | Forbidden | Нет прав на доступ к репозиторию. |
404 | Not Found | Репозиторий не найден или нет доступа. |
422 | Unprocessable Entity | Ошибка валидации данных запроса. |
500 | Internal Server Error | Внутренняя ошибка сервера GitVerse. |
Пример тела ошибки
При ответе 401 тело ответа имеет следующий вид:
{
"error": {
"code": "UNAUTHORIZED",
"documentation_url": "https://gitverse.ru/docs/developers/public-api/",
"message": "Authorization is required",
"status": 401
}
}