Методы пакетов уровня проекта
Метод получения всех пакетов проекта
GET /registry/project/{ownerAlias}/{projectAlias}/package
Запрос возвращает список пакетов проекта, есть возможность настройки количества отображаемых объектов на странице
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
Responses
STATUS 200
пример JSON:
{
"_embedded": {
"simplePackageInfoModelList": [
{
"id": "23920af6-aaaa-aaaa-aaaa-396811188f65",
"name": "Package",
"version": "1.0.0",
"groupId": "group",
"artifactId": "artefact",
"type": "generic",
"ownerUuid": "fc7f17df-aaaa-aaaa-aaaa-111042a265b8",
"ownerType": "PROJECT"
},
{
"id": "deb52e29-aaaa-aaaa-aaaa-737eac0eb8f7",
"name": "Example",
"version": "1.0.3",
"groupId": "example",
"artifactId": "example",
"type": "nuget",
"ownerUuid": "fc7f17df-aaaa-aaaa-aaaa-189042a111b8",
"ownerType": "PROJECT"
}
]
},
"page": {
"size": 10,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод получения пакета проекта по UUID
GET /registry/project/{ownerAlias}/{projectAlias}/package/{packageUuid}
Запрос возвращает информацию о пакете проекта
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageUuid |
String | Идентификатор пакета |
Responses
STATUS 200
пример JSON:
{
"id": "7eeda8b0-aaaa-aaaa-aaaa-bd1fed06bf95",
"name": "Package",
"version": "1.0.1",
"groupId": "Package",
"artifactId": "Package",
"type": "generic",
"ownerUuid": "fc7f17df-aaaa-aaaa-aaaa-189042a111b8",
"ownerType": "PROJECT"
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод получения списка версий пакета проекта
GET /registry/project/{ownerAlias}/{projectAlias}/package/{packageUuid}/version-list
Запрос возвращает информацию о версиях пакета и их содержимом, есть возможность настройки количества отображаемых объектов на странице
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageUuid |
String | Идентификатор пакета |
Responses
STATUS 200
пример JSON:
{
"_embedded": {
"simplePackageVersionModelList": [
{
"id": "fb97db0e-aaaa-aaaa-aaaa-9a95f4f36e9a",
"baseVersion": "1.2.3",
"version": "1.2.3",
"lowerVersion": "1.2.3",
"downloadCount": 12,
"languageVersion": null,
"packageUploadType": "MANUALLY",
"packageFiles": [
{
"id": "6dd3bea5-aaaa-aaaa-aaaa-c49a0025279c",
"name": "gitflic-helper",
"size": 631382,
"hashMd5": "518e87b56adeaaaaaaaa9b6575399e1e",
"hashSHA1": "d06a0844f92daaaaaaaaaaaaaaaa275c448ce0e1",
"hashSHA256": "ad98cee24564aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac56a27d22ac1",
"packageUploadType": "MANUALLY",
"createdAt": "2024-08-01T06:57:07.150295"
}
],
"internal": null
},
{
"id": "800cad33-aaaa-aaaa-aaaa-8ba5864b4914",
"baseVersion": "2.4.7",
"version": "2.4.7",
"lowerVersion": "2.4.7",
"downloadCount": 31,
"languageVersion": null,
"packageUploadType": "API",
"packageFiles": [
{
"id": "684068a6-aaaa-aaaa-aaaa-bebea0e2b46a",
"name": "gitflic.ssh",
"size": 4325,
"hashMd5": "d41d8cd98f00aaaaaaaa0998ecf8427e",
"hashSHA1": "da39a3ee5e6baaaaaaaaaaaaaaaa1890afd80709",
"hashSHA256": "e3b0c44298fcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa991b7852b855",
"packageUploadType": "API",
"createdAt": "2024-07-31T14:02:49.393146"
}
],
"internal": null
}
]
},
"page": {
"size": 10,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод получения версии пакета проекта
GET /registry/project/{ownerAlias}/{projectAlias}/package/{packageUuid}/{packageVersion}
Запрос возвращает информацию о версии пакета и ее содержимом
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageUuid |
String | Идентификатор пакета |
packageVersion |
String | Версия пакета |
Responses
STATUS 200
пример JSON:
{
"id": "fb97db0e-aaaa-aaaa-aaaa-9a95f4f36e9a",
"baseVersion": "1.2.3",
"version": "1.2.3",
"lowerVersion": "1.2.3",
"downloadCount": 12,
"languageVersion": null,
"packageUploadType": "MANUALLY",
"packageFiles": [
{
"id": "6dd3bea5-aaaa-aaaa-aaaa-c49a0025279c",
"name": "gitflic-helper",
"size": 631382,
"hashMd5": "518e87b56adeaaaaaaaa9b6575399e1e",
"hashSHA1": "d06a0844f92daaaaaaaaaaaaaaaa275c448ce0e1",
"hashSHA256": "ad98cee24564aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac56a27d22ac1",
"packageUploadType": "MANUALLY",
"createdAt": "2024-08-01T06:57:07.150295"
}
],
"internal": null
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод получения информации о содержимом пакета проекта
GET /registry/project/{ownerAlias}/{projectAlias}/package/{packageUuid}/package-file
Запрос возвращает информацию о содержимом разных версий пакета, есть возможность настройки количества отображаемых объектов на странице
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageUuid |
String | Идентификатор пакета |
Responses
STATUS 200
пример JSON:
{
"_embedded": {
"simplePackageFileModelList": [
{
"id": "6dd3bea5-aaaa-aaaa-aaaa-c49a0025279c",
"name": "gitflic-helper",
"size": 631382,
"hashMd5": "518e87b56adeaaaaaaaa9b6575399e1e",
"hashSHA1": "d06a0844f92daaaaaaaaaaaaaaaa275c448ce0e1",
"hashSHA256": "ad98cee24564aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac56a27d22ac1",
"packageUploadType": "MANUALLY",
"createdAt": "2024-08-01T06:57:07.150295"
},
{
"id": "684068a6-aaaa-aaaa-aaaa-bebea0e2b46a",
"name": "gitflic.ssh",
"size": 4325,
"hashMd5": "d41d8cd98f00aaaaaaaa0998ecf8427e",
"hashSHA1": "da39a3ee5e6baaaaaaaaaaaaaaaa1890afd80709",
"hashSHA256": "e3b0c44298fcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa991b7852b855",
"packageUploadType": "API",
"createdAt": "2024-07-31T14:02:49.393146"
}
]
},
"page": {
"size": 10,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод удаления пакета проекта
POST /registry/project/{ownerAlias}/{projectAlias}/package/{packageUuid}/delete
Метод удаляет пакет проекта
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageUuid |
String | Идентификатор пакета |
Responses
STATUS 200
- Пакет удален.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод удаления версии пакета проекта
POST /registry/project/{ownerAlias}/{projectAlias}/package/{packageUuid}/{packageVersion}/delete
Метод удаляет версию пакета проекта
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageUuid |
String | Идентификатор пакета |
packageVersion |
String | Версия пакета |
Responses
STATUS 200
- Версия удалена.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод удаления содержимого версии пакета проекта
POST /registry/project/{ownerAlias}/{projectAlias}/package/{packageUuid}/{packageVersion}/{fileUuid}/delete
Метод удаляет содержимое версии пакета проекта
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageUuid |
String | Идентификатор пакета |
packageVersion |
String | Версия пакета |
fileUuid |
String | Идентификатор файла |
Responses
STATUS 200
- Файл удален.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод получения содержимого пакета generic
GET /registry/project/{ownerAlias}/{projectAlias}/package/generic/{packageName}/{packageVersion}/{fileName}
Запрос возвращает файл пакета generic
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageName |
String | Имя пакета |
packageVersion |
String | Версия пакета |
fileName |
String | Имя файла |
Responses
STATUS 200
- Содержимое пакета получено.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод обновления содержимого пакета generic
PUT /registry/project/{ownerAlias}/{projectAlias}/package/generic/{packageName}/{packageVersion}/{fileName}
Запрос загружает прикрепленный файл в указанную версию пакета generic. С помощью данного метода можно создать новую версию пакета или пакет целиком, при условии указания не существующих данных.
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageName |
String | Имя пакета |
packageVersion |
String | Версия пакета |
fileName |
String | Имя файла |
Responses
STATUS 200
- Пакет загружен.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод получения содержимого пакета PyPI
GET /registry/project/{ownerAlias}/{projectAlias}/package/pypi/{packageName}/{packageVersion}/{fileName}
Запрос возвращает файл пакета PyPi
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageName |
String | Имя пакета |
packageVersion |
String | Версия пакета |
fileName |
String | Имя файла |
Responses
STATUS 200
- Содержимое пакета получено.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод обновления содержимого пакета PyPI
PUT /registry/project/{ownerAlias}/{projectAlias}/package/pypi/{packageName}/{packageVersion}/{fileName}
Запрос загружает прикрепленный файл в указанную версию пакета PyPi. С помощью данного метода можно создать новую версию пакета или пакет целиком, при условии указания не существующих данных.
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageName |
String | Имя пакета |
packageVersion |
String | Версия пакета |
fileName |
String | Имя файла |
Responses
STATUS 200
- Пакет загружен.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод получения содержимого пакета Maven
GET /registry/project/{ownerAlias}/{projectAlias}/package/maven/{packageUuid}/{packageVersion}/{fileUuid}/download
Запрос возвращает файл пакета Maven
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageUuid |
String | Идентификатор пакета |
packageVersion |
String | Версия пакета |
fileUuid |
String | Идентификатор файла |
Responses
STATUS 200
- Содержимое пакета получено.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод обновления содержимого пакета Maven
PUT /registry/project/{ownerAlias}/{projectAlias}/package/maven/{groupId}/{artifactId}/{version}/{fileName}
Запрос загружает прикрепленный файл в указанную версию пакета Maven. С помощью данного метода можно создать новую версию пакета или пакет целиком, при условии указания не существующих данных.
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
groupId |
String | Идентификатор группы |
artifactId |
String | Идентификатор артефакта |
version |
String | Версия пакета |
fileName |
String | Имя файла |
Responses
STATUS 200
- Пакет загружен.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод получения содержимого пакета npm
GET /registry/project/{ownerAlias}/{projectAlias}/package/npm/{packageName}/{packageVersion}/{fileName}
Запрос возвращает файл пакета npm
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageName |
String | Имя пакета |
packageVersion |
String | Версия пакета |
fileName |
String | Имя файла |
Responses
STATUS 200
- Содержимое пакета получено.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод обновления содержимого пакета npm
PUT /registry/project/{ownerAlias}/{projectAlias}/package/npm/{packageName}/{packageScope}/{packageVersion}/{fileName}
Запрос загружает прикрепленный файл в указанную версию пакета npm. С помощью данного метода можно создать новую версию пакета или пакет целиком, при условии указания не существующих данных.
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
packageName |
String | Имя пакета |
paсkageScope |
String | Область видимости |
packageVersion |
String | Версия пакета |
fileName |
String | Имя файла |
Responses
STATUS 200
- Пакет загружен.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
Метод создания composer пакета по тегу
POST /project/{ownerAlias}/{projectAlias}/package/-/composer?tag={tagName}
Метод собирает composer пакет из файлов репозитория по указанному тегу и размещает его в Реестре контейнеров и пакетов проекта.
Обратите внимание, данный запрос необходимо отправлять на URL, на котором расположен registry:
- для SaaS версии -
https://registry.gitflic.ru
- для self-hosted
localhost:8080
Порт для self-hosted версии может отличаться
Пример:
https://registry.gitflic.ru/project/adminuser/test_project/package/-/composer?tag=1.2.3
Переменная пути запроса | Тип | Описание |
---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
tagName |
String | Название тега |
Авторизация для данного метода происходит с помощью Basic Auth. Для заголовка Authorization необходимо предоставить зашифрованные с помощью base64 учётные данные - Basic {login}:{transportToken}
Учетные данные adminuser@admin.local:qwerty123 в plain text будут иметь следующий вид в base64 в заголовке:
Authorization - Basic YWRtaW51c2VyQGFkbWluLmxvY2FsOnF3ZXJ0eTEyMw==
Учетные данные | Тип | Описание |
---|---|---|
login |
String | Псевдоним пользователя |
transportToken |
String | Транспортный токен |
С инструкцией по получению токена можно ознакомиться на странице.
Responses
STATUS 200
- Пакет создан и добавлен в Реестр контейнеров и пакетов.
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.