Группы
Описание структур JSON-объектов
Структура описывающая "Группу"
| Поле | Тип | Описание |
|---|---|---|
id |
String | Уникальный UUID группы |
alias |
String | Псевдоним группы |
title |
String | Название группы |
description |
String | Описание группы |
fullTraversalPath |
String | Полный путь группы, например owner/group/subgroup |
ownerAlias |
String | Псевдоним владельца группы |
ownerAliasType |
String | Тип владельца группы: USER или GROUP |
isPrivate |
Boolean | Приватность группы |
Структура описывающая "Правило одобрения запросов на слияние"
| Поле | Тип | Описание |
|---|---|---|
uuid |
String | Уникальный UUID правила |
name |
String | Название правила |
branchType |
String | Тип ветки |
targetBranch |
String | Целевая ветка. Обязательна при branchType = DEFAULT |
minimalApprovals |
Integer | Минимальное количество одобрений |
allowedApproversUuid |
Array(String) | UUID пользователей, которые могут одобрять запросы на слияние |
Структура описывающая "Тип ветки для правила одобрения"
| Значение | Описание |
|---|---|
ALL_BRANCHES |
Все ветки |
ALL_PROTECTED_BRANCHES |
Все защищенные ветки |
DEFAULT |
Ветка по умолчанию или targetBranch |
Структура описывающая "Настройку squash для запросов на слияние"
| Значение | Описание |
|---|---|
REQUIRE |
Squash обязателен |
ENCOURAGE |
Squash рекомендуется |
ALLOW |
Squash разрешен |
DO_NOT_ALLOW |
Squash запрещен |
Структура описывающая "Метод слияния"
| Значение | Описание |
|---|---|
MERGE_COMMIT |
Создание merge-коммита |
MERGE_COMMIT_WITH_SEMI_LINEAR_HISTORY |
Merge-коммит с полулинейной историей |
FAST_FORWARD_MERGE |
Fast-forward слияние |
REBASE |
Слияние через rebase |
Структура описывающая "Шаблоны сообщений запросов на слияние"
| Поле | Тип | Описание |
|---|---|---|
mergeCommitMessage |
String | Шаблон сообщения merge-коммита |
squashCommitMessage |
String | Шаблон сообщения squash-коммита |
mergeRequestDescriptionTemplate |
String | Шаблон описания запроса на слияние |
canEditMergeCommitMessage |
Boolean | Разрешено ли редактировать сообщение merge-коммита |
Структура описывающая "Настройки подтверждения запросов на слияние"
| Поле | Тип | Описание |
|---|---|---|
canOverrideApprovals |
Boolean | Разрешить переопределять настройки одобрения на уровне проекта |
preventAuthorApproving |
Boolean | Запретить автору запроса одобрять его |
preventCommitterApproving |
Boolean | Запретить коммитеру одобрять запрос |
removeApprovalsOnPush |
Boolean | Сбрасывать одобрения при новом push |
checkCiCdStatus |
Boolean | Учитывать статус CI/CD при слиянии |
mergeRequestPipelineStatusCheckEnabled |
Boolean | Проверять статус конвейера запроса на слияние |
branchPipelineStatusCheckEnabled |
Boolean | Проверять статус конвейера ветки |
mergeResultPipelineStatusCheckEnabled |
Boolean | Проверять статус конвейера результата слияния |
editMergedMergeRequest |
Boolean | Разрешить редактирование слитого запроса на слияние |
enableRemoveSourceBranchByDefault |
Boolean | Удалять исходную ветку по умолчанию |
removeApprovalsOnChangingTargetBranch |
Boolean | Сбрасывать одобрения при смене целевой ветки |
Структура описывающая "Переменную CI/CD"
| Поле | Тип | Описание |
|---|---|---|
id |
String | Уникальный UUID переменной |
key |
String | Имя переменной |
value |
String | Значение переменной |
mask |
Boolean | Маскировать ли значение переменной в логах |
variableType |
String | Тип переменной: VARIABLE_TYPE или FILE_TYPE |
environmentScope |
String | Окружение, к которому применяется переменная |
Структура описывающая "Настройки времени жизни конвейеров"
| Поле | Тип | Описание |
|---|---|---|
lifetime |
Integer | Время жизни конвейера. Значение должно быть > 0 |
enabled |
Boolean | Включено ли ограничение времени жизни |
Структура описывающая "Агент группы"
| Поле | Тип | Описание |
|---|---|---|
id |
String | Уникальный UUID агента |
name |
String | Название агента |
description |
String | Описание агента |
tags |
Array(String) | Теги агента |
ownerType |
String | Тип владельца агента, для группы — GROUP |
Структура описывающая "Правило защиты веток"
| Поле | Тип | Описание |
|---|---|---|
id |
String | Уникальный UUID правила |
branchTemplate |
String | Шаблон имени ветки, к которой применяется защита |
allowedToPush |
String | Уровень доступа для редактирования файлов в ветке |
allowedToMerge |
String | Уровень доступа для слияния в ветку |
allowForcePush |
Boolean | Разрешен ли push --force |
codeOwnerApprovalRequired |
Boolean | Требуется ли одобрение владельцев кода |
autoMergeByDefault |
Boolean | Включать ли автослияние по умолчанию |
priority |
Integer | Приоритет правила |
Структура описывающая "Уровень доступа"
| Значение | Описание |
|---|---|
NO_ONE |
Никому |
ADMINS |
Администраторам |
DEVELOPER |
Разработчикам и выше |
Структура описывающая "Правило защиты тегов"
| Поле | Тип | Описание |
|---|---|---|
uuid |
String | Уникальный UUID правила |
tagTemplate |
String | Шаблон имени тега, к которому применяется защита |
allowToCreate |
String | Уровень доступа для создания тегов |
Структура описывающая "Роль участника группы"
| Значение | Описание |
|---|---|
GUEST |
Гость |
REPORTER |
Наблюдатель |
DEVELOPER |
Разработчик |
ADMIN |
Администратор |
Методы для групп
Ознакомиться с функционалом групп можно здесь
Получение списка всех групп
GET /group
Запрос возвращает список всех групп, доступных текущему пользователю, есть возможность настройки количества отображаемых объектов на странице
| Параметр запроса | Тип | Описание |
|---|---|---|
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
sort |
String | Сортировка в формате поле,направление, например title,asc |
Responses
STATUS 200 - Список групп успешно возвращен.
STATUS 403 - Нет прав для доступа.
Получение списка всех моих групп
GET /group/my
Запрос возвращает список групп, владельцем которых является текущий пользователь, есть возможность настройки количества отображаемых объектов на странице
| Параметр запроса | Тип | Описание |
|---|---|---|
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
Responses
STATUS 200 - Список групп успешно возвращен.
STATUS 403 - Нет прав для доступа.
Получение списка всех групп с участием пользователя
GET /group/shared
Запрос возвращает список групп, в которых текущий пользователь является участником, есть возможность настройки количества отображаемых объектов на странице
| Параметр запроса | Тип | Описание |
|---|---|---|
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
Responses
STATUS 200 - Список групп успешно возвращен.
STATUS 403 - Нет прав для доступа.
Создание группы
POST /group
Запрос создает группу или подгруппу и возвращает ее
Для создания подгруппы в поле ownerAlias указывается полный путь родительской группы, а в поле ownerAliasType — значение GROUP
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
ownerAlias |
String | Псевдоним владельца: имя пользователя при ownerAliasType = USER или полный путь группы при GROUP (обязательный параметр) |
ownerAliasType |
String | Тип владельца: USER или GROUP (обязательный параметр) |
alias |
String | Псевдоним группы (обязательный параметр) |
title |
String | Название группы (обязательный параметр) |
description |
String | Описание группы |
isPrivate |
Boolean | Приватность группы. По умолчанию true |
Пример JSON объекта
{
"ownerAlias": "USER",
"ownerAliasType": "USER",
"alias": "g-new",
"title": "Новая группа",
"description": "",
"isPrivate": true
}
Responses
STATUS 200 - Группа успешно создана и возвращена. Поле fullTraversalPath содержит полный путь созданной группы.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение группы по ее полному пути
GET /group/{groupPath}/-/overview
Запрос возвращает группу по ее полному пути
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Группа успешно возвращена.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Передача группы
POST /group/transfer
Запрос передает группу другому владельцу. Новый полный путь группы возвращается в поле fullTraversalPath
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
ownerAlias |
String | Имя пользователя или полный путь группы, которой передается группа (обязательный параметр) |
groupAlias |
String | Полный путь передаваемой группы (обязательный параметр) |
Пример JSON объекта
{
"ownerAlias": "USER",
"groupAlias": "owner/group/subgroup"
}
Responses
STATUS 200 - Группа успешно передана. Поле fullTraversalPath содержит новый полный путь группы.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Методы для настроек импорта группы
Методы раздела доступны только для корневой группы.
Получение настроек импорта группы
GET /group/{groupPath}/-/setting/import
Запрос возвращает настройки импорта группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Настройки импорта группы успешно возвращены.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение настроек импорта группы
POST /group/{groupPath}/-/setting/import
Запрос изменяет настройки импорта группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
allowImportBranchProtection |
Boolean | Разрешить импорт правил защиты веток |
allowImportEnvironmentProtection |
Boolean | Разрешить импорт правил защиты окружений |
allowImportTagProtection |
Boolean | Разрешить импорт правил защиты тегов |
allowImportMrApprovalConfigAndRules |
Boolean | Разрешить импорт настроек и правил одобрения запросов на слияние |
allowImportPipelineLifetimeSetting |
Boolean | Разрешить импорт настроек времени жизни конвейеров |
Все параметры запроса необязательные.
Пример JSON объекта
{
"allowImportBranchProtection": true
}
Responses
STATUS 200 - Настройки импорта группы успешно изменены.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Методы для запросов на слияние
Методы раздела доступны только для корневой группы.
Создание правила одобрения запросов на слияние
POST /group/{groupPath}/-/merge-request/approval/rule/create
Запрос создает правило одобрения запросов на слияние и возвращает его
Согласующим может быть только участник группы.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
name |
String | Название правила (обязательный параметр) |
branchType |
String | Тип ветки (обязательный параметр) |
targetBranch |
String | Целевая ветка. Обязателен при branchType = DEFAULT |
minimalApprovals |
Integer | Минимальное количество одобрений (обязательный параметр) |
allowedApproversUuid |
Array(String) | UUID пользователей, которые могут одобрять запрос (обязательный параметр) |
Пример JSON объекта
{
"name": "rule-1",
"branchType": "ALL_BRANCHES",
"minimalApprovals": 1,
"allowedApproversUuid": [
"8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51"
]
}
Responses
STATUS 200 - Правило одобрения успешно создано и возвращено.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка правил одобрения
GET /group/{groupPath}/-/merge-request/approval/rule
Запрос возвращает список правил одобрения запросов на слияние, есть возможность настройки количества отображаемых объектов на странице
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
| Параметр запроса | Тип | Описание |
|---|---|---|
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
sort |
String | Сортировка в формате поле,направление, например name,asc |
Responses
STATUS 200 - Список правил одобрения успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение правила одобрения по UUID
GET /group/{groupPath}/-/merge-request/approval/rule/{approvalRuleUuid}
Запрос возвращает правило одобрения по его UUID
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
approvalRuleUuid |
String | UUID правила одобрения |
Responses
STATUS 200 - Правило одобрения успешно возвращено.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение правила одобрения
PATCH /group/{groupPath}/-/merge-request/approval/rule/edit
Запрос изменяет правило одобрения запросов на слияние по его UUID и возвращает его
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
uuid |
String | UUID правила (обязательный параметр) |
name |
String | Новое название правила |
targetBranch |
String | Новая целевая ветка |
branchType |
String | Новый тип ветки |
minimalApprovals |
Integer | Новое минимальное количество одобрений |
allowedApproversUuid |
Array(String) | Новый список UUID пользователей, которые могут одобрять запрос |
Все параметры, кроме uuid, необязательные.
Пример JSON объекта
{
"uuid": "5a4b4b4e-aaaa-aaaa-aaaa-2d0c7e0f3f11",
"name": "rule-edited"
}
Responses
STATUS 200 - Правило одобрения успешно изменено и возвращено.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление правила одобрения запросов на слияние
DELETE /group/{groupPath}/-/merge-request/approval/rule/{approvalRuleUuid}
Запрос удаляет правило одобрения запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
approvalRuleUuid |
String | UUID правила одобрения |
Responses
STATUS 200 - Правило одобрения успешно удалено.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение настройки squash для запросов на слияние
GET /group/{groupPath}/-/merge-request/merge-request-squash
Запрос возвращает настройку squash для запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Настройка squash успешно возвращена.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение настройки squash для запросов на слияние
PATCH /group/{groupPath}/-/merge-request/merge-request-squash/edit
Запрос изменяет настройку squash для запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
mergeRequestSquashSetting |
String | Настройка squash (обязательный параметр) |
Пример JSON объекта
{
"mergeRequestSquashSetting": "REQUIRE"
}
Responses
STATUS 200 - Настройка squash успешно изменена.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение метода слияния
GET /group/{groupPath}/-/merge-request/merge-request-method-type
Запрос возвращает метод слияния запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Метод слияния успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение метода слияния
PATCH /group/{groupPath}/-/merge-request/merge-request-method-type/edit
Запрос изменяет метод слияния запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
mergedRequestMethodType |
String | Метод слияния (обязательный параметр) |
Пример JSON объекта
{
"mergedRequestMethodType": "FAST_FORWARD_MERGE"
}
Responses
STATUS 200 - Метод слияния успешно изменен.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение шаблонов сообщений запросов на слияние
GET /group/{groupPath}/-/merge-request/merge-request-template
Запрос возвращает шаблоны сообщений запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Шаблоны сообщений успешно возвращены.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение шаблонов сообщений запросов на слияние
PATCH /group/{groupPath}/-/merge-request/merge-request-template/edit
Запрос изменяет шаблоны сообщений запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
mergeCommitMessage |
String | Шаблон сообщения merge-коммита |
squashCommitMessage |
String | Шаблон сообщения squash-коммита |
mergeRequestDescriptionTemplate |
String | Шаблон описания запроса на слияние |
canEditMergeCommitMessage |
Boolean | Разрешено ли редактировать сообщение merge-коммита |
Все параметры запроса необязательные. В шаблонах поддерживаются подстановки %{source_branch} и %{target_branch}.
Пример JSON объекта
{
"mergeCommitMessage": "Merge '%{source_branch}' into '%{target_branch}'"
}
Responses
STATUS 200 - Шаблоны сообщений успешно изменены.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение настроек подтверждения запросов на слияние
GET /group/{groupPath}/-/merge-request/approval/configuration
Запрос возвращает настройки подтверждения запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Настройки подтверждения успешно возвращены.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение настроек подтверждения запросов на слияние
PATCH /group/{groupPath}/-/merge-request/approval/configuration/edit
Запрос изменяет настройки подтверждения запросов на слияние
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
canOverrideApprovals |
Boolean | Разрешить переопределять настройки одобрения на уровне проекта |
preventAuthorApproving |
Boolean | Запретить автору запроса одобрять его |
preventCommitterApproving |
Boolean | Запретить коммитеру одобрять запрос |
removeApprovalsOnPush |
Boolean | Сбрасывать одобрения при новом push |
checkCiCdStatus |
Boolean | Учитывать статус CI/CD при слиянии |
mergeRequestPipelineStatusCheckEnabled |
Boolean | Проверять статус конвейера запроса на слияние |
branchPipelineStatusCheckEnabled |
Boolean | Проверять статус конвейера ветки |
mergeResultPipelineStatusCheckEnabled |
Boolean | Проверять статус конвейера результата слияния |
editMergedMergeRequest |
Boolean | Разрешить редактирование слитого запроса на слияние |
enableRemoveSourceBranchByDefault |
Boolean | Удалять исходную ветку по умолчанию |
removeApprovalsOnChangingTargetBranch |
Boolean | Сбрасывать одобрения при смене целевой ветки |
Все параметры запроса необязательные.
Пример JSON объекта
{
"checkCiCdStatus": true
}
Responses
STATUS 200 - Настройки подтверждения успешно изменены.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Применение настроек запросов на слияние к проектам группы
POST /group/{groupPath}/-/merge-request/apply-settings-to-projects
Запрос применяет настройки запросов на слияние группы к проектам группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Настройки запросов на слияние успешно применены к проектам группы.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Методы для CI/CD
Создание переменных ci/cd
POST /group/{groupPath}/-/cicd/variable
Запрос создает переменные CI/CD группы и возвращает их
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
ciCdVariablesToAdd |
Array(CiCdVariable) | Список переменных для создания (обязательный параметр) |
Поля переменной:
| Параметр | Тип | Описание |
|---|---|---|
key |
String | Имя переменной (обязательный параметр) |
value |
String | Значение переменной (обязательный параметр) |
mask |
Boolean | Маскировать ли значение переменной в логах. По умолчанию false |
variableType |
String | Тип переменной: VARIABLE_TYPE (по умолчанию) или FILE_TYPE |
environmentScope |
String | Окружение, к которому применяется переменная |
Пример JSON объекта
{
"ciCdVariablesToAdd": [
{
"key": "VAR_1",
"value": "1"
}
]
}
Responses
STATUS 200 - Переменные CI/CD успешно созданы и возвращены.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка переменных ci/cd
GET /group/{groupPath}/-/cicd/variable
Запрос возвращает список переменных CI/CD группы, есть возможность настройки количества отображаемых объектов на странице
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
| Параметр запроса | Тип | Описание |
|---|---|---|
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
sort |
String | Сортировка в формате поле,направление, например key,asc |
Responses
STATUS 200 - Список переменных CI/CD успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение переменных ci/cd
PUT /group/{groupPath}/-/cicd/variable
Запрос изменяет переменные CI/CD группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PUT-запроса:
| Параметр | Тип | Описание |
|---|---|---|
ciCdVariablesToUpdate |
Array(CiCdVariable) | Список переменных для изменения (обязательный параметр) |
Поля переменной:
| Параметр | Тип | Описание |
|---|---|---|
id |
String | UUID переменной (обязательный параметр) |
key |
String | Имя переменной (обязательный параметр) |
value |
String | Значение переменной (обязательный параметр) |
mask |
Boolean | Маскировать ли значение переменной в логах (обязательный параметр) |
variableType |
String | Тип переменной: VARIABLE_TYPE или FILE_TYPE (обязательный параметр) |
environmentScope |
String | Окружение, к которому применяется переменная |
Все поля, кроме environmentScope, обязательные.
Пример JSON объекта
{
"ciCdVariablesToUpdate": [
{
"id": "5a4b4b4e-aaaa-aaaa-aaaa-2d0c7e0f3f11",
"key": "VAR_1",
"value": "2",
"mask": false,
"variableType": "VARIABLE_TYPE"
}
]
}
Responses
STATUS 200 - Переменные CI/CD успешно изменены.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление переменной ci/cd
DELETE /group/{groupPath}/-/cicd/variable/{variableUuid}
Запрос удаляет переменную CI/CD группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
variableUuid |
String | UUID переменной CI/CD |
Responses
STATUS 200 - Переменная CI/CD успешно удалена.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение настроек времени жизни конвейеров
GET /group/{groupPath}/-/cicd/pipeline-lifetime
Запрос возвращает настройки времени жизни конвейеров группы
Метод доступен только для корневой группы.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Настройки времени жизни конвейеров успешно возвращены.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение настроек времени жизни конвейеров
PATCH /group/{groupPath}/-/cicd/pipeline-lifetime/edit
Запрос изменяет настройки времени жизни конвейеров группы
Метод доступен только для корневой группы.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
lifetime |
Integer | Время жизни конвейера. Значение должно быть больше 0 |
enabled |
Boolean | Включено ли ограничение времени жизни |
Все параметры запроса необязательные.
Пример JSON объекта
{
"lifetime": 30
}
Responses
STATUS 200 - Настройки времени жизни конвейеров успешно изменены.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Применение настроек времени жизни конвейеров к проектам группы
POST /group/{groupPath}/-/cicd/apply-settings-to-projects
Запрос применяет настройки времени жизни конвейеров группы к проектам группы
Метод доступен только для корневой группы.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Настройки времени жизни конвейеров успешно применены к проектам группы.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Методы для Агентов
Агент группы не создается через REST API. Его регистрируют по registrationUrl и registrationToken, полученным методом Получение информации для регистрации агента.
Получение информации для регистрации агента
GET /group/{groupPath}/-/runners/registration-info
Запрос возвращает адрес и токен для регистрации агента группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Информация для регистрации агента успешно возвращена.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Сброс токена регистрации агента
POST /group/{groupPath}/-/runners/reset-registration-token
Запрос сбрасывает токен регистрации агента группы и возвращает новое значение
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Токен регистрации агента успешно сброшен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка Агентов группы
GET /group/{groupPath}/-/runners
Запрос возвращает список Агентов группы, есть возможность настройки количества отображаемых объектов на странице
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
| Параметр запроса | Тип | Описание |
|---|---|---|
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
Responses
STATUS 200 - Список Агентов группы успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение агента по UUID
GET /group/{groupPath}/-/runners/{runnerUuid}
Запрос возвращает Агент группы по его UUID
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
runnerUuid |
String | UUID агента |
Responses
STATUS 200 - Агент успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка задач агента
GET /group/{groupPath}/-/runners/{runnerUuid}/jobs
Запрос возвращает список задач агента группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
runnerUuid |
String | UUID агента |
| Параметр запроса | Тип | Описание |
|---|---|---|
jobStatus |
String | Статус задачи. Значение должно точно совпадать с именем статуса, в верхнем регистре (например, SUCCESS); значение success не принимается |
Responses
STATUS 200 - Список задач агента успешно возвращен.
STATUS 400 - Некорректное значение параметра jobStatus.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка задач Агентов группы
GET /group/{groupPath}/-/runners/all/jobs
Запрос возвращает список задач всех Агентов группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
| Параметр запроса | Тип | Описание |
|---|---|---|
jobStatus |
String | Статус задачи. Значение должно точно совпадать с именем статуса, в верхнем регистре (например, SUCCESS); значение success не принимается |
Responses
STATUS 200 - Список задач Агентов группы успешно возвращен.
STATUS 400 - Некорректное значение параметра jobStatus.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение агента
PATCH /group/{groupPath}/-/runners/{runnerUuid}/edit
Запрос изменяет Агент группы и возвращает его
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
runnerUuid |
String | UUID агента |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
name |
String | Название агента |
description |
String | Описание агента |
tags |
Array(String) | Теги агента |
Все параметры запроса необязательные.
Пример JSON объекта
{
"name": "runner",
"description": "Описание агента",
"tags": [
"tag"
]
}
Responses
STATUS 200 - Агент успешно изменен и возвращен.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Остановка агента
POST /group/{groupPath}/-/runners/{runnerUuid}/shutdown
Запрос останавливает Агент группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
runnerUuid |
String | UUID агента |
Responses
STATUS 200 - Команда остановки агента успешно отправлена.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление агента
DELETE /group/{groupPath}/-/runners/{runnerUuid}
Запрос удаляет Агент группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
runnerUuid |
String | UUID агента |
Responses
STATUS 200 - Агент успешно удален.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Методы для защиты веток
Методы раздела доступны только для корневой группы.
Создание правила защиты веток
POST /group/{groupPath}/-/branch-protection
Запрос создает правило защиты веток группы и возвращает его
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
branchTemplate |
String | Шаблон имени ветки, к которой применяется защита (обязательный параметр) |
allowedToPush |
String | Уровень доступа для редактирования файлов в ветке (обязательный параметр) |
allowedToMerge |
String | Уровень доступа для слияния в ветку (обязательный параметр) |
allowForcePush |
Boolean | Разрешен ли push --force |
codeOwnerApprovalRequired |
Boolean | Требуется ли одобрение владельцев кода |
autoMergeByDefault |
Boolean | Включать ли автослияние по умолчанию |
priority |
Integer | Приоритет правила |
Пример JSON объекта
{
"branchTemplate": "main",
"allowedToPush": "DEVELOPER",
"allowedToMerge": "DEVELOPER"
}
Responses
STATUS 200 - Правило защиты веток успешно создано и возвращено.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка правил защиты веток
GET /group/{groupPath}/-/branch-protection
Запрос возвращает список правил защиты веток группы, есть возможность настройки количества отображаемых объектов на странице
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
| Параметр запроса | Тип | Описание |
|---|---|---|
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
sort |
String | Сортировка в формате поле,направление, например priority,desc |
Responses
STATUS 200 - Список правил защиты веток успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение правила защиты веток по UUID
GET /group/{groupPath}/-/branch-protection/{branchProtectionUuid}
Запрос возвращает правило защиты веток по его UUID
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
branchProtectionUuid |
String | UUID правила защиты веток |
Responses
STATUS 200 - Правило защиты веток успешно возвращено.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение правила защиты веток
PUT /group/{groupPath}/-/branch-protection/{branchProtectionUuid}
Запрос изменяет правило защиты веток группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
branchProtectionUuid |
String | UUID правила защиты веток |
Request
Поддерживаемый формат JSON
Структура тела PUT-запроса:
| Параметр | Тип | Описание |
|---|---|---|
allowedToPush |
String | Уровень доступа для редактирования файлов в ветке |
allowedToMerge |
String | Уровень доступа для слияния в ветку |
allowForcePush |
Boolean | Разрешен ли push --force |
codeOwnerApprovalRequired |
Boolean | Требуется ли одобрение владельцев кода |
autoMergeByDefault |
Boolean | Включать ли автослияние по умолчанию |
priority |
Integer | Приоритет правила |
Все параметры запроса необязательные. Поле branchTemplate не изменяется.
Пример JSON объекта
{
"allowedToPush": "ADMINS"
}
Responses
STATUS 200 - Правило защиты веток успешно изменено.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Применение правила защиты веток к проектам группы
POST /group/{groupPath}/-/branch-protection/apply-settings-to-projects
Запрос применяет правила защиты веток группы к проектам группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Правила защиты веток успешно применены к проектам группы.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление правила защиты веток
DELETE /group/{groupPath}/-/branch-protection/{branchProtectionUuid}
Запрос удаляет правило защиты веток группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
branchProtectionUuid |
String | UUID правила защиты веток |
Responses
STATUS 200 - Правило защиты веток успешно удалено.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Методы для защиты тегов
Методы раздела доступны только для корневой группы.
Создание правила защиты тегов
POST /group/{groupPath}/-/tag-protection/create
Запрос создает правило защиты тегов группы и возвращает его
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
tagTemplate |
String | Шаблон имени тега, к которому применяется защита (обязательный параметр) |
allowToCreate |
String | Уровень доступа для создания тегов (обязательный параметр) |
Пример JSON объекта
{
"tagTemplate": "v*",
"allowToCreate": "DEVELOPER"
}
Responses
STATUS 200 - Правило защиты тегов успешно создано и возвращено.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка правил защиты тегов
GET /group/{groupPath}/-/tag-protection
Запрос возвращает список правил защиты тегов группы, есть возможность настройки количества отображаемых объектов на странице
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
| Параметр запроса | Тип | Описание |
|---|---|---|
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
sort |
String | Сортировка в формате поле,направление, например tagTemplate,asc |
Responses
STATUS 200 - Список правил защиты тегов успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение правила защиты тегов по UUID
GET /group/{groupPath}/-/tag-protection/{tagProtectionUuid}
Запрос возвращает правило защиты тегов по его UUID
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
tagProtectionUuid |
String | UUID правила защиты тегов |
Responses
STATUS 200 - Правило защиты тегов успешно возвращено.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение правила защиты тегов
PUT /group/{groupPath}/-/tag-protection/{tagProtectionUuid}
Запрос изменяет правило защиты тегов группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
tagProtectionUuid |
String | UUID правила защиты тегов |
Request
Поддерживаемый формат JSON
Структура тела PUT-запроса:
| Параметр | Тип | Описание |
|---|---|---|
uuid |
String | UUID правила. Значение должно совпадать с UUID в пути запроса (обязательный параметр) |
allowToCreate |
String | Уровень доступа для создания тегов |
Пример JSON объекта
{
"uuid": "5a4b4b4e-aaaa-aaaa-aaaa-2d0c7e0f3f11",
"allowToCreate": "NO_ONE"
}
Responses
STATUS 200 - Правило защиты тегов успешно изменено.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Применение правила защиты тегов к проектам группы
POST /group/{groupPath}/-/tag-protection/apply-settings-to-projects
Запрос применяет правила защиты тегов группы к проектам группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Правила защиты тегов успешно применены к проектам группы.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление правила защиты тегов
DELETE /group/{groupPath}/-/tag-protection/{tagProtectionUuid}
Запрос удаляет правило защиты тегов группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
tagProtectionUuid |
String | UUID правила защиты тегов |
Responses
STATUS 200 - Правило защиты тегов успешно удалено.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Методы для LDAP
Синхронизация участников группы с LDAP
POST /group/{groupPath}/-/ldap/sync
Запрос запускает синхронизацию участников группы с LDAP
Эндпоинт доступен только если на инстансе включена синхронизация групп с LDAP (gitflic.leader = true и togglz.features.GITFLIC_LDAP_GROUP_SYNC.enabled = true). В противном случае возвращается 404.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Синхронизация участников группы с LDAP запущена.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены или синхронизация с LDAP отключена.
Методы для участников группы
Получение списка ролей участников группы
GET /group/{groupPath}/-/members/roles
Запрос возвращает список доступных ролей участников группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Список ролей участников группы успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Список пользователей группы
GET /group/{groupPath}/-/members/users
Запрос возвращает список пользователей группы, есть возможность настройки количества отображаемых объектов на странице
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
| Параметр запроса | Тип | Описание |
|---|---|---|
q |
String | Строка поиска по пользователям |
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
Responses
STATUS 200 - Список пользователей группы успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Добавление пользователя в группу
POST /group/{groupPath}/-/members/users
Запрос добавляет пользователя в группу
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
userUuid |
String | UUID пользователя (обязательный параметр) |
role |
String | Роль участника в группе (обязательный параметр) |
Пример JSON объекта
{
"userUuid": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"role": "DEVELOPER"
}
Responses
STATUS 200 - Пользователь успешно добавлен в группу.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение роли пользователя в группе
PATCH /group/{groupPath}/-/members/users/role/edit
Запрос изменяет роль пользователя в группе
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
userUuid |
String | UUID пользователя (обязательный параметр) |
role |
String | Новая роль участника в группе (обязательный параметр) |
Пример JSON объекта
{
"userUuid": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"role": "REPORTER"
}
Responses
STATUS 200 - Роль пользователя в группе успешно изменена.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление пользователя из группы
DELETE /group/{groupPath}/-/members/users/{userUuid}
Запрос удаляет пользователя из группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
userUuid |
String | UUID пользователя |
Responses
STATUS 200 - Пользователь успешно удален из группы.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Список групп-участников группы
GET /group/{groupPath}/-/members/groups
Запрос возвращает список групп, которые являются участниками группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Responses
STATUS 200 - Список групп-участников успешно возвращен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Добавление группы в группу
POST /group/{groupPath}/-/members/groups
Запрос добавляет группу в качестве участника в другую группу
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
groupUuid |
String | UUID добавляемой группы (обязательный параметр) |
role |
String | Роль участника в группе (обязательный параметр) |
Пример JSON объекта
{
"groupUuid": "5a4b4b4e-aaaa-aaaa-aaaa-2d0c7e0f3f11",
"role": "DEVELOPER"
}
Responses
STATUS 200 - Группа успешно добавлена в группу.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение роли группы в группе
PATCH /group/{groupPath}/-/members/groups/role/edit
Запрос изменяет роль группы-участника в группе
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
Request
Поддерживаемый формат JSON
Структура тела PATCH-запроса:
| Параметр | Тип | Описание |
|---|---|---|
groupUuid |
String | UUID группы-участника (обязательный параметр) |
role |
String | Новая роль участника в группе (обязательный параметр) |
Пример JSON объекта
{
"groupUuid": "5a4b4b4e-aaaa-aaaa-aaaa-2d0c7e0f3f11",
"role": "GUEST"
}
Responses
STATUS 200 - Роль группы в группе успешно изменена.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление группы из группы
DELETE /group/{groupPath}/-/members/groups/{groupUuid}
Запрос удаляет группу-участника из группы
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupPath |
String | Полный путь группы, например owner/group или owner/group/subgroup |
groupUuid |
String | UUID группы-участника |
Responses
STATUS 200 - Группа успешно удалена из группы.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Методы для администратора
Для методов раздела требуется токен администратора инстанса.
Получение списка групп администратором
GET /admin/group
Запрос возвращает список всех групп инстанса, есть возможность настройки количества отображаемых объектов на странице
| Параметр запроса | Тип | Описание |
|---|---|---|
qName |
String | Строка поиска по названию группы |
qOwner |
String | Строка поиска по владельцу группы |
isPrivate |
Boolean | Фильтр по приватности группы |
page |
Integer | Номер страницы, начиная с 0 |
size |
Integer | Количество элементов на странице |
sort |
String | Сортировка в формате поле,направление, например title,asc |
Responses
STATUS 200 - Список групп успешно возвращен.
STATUS 403 - Нет прав для доступа.
Добавление пользователя в группу администратором
POST /admin/group/{groupID}/member/invite
Запрос добавляет пользователя в группу от имени администратора инстанса
| Переменная пути запроса | Тип | Описание |
|---|---|---|
groupID |
String | UUID группы |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
| Параметр | Тип | Описание |
|---|---|---|
userAlias |
String | Псевдоним пользователя (обязательный параметр) |
role |
String | Роль участника в группе (обязательный параметр) |
Пример JSON объекта
{
"userAlias": "USER",
"role": "DEVELOPER"
}
Responses
STATUS 200 - Пользователь успешно добавлен в группу.
STATUS 400 - Некорректные параметры запроса.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.