跳至主要内容
REST API 现在已版本化。 有关更多信息,请参阅“关于 API 版本控制”。

组织角色的 REST API 端点

使用 REST API 与组织角色进行交互。

获取组织的所有组织角色

列出此组织中可用的组织角色。有关组织角色的更多信息,请参阅“使用组织角色”。

要使用此端点,经过身份验证的用户必须是以下之一

  • 组织的管理员。
  • 具有组织中read_organization_custom_org_role细粒度权限的用户或团队中的用户。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

“获取组织的所有组织角色”的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • “自定义组织角色”组织权限(读取)

“获取组织的所有组织角色”的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

“获取组织的所有组织角色”的 HTTP 响应状态代码

状态代码描述
200

响应 - 组织角色列表

404

资源未找到

422

验证失败或端点已被滥用。

“获取组织的所有组织角色”的代码示例

请求示例

get/orgs/{org}/organization-roles
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/organization-roles

响应 - 组织角色列表

状态:200
{ "total_count": 2, "roles": [ { "id": 8030, "name": "自定义角色管理器", "description": "在组织内管理自定义角色的权限", "permissions": [ "write_organization_custom_repo_role", "write_organization_custom_org_role", "read_organization_custom_repo_role", "read_organization_custom_org_role" ], "organization": { "login": "github", "id": 9919, "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", "gravatar_id": "", "url": "https://api.github.com/users/github", "html_url": "https://github.com/github", "followers_url": "https://api.github.com/users/github/followers", "following_url": "https://api.github.com/users/github/following{/other_user}", "gists_url": "https://api.github.com/users/github/gists{/gist_id}", "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/github/subscriptions", "organizations_url": "https://api.github.com/users/github/orgs", "repos_url": "https://api.github.com/users/github/repos", "events_url": "https://api.github.com/users/github/events{/privacy}", "received_events_url": "https://api.github.com/users/github/received_events", "type": "Organization", "site_admin": false }, "created_at": "2022-07-04T22:19:11Z", "updated_at": "2022-07-04T22:20:11Z" }, { "id": 8031, "name": "审计员", "description": "读取组织审计日志的权限", "permissions": [ "read_audit_logs" ], "organization": { "login": "github", "id": 9919, "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", "gravatar_id": "", "url": "https://api.github.com/users/github", "html_url": "https://github.com/github", "followers_url": "https://api.github.com/users/github/followers", "following_url": "https://api.github.com/users/github/following{/other_user}", "gists_url": "https://api.github.com/users/github/gists{/gist_id}", "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/github/subscriptions", "organizations_url": "https://api.github.com/users/github/orgs", "repos_url": "https://api.github.com/users/github/repos", "events_url": "https://api.github.com/users/github/events{/privacy}", "received_events_url": "https://api.github.com/users/github/received_events", "type": "Organization", "site_admin": false }, "created_at": "2022-07-04T22:19:11Z", "updated_at": "2022-07-04T22:20:11Z" } ] }

删除团队的所有组织角色

从团队中删除所有分配的组织角色。有关组织角色的更多信息,请参阅“使用组织角色”。

经过身份验证的用户必须是组织的管理员才能使用此端点。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

“删除团队的所有组织角色”的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • “成员”组织权限(写入)

“删除团队的所有组织角色”的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

team_slug 字符串 必填

团队名称的 slug。

“删除团队的所有组织角色”的 HTTP 响应状态代码

状态代码描述
204

无内容

“删除团队的所有组织角色”的代码示例

请求示例

delete/orgs/{org}/organization-roles/teams/{team_slug}
curl -L \ -X DELETE \ -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/organization-roles/teams/TEAM_SLUG

回应

状态:204

将组织角色分配给团队

将组织角色分配给组织中的团队。有关组织角色的更多信息,请参阅“使用组织角色”。

经过身份验证的用户必须是组织的管理员才能使用此端点。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

“将组织角色分配给团队”的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • “成员”组织权限(写入)

“将组织角色分配给团队”的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

team_slug 字符串 必填

团队名称的 slug。

role_id 整数 必填

角色的唯一标识符。

“将组织角色分配给团队”的 HTTP 响应状态代码

状态代码描述
204

无内容

404

如果组织、团队或角色不存在,则响应。

422

如果组织角色功能未为组织启用或验证失败,则返回此响应。

"将组织角色分配给团队" 的代码示例

请求示例

put/orgs/{org}/organization-roles/teams/{team_slug}/{role_id}
curl -L \ -X PUT \ -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/organization-roles/teams/TEAM_SLUG/ROLE_ID

回应

状态:204

从团队中移除组织角色

从团队中移除组织角色。有关组织角色的更多信息,请参阅“使用组织角色”。

经过身份验证的用户必须是组织的管理员才能使用此端点。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

"从团队中移除组织角色" 的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • “成员”组织权限(写入)

"从团队中移除组织角色" 的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

team_slug 字符串 必填

团队名称的 slug。

role_id 整数 必填

角色的唯一标识符。

"从团队中移除组织角色" 的 HTTP 响应状态码

状态代码描述
204

无内容

"从团队中移除组织角色" 的代码示例

请求示例

delete/orgs/{org}/organization-roles/teams/{team_slug}/{role_id}
curl -L \ -X DELETE \ -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/organization-roles/teams/TEAM_SLUG/ROLE_ID

回应

状态:204

移除用户的全部组织角色

撤销分配给用户的全部组织角色。有关组织角色的更多信息,请参阅“使用组织角色”。

经过身份验证的用户必须是组织的管理员才能使用此端点。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

"移除用户的全部组织角色" 的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • “成员”组织权限(写入)

"移除用户的全部组织角色" 的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

username 字符串 必需

GitHub 用户帐户的句柄。

"移除用户的全部组织角色" 的 HTTP 响应状态码

状态代码描述
204

无内容

"移除用户的全部组织角色" 的代码示例

请求示例

delete/orgs/{org}/organization-roles/users/{username}
curl -L \ -X DELETE \ -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/organization-roles/users/USERNAME

回应

状态:204

将组织角色分配给用户

将组织角色分配给组织成员。有关组织角色的更多信息,请参阅“使用组织角色”。

经过身份验证的用户必须是组织的管理员才能使用此端点。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

"将组织角色分配给用户" 的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • “成员”组织权限(写入)

"将组织角色分配给用户" 的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

username 字符串 必需

GitHub 用户帐户的句柄。

role_id 整数 必填

角色的唯一标识符。

"将组织角色分配给用户" 的 HTTP 响应状态码

状态代码描述
204

无内容

404

如果组织、用户或角色不存在,则返回此响应。

422

如果组织角色功能未为组织启用、验证失败或用户不是组织成员,则返回此响应。

"将组织角色分配给用户" 的代码示例

请求示例

put/orgs/{org}/organization-roles/users/{username}/{role_id}
curl -L \ -X PUT \ -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/organization-roles/users/USERNAME/ROLE_ID

回应

状态:204

从用户中移除组织角色

从用户中移除组织角色。有关组织角色的更多信息,请参阅“使用组织角色”。

经过身份验证的用户必须是组织的管理员才能使用此端点。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

"从用户中移除组织角色" 的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • “成员”组织权限(写入)

"从用户中移除组织角色" 的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

username 字符串 必需

GitHub 用户帐户的句柄。

role_id 整数 必填

角色的唯一标识符。

"从用户中移除组织角色" 的 HTTP 响应状态码

状态代码描述
204

无内容

"从用户中移除组织角色" 的代码示例

请求示例

delete/orgs/{org}/organization-roles/users/{username}/{role_id}
curl -L \ -X DELETE \ -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/organization-roles/users/USERNAME/ROLE_ID

回应

状态:204

获取组织角色

获取此组织可用的组织角色。有关组织角色的更多信息,请参阅“使用组织角色”。

要使用此端点,经过身份验证的用户必须是以下之一

  • 组织的管理员。
  • 具有组织中read_organization_custom_org_role细粒度权限的用户或团队中的用户。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

"获取组织角色" 的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • “自定义组织角色”组织权限(读取)

"获取组织角色" 的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

role_id 整数 必填

角色的唯一标识符。

"获取组织角色" 的 HTTP 响应状态码

状态代码描述
200

确定

404

资源未找到

422

验证失败或端点已被滥用。

"获取组织角色" 的代码示例

请求示例

get/orgs/{org}/organization-roles/{role_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/organization-roles/ROLE_ID

回应

状态:200
{ "id": 8030, "name": "自定义角色管理器", "description": "在组织内管理自定义角色的权限", "permissions": [ "write_organization_custom_repo_role", "write_organization_custom_org_role", "read_organization_custom_repo_role", "read_organization_custom_org_role" ], "organization": { "login": "github", "id": 1, "node_id": "MDEyOk9yZ2FuaXphdGlvbjE=", "url": "https://api.github.com/orgs/github", "repos_url": "https://api.github.com/orgs/github/repos", "events_url": "https://api.github.com/orgs/github/events", "hooks_url": "https://api.github.com/orgs/github/hooks", "issues_url": "https://api.github.com/orgs/github/issues", "members_url": "https://api.github.com/orgs/github/members{/member}", "public_members_url": "https://api.github.com/orgs/github/public_members{/member}", "avatar_url": "https://github.com/images/error/octocat_happy.gif", "description": "一个很棒的组织" }, "created_at": "2022-07-04T22:19:11Z", "updated_at": "2022-07-04T22:20:11Z" }

列出分配给组织角色的团队

列出分配给组织角色的团队。有关组织角色的更多信息,请参阅“使用组织角色”。

要使用此端点,您必须是组织的管理员。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

"列出分配给组织角色的团队" 的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • "成员" 组织权限(读取)

"列出分配给组织角色的团队" 的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

role_id 整数 必填

角色的唯一标识符。

查询参数
名称、类型、描述
per_page 整数

每页结果数(最大 100)。有关更多信息,请参阅“在 REST API 中使用分页”。

默认值: 30

page 整数

要获取的结果的页码。有关更多信息,请参阅“在 REST API 中使用分页”。

默认值: 1

"列出分配给组织角色的团队" 的 HTTP 响应状态码

状态代码描述
200

响应 - 已分配团队的列表

404

如果组织或角色不存在,则返回此响应。

422

如果组织角色功能未启用或验证失败,则返回此响应。

"列出分配给组织角色的团队" 的代码示例

请求示例

get/orgs/{org}/organization-roles/{role_id}/teams
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/organization-roles/ROLE_ID/teams

响应 - 已分配团队的列表

状态:200
[ { "id": 1, "node_id": "MDQ6VGVhbTE=", "url": "https://api.github.com/teams/1", "html_url": "https://github.com/orgs/github/teams/justice-league", "name": "正义联盟", "slug": "justice-league", "description": "一个很棒的团队。", "privacy": "closed", "notification_setting": "notifications_enabled", "permission": "admin", "members_url": "https://api.github.com/teams/1/members{/member}", "repositories_url": "https://api.github.com/teams/1/repos", "parent": null } ]

列出分配给组织角色的用户

列出分配给组织角色的组织成员。有关组织角色的更多信息,请参阅“使用组织角色”。

要使用此端点,您必须是组织的管理员。

OAuth 应用令牌和个人访问令牌(经典)需要admin:org范围才能使用此端点。

"列出分配给组织角色的用户" 的细粒度访问令牌

此端点适用于以下细粒度令牌类型:

细粒度令牌必须具有以下权限集

  • "成员" 组织权限(读取)

"列出分配给组织角色的用户" 的参数

标头
名称、类型、描述
accept 字符串

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
org 字符串 必填

组织名称。名称不区分大小写。

role_id 整数 必填

角色的唯一标识符。

查询参数
名称、类型、描述
per_page 整数

每页结果数(最大 100)。有关更多信息,请参阅“在 REST API 中使用分页”。

默认值: 30

page 整数

要获取的结果的页码。有关更多信息,请参阅“在 REST API 中使用分页”。

默认值: 1

"列出分配给组织角色的用户" 的 HTTP 响应状态码

状态代码描述
200

响应 - 已分配用户的列表

404

如果组织或角色不存在,则返回此响应。

422

如果组织角色功能未启用或验证失败,则返回此响应。

"列出分配给组织角色的用户" 的代码示例

请求示例

get/orgs/{org}/organization-roles/{role_id}/users
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/organization-roles/ROLE_ID/users

响应 - 已分配用户的列表

状态:200
[ { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", "avatar_url": "https://github.com/images/error/octocat_happy.gif", "gravatar_id": "", "url": "https://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false } ]