Red Hat Quay API 指南
前言 复制链接链接已复制到粘贴板!
Red Hat Quay 应用程序编程接口(API)是一个 OAuth 2 RESTful API,它由一组用于添加、显示、修改和删除 Red Hat Quay 功能的端点组成。
Red Hat Quay 是由 Semantic Versioning (SemVer)规格 划分的。每个主要、次版本和补丁版本都会满足以下条件:
- Red Hat Quay 的主版本可能包括不兼容的 API 更改。例如,Red Hat Quay 2.0 的 API 与 Red Hat Quay 3.0 不同。
- Red Hat Quay 的次版本(如 3.y)以向后兼容的方式添加功能。
- Red Hat Quay 的补丁版本(如 3.y.z)引入了向后兼容的程序错误修复。
目前,Red Hat Quay 将 api/v1
端点用于 3.y.z 版本。
本指南描述了 api/v1
端点以及用于访问这些端点的基于浏览器的示例。
第 1 章 使用 Red Hat Quay API 复制链接链接已复制到粘贴板!
Red Hat Quay 提供了一个完整的 OAuth 2、RESTful API,它:
- 可以从 URL https://<yourquayhost>/api/v1的端点获取每个 Red Hat Quay 实例的端点
- 通过启用 Swagger UI,通过浏览器连接到端点,以获取、删除、发布和放置 Red Hat Quay 设置
- 可以被使用 API 调用和使用 OAuth 令牌的应用程序访问
- 以 JSON 格式发送和接收数据
下面的文本描述了如何访问 Red Hat Quay API,并使用它来查看和修改 Red Hat Quay 集群中的设置。下一节列出了和描述 API 端点。
1.1. 从 Quay.io 访问 Quay API 复制链接链接已复制到粘贴板!
如果您还没有运行自己的 Red Hat Quay 集群,您可以从 Web 浏览器浏览 Quay.io 提供的 Red Hat Quay API:
https://docs.quay.io/api/swagger/
https://docs.quay.io/api/swagger/
显示 Quay.io API 端点的 API Explorer。您将无法看到在 Quay.io 上未启用的 Red Hat Quay 功能的超级用户 API 端点或端点(如存储库镜像)。
从 API Explorer,您可以获得并有时会更改以下信息:
- 账单、订阅和计划
- 存储库构建和构建触发器
- 错误消息和全局信息
- 仓库镜像、清单、权限、通知、漏洞和镜像签名
- 使用日志
- 机构、成员和 OAuth 应用程序
- 用户和机器人帐户
- and more…
选择打开端点来查看端点的每一个部分的 Model Schema。打开端点,输入所有必要的参数(如存储库名称或镜像),然后选择 尝试退出!
按钮来查询或更改与 Quay.io 端点关联的设置。
1.2. 创建 OAuth 访问令牌 复制链接链接已复制到粘贴板!
要创建 OAuth 访问令牌,以便您可以访问机构的 API:
- 登录 Red Hat Quay 并选择您的机构(或创建一个新的机构)。
- 点击左侧导航栏中的 Applications 图标。
- 选择 Create New Application 并在出现提示时为新应用程序提供名称。
- 选择新应用。
- 从左侧导航中选择 Generate Token。
- 选择设置令牌范围的复选框,然后选择 Generate Access Token。
- 查看允许并选择授权应用程序的权限来批准它。
- 复制新生成的令牌,以用于访问 API。
1.3. 从网页浏览器访问 Quay API 复制链接链接已复制到粘贴板!
通过启用 Swagger,您可以通过网页浏览器访问您自己的 Red Hat Quay 实例的 API。这个 URL 通过 Swagger UI 和这个 URL 公开 Red Hat Quay API explorer:
https://<yourquayhost>/api/v1/discovery.
https://<yourquayhost>/api/v1/discovery.
这样,访问 API 的方法不包括在 Red Hat Quay 安装中可用的超级用户端点。以下是通过运行 swagger-ui 容器镜像访问本地系统上运行的 Red Hat Quay API 接口的示例:
export SERVER_HOSTNAME=<yourhostname> sudo podman run -p 8888:8080 -e API_URL=https://$SERVER_HOSTNAME:8443/api/v1/discovery docker.io/swaggerapi/swagger-ui
# export SERVER_HOSTNAME=<yourhostname>
# sudo podman run -p 8888:8080 -e API_URL=https://$SERVER_HOSTNAME:8443/api/v1/discovery docker.io/swaggerapi/swagger-ui
在运行 swagger-ui 容器时,打开 Web 浏览器到 localhost 端口 8888,以通过 swagger-ui 容器查看 API 端点。
为避免在日志中出现错误,如 "API 调用,如果使用浏览器调用 X-Requested-With 标头来调用,"如果从浏览器中调用,请将下面这一行添加到集群中的所有节点上的 config.yaml
中,再重启 Red Hat Quay:
BROWSER_API_CALLS_XHR_ONLY: false
BROWSER_API_CALLS_XHR_ONLY: false
1.4. 从命令行访问 Red Hat Quay API 复制链接链接已复制到粘贴板!
您可以通过 Red Hat Quay 集群的 API,使用 curl
命令 GET、PUT、POST 或 DELETE 设置。将 <token
> 替换为您之前创建的 OAuth 访问令牌,以便在以下示例中获取或更改设置。
1.4.1. 获取超级用户信息 复制链接链接已复制到粘贴板!
curl -X GET -H "Authorization: Bearer <token_here>" \ "https://<yourquayhost>/api/v1/superuser/users/"
$ curl -X GET -H "Authorization: Bearer <token_here>" \
"https://<yourquayhost>/api/v1/superuser/users/"
例如:
1.4.2. 使用 API 创建超级用户 复制链接链接已复制到粘贴板!
配置超级用户名称,如 Deploy Quay book 所述:
- 使用配置编辑器 UI 或者
-
直接使用配置 API 来验证(并下载)更新的配置捆绑包,直接编辑
config.yaml
文件
为超级用户名称创建用户帐户:
获取授权令牌(如上所述),并使用
curl
来创建用户:curl -H "Content-Type: application/json" -H "Authorization: Bearer Fava2kV9C92p1eXnMawBZx9vTqVnksvwNm0ckFKZ" -X POST --data '{
$ curl -H "Content-Type: application/json" -H "Authorization: Bearer Fava2kV9C92p1eXnMawBZx9vTqVnksvwNm0ckFKZ" -X POST --data '{ "username": "quaysuper", "email": "quaysuper@example.com" }' http://quay-server:8080/api/v1/superuser/users/ | jq
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 返回的内容包括新用户帐户的生成密码:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
现在,当您请求用户列表时,它将以超级用户身份显示 quaysuper
:
1.4.3. 列出用量日志 复制链接链接已复制到粘贴板!
一个内部 API /api/v1/superuser/logs
可用于列出当前系统的用量日志。这将分页结果,因此在以下示例中创建了超过 20 个仓库,以介绍如何使用多个调用来访问整个结果集。
1.4.3.1. 分页示例 复制链接链接已复制到粘贴板!
首次调用
curl -X GET -k -H "Authorization: Bearer qz9NZ2Np1f55CSZ3RVOvxjeUdkzYuCp0pKggABCD" https://example-registry-quay-quay-enterprise.apps.example.com/api/v1/superuser/logs | jq
$ curl -X GET -k -H "Authorization: Bearer qz9NZ2Np1f55CSZ3RVOvxjeUdkzYuCp0pKggABCD" https://example-registry-quay-quay-enterprise.apps.example.com/api/v1/superuser/logs | jq
初始输出
使用 next_page 进行第二个调用
curl -X GET -k -H "Authorization: Bearer qz9NZ2Np1f55CSZ3RVOvxjeUdkzYuCp0pKggABCD" https://example-registry-quay-quay-enterprise.apps.example.com/api/v1/superuser/logs?next_page=gAAAAABhtzGDsH38x7pjWhD8MJq1_2FAgqUw2X9S2LoCLNPH65QJqB4XAU2qAxYb6QqtlcWj9eI6DUiMN_q3e3I0agCvB2VPQ8rY75WeaiUzM3rQlMc4i6ElR78t8oUxVfNp1RMPIRQYYZyXP9h6E8LZZhqTMs0S-SedaQJ3kVFtkxZqJwHVjgt23Ts2DonVoYwtKgI3bCC5 | jq
$ curl -X GET -k -H "Authorization: Bearer qz9NZ2Np1f55CSZ3RVOvxjeUdkzYuCp0pKggABCD" https://example-registry-quay-quay-enterprise.apps.example.com/api/v1/superuser/logs?next_page=gAAAAABhtzGDsH38x7pjWhD8MJq1_2FAgqUw2X9S2LoCLNPH65QJqB4XAU2qAxYb6QqtlcWj9eI6DUiMN_q3e3I0agCvB2VPQ8rY75WeaiUzM3rQlMc4i6ElR78t8oUxVfNp1RMPIRQYYZyXP9h6E8LZZhqTMs0S-SedaQJ3kVFtkxZqJwHVjgt23Ts2DonVoYwtKgI3bCC5 | jq
第二个调用的输出
1.4.4. 目录同步 复制链接链接已复制到粘贴板!
要在机构 testadminorg
中为团队 newteam
启用目录同步,其中 LDAP 中对应的组名称是 ldapgroup
:
curl -X POST -H "Authorization: Bearer 9rJYBR3v3pXcj5XqIA2XX6Thkwk4gld4TCYLLWDF" \ -H "Content-type: application/json" \ -d '{"group_dn": "cn=ldapgroup,ou=Users"}' \ http://quay1-server:8080/api/v1/organization/testadminorg/team/newteam/syncing
$ curl -X POST -H "Authorization: Bearer 9rJYBR3v3pXcj5XqIA2XX6Thkwk4gld4TCYLLWDF" \
-H "Content-type: application/json" \
-d '{"group_dn": "cn=ldapgroup,ou=Users"}' \
http://quay1-server:8080/api/v1/organization/testadminorg/team/newteam/syncing
为同一团队禁用同步:
curl -X DELETE -H "Authorization: Bearer 9rJYBR3v3pXcj5XqIA2XX6Thkwk4gld4TCYLLWDF" \ http://quay1-server:8080/api/v1/organization/testadminorg/team/newteam/syncing
$ curl -X DELETE -H "Authorization: Bearer 9rJYBR3v3pXcj5XqIA2XX6Thkwk4gld4TCYLLWDF" \
http://quay1-server:8080/api/v1/organization/testadminorg/team/newteam/syncing
1.4.5. 通过 API 创建存储库构建 复制链接链接已复制到粘贴板!
要从指定的输入构建存储库,并使用自定义标签标记构建,用户可以使用 requestRepoBuild 端点。它采用以下数据:
archive_url
参数应指向包含 Dockerfile 和其他构建所需文件的 tar
或 zip
存档。file_id
参数是我们较旧的构建系统外。它无法再使用。如果 Dockerfile 位于子目录中,也需要指定它。
该存档应公开访问。OAuth 应用应具有 "Administer Organization" 范围,因为只有机构管理员可以访问机器人的帐户令牌。否则,某人可以通过简单地授予构建对机器人(没有访问权限本身)来获取机器人权限,并使用它来获取镜像内容。如果出现错误,请检查 json 块返回的,并确保归档位置、拉取机器机器和其他参数正确传递。点单个构建页面右上角的"下载日志"检查日志以了解更详细的消息。
1.4.6. 创建机构机器人 复制链接链接已复制到粘贴板!
curl -X PUT https://quay.io/api/v1/organization/{orgname}/robots/{robot shortname} \ -H 'Authorization: Bearer <token>''
$ curl -X PUT https://quay.io/api/v1/organization/{orgname}/robots/{robot shortname} \
-H 'Authorization: Bearer <token>''
1.4.7. 触发构建 复制链接链接已复制到粘贴板!
curl -X POST https://quay.io/api/v1/repository/YOURORGNAME/YOURREPONAME/build/ \ -H 'Authorization: Bearer <token>'
$ curl -X POST https://quay.io/api/v1/repository/YOURORGNAME/YOURREPONAME/build/ \
-H 'Authorization: Bearer <token>'
带有请求的 Python
import requests r = requests.post('https://quay.io/api/v1/repository/example/example/image', headers={'content-type': 'application/json', 'Authorization': 'Bearer <redacted>'}, data={[<request-body-contents>}) print(r.text)
import requests
r = requests.post('https://quay.io/api/v1/repository/example/example/image', headers={'content-type': 'application/json', 'Authorization': 'Bearer <redacted>'}, data={[<request-body-contents>})
print(r.text)
1.4.8. 创建私有存储库 复制链接链接已复制到粘贴板!
curl -X POST https://quay.io/api/v1/repository \ -H 'Authorization: Bearer {token}' \ -H 'Content-Type: application/json' \ -d '{"namespace":"yournamespace", "repository":"yourreponame",
$ curl -X POST https://quay.io/api/v1/repository \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{"namespace":"yournamespace", "repository":"yourreponame",
"description":"descriptionofyourrepo", "visibility": "private"}' | jq
此 API 允许您执行处理 Red Hat Quay 存储库、用户和组织所需的许多操作。
2.1. 授权 复制链接链接已复制到粘贴板!
oauth2_implicit
范围
以下范围用于控制对 API 端点的访问:
影响范围 | 描述 |
---|---|
repo:read | 此应用程序可以查看并拉取授予用户或机器人帐户可见的所有存储库 |
repo:write | 此应用程序将可以查看、推送和拉取授予用户或机器人帐户具有写入权限的所有存储库 |
repo:admin | 此应用程序具有管理员访问权限,可以访问授予用户或机器人帐户有权访问的所有存储库 |
repo:create | 此应用将能够创建存储库到允许授予用户或机器人帐户的任何命名空间创建存储库 |
user:read | 此应用将能够读取用户信息,如用户名和电子邮件地址。 |
org:admin | 此应用程序将可以管理您的组织,包括创建机器人、创建团队、调整团队成员资格和更改账单设置。在授予此权限前,在请求的应用程序中应有绝对信任。 |
super:user | 此应用程序将可以管理您的安装,包括管理用户、管理超级用户面板中找到的机构和其他功能。在授予此权限前,在请求的应用程序中应有绝对信任。 |
user:admin | 此应用程序可以管理您的帐户,包括创建机器人并授予它们对存储库的权限。在授予此权限前,在请求的应用程序中应有绝对信任。 |
2.2. appspecifictokens 复制链接链接已复制到粘贴板!
为当前用户管理应用特定令牌。
2.2.1. listAppTokens 复制链接链接已复制到粘贴板!
列出用户的应用特定令牌。
GET /api/v1/user/apptoken
Authorizations: oauth2_implicit(user:admin)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
过期 | 如果为 true,则只会很快返回这些令牌 | 布尔值 |
响应
2.2.2. createAppToken 复制链接链接已复制到粘贴板!
为用户创建新的应用特定令牌。
POST /api/v1/user/apptoken
Authorizations: oauth2_implicit(user:admin)
请求正文模式(application/json)
新令牌的描述。
名称 | 描述 | 模式 |
---|---|---|
friendlyName | 帮助识别令牌的友好名称 | 字符串 |
响应
2.2.3. revokeAppToken 复制链接链接已复制到粘贴板!
为用户撤销特定的应用令牌。
DELETE /api/v1/user/apptoken/{token_uuid}
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
token_uuid | 应用程序特定令牌的 uuid | 字符串 |
响应
2.2.4. getAppToken 复制链接链接已复制到粘贴板!
为该用户返回特定的应用令牌。
GET /api/v1/user/apptoken/{token_uuid}
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
token_uuid | 应用程序特定令牌的 uuid | 字符串 |
响应
2.3. build 复制链接链接已复制到粘贴板!
创建、列出、取消并获取存储库构建的状态/日志。
2.3.1. getRepoBuildStatus 复制链接链接已复制到粘贴板!
返回构建 uuids 指定的构建的状态。
GET /api/v1/repository/{repository}/build/{build_uuid}/status
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
build_uuid | 构建的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.3.2. getRepoBuildLogs 复制链接链接已复制到粘贴板!
返回构建 uuid 指定构建的构建日志。
GET /api/v1/repository/{repository}/build/{build_uuid}/logs
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
build_uuid | 构建的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.3.3. cancelRepoBuild 复制链接链接已复制到粘贴板!
取消存储库构建。
DELETE /api/v1/repository/{repository}/build/{build_uuid}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
build_uuid | 构建的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.3.4. getRepoBuild 复制链接链接已复制到粘贴板!
返回有关构建的信息。
GET /api/v1/repository/{repository}/build/{build_uuid}
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
build_uuid | 构建的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.3.5. getRepoBuilds 复制链接链接已复制到粘贴板!
获取存储库构建列表。
GET /api/v1/repository/{repository}/build/
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
因为 | 返回自给定的 unix 时间码后的所有构建 | 整数 |
query |
limit | 要返回的最大构建数 | 整数 |
响应
2.3.6. requestRepoBuild 复制链接链接已复制到粘贴板!
请求构建存储库并从指定的输入推送。
POST /api/v1/repository/{repository}/build/
Authorizations: oauth2_implicit(存储库:write)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
新存储库构建的描述。
名称 | 描述 | 模式 |
---|---|---|
file_id | 构建 spec 上传时生成的文件 id | 字符串 |
archive_url | 要构建的 .tar.gz 的 URL。必须以 "http" 或 "https" 开始。 | 字符串 |
子目录 | 可在其中找到 Dockerfile 的子目录。您只能指定这个或 dockerfile_path | 字符串 |
dockerfile_path | 到 dockerfile 的路径。您只能指定这个或子目录。 | 字符串 |
上下文 | 传递 dockerfile 的上下文。这是可选的。 | 字符串 |
pull_robot | 用作拉取凭证的 Quay 机器人帐户的用户名 | 字符串 |
docker_tags | 构建镜像要推送到的标签。如果没有指定,则使用"latest"。 |
字符串数组 |
响应
2.4. discovery 复制链接链接已复制到粘贴板!
API 发现信息。
2.4.1. discovery 复制链接链接已复制到粘贴板!
列出以 swagger API 格式提供的所有 API 端点。
GET /api/v1/discovery
授权:
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
内部 | 是否包含内部 API。 | 布尔值 |
响应
2.5. 错误 复制链接链接已复制到粘贴板!
错误详情 API。
2.5.1. getErrorDescription 复制链接链接已复制到粘贴板!
获取有关错误的详细描述。
GET /api/v1/error/{error_type}
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
error_type | 识别错误类型的错误代码。 | 字符串 |
响应
HTTP 代码 | 描述 | 模式 |
---|---|---|
200 | 成功调用 | |
400 | 错误请求 | |
401 | 必需的会话 | |
403 | 未授权访问 | |
404 | 未找到 |
2.6. globalmessages 复制链接链接已复制到粘贴板!
消息 API.
2.6.1. getGlobalMessages 复制链接链接已复制到粘贴板!
返回超级用户信息。
GET /api/v1/messages
授权:
响应
2.6.2. createGlobalMessage 复制链接链接已复制到粘贴板!
创建一个消息。
POST /api/v1/messages
Authorizations: oauth2_implicit(super:user)
请求正文模式(application/json)
创建新信息
名称 | 描述 | 模式 |
---|---|---|
message | 单个消息 | 对象 |
响应
2.6.3. deleteGlobalMessage 复制链接链接已复制到粘贴板!
删除消息。
DELETE /api/v1/message/{uuid}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
UUID | 字符串 |
响应
2.7. logs 复制链接链接已复制到粘贴板!
访问机构或存储库的使用情况日志。
2.7.1. getAggregateUserLogs 复制链接链接已复制到粘贴板!
返回当前用户的聚合日志。
GET /api/v1/user/aggregatelogs
Authorizations: oauth2_implicit(user:admin)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
执行程序 | 过滤日志的用户名。 | 字符串 |
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
响应
2.7.2. exportUserLogs 复制链接链接已复制到粘贴板!
返回当前用户的聚合日志。
POST /api/v1/user/exportlogs
Authorizations: oauth2_implicit(user:admin)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
请求正文模式(application/json)
导出日志操作配置
名称 | 描述 | 模式 |
---|---|---|
callback_url | 使用到导出日志的链接调用的回调 URL | 字符串 |
callback_email | 电子邮件地址,指向导出的日志的链接 | 字符串 |
响应
2.7.3. listUserLogs 复制链接链接已复制到粘贴板!
列出当前用户的日志。
GET /api/v1/user/logs
Authorizations: oauth2_implicit(user:admin)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
next_page | 下一页面页面的页面令牌 | 字符串 |
query |
执行程序 | 过滤日志的用户名。 | 字符串 |
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
响应
2.7.4. getAggregateOrgLogs 复制链接链接已复制到粘贴板!
获取指定机构的聚合日志。
GET /api/v1/organization/{orgname}/aggregatelogs
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
执行程序 | 过滤日志的用户名。 | 字符串 |
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
响应
2.7.5. exportOrgLogs 复制链接链接已复制到粘贴板!
导出指定组织的日志。
POST /api/v1/organization/{orgname}/exportlogs
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
请求正文模式(application/json)
导出日志操作配置
名称 | 描述 | 模式 |
---|---|---|
callback_url | 使用到导出日志的链接调用的回调 URL | 字符串 |
callback_email | 电子邮件地址,指向导出的日志的链接 | 字符串 |
响应
2.7.6. listOrgLogs 复制链接链接已复制到粘贴板!
列出指定机构的日志。
GET /api/v1/organization/{orgname}/logs
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
next_page | 下一页面页面的页面令牌 | 字符串 |
query |
执行程序 | 过滤日志的用户名。 | 字符串 |
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
响应
2.7.7. getAggregateRepoLogs 复制链接链接已复制到粘贴板!
返回指定存储库的聚合日志。
GET /api/v1/repository/{repository}/aggregatelogs
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
响应
2.7.8. exportRepoLogs 复制链接链接已复制到粘贴板!
为指定存储库对日志进行队列导出。
POST /api/v1/repository/{repository}/exportlogs
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
请求正文模式(application/json)
导出日志操作配置
名称 | 描述 | 模式 |
---|---|---|
callback_url | 使用到导出日志的链接调用的回调 URL | 字符串 |
callback_email | 电子邮件地址,指向导出的日志的链接 | 字符串 |
响应
2.7.9. listRepoLogs 复制链接链接已复制到粘贴板!
列出指定存储库的日志。
GET /api/v1/repository/{repository}/logs
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
next_page | 下一页面页面的页面令牌 | 字符串 |
query |
ENDTIME | 日志的最新时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
query |
starttime | 日志的早期时间。格式: UTC 中的"%m/%d/%Y" | 字符串 |
响应
2.8. 清单 复制链接链接已复制到粘贴板!
管理存储库的清单。
2.8.1. deleteManifestLabel 复制链接链接已复制到粘贴板!
从清单中删除现有标签。
DELETE /api/v1/repository/{repository}/manifest/{manifestref}/labels/{labelid}
Authorizations: oauth2_implicit(存储库:write)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
manifestref | 清单摘要 | 字符串 |
path |
labelid | 标签的 ID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.8.2. getManifestLabel 复制链接链接已复制到粘贴板!
检索带有清单下特定 ID 的标签。
GET /api/v1/repository/{repository}/manifest/{manifestref}/labels/{labelid}
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
manifestref | 清单摘要 | 字符串 |
path |
labelid | 标签的 ID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.8.3. listManifestLabels 复制链接链接已复制到粘贴板!
GET /api/v1/repository/{repository}/manifest/{manifestref}/labels
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
manifestref | 清单摘要 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
过滤 | 如果指定,则仅返回与给定前缀匹配的标签 | 字符串 |
响应
2.8.4. addManifestLabel 复制链接链接已复制到粘贴板!
将新标签添加到标签清单中。
POST /api/v1/repository/{repository}/manifest/{manifestref}/labels
Authorizations: oauth2_implicit(存储库:write)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
manifestref | 清单摘要 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
为清单添加标签
名称 | 描述 | 模式 |
---|---|---|
key | 标签的密钥 | 字符串 |
value | 标签的值 | 字符串 |
media_type | 此标签的介质类型 |
响应
2.8.5. getRepoManifest 复制链接链接已复制到粘贴板!
GET /api/v1/repository/{repository}/manifest/{manifestref}
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
manifestref | 清单摘要 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.9. mirror 复制链接链接已复制到粘贴板!
2.9.1. syncCancel 复制链接链接已复制到粘贴板!
为给定存储库的镜像配置更新 sync_status。
POST /api/v1/repository/{repository}/mirror/sync-cancel
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.9.2. syncNow 复制链接链接已复制到粘贴板!
为给定存储库的镜像配置更新 sync_status。
POST /api/v1/repository/{repository}/mirror/sync-now
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.9.3. getRepoMirrorConfig 复制链接链接已复制到粘贴板!
返回一个给定存储库的 Mirror 配置。
GET /api/v1/repository/{repository}/mirror
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
HTTP 代码 | 描述 | 模式 |
---|---|---|
200 | 成功调用 | |
400 | 错误请求 | |
401 | 必需的会话 | |
403 | 未授权访问 | |
404 | 未找到 |
2.9.4. createRepoMirrorConfig 复制链接链接已复制到粘贴板!
为给定的存储库创建一个 RepoMirrorConfig。
POST /api/v1/repository/{repository}/mirror
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
创建存储库镜像配置。
名称 | 描述 | 模式 |
---|---|---|
is_enabled | 用于启用或禁用同步。 | 布尔值 |
external_reference | 外部存储库的位置。 | 字符串 |
external_registry_username | 用于与外部 registry 进行身份验证的用户名。 | |
external_registry_password | 用于与外部 registry 进行身份验证的密码。 | |
sync_start_date | 下次确定此存储库准备好同步的时间。 | 字符串 |
sync_interval | next_start_date 开始同步后的秒数。 | 整数 |
robot_username | 用于镜像推送的机器人的用户名。 | 字符串 |
root_rule | 用于决定应同步哪些标签的 glob-patterns 列表。如需对象引用,请参阅 root_rule api 示例。 | 对象 |
external_registry_config | 对象 |
响应
2.9.5. changeRepoMirrorConfig 复制链接链接已复制到粘贴板!
允许用户修改存储库的镜像配置。
PUT /api/v1/repository/{repository}/mirror
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
更新存储库镜像配置。
名称 | 描述 | 模式 |
---|---|---|
is_enabled | 用于启用或禁用同步。 | 布尔值 |
external_reference | 外部存储库的位置。 | 字符串 |
external_registry_username | 用于与外部 registry 进行身份验证的用户名。 | |
external_registry_password | 用于与外部 registry 进行身份验证的密码。 | |
sync_start_date | 下次确定此存储库准备好同步的时间。 | 字符串 |
sync_interval | next_start_date 开始同步后的秒数。 | 整数 |
robot_username | 用于镜像推送的机器人的用户名。 | 字符串 |
root_rule | 用于决定应同步哪些标签的 glob-patterns 列表。如需对象引用,请参阅 root_rule api 示例。 | 对象 |
external_registry_config | 对象 |
响应
2.10. namespacequota 复制链接链接已复制到粘贴板!
2.10.1. listUserQuota 复制链接链接已复制到粘贴板!
GET /api/v1/user/quota
Authorizations: oauth2_implicit(user:admin)
响应
2.10.2. getOrganizationQuotaLimit 复制链接链接已复制到粘贴板!
GET /api/v1/organization/{orgname}/quota/{quota_id}/limit/{limit_id}
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 | |
path |
quota_id | 字符串 | |
path |
limit_id | 字符串 |
响应
2.10.3. deleteOrganizationQuotaLimit 复制链接链接已复制到粘贴板!
DELETE /api/v1/organization/{orgname}/quota/{quota_id}/limit/{limit_id}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 | |
path |
quota_id | 字符串 | |
path |
limit_id | 字符串 |
响应
2.10.4. changeOrganizationQuotaLimit 复制链接链接已复制到粘贴板!
PUT /api/v1/organization/{orgname}/quota/{quota_id}/limit/{limit_id}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 | |
path |
quota_id | 字符串 | |
path |
limit_id | 字符串 |
请求正文模式(application/json)
更改机构配额限制的描述
名称 | 描述 | 模式 |
---|---|---|
type | 配额限制类型:"Warning"或"Reject" | 字符串 |
threshold_percent | 配额阈值,以百分比表示配额 | 整数 |
响应
2.10.5. listOrganizationQuotaLimit 复制链接链接已复制到粘贴板!
GET /api/v1/organization/{orgname}/quota/{quota_id}/limit
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 | |
path |
quota_id | 字符串 |
响应
2.10.6. createOrganizationQuotaLimit 复制链接链接已复制到粘贴板!
POST /api/v1/organization/{orgname}/quota/{quota_id}/limit
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 | |
path |
quota_id | 字符串 |
请求正文模式(application/json)
新机构配额限制的描述
名称 | 描述 | 模式 |
---|---|---|
type | 配额限制类型:"Warning"或"Reject" | 字符串 |
threshold_percent | 配额阈值,以百分比表示配额 | 整数 |
响应
2.10.7. getUserQuotaLimit 复制链接链接已复制到粘贴板!
GET /api/v1/user/quota/{quota_id}/limit/{limit_id}
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
quota_id | 字符串 | |
path |
limit_id | 字符串 |
响应
2.10.8. listUserQuotaLimit 复制链接链接已复制到粘贴板!
GET /api/v1/user/quota/{quota_id}/limit
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
quota_id | 字符串 |
响应
2.10.9. getOrganizationQuota 复制链接链接已复制到粘贴板!
GET /api/v1/organization/{orgname}/quota/{quota_id}
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 | |
path |
quota_id | 字符串 |
响应
2.10.10. deleteOrganizationQuota 复制链接链接已复制到粘贴板!
DELETE /api/v1/organization/{orgname}/quota/{quota_id}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 | |
path |
quota_id | 字符串 |
响应
2.10.11. changeOrganizationQuota 复制链接链接已复制到粘贴板!
PUT /api/v1/organization/{orgname}/quota/{quota_id}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 | |
path |
quota_id | 字符串 |
请求正文模式(application/json)
新机构配额的描述
名称 | 描述 | 模式 |
---|---|---|
limit_bytes | 允许机构允许的字节数 | 整数 |
响应
2.10.12. listOrganizationQuota 复制链接链接已复制到粘贴板!
GET /api/v1/organization/{orgname}/quota
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 |
响应
2.10.13. createOrganizationQuota 复制链接链接已复制到粘贴板!
创建新机构配额。
POST /api/v1/organization/{orgname}/quota
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 |
请求正文模式(application/json)
新机构配额的描述
名称 | 描述 | 模式 |
---|---|---|
limit_bytes | 允许机构允许的字节数 | 整数 |
响应
2.10.14. getUserQuota 复制链接链接已复制到粘贴板!
GET /api/v1/user/quota/{quota_id}
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
quota_id | 字符串 |
响应
2.11. 机构 复制链接链接已复制到粘贴板!
管理组织、成员和 OAuth 应用程序。
2.11.1. createOrganization 复制链接链接已复制到粘贴板!
创建新机构。
POST /api/v1/organization/
Authorizations: oauth2_implicit(user:admin)
请求正文模式(application/json)
新组织的描述。
名称 | 描述 | 模式 |
---|---|---|
name | 机构用户名 | 字符串 |
email | 机构联系电子邮件 | 字符串 |
recaptcha_response | (may be disabled)recaptcha 响应代码进行验证 | 字符串 |
响应
2.11.2. validateProxyCacheConfig 复制链接链接已复制到粘贴板!
POST /api/v1/organization/{orgname}/validateproxycache
运行 POST /api/v1/organization/{orgname}/validateproxycache
目前会返回 202
响应有效负载 Valid
。这是个已知问题。它应该返回 Successful Creation
响应有效负载。以后的 Red Hat Quay 版本中会解决这个问题。
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 字符串 |
请求正文模式(application/json)
机构的代理缓存配置
名称 | 描述 | 模式 |
---|---|---|
upstream_registry | 要缓存的上游 registry 的名称 | 字符串 |
响应
2.11.3. getOrganizationCollaborators 复制链接链接已复制到粘贴板!
列出指定机构外协作器。
GET /api/v1/organization/{orgname}/collaborators
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
响应
2.11.4. getOrganizationApplication 复制链接链接已复制到粘贴板!
使用指定的 client_id 在指定的机构下检索应用程序。
GET /api/v1/organization/{orgname}/applications/{client_id}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
client_id | OAuth 客户端 ID | 字符串 |
响应
2.11.5. deleteOrganizationApplication 复制链接链接已复制到粘贴板!
删除此机构下的应用程序。
DELETE /api/v1/organization/{orgname}/applications/{client_id}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
client_id | OAuth 客户端 ID | 字符串 |
响应
2.11.6. updateOrganizationApplication 复制链接链接已复制到粘贴板!
更新此机构下的应用程序。
PUT /api/v1/organization/{orgname}/applications/{client_id}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
client_id | OAuth 客户端 ID | 字符串 |
请求正文模式(application/json)
更新应用程序的描述。
名称 | 描述 | 模式 |
---|---|---|
name | 应用程序的名称 | 字符串 |
redirect_uri | 应用程序的 OAuth 重定向的 URI | 字符串 |
application_uri | 应用程序主页的 URI | 字符串 |
description | 应用程序的人类可读描述 | 字符串 |
avatar_email | 用于应用程序的 avatar 的电子邮件地址 | 字符串 |
响应
2.11.7. getOrganizationApplications 复制链接链接已复制到粘贴板!
列出指定机构的应用程序。
GET /api/v1/organization/{orgname}/applications
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
响应
2.11.8. createOrganizationApplication 复制链接链接已复制到粘贴板!
在此组织下创建新应用。
POST /api/v1/organization/{orgname}/applications
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
请求正文模式(application/json)
新机构应用程序的描述。
名称 | 描述 | 模式 |
---|---|---|
name | 应用程序的名称 | 字符串 |
redirect_uri | 应用程序的 OAuth 重定向的 URI | 字符串 |
application_uri | 应用程序主页的 URI | 字符串 |
description | 应用程序的人类可读描述 | 字符串 |
avatar_email | 用于应用程序的 avatar 的电子邮件地址 | 字符串 |
响应
2.11.9. getProxyCacheConfig 复制链接链接已复制到粘贴板!
检索机构的代理缓存配置。
GET /api/v1/organization/{orgname}/proxycache
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
响应
2.11.10. deleteProxyCacheConfig 复制链接链接已复制到粘贴板!
删除机构的代理缓存配置。
DELETE /api/v1/organization/{orgname}/proxycache
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
响应
2.11.11. createProxyCacheConfig 复制链接链接已复制到粘贴板!
为组织创建代理缓存配置。
POST /api/v1/organization/{orgname}/proxycache
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
请求正文模式(application/json)
机构的代理缓存配置
名称 | 描述 | 模式 |
---|---|---|
upstream_registry | 要缓存的上游 registry 的名称 | 字符串 |
响应
2.11.12. removeOrganizationMember 复制链接链接已复制到粘贴板!
从组织中删除成员,撤销其所有存储库功能,并从机构中的所有团队中删除它。
DELETE /api/v1/organization/{orgname}/members/{membername}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
memberName | 机构成员的用户名 | 字符串 |
响应
2.11.13. getOrganizationMember 复制链接链接已复制到粘贴板!
检索组织成员的详细信息。
GET /api/v1/organization/{orgname}/members/{membername}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
memberName | 机构成员的用户名 | 字符串 |
响应
2.11.14. getOrganizationMembers 复制链接链接已复制到粘贴板!
列出指定机构的人类。
GET /api/v1/organization/{orgname}/members
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
响应
2.11.15. getOrganization 复制链接链接已复制到粘贴板!
获取指定机构的详情。
GET /api/v1/organization/{orgname}
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
响应
2.11.16. deleteAdminedOrganization 复制链接链接已复制到粘贴板!
删除指定的机构。
DELETE /api/v1/organization/{orgname}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
响应
2.11.17. changeOrganizationDetails 复制链接链接已复制到粘贴板!
更改指定机构的详情。
PUT /api/v1/organization/{orgname}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
请求正文模式(application/json)
现有机构的更新描述
名称 | 描述 | 模式 |
---|---|---|
email | 机构联系电子邮件 | 字符串 |
invoice_email | 无论组织是否需要接收发票的电子邮件 | 布尔值 |
invoice_email_address | 接收发票的电子邮件地址 | |
tag_expiration_s | 标签过期的秒数 | 整数 |
响应
2.11.18. getApplicationInformation 复制链接链接已复制到粘贴板!
获取指定应用程序的信息。
GET /api/v1/app/{client_id}
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
client_id | OAuth 客户端 ID | 字符串 |
响应
2.12. 权限 复制链接链接已复制到粘贴板!
管理存储库权限。
2.12.1. getUserTransitivePermission 复制链接链接已复制到粘贴板!
获取指定用户的权限。
GET /api/v1/repository/{repository}/permissions/user/{username}/transitive
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
username | 权限应用到的用户的用户名 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.12.2. getUserPermissions 复制链接链接已复制到粘贴板!
获取指定用户的权限。
GET /api/v1/repository/{repository}/permissions/user/{username}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
username | 权限应用到的用户的用户名 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.12.3. deleteUserPermissions 复制链接链接已复制到粘贴板!
删除用户的权限。
DELETE /api/v1/repository/{repository}/permissions/user/{username}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
username | 权限应用到的用户的用户名 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.12.4. changeUserPermissions 复制链接链接已复制到粘贴板!
更新现有存储库的估算。
PUT /api/v1/repository/{repository}/permissions/user/{username}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
username | 权限应用到的用户的用户名 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
用户权限的描述。
名称 | 描述 | 模式 |
---|---|---|
角色 | 用户使用的角色 | 字符串 |
响应
2.12.5. getTeamPermissions 复制链接链接已复制到粘贴板!
获取指定团队的权限。
GET /api/v1/repository/{repository}/permissions/team/{teamname}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
teamName | 权限应用到的团队的名称 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.12.6. deleteTeamPermissions 复制链接链接已复制到粘贴板!
删除指定团队的权限。
DELETE /api/v1/repository/{repository}/permissions/team/{teamname}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
teamName | 权限应用到的团队的名称 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.12.7. changeTeamPermissions 复制链接链接已复制到粘贴板!
更新现有团队权限。
PUT /api/v1/repository/{repository}/permissions/team/{teamname}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
teamName | 权限应用到的团队的名称 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
团队权限的描述。
名称 | 描述 | 模式 |
---|---|---|
角色 | 团队使用的角色 | 字符串 |
响应
2.12.8. listRepoTeamPermissions 复制链接链接已复制到粘贴板!
列出所有团队权限。
GET /api/v1/repository/{repository}/permissions/team/
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.12.9. listRepoUserPermissions 复制链接链接已复制到粘贴板!
列出所有用户权限。
GET /api/v1/repository/{repository}/permissions/user/
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.13. prototype 复制链接链接已复制到粘贴板!
管理添加到存储库的默认权限。
2.13.1. deleteOrganizationPrototypePermission 复制链接链接已复制到粘贴板!
删除现有的权限原型。
DELETE /api/v1/organization/{orgname}/prototypes/{prototypeid}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
prototypeid | 原型的 ID | 字符串 |
响应
2.13.2. updateOrganizationPrototypePermission 复制链接链接已复制到粘贴板!
更新现有权限原型的角色。
PUT /api/v1/organization/{orgname}/prototypes/{prototypeid}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
prototypeid | 原型的 ID | 字符串 |
请求正文模式(application/json)
新原型角色的描述
名称 | 描述 | 模式 |
---|---|---|
角色 | 应该应用到该权限的角色 | 字符串 |
响应
2.13.3. getOrganizationPrototypePermissions 复制链接链接已复制到粘贴板!
列出此机构的现有原型。
GET /api/v1/organization/{orgname}/prototypes
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
响应
2.13.4. createOrganizationPrototypePermission 复制链接链接已复制到粘贴板!
创建新权限原型。
POST /api/v1/organization/{orgname}/prototypes
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
请求正文模式(application/json)
新原型描述
名称 | 描述 | 模式 |
---|---|---|
角色 | 应该应用到委托的角色 | 字符串 |
activating_user | 创建用户的存储库,应应用该规则 | 对象 |
delegate | 有关规则授予访问权限的用户或团队的信息 | 对象 |
响应
2.14. 软件仓库 复制链接链接已复制到粘贴板!
列出、创建和管理存储库。
2.14.1. listRepos 复制链接链接已复制到粘贴板!
在各种情况下,获取当前用户可见的存储库列表。
GET /api/v1/repository
Authorizations: oauth2_implicit(存储库:read)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
next_page | 下一页面页面的页面令牌 | 字符串 |
query |
repo_kind | 要返回的仓库种类 | 字符串 |
query |
popularity | 是否包含存储库的流行度指标。 | 布尔值 |
query |
last_modified | 是否包含存储库最后一次修改的时间。 | 布尔值 |
query |
public | 添加 virtue 是公开的用户可见的所有软件仓库 | 布尔值 |
query |
starred | 过滤返回到用户星级的存储库 | 布尔值 |
query |
namespace | 过滤返回到此命名空间的存储库 | 字符串 |
响应
2.14.2. createRepo 复制链接链接已复制到粘贴板!
创建新存储库。
POST /api/v1/repository
Authorizations: oauth2_implicit(repo:create)
请求正文模式(application/json)
新仓库的描述
名称 | 描述 | 模式 |
---|---|---|
软件仓库 | 仓库名称 | 字符串 |
可见性 | 存储库以什么方式启动 | 字符串 |
namespace | 创建存储库的命名空间。如果省略,则使用调用者的用户名 | 字符串 |
description | 对存储库进行标记编码的描述 | 字符串 |
repo_kind | 仓库的类型 |
响应
2.14.3. changeRepoVisibility 复制链接链接已复制到粘贴板!
更改存储库的可见性。
POST /api/v1/repository/{repository}/changevisibility
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
更改存储库的可见性。
名称 | 描述 | 模式 |
---|---|---|
可见性 | 存储库以什么方式启动 | 字符串 |
响应
2.14.4. changeRepoState 复制链接链接已复制到粘贴板!
更改存储库的状态。
PUT /api/v1/repository/{repository}/changestate
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
更改存储库的状态。
名称 | 描述 | 模式 |
---|---|---|
state | 确定是否允许推送。 | 字符串 |
响应
2.14.5. getRepo 复制链接链接已复制到粘贴板!
获取指定的存储库。
GET /api/v1/repository/{repository}
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
includeTags | 是否包含存储库标签 | 布尔值 |
query |
includeStats | 是否包含操作统计 | 布尔值 |
响应
2.14.6. deleteRepository 复制链接链接已复制到粘贴板!
删除存储库。
DELETE /api/v1/repository/{repository}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.14.7. updateRepo 复制链接链接已复制到粘贴板!
更新指定仓库中的描述。
PUT /api/v1/repository/{repository}
Authorizations: oauth2_implicit(存储库:write)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
可以在存储库中更新的字段。
名称 | 描述 | 模式 |
---|---|---|
description | 对存储库进行标记编码的描述 | 字符串 |
响应
2.15. repositorynotification 复制链接链接已复制到粘贴板!
列出、创建和管理存储库事件/通知。
2.15.1. testRepoNotification 复制链接链接已复制到粘贴板!
为这个存储库队列测试通知。
POST /api/v1/repository/{repository}/notification/{uuid}/test
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
UUID | 通知的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.15.2. getRepoNotification 复制链接链接已复制到粘贴板!
获取指定通知的信息。
GET /api/v1/repository/{repository}/notification/{uuid}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
UUID | 通知的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.15.3. deleteRepoNotification 复制链接链接已复制到粘贴板!
删除指定的通知。
DELETE /api/v1/repository/{repository}/notification/{uuid}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
UUID | 通知的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.15.4. resetRepositoryNotificationFailures 复制链接链接已复制到粘贴板!
将存储库通知重置为 0 个失败。
POST /api/v1/repository/{repository}/notification/{uuid}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
UUID | 通知的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.15.5. listRepoNotifications 复制链接链接已复制到粘贴板!
列出指定存储库的通知。
GET /api/v1/repository/{repository}/notification/
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.15.6. createRepoNotification 复制链接链接已复制到粘贴板!
POST /api/v1/repository/{repository}/notification/
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
在存储库中创建通知的信息
名称 | 描述 | 模式 |
---|---|---|
event | 通知将响应的事件 | 字符串 |
method | 通知方法(如电子邮件或 Web 回调) | 字符串 |
config | 通知方法的 JSON 配置信息 | 对象 |
eventConfig | 通知特定事件的 JSON 配置信息 | 对象 |
title | 通知的人类可读标题 | 字符串 |
响应
2.16. repotoken 复制链接链接已复制到粘贴板!
管理存储库访问令牌(DEPRECATED)。
2.16.1. getTokens 复制链接链接已复制到粘贴板!
获取指定的存储库令牌信息。
GET /api/v1/repository/{repository}/tokens/{code}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
path |
需要 代码 | 令牌代码 | 字符串 |
响应
2.16.2. deleteToken 复制链接链接已复制到粘贴板!
删除存储库令牌。
DELETE /api/v1/repository/{repository}/tokens/{code}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
path |
需要 代码 | 令牌代码 | 字符串 |
响应
2.16.3. changeToken 复制链接链接已复制到粘贴板!
更新指定存储库令牌的权限。
PUT /api/v1/repository/{repository}/tokens/{code}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
path |
需要 代码 | 令牌代码 | 字符串 |
请求正文模式(application/json)
令牌权限的描述
名称 | 描述 | 模式 |
---|---|---|
角色 | 用于令牌的角色 | 字符串 |
响应
2.16.4. listRepoTokens 复制链接链接已复制到粘贴板!
列出指定存储库的令牌。
GET /api/v1/repository/{repository}/tokens/
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.16.5. createToken 复制链接链接已复制到粘贴板!
创建新的存储库令牌。
POST /api/v1/repository/{repository}/tokens/
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
新令牌的描述。
名称 | 描述 | 模式 |
---|---|---|
friendlyName | 帮助识别令牌的友好名称 | 字符串 |
响应
2.17. robot 复制链接链接已复制到粘贴板!
管理用户和机构机器人帐户。
2.17.1. getUserRobots 复制链接链接已复制到粘贴板!
列出用户的可用机器人。
GET /api/v1/user/robots
Authorizations: oauth2_implicit(user:admin)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
limit | 如果指定,则要返回的机器机器数量。 | 整数 |
query |
Token | 如果为 false,则机器人的令牌不会返回。 | 布尔值 |
query |
权限 | 是否包括机器人具有权限的存储库和团队。 | 布尔值 |
响应
2.17.2. getOrgRobotPermissions 复制链接链接已复制到粘贴板!
返回机构机器人的存储库权限列表。
GET /api/v1/organization/{orgname}/robots/{robot_shortname}/permissions
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
响应
2.17.3. regenerateOrgRobotToken 复制链接链接已复制到粘贴板!
为机构机器人重新生成令牌。
POST /api/v1/organization/{orgname}/robots/{robot_shortname}/regenerate
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
响应
2.17.4. getUserRobotPermissions 复制链接链接已复制到粘贴板!
返回用户机器人的存储库权限列表。
GET /api/v1/user/robots/{robot_shortname}/permissions
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
响应
2.17.5. regenerateUserRobotToken 复制链接链接已复制到粘贴板!
重新生成用户机器人的令牌。
POST /api/v1/user/robots/{robot_shortname}/regenerate
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
响应
2.17.6. getOrgRobot 复制链接链接已复制到粘贴板!
返回具有指定名称的组织机器人。
GET /api/v1/organization/{orgname}/robots/{robot_shortname}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
响应
2.17.7. deleteOrgRobot 复制链接链接已复制到粘贴板!
删除现有的机构机器人。
DELETE /api/v1/organization/{orgname}/robots/{robot_shortname}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
响应
2.17.8. createOrgRobot 复制链接链接已复制到粘贴板!
在 组织中创建新机器人。
PUT /api/v1/organization/{orgname}/robots/{robot_shortname}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
请求正文模式(application/json)
创建机器机器的可选数据
名称 | 描述 | 模式 |
---|---|---|
description | 机器人的可选文本描述 | 字符串 |
unstructured_metadata | 机器人的可选非结构化元数据 | 对象 |
响应
2.17.9. getOrgRobots 复制链接链接已复制到粘贴板!
列出机构的机器人。
GET /api/v1/organization/{orgname}/robots
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
limit | 如果指定,则要返回的机器机器数量。 | 整数 |
query |
Token | 如果为 false,则机器人的令牌不会返回。 | 布尔值 |
query |
权限 | 是否包括机器人具有权限的存储库和团队。 | 布尔值 |
响应
2.17.10. getUserRobot 复制链接链接已复制到粘贴板!
返回用户机器人具有指定名称。
GET /api/v1/user/robots/{robot_shortname}
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
响应
2.17.11. deleteUserRobot 复制链接链接已复制到粘贴板!
删除现有的机器人。
DELETE /api/v1/user/robots/{robot_shortname}
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
响应
2.17.12. createUserRobot 复制链接链接已复制到粘贴板!
使用指定名称创建一个新用户机器机器。
PUT /api/v1/user/robots/{robot_shortname}
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
robot_shortname | 机器机器的短名称,没有任何用户或机构前缀 | 字符串 |
请求正文模式(application/json)
创建机器机器的可选数据
名称 | 描述 | 模式 |
---|---|---|
description | 机器人的可选文本描述 | 字符串 |
unstructured_metadata | 机器人的可选非结构化元数据 | 对象 |
响应
2.18. search 复制链接链接已复制到粘贴板!
对所有注册表上下文执行搜索。
2.18.1. conductRepoSearch 复制链接链接已复制到粘贴板!
获取与指定查询匹配的应用程序和存储库列表。
GET /api/v1/find/repositories
授权:
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
includeUsage | 是否包括使用元数据 | 布尔值 |
query |
Page | 该页面。 | 整数 |
query |
query | 搜索查询。 | 字符串 |
响应
2.18.2. conductSearch 复制链接链接已复制到粘贴板!
获取与指定查询匹配的实体和资源列表。
GET /api/v1/find/all
Authorizations: oauth2_implicit(存储库:read)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
query | 搜索查询。 | 字符串 |
响应
2.18.3. getMatchingEntities 复制链接链接已复制到粘贴板!
获取与指定前缀匹配的实体列表。
GET /api/v1/entities/{prefix}
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
prefix | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
includeOrgs | 是否包括机构名称。 | 布尔值 |
query |
includeTeams | 是否包括团队名称。 | 布尔值 |
query |
namespace | 查询组织实体时使用的命名空间。 | 字符串 |
响应
2.19. secscan 复制链接链接已复制到粘贴板!
列出和管理存储库漏洞和其他安全信息。
2.19.1. getRepoManifestSecurity 复制链接链接已复制到粘贴板!
GET /api/v1/repository/{repository}/manifest/{manifestref}/security
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
manifestref | 清单摘要 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
安全漏洞 | 包括漏洞信息 | 布尔值 |
响应
2.20. 超级用户 复制链接链接已复制到粘贴板!
超级用户 API.
2.20.1. listAllUsers 复制链接链接已复制到粘贴板!
返回系统中所有用户的列表。
GET /api/v1/superuser/users/
Authorizations: oauth2_implicit(super:user)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
禁用 | 如果为 false,则只返回启用的用户。 | 布尔值 |
响应
2.20.2. createInstallUser 复制链接链接已复制到粘贴板!
创建新用户。
POST /api/v1/superuser/users/
Authorizations: oauth2_implicit(super:user)
请求正文模式(application/json)
创建用户的数据
名称 | 描述 | 模式 |
---|---|---|
username | 创建用户的用户名 | 字符串 |
email | 创建用户的电子邮件地址 | 字符串 |
响应
2.20.3. listAllLogs 复制链接链接已复制到粘贴板!
列出当前系统的使用日志。
GET /api/v1/superuser/logs
Authorizations: oauth2_implicit(super:user)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
next_page | 下一页面页面的页面令牌 | 字符串 |
query |
Page | 日志的页面号 | 整数 |
query |
ENDTIME | 获取日志的最新时间(%m/%d/%Y %Z) | 字符串 |
query |
starttime | 从中获取日志的早期时间(%m/%d/%Y %Z) | 字符串 |
响应
2.20.4. listServiceKeys 复制链接链接已复制到粘贴板!
GET /api/v1/superuser/keys
Authorizations: oauth2_implicit(super:user)
响应
2.20.5. createServiceKey 复制链接链接已复制到粘贴板!
POST /api/v1/superuser/keys
Authorizations: oauth2_implicit(super:user)
请求正文模式(application/json)
创建服务密钥的描述
名称 | 描述 | 模式 |
---|---|---|
service | 使用这个密钥进行身份验证的服务 | 字符串 |
name | 服务密钥的友好名称 | 字符串 |
metadata | 此键元数据的键/值对 | 对象 |
notes | 如果指定,则密钥的额外备注 | 字符串 |
过期 | 作为 unix 时间戳的过期日期 |
响应
2.20.6. deleteUserQuotaSuperUser 复制链接链接已复制到粘贴板!
DELETE /api/v1/superuser/organization/{namespace}/quota/{quota_id}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
quota_id | 字符串 | |
path |
namespace | 字符串 |
响应
2.20.7. changeUserQuotaSuperUser 复制链接链接已复制到粘贴板!
PUT /api/v1/superuser/organization/{namespace}/quota/{quota_id}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
quota_id | 字符串 | |
path |
namespace | 字符串 |
请求正文模式(application/json)
新机构配额的描述
名称 | 描述 | 模式 |
---|---|---|
limit_bytes | 允许机构允许的字节数 | 整数 |
响应
2.20.8. createUserQuotaSuperUser 复制链接链接已复制到粘贴板!
POST /api/v1/superuser/organization/{namespace}/quota
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
namespace | 字符串 |
请求正文模式(application/json)
新机构配额的描述
名称 | 描述 | 模式 |
---|---|---|
limit_bytes | 允许机构允许的字节数 | 整数 |
响应
2.20.9. deleteOrganizationQuotaSuperUser 复制链接链接已复制到粘贴板!
DELETE /api/v1/superuser/users/{namespace}/quota/{quota_id}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
quota_id | 字符串 | |
path |
namespace | 字符串 |
响应
2.20.10. changeOrganizationQuotaSuperUser 复制链接链接已复制到粘贴板!
PUT /api/v1/superuser/users/{namespace}/quota/{quota_id}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
quota_id | 字符串 | |
path |
namespace | 字符串 |
请求正文模式(application/json)
新机构配额的描述
名称 | 描述 | 模式 |
---|---|---|
limit_bytes | 允许机构允许的字节数 | 整数 |
响应
2.20.11. createOrganizationQuotaSuperUser 复制链接链接已复制到粘贴板!
POST /api/v1/superuser/users/{namespace}/quota
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
namespace | 字符串 |
请求正文模式(application/json)
新机构配额的描述
名称 | 描述 | 模式 |
---|---|---|
limit_bytes | 允许机构允许的字节数 | 整数 |
响应
2.20.12. deleteOrganization 复制链接链接已复制到粘贴板!
删除指定的机构。
DELETE /api/v1/superuser/organizations/{name}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
name | 管理有 organizaton 的名称 | 字符串 |
响应
2.20.13. changeOrganization 复制链接链接已复制到粘贴板!
更新指定用户的信息。
PUT /api/v1/superuser/organizations/{name}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
name | 管理有 organizaton 的名称 | 字符串 |
请求正文模式(application/json)
现有机构的更新描述
名称 | 描述 | 模式 |
---|---|---|
email | 机构联系电子邮件 | 字符串 |
invoice_email | 无论组织是否需要接收发票的电子邮件 | 布尔值 |
invoice_email_address | 接收发票的电子邮件地址 | |
tag_expiration_s | 标签过期的秒数 | 整数 |
响应
2.20.14. approveServiceKey 复制链接链接已复制到粘贴板!
POST /api/v1/superuser/approvedkeys/{kid}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
kid | 服务密钥的唯一标识符 | 字符串 |
请求正文模式(application/json)
批准服务密钥的信息
名称 | 描述 | 模式 |
---|---|---|
notes | 可选批准备注 | 字符串 |
响应
2.20.15. getServiceKey 复制链接链接已复制到粘贴板!
GET /api/v1/superuser/keys/{kid}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
kid | 服务密钥的唯一标识符 | 字符串 |
响应
2.20.16. deleteServiceKey 复制链接链接已复制到粘贴板!
DELETE /api/v1/superuser/keys/{kid}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
kid | 服务密钥的唯一标识符 | 字符串 |
响应
2.20.17. updateServiceKey 复制链接链接已复制到粘贴板!
PUT /api/v1/superuser/keys/{kid}
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
kid | 服务密钥的唯一标识符 | 字符串 |
请求正文模式(application/json)
服务密钥更新的描述
名称 | 描述 | 模式 |
---|---|---|
name | 服务密钥的友好名称 | 字符串 |
metadata | 此键元数据的键/值对 | 对象 |
过期 | 作为 unix 时间戳的过期日期 |
响应
2.20.18. getRepoBuildStatusSuperUser 复制链接链接已复制到粘贴板!
返回构建 uuids 指定的构建的状态。
GET /api/v1/superuser/{build_uuid}/status
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
build_uuid | 构建的 UUID | 字符串 |
响应
2.20.19. getRepoBuildSuperUser 复制链接链接已复制到粘贴板!
返回有关构建的信息。
GET /api/v1/superuser/{build_uuid}/build
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
build_uuid | 构建的 UUID | 字符串 |
响应
2.20.20. getRepoBuildLogsSuperUser 复制链接链接已复制到粘贴板!
返回构建 uuid 指定构建的构建日志。
GET /api/v1/superuser/{build_uuid}/logs
Authorizations: oauth2_implicit(super:user)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
build_uuid | 构建的 UUID | 字符串 |
响应
2.21. tag 复制链接链接已复制到粘贴板!
管理存储库的标签。
2.21.1. restoreTag 复制链接链接已复制到粘贴板!
将存储库标签还原回存储库中的以前的镜像。
POST /api/v1/repository/{repository}/tag/{tag}/restore
Authorizations: oauth2_implicit(存储库:write)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
需要 标签 | 标签的名称 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
将标签恢复到特定镜像
名称 | 描述 | 模式 |
---|---|---|
manifest_digest | 如果指定,应使用的清单摘要 | 字符串 |
响应
2.21.2. deleteFullTag 复制链接链接已复制到粘贴板!
删除指定的存储库标签。
DELETE /api/v1/repository/{repository}/tag/{tag}
Authorizations: oauth2_implicit(存储库:write)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
需要 标签 | 标签的名称 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.21.3. changeTag 复制链接链接已复制到粘贴板!
更改标签指向或创建新标签的镜像。
PUT /api/v1/repository/{repository}/tag/{tag}
Authorizations: oauth2_implicit(存储库:write)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
需要 标签 | 标签的名称 | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
更改特定标签
名称 | 描述 | 模式 |
---|---|---|
manifest_digest | (如果指定)标签应指向的清单摘要 | |
过期 | (如果指定)镜像的过期时间 |
响应
2.21.4. listRepoTags 复制链接链接已复制到粘贴板!
GET /api/v1/repository/{repository}/tag/
Authorizations: oauth2_implicit(存储库:read)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
onlyActiveTags | 将 过滤为仅活跃的标签。 | 布尔值 |
query |
Page | 结果页面索引。默认 1。 | 整数 |
query |
limit | 限制为每个页面返回的结果数。最大 100 个. | 整数 |
query |
specificTag | 过滤标签到特定标签。 | 字符串 |
响应
2.22. Team 复制链接链接已复制到粘贴板!
创建、列出和管理组织团队。
2.22.1. getOrganizationTeamPermissions 复制链接链接已复制到粘贴板!
返回机构团队的存储库权限列表。
GET /api/v1/organization/{orgname}/team/{teamname}/permissions
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
teamName | 团队的名称 | 字符串 |
响应
2.22.2. deleteOrganizationTeamMember 复制链接链接已复制到粘贴板!
删除团队成员。
If the user is merely invited to join the team, then the invite is removed instead.
If the user is merely invited to join the team, then the invite is removed instead.
DELETE /api/v1/organization/{orgname}/team/{teamname}/members/{membername}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
teamName | 团队的名称 | 字符串 |
path |
memberName | 团队成员的用户名 | 字符串 |
响应
2.22.3. updateOrganizationTeamMember 复制链接链接已复制到粘贴板!
为现有团队添加或邀请一个成员。
PUT /api/v1/organization/{orgname}/team/{teamname}/members/{membername}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
teamName | 团队的名称 | 字符串 |
path |
memberName | 团队成员的用户名 | 字符串 |
响应
2.22.4. getOrganizationTeamMembers 复制链接链接已复制到粘贴板!
检索指定团队的成员列表。
GET /api/v1/organization/{orgname}/team/{teamname}/members
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
teamName | 团队的名称 | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
includePending | 是否包含待处理成员 | 布尔值 |
响应
2.22.5. deleteOrganizationTeam 复制链接链接已复制到粘贴板!
删除指定的团队。
DELETE /api/v1/organization/{orgname}/team/{teamname}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
teamName | 团队的名称 | 字符串 |
响应
2.22.6. updateOrganizationTeam 复制链接链接已复制到粘贴板!
更新指定团队的机构范围内权限。
PUT /api/v1/organization/{orgname}/team/{teamname}
Authorizations: oauth2_implicit(org:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
OrgName | 机构名称 | 字符串 |
path |
teamName | 团队的名称 | 字符串 |
请求正文模式(application/json)
团队的描述
名称 | 描述 | 模式 |
---|---|---|
角色 | 应该应用到团队的机构广泛权限 | 字符串 |
description | 团队的 markdown 描述 | 字符串 |
响应
2.23. trigger 复制链接链接已复制到粘贴板!
创建、列出和管理构建触发器。
2.23.1. activateBuildTrigger 复制链接链接已复制到粘贴板!
激活指定的构建触发器。
POST /api/v1/repository/{repository}/trigger/{trigger_uuid}/activate
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
trigger_uuid | 构建触发器的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
名称 | 描述 | 模式 |
---|---|---|
config | 任意 json. | 对象 |
pull_robot | 用于拉取镜像的机器人名称。 | 字符串 |
响应
2.23.2. listTriggerRecentBuilds 复制链接链接已复制到粘贴板!
列出由指定触发器启动的构建。
GET /api/v1/repository/{repository}/trigger/{trigger_uuid}/builds
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
trigger_uuid | 构建触发器的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
limit | 要返回的最大构建数 | 整数 |
响应
2.23.3. manuallyStartBuildTrigger 复制链接链接已复制到粘贴板!
从指定的触发器手动启动构建。
POST /api/v1/repository/{repository}/trigger/{trigger_uuid}/start
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
trigger_uuid | 构建触发器的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
用于激活构建触发器的可选运行参数
名称 | 描述 | 模式 |
---|---|---|
branch_name | (仅限 SCM),如果指定,要构建的分支名称。 | 字符串 |
commit_sha | (仅自定义)如果指定,则用于签出 git 存储库的 ref/SHA1。 | 字符串 |
refs | (仅限 SCM)如果指定,则要构建的 ref。 |
响应
2.23.4. getBuildTrigger 复制链接链接已复制到粘贴板!
获取指定构建触发器的信息。
GET /api/v1/repository/{repository}/trigger/{trigger_uuid}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
trigger_uuid | 构建触发器的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.23.5. deleteBuildTrigger 复制链接链接已复制到粘贴板!
删除指定的构建触发器。
DELETE /api/v1/repository/{repository}/trigger/{trigger_uuid}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
trigger_uuid | 构建触发器的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.23.6. updateBuildTrigger 复制链接链接已复制到粘贴板!
更新指定的构建触发器。
PUT /api/v1/repository/{repository}/trigger/{trigger_uuid}
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
trigger_uuid | 构建触发器的 UUID | 字符串 |
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
请求正文模式(application/json)
更新构建触发器的选项
名称 | 描述 | 模式 |
---|---|---|
启用 | 是否启用构建触发器 | 布尔值 |
响应
2.23.7. listBuildTriggers 复制链接链接已复制到粘贴板!
列出指定存储库的触发器。
GET /api/v1/repository/{repository}/trigger/
Authorizations: oauth2_implicit(repo:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.24. user 复制链接链接已复制到粘贴板!
管理当前用户。
2.24.1. listStarredRepos 复制链接链接已复制到粘贴板!
列出所有星级存储库。
GET /api/v1/user/starred
Authorizations: oauth2_implicit(user:admin)
查询参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
query |
next_page | 下一页面页面的页面令牌 | 字符串 |
响应
2.24.2. createStar 复制链接链接已复制到粘贴板!
星级存储库。
POST /api/v1/user/starred
Authorizations: oauth2_implicit(存储库:read)
请求正文模式(application/json)
名称 | 描述 | 模式 |
---|---|---|
namespace | 仓库所属的命名空间 | 字符串 |
软件仓库 | 仓库名称 | 字符串 |
响应
2.24.3. getLoggedInUser 复制链接链接已复制到粘贴板!
获取经过身份验证的用户的用户信息。
GET /api/v1/user/
Authorizations: oauth2_implicit(用户:read)
响应
2.24.4. deleteStar 复制链接链接已复制到粘贴板!
从存储库中删除星级。
DELETE /api/v1/user/starred/{repository}
Authorizations: oauth2_implicit(user:admin)
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
软件仓库 | 存储库的完整路径。例如 namespace/name | 字符串 |
响应
2.24.5. getUserInformation 复制链接链接已复制到粘贴板!
获取指定用户的用户信息。
GET /api/v1/users/{username}
授权:
路径参数
类型 | Name | 描述 | 模式 |
---|---|---|---|
path |
username | 字符串 |
响应
2.25. 定义 复制链接链接已复制到粘贴板!
2.25.1. ApiError 复制链接链接已复制到粘贴板!
名称 | 描述 | 模式 |
---|---|---|
status | 响应的状态代码。 | 整数 |
type | 引用错误的类型。 | 字符串 |
detail | 有关错误特定实例的详情。 | 字符串 |
title | 用于标识错误类型的唯一错误代码。 | 字符串 |
error_message | 弃用; 详情的别名 | 字符串 |
error_type | 弃用; 详情的别名 | 字符串 |
2.25.2. UserView 复制链接链接已复制到粘贴板!
名称 | 描述 | 模式 |
---|---|---|
验证的 | 是否验证用户的电子邮件地址 | 布尔值 |
匿名 | 如果这个用户数据代表客户机用户,则为 true | 布尔值 |
email | 用户的电子邮件地址 | 字符串 |
avatar | 代表用户图标的 Avatar 数据 | 对象 |
机构 | 有关用户所属机构的信息 |
对象数组 |
登录 | 用户通过身份验证的外部登录供应商列表 |
对象数组 |
can_create_repo | 用户是否具有创建存储库的权限 | 布尔值 |
preferred_namespace | 如果为 true,则用户的命名空间是要显示的首选命名空间 | 布尔值 |
2.25.3. ViewMirrorConfig 复制链接链接已复制到粘贴板!
名称 | 描述 | 模式 |
---|---|---|
is_enabled | 用于启用或禁用同步。 | 布尔值 |
external_reference | 外部存储库的位置。 | 字符串 |
external_registry_username | 用于与外部 registry 进行身份验证的用户名。 | |
external_registry_password | 用于与外部 registry 进行身份验证的密码。 | |
sync_start_date | 下次确定此存储库准备好同步的时间。 | 字符串 |
sync_interval | next_start_date 开始同步后的秒数。 | 整数 |
robot_username | 用于镜像推送的机器人的用户名。 | 字符串 |
root_rule | 用于决定应同步哪些标签的 glob-patterns 列表。如需对象引用,请参阅 root_rule api 示例。 | 对象 |
external_registry_config | 对象 |
2.25.4. ApiErrorDescription 复制链接链接已复制到粘贴板!
名称 | 描述 | 模式 |
---|---|---|
type | 引用错误类型资源 | 字符串 |
title | 错误标题。可用于唯一标识错误类型。 | 字符串 |
description | 有关错误的更多详细描述,其中可能包括修复此问题的帮助。 | 字符串 |
第 3 章 API 配置示例 复制链接链接已复制到粘贴板!
3.1. external_registry_config object reference 复制链接链接已复制到粘贴板!
3.2. rule_rule 对象引用 复制链接链接已复制到粘贴板!
{ "root_rule": {"rule_kind": "tag_glob_csv", "rule_value": ["latest", "foo", "bar"]}, }
{
"root_rule": {"rule_kind": "tag_glob_csv", "rule_value": ["latest", "foo", "bar"]},
}