REST API 现在已版本化。 有关更多信息,请参阅 "关于 API 版本控制."
用于软件物料清单 (SBOM) 的 REST API 端点
使用 REST API 导出存储库的软件物料清单 (SBOM)。
如果您至少对存储库具有读取权限,则可以通过 GitHub UI 或 GitHub REST API 将存储库的依赖关系图导出为与 SPDX 兼容的软件物料清单 (SBOM)。有关更多信息,请参阅 "导出存储库的软件物料清单."
本文详细介绍了 REST API 端点。
导出存储库的软件物料清单 (SBOM)。
以 SPDX JSON 格式导出存储库的软件物料清单 (SBOM)。
用于“导出存储库的软件物料清单 (SBOM)”的细粒度访问令牌。
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限集
- “内容”存储库权限(读取)
如果仅请求公共资源,则无需身份验证或上述权限即可使用此端点。
用于“导出存储库的软件物料清单 (SBOM)”的参数。
名称、类型、描述 |
---|
accept string 建议设置为 |
名称、类型、描述 |
---|
owner string 必需存储库的帐户所有者。名称不区分大小写。 |
repo string 必需存储库的名称,不包含 |
用于“导出存储库的软件物料清单 (SBOM)”的 HTTP 响应状态代码。
状态代码 | 描述 |
---|---|
200 | OK |
403 | 禁止 |
404 | 资源未找到 |
“导出仓库软件物料清单 (SBOM)” 的代码示例。
请求示例
get/repos/{owner}/{repo}/dependency-graph/sbom
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/dependency-graph/sbom
响应
状态:200
{ "sbom": { "SPDXID": "SPDXRef-DOCUMENT", "spdxVersion": "SPDX-2.3", "creationInfo": { "created": "2021-09-01T00:00:00Z", "creators": [ "Tool: GitHub.com-Dependency-Graph" ] }, "name": "github/example", "dataLicense": "CC0-1.0", "documentDescribes": [ "github/example" ], "documentNamespace": "https://github.com/github/example/dependency_graph/sbom-abcdef123456", "packages": [ { "SPDXID": "SPDXRef-Package", "name": "rubygems:rails", "versionInfo": "1.0.0", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "MIT", "licenseDeclared": "MIT" } ] } }