Релизы
Описание структуры JSON-объекта, описывающего релиз
Поле | Тип | Описание |
---|---|---|
id |
String | ID релиза |
title |
String | Название релиза |
projectId |
String | ID проекта |
authorId |
String | ID автора последнего изменения релиза |
description |
String | Описание релиза |
tagName |
String | Название тега |
commitId |
String | ID коммита, на котором создан тег |
createdAt |
Date | Дата создания |
updatedAt |
Date | Дата редактирования |
attachmentFiles |
Array | Прикрепленные файлы |
preRelease |
Boolean | Пререлиз true или нет false |
Описание структуры JSON-объекта, описывающего прикрепленные к релизу файлов
Поле | Тип | Описание |
---|---|---|
name |
String | Название файла |
link |
String | Ссылка на файл |
size |
Integer | Размер файла в байтах |
hashMd5 |
String | Хэш в формате hashMd5 |
hashSha1 |
String | Хэш в формате Sha1 |
hashSha256 |
String | Хэш в формате Sha256 |
hashSha512 |
String | Хэш в формате Sha512 |
Метод для получения списка релизов
GET /project/{ownerAlias}/{projectAlias}/release
Запрос возвращает список релизов, есть возможность настройки количества отображаемых объектов на странице
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
Responses
STATUS 200
пример JSON:
{
"_embedded": {
"releaseTagModelList": [
{
"id": "d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680",
"title": "Название",
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"authorId": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"description": "Описание",
"tagName": "2.14.5",
"commitId": "59de8c0611304aaaaaaaaaaaaac05f90483c6dfb",
"createdAt": "2024-05-17T09:59:30.635513Z",
"updatedAt": "2024-05-17T09:59:30.635515Z",
"attachmentFiles":[
{
"name": "file.zip",
"uuid": "8b8bdd4e-aaaa-aaaa-aaaa-1f95b8fae217",
"link": "https://gitflic.ru/project/user/test_project/release/d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680/file/8b8bdd4e-aaaa-aaaa-aaaa-1f95b8fae217",
"size": 158267,
"hashMd5": "fff118534ecd753fc31ffh8ccb48e4c4",
"hashSha1": "d3b911c9ccdffc0de2c5ge8ae4907aa5ef00aa86",
"hashSha256": "33645ddcc7d5add5df70d27e59cef069d52887d6f3d41eec104eda3d1e7221b7",
"hashSha512": "261c9efed1f692f16127r6c02c045ae3779da7c7cf8c8f20ef81f9988e7f6b4414630cc2020011bcfe2aab2372d4cb7ded9985433cd68da42e571b83526c48c6"
}
],
"preRelease": true
},
{
"id": "abd2dd36-aaaa-aaaa-aaaa-f5912049a768",
"title": "New Release",
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"authorId": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"description": "New some description",
"tagName": "6.8.3",
"commitId": "1b9eda1f6277f9aaaaaaaaaaaaff73fcf658ac16",
"createdAt": "2024-05-17T11:12:21.954598Z",
"updatedAt": "2024-05-17T11:12:21.954600Z",
"attachmentFiles":[
{
"name": "test.zip",
"uuid": "8b8bdd4e-aaaa-aaaa-aaaa-1f95b8fae217",
"link": "https://gitflic.ru/project/user/test_project/release/60b1530c-aaaa-aaaa-aaaa-05b3976cfe3d/file/8b8bdd4e-aaaa-aaaa-aaaa-1f95b8fae217",
"size": 567865,
"hashMd5": "fff11853decd7w3fc31fbd8ccb48e4c4",
"hashSha1": "d3b911d9ccdffc0de2c57e8ae4w07aa5ef00aa86",
"hashSha256": "33645ddcc7d5add5d770427e59cefd69d52887d6f3d41eec104eda3d1e7221b7",
"hashSha512": "261c9efed1f692f1612e26c02c045ae3779da7c7cf8c8e20efd1f9988e7f6b4414230cc2020011bcfe2aab2342d4cb7ded9995433cd68da42e571b83526c48c6"
}
],
"preRelease": false
}
]
},
"page": {
"size": 10,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод для получения релиза по uuid
GET /project/{ownerAlias}/{projectAlias}/release/{releaseUuid}
Запрос возвращает релиз по uuid.
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
releaseUuid |
String | ID релиза |
Responses
STATUS 200
пример JSON:
{
"id": "d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680",
"title": "Название",
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"authorId": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"description": "Описание",
"tagName": "2.14.5",
"commitId": "59de8c0611304aaaaaaaaaaaaac05f90483c6dfb",
"createdAt": "2024-05-17T09:59:30.635513Z",
"updatedAt": "2024-05-17T09:59:30.635515Z",
"attachmentFiles":[
{
"name": "file.zip",
"uuid": "8b8bdd4e-aaaa-bbbb-cccc-1f95b8fae217",
"link": "https://gitflic.ru/project/user/test_project/release/d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680/file/8b8bdd4e-aaaa-aaaa-aaaa-1f95b8fae217",
"size": 158267,
"hashMd5": "fff118534ecd753fc31ffh8ccb48e4c4",
"hashSha1": "d3b911c9ccdffc0de2c5ge8ae4907aa5ef00aa86",
"hashSha256": "33645ddcc7d5add5df70d27e59cef069d52887d6f3d41eec104eda3d1e7221b7",
"hashSha512": "261c9efed1f692f16127r6c02c045ae3779da7c7cf8c8f20ef81f9988e7f6b4414630cc2020011bcfe2aab2372d4cb7ded9985433cd68da42e571b83526c48c6"
}
],
"preRelease": true
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод для получения последнего релиза
GET /project/{ownerAlias}/{projectAlias}/release/latest
Запрос возвращает последний релиз
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
Responses
STATUS 200
пример JSON:
{
"id": "d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680",
"title": "Название",
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"authorId": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"description": "Описание",
"tagName": "2.14.5",
"commitId": "59de8c0611304aaaaaaaaaaaaac05f90483c6dfb",
"createdAt": "2024-05-17T09:59:30.635513Z",
"updatedAt": "2024-05-17T09:59:30.635515Z",
"attachmentFiles":[
{
"name": "file.zip",
"uuid": "8b8bdd4e-aaaa-bbbb-cccc-1f95b8fae217",
"link": "https://gitflic.ru/project/user/test_project/release/d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680/file/8b8bdd4e-aaaa-aaaa-aaaa-1f95b8fae217",
"size": 158267,
"hashMd5": "fff118534ecd753fc31ffh8ccb48e4c4",
"hashSha1": "d3b911c9ccdffc0de2c5ge8ae4907aa5ef00aa86",
"hashSha256": "33645ddcc7d5add5df70d27e59cef069d52887d6f3d41eec104eda3d1e7221b7",
"hashSha512": "261c9efed1f692f16127r6c02c045ae3779da7c7cf8c8f20ef81f9988e7f6b4414630cc2020011bcfe2aab2372d4cb7ded9985433cd68da42e571b83526c48c6"
}
],
"preRelease": true
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод для создания нового релиза
POST /project/{ownerAlias}/{projectAlias}/release
Запрос создает и возвращает новый релиз
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Параметр | Описание |
---|---|
title |
Название релиза |
description |
Описание релиза |
tagName |
Название тега |
preRelease |
Предварительный релиз true или нет false |
Пример JSON объекта
{
"title": "Название",
"description": "Описание",
"tagName": "2.14.5",
"preRelease": true
}
Responses
STATUS 200
пример JSON:
{
"id": "d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680",
"title": "Название",
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"authorId": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"description": "Описание",
"tagName": "2.14.5",
"commitId": "59de8c0611304aaaaaaaaaaaaac05f90483c6dfb",
"createdAt": "2024-05-17T09:59:30.635513Z",
"updatedAt": "2024-05-17T09:59:30.635515Z",
"attachmentFiles": null,
"preRelease": true
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод для редактирования информации о релизе
PUT /project/{ownerAlias}/{projectAlias}/release/{releaseUuid}
Редактирование информации о релизе по ID.
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
releaseUuid |
String | ID релиза |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Параметр | Описание |
---|---|
title |
Название релиза |
description |
Описание релиза |
tagName |
Тег |
preRelease |
Предварительный релиз true или нет false |
Пример JSON объекта
{
"title": "Название",
"description": "Описание",
"tagName": "2.14.5",
"preRelease": true
}
Responses
STATUS 200
пример JSON:
{
"id": "d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680",
"title": "Название",
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"authorId": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"description": "Описание",
"tagName": "2.14.5",
"commitId": "59de8c0611304aaaaaaaaaaaaac05f90483c6dfb",
"createdAt": "2024-05-17T09:59:30.635513Z",
"updatedAt": "2024-05-17T09:59:30.635515Z",
"attachmentFiles":[
{
"name": "file.zip",
"uuid": "54fe8947-aaaa-bbbb-cccc-de2212f3253c",
"link": "https://gitflic.ru/project/user/test_project/release/d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680/file/8b8bdd4e-aaaa-aaaa-aaaa-1f95b8fae217",
"size": 158267,
"hashMd5": "fff118534ecd753fc31ffh8ccb48e4c4",
"hashSha1": "d3b911c9ccdffc0de2c5ge8ae4907aa5ef00aa86",
"hashSha256": "33645ddcc7d5add5df70d27e59cef069d52887d6f3d41eec104eda3d1e7221b7",
"hashSha512": "261c9efed1f692f16127r6c02c045ae3779da7c7cf8c8f20ef81f9988e7f6b4414630cc2020011bcfe2aab2372d4cb7ded9985433cd68da42e571b83526c48c6"
}
],
"preRelease": true
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод для добавления файла к релизу
POST /project/{ownerAlias}/{projectAlias}/release/{releaseUuid}/file
Загрузка новых файлов к релизу с помощью multipart request
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
releaseUuid |
String | ID релиза |
Request
Поддерживаемый формат: multipart/form-data
Ключ | Тип |
---|---|
files |
file |
Responses
STATUS 200
- Добавление прошло успешно:
{
"id": "da44fbf3-720c-413b-8e6c-1df9cc3c1598",
"title": "Release1",
"projectId": "f239feb2-ded6-4998-9730-21617502b1cf",
"authorId": "fbc3d462-a2e4-42bf-a6ec-6990c978d786",
"description": "some sssss description",
"tagName": "votTak",
"commitId": "b3fff4ead6c0fc31cfdd62018934974af39b5bcb",
"createdAt": "2022-05-06T14:30:27.939457Z",
"updatedAt": "2022-05-06T14:30:27.939468Z",
"attachmentFiles": [
{
"name": "csv-parser-1.1.zip",
"uuid": "ad70c088-aaaa-bbbb-cccc-a60735f02f82",
"link": "https://gitflic.ru/project/user/test_project/release/d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680/file/ad70c088-145a-4791-9a83-a60735f02f82",
"size": 15030,
"hashMd5": "0a1587c7f5be28b7dcd5db57305ce015",
"hashSha1": "ba3fbdcdecb6ab154414f8b9f8b3463e41b0ceef",
"hashSha256": "c29c91beade7d9aec6eeb0881adb1a503ef9486ff635e45a3b8b3e6ec02cb817",
"hashSha512": "5dfb6aa37213dcd7a4d61930e0f012d1f6fe208471cff6cb6cdce0501cb11ac61af047ef692e314f5b83e866137d36215fe587561778078a69225752d51fccd4"
}
],
"preRelease": false
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод для скачивания файла из релиза
GET /project/{ownerAlias}/{projectAlias}/release/{releaseUuid}/file/{fileUuid}
Запрос скачивает файл, прикрепленный к релизу
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
releaseUuid |
String | ID релиза |
fileUuid |
String | ID файла |
Responses
Поддерживаемый формат: application/octet-stream
STATUS 200
- Файл был отдан
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод для удаления файлов из релиза
DELETE /project/{ownerAlias}/{projectAlias}/release/{releaseUuid}/file
Запрос удаляет файлы из релиза, в теле запроса принимается массив строк, содержащих id
файлов для удаления.
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
releaseUuid |
String | UUID релиза |
Request
Поддерживаемый формат: application/json
Структура тела DELETE-запроса:
[
"69ce0056-aaaa-aaaa-aaaa-f0d02969a891",
"c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82"
]
Responses
STATUS 200
- Удаление прошло успешно:
{
"id": "d7750f4a-aaaa-aaaa-aaaa-954eeb8e3680",
"title": "Название",
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"authorId": "8473a25a-aaaa-aaaa-aaaa-3e5c9e0a4b51",
"description": "Описание",
"tagName": "2.14.5",
"commitId": "59de8c0611304aaaaaaaaaaaaac05f90483c6dfb",
"createdAt": "2024-05-17T09:59:30.635513Z",
"updatedAt": "2024-05-17T09:59:30.635515Z",
"attachmentFiles": [],
"preRelease": true
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод для удаления релиза
DELETE /project/{ownerAlias}/{projectAlias}/release/{releaseUuid}
Запрос удаляет релиз
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
releaseUuid |
String | ID релиза |
Responses
STATUS 200
- Удаление прошло успешно.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.