REST API 现已版本化。 有关更多信息,请参阅“关于 API 版本化”。
规则套件的 REST API 终结点
使用 REST API 管理组织的规则套件。
列出组织规则套件
列出组织级别的规则评估套件。有关更多信息,请参阅“管理组织中存储库的规则集”。
“列出组织规则套件”的细粒度访问令牌
此终结点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限设置
- “管理”组织权限(写入)
“列出组织规则套件”的参数
名称、类型、描述 |
---|
accept 字符串 建议设置为 |
名称、类型、描述 |
---|
org 字符串 必需组织名称。名称不区分大小写。 |
名称、类型、描述 |
---|
repository_name 整数 要筛选的存储库名称。指定后,将仅返回此存储库中的规则评估。 |
time_period 字符串 要筛选的时间段。 例如, 默认: 可以是以下之一: |
actor_name 字符串 要筛选的 GitHub 用户帐户的句柄。指定后,将仅返回由该操作员触发的规则评估。 |
rule_suite_result 字符串 要筛选的规则结果。指定后,将仅返回具有此结果的套件。 默认值: 可以是以下之一: |
per_page 整数 每页的结果数(最大 100)。有关详细信息,请参阅“在 REST API 中使用分页”。 默认值: |
page 整数 要获取的结果的页码。有关详细信息,请参阅“在 REST API 中使用分页”。 默认值: |
“列出组织规则套件”的 HTTP 响应状态代码
状态代码 | 描述 |
---|---|
200 | OK |
404 | 未找到资源 |
500 | 内部错误 |
“列出组织规则套件”的代码示例
请求示例
get/orgs/{org}/rulesets/rule-suites
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/orgs/ORG/rulesets/rule-suites
响应
状态:200
[ { "id": 21, "actor_id": 12, "username": "octocat", "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", "ref": "refs/heads/i-see-everything", "repository_id": 404, "repository_name": "octo-repo", "pushed_at": "2023-07-06T08:43:03Z", "result": "bypass" }, { "id": 25, "actor_id": 11, "username": "not-octocat", "before_sha": "48994e4e01ccc943624c6231f172702b82b233cc", "after_sha": "ecfd5a1025fa271a33ca5608d089476a2df3c9a1", "ref": "refs/heads/i-am-everything", "repository_id": 404, "repository_name": "octo-repo", "pushed_at": "2023-07-07T08:43:03Z", "result": "pass", "evaluation_result": "fail" } ]
获取组织规则套件
获取组织内规则评估套件的信息。有关详细信息,请参阅“管理组织中存储库的规则集”。
“获取组织规则套件”的细粒度访问令牌
此终结点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限设置
- “管理”组织权限(写入)
“获取组织规则套件”的参数
名称、类型、描述 |
---|
accept 字符串 建议设置为 |
名称、类型、描述 |
---|
org 字符串 必需组织名称。名称不区分大小写。 |
rule_suite_id 整数 必需规则套件结果的唯一标识符。要获取此 ID,你可以对存储库使用 GET /repos/{owner}/{repo}/rulesets/rule-suites,对组织使用 GET /orgs/{org}/rulesets/rule-suites。 |
“获取组织规则套件”的 HTTP 响应状态代码
状态代码 | 描述 |
---|---|
200 | OK |
404 | 未找到资源 |
500 | 内部错误 |
“获取组织规则套件”的代码示例
请求示例
get/orgs/{org}/rulesets/rule-suites/{rule_suite_id}
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/orgs/ORG/rulesets/rule-suites/RULE_SUITE_ID
响应
状态:200
{ "id": 21, "actor_id": 12, "username": "octocat", "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", "ref": "refs/heads/i-see-everything", "repository_id": 404, "repository_name": "octo-repo", "pushed_at": "2023-07-06T08:43:03Z", "result": "bypass", "evaluation_result": "fail", "rule_evaluations": [ { "rule_source": { "type": "ruleset", "id": 2, "name": "作者电子邮件必须是 GitHub 电子邮件地址" }, "enforcement": "active", "result": "pass", "rule_type": "commit_author_email_pattern" }, { "rule_source": { "type": "protected_branch" }, "enforcement": "active", "result": "fail", "rule_type": "pull_request", "details": "更改必须通过拉取请求进行。" }, { "rule_source": { "type": "ruleset", "id": 3, "name": "评估提交消息模式" }, "enforcement": "evaluate", "result": "fail", "rule_type": "commit_message_pattern" } ] }