2. POST /repos/{username}/{reponame}/releases
— Создание нового релиза
Описание
Создает новый релиз на основе тега. Только пользователи с токеном для чтения и записи в репозитории смогут создавать релизы.
Параметры URL:
Параметр | Обязательный | Описание |
---|---|---|
username | Да | Имя владельца репозитория (пользователь или организация) |
reponame | Да | Название репозитория без расширения .git |
Параметры запроса:
Параметр | Обязательный | Описание |
---|---|---|
ApiKeyAuth | Да | Ключ API для авторизации. Формат: ApiKey <your_api_key> |
body | Да | Параметры для создания релиза |
Тело запроса:
Тело запроса содержит параметры для создания релиза.
Поле | Обязательный | Описание |
---|---|---|
name | Да | Название релиза |
tag_name | Да | Название тега |
target_commitish | Да | Название ветки или коммита, на который указывает тег |
body | Нет | Описание релиза |
draft | Нет | Флаг черновика (по умолчанию false ) |
prerelease | Нет | Флаг предварительного релиза (по умолчанию false ) |
Пример запроса:
curl --location --request POST 'https://api.gitverse.ru/public/api/repos/hardqa_1/testo_repa/releases' \
--header 'accept: application/vnd.gitverse.object+json;version=1' \
--header 'Authorization: 9766dae885ade2834845c2d17a71ec49c9974453' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "release v5 API",
"tag_name": "v5",
"target_commitish": "master",
"body": "sdasdasdas",
"draft": false,
"prerelease": false
}'
Ответ (201 Created
):
{
"id": 22,
"tag_name": "v5",
"target_commitish": "master",
"name": "release v5 API",
"body": "sdasdasdas",
"url": "https://api.gitverse.ru/public/api/repos/hardqa_1/testo_repa/releases/22",
"html_url": "https://api.gitverse.ru/hardqa_1/testo_repa/releases/tag/v5",
"tarball_url": "https://api.gitverse.ru/hardqa_1/testo_repa/archive/v5.tar.gz",
"zipball_url": "https://api.gitverse.ru/hardqa_1/testo_repa/archive/v5.zip",
"upload_url": "https://api.gitverse.ru/public/api/repos/hardqa_1/testo_repa/releases/22/assets",
"draft": false,
"prerelease": false,
"created_at": "2025-08-18T08:22:06Z",
"published_at": "2025-08-18T08:22:06Z",
"author": {
"id": 14,
"name": "",
"login": "hardqa_1",
"type": "User",
"bio": "",
"email": "hardqa_1@mail.ru",
"avatar_url": "https://api.gitverse.ru/avatars/d58095c0fe787f981dff5b6a41117aec",
"html_url": "https://gitverse.ru/hardqa_1",
"url": "https://api.gitverse.ru/hardqa_1",
"repos_url": "https://api.gitverse.ru/hardqa_1/repos",
"site_admin": false,
"location": null,
"followers": 0,
"following": 0,
"public_repos": 3,
"created_at": "2025-08-18T08:19:48Z",
"updated_at": "2025-08-18T08:57:48Z"
},
"assets": []
}
Формат ответа: application/vnd.gitverse.object+json;version=1
Коды ответов
Код | Статус | Описание |
---|---|---|
201 | Created | Релиз успешно создан |
400 | Bad Request | Некорректные параметры запроса |
403 | Forbidden | Доступ запрещен |
404 | Not Found | Указанный репозиторий не найден |
409 | Conflict | Конфликт (например, тег уже существует) |
422 | Unprocessable Entity | Ошибка валидации данных |
500 | Internal Server Error | Внутренняя ошибка сервера |
Примечания:
- Убедитесь, что вы используете правильный ключ API с необходимыми правами доступа к репозиторию.
- Параметры
draft
иprerelease
позволяют задавать дополнительные характеристики релиза.