管理证书 API

caution在 15.0 中,”许可”和”黑名单”批准状态更改为”同意”和”拒绝”。

列出管理许可证

获取所有特定项目的管理证书。

GET /projects/:id/managed_licenses
参数 类型 是否必需 描述
id integer/string yes ID 或 URL 编码的项目路径
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/managed_licenses"

响应示例:

[
  {
    "id": 1,
    "name": "MIT",
    "approval_status": "allowed"
  },
  {
    "id": 3,
    "name": "ISC",
    "approval_status": "denied"
  }
]

显示现存管理许可证

显示现存管理许可证。

GET /projects/:id/managed_licenses/:managed_license_id
参数 类型 是否必需 描述
id integer/string yes 经过身份验证的用户拥有的 ID 或 URL 编码的项目路径
managed_license_id integer/string yes ID 或 URL 编码的项目的许可证名称
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/managed_licenses/6"

响应示例:

{
  "id": 1,
  "name": "MIT",
  "approval_status": "denied"
}

创建新的管理许可证

使用给定的名称和批准状态为特定项目创建新的管理许可证。

POST /projects/:id/managed_licenses
参数 类型 是否必需 描述
id integer/string yes 经过身份验证的用户拥有的 ID 或 URL 编码的项目路径
name string yes 管理许可证的名称
approval_status string yes 许可证的批准状态:”同意”或”拒绝”
curl --data "name=MIT&approval_status=denied" --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/managed_licenses"

响应示例:

{
  "id": 1,
  "name": "MIT",
  "approval_status": "allowed"
}

删除管理许可证

使用特定 ID 删除管理许可证。

DELETE /projects/:id/managed_licenses/:managed_license_id
参数 类型 是否必需 描述
id integer/string yes 经过身份验证的用户拥有的 ID 或 URL 编码的项目路径
managed_license_id integer/string yes ID 或 URL 编码的项目的许可证名称
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/managed_licenses/4"

如果成功,则返回 HTTP 204 响应。

编辑现存管理许可证

使用新的批准状态更新现存的管理许可证。

PATCH /projects/:id/managed_licenses/:managed_license_id
参数 类型 是否必需 描述
id integer/string yes 经过身份验证的用户拥有的 ID 或 URL 编码的项目路径
managed_license_id integer/string yes ID 或 URL 编码的项目的许可证名称
approval_status string yes 许可证的批准状态:”同意”或”拒绝”
curl --request PATCH --data "approval_status=denied" \
     --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/managed_licenses/6"

响应示例:

{
  "id": 1,
  "name": "MIT",
  "approval_status": "denied"
}