SonarQube 报告 API

本文档描述了如何以编程方式访问存储在 Procurize 平台上的 SonarQube 安全报告。它涵盖用于列出和检索报告以及下载报告存档的 REST API。

概览

SonarQube 报告子模块允许组织集中存储和管理由 SonarQube 生成的安全和代码质量报告。Procurize 平台通过以下方式公开这些数据:

  • 一个用于获取存储报告元数据的 REST API
  • 一个用于将报告制品下载为 ZIP 存档的端点

这些功能支持与 CI/CD 流水线、GRC 系统、内部仪表板以及第三方风险管理工具的集成。

身份验证和授权

本文档中描述的所有 API 请求均不需要身份验证。

组织 ID

所有请求均需要提供组织 ID。
您可以在组织的 设置面板(https://dashboard.procurize.ai)中找到它。
请注意,访问设置面板需要授权,且访问组织设置面板的用户角色必须至少为该组织的管理员。

复制 ID 按钮

基础 URL

所有 REST API 端点均基于以下基础 URL:

https://api.procurize.com

SonarQube 报告 REST API

列出报告

检索平台中存储的 SonarQube 安全报告的分页列表。

端点

GET /security/report/list

查询参数

  • org(必填):组织 ID。
  • version(可选):产品的精确版本,采用语义化版本格式。
  • minver(可选):产品的最小版本,采用语义化版本格式。
  • maxver(可选):产品的最大版本,采用语义化版本格式。

请注意,versionminvermaxver 中至少需要提供一个参数。

请求示例

curl "https://api.procurize.com/security/report/list?org=00000000-0000-0000-0000-000000000001&version=1.0"

响应示例

{
  "organizationId": "00000000-0000-0000-0000-000000000001",
  "reports": [
    {
      "projectName": "Test product",
      "id": "00000000-0000-0000-0000-000000000002",
      "reportType": "CWE Top 25",
      "reportVersion": 2024,
      "projectVersion": "1.0",
      "date": "2025-12-17T09:05:48.5946432+00:00",
      "uploadDate": "2025-12-17T09:05:48.5946432+00:00",
      "vulnerabilitiesCount": 0,
      "securityRating": "A"
    }
  ]
}

下载报告存档

下载包含完整 SonarQube 报告制品的 ZIP 存档。该存档包含 HTML 和 PDF 报告。

端点

GET /security/report/files
  • org(必填):组织 ID。
  • reports(必填):报告 ID 的数组。

请求示例

curl "https://api.procurize.com/security/report/files?org=00000000-0000-0000-0000-000000000001&reports=00000000-0000-0000-0000-000000000002&reports=00000000-0000-0000-0000-000000000003"

响应

  • 内容类型:application/zip
  • 响应体包含二进制 ZIP 文件

客户端应流式读取响应并将其保存到磁盘。

错误处理

API 使用标准的 HTTP 状态码。

  • 200 OK:请求成功
  • 204 No Content:报告不存在
  • 400 Bad Request:参数无效或请求格式错误
  • 500 Internal Server Error:服务器内部错误

错误响应包含机器可读的错误代码以及人类可读的消息。

另请参见:

相关文章

什么是安全报告?

安全报告仓库

如何配置安全报告

到顶部
选择语言