用于 Copilot 用户管理的 REST API 端点
使用 REST API 管理组织的 GitHub Copilot Business 或 GitHub Copilot Enterprise 订阅。
注意:这些端点处于公开测试阶段,可能会发生变化。
获取组织的 Copilot 座位信息和设置
注意:此端点处于测试阶段,可能会发生变化。
获取有关组织的 Copilot 订阅的信息,包括座位细分和功能策略。要配置这些设置,请转到 GitHub.com 上的组织设置。有关更多信息,请参阅“在组织中管理 Copilot 的策略”。
只有组织所有者可以查看有关组织的 Copilot Business 或 Copilot Enterprise 订阅的详细信息。
OAuth 应用程序令牌和个人访问令牌(经典)需要 manage_billing:copilot
或 read:org
范围才能使用此端点。
用于“获取组织的 Copilot 座位信息和设置”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限集
- "GitHub Copilot Business" 组织权限(读取) 和 "管理" 组织权限(读取)
获取组织的 Copilot 座位信息和设置
名称,类型,描述 |
---|
accept string 建议设置为 |
名称,类型,描述 |
---|
org string 必填组织名称。名称不区分大小写。 |
获取组织的 Copilot 座位信息和设置的 HTTP 响应状态码
状态码 | 描述 |
---|---|
200 | OK |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 您的帐户关联的付款方式存在问题。 |
500 | 内部错误 |
获取组织的 Copilot 座位信息和设置的代码示例
请求示例
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/copilot/billing
OK
列出组织的所有 Copilot 座位分配
注意:此端点处于测试阶段,可能会发生变化。
列出具有 Copilot Business 或 Copilot Enterprise 订阅的组织的所有活动 Copilot 座位。只有组织所有者可以查看分配的座位。
OAuth 应用程序令牌和个人访问令牌(经典)需要 manage_billing:copilot
或 read:org
范围才能使用此端点。
列出组织的所有 Copilot 座位分配的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限集
- "GitHub Copilot Business" 组织权限(读取) 和 "管理" 组织权限(读取)
列出组织的所有 Copilot 座位分配的参数
名称,类型,描述 |
---|
accept string 建议设置为 |
名称,类型,描述 |
---|
org string 必填组织名称。名称不区分大小写。 |
名称,类型,描述 |
---|
page 整数 要获取的结果页码。有关更多信息,请参阅“在 REST API 中使用分页”。 默认: |
per_page 整数 每页结果数(最大 100)。有关更多信息,请参阅“在 REST API 中使用分页”。 默认: |
“列出组织的所有 Copilot 座位分配”的 HTTP 响应状态代码
状态码 | 描述 |
---|---|
200 | OK |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
500 | 内部错误 |
“列出组织的所有 Copilot 座位分配”的代码示例
请求示例
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/copilot/billing/seats
响应
状态:200
{
"total_seats": 2,
"seats": [
{
"created_at": "2021-08-03T18:00:00-06:00",
"updated_at": "2021-09-23T15:00:00-06:00",
"pending_cancellation_date": null,
"last_activity_at": "2021-10-14T00:53:32-06:00",
"last_activity_editor": "vscode/1.77.3/copilot/1.86.82",
"assignee": {
"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
},
"assigning_team": {
"id": 1,
"node_id": "MDQ6VGVhbTE=",
"url": "https://api.github.com/teams/1",
"html_url": "https://github.com/orgs/github/teams/justice-league",
"name": "Justice League",
"slug": "justice-league",
"description": "A great team.",
"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
}
},
{
"created_at": "2021-09-23T18:00:00-06:00",
"updated_at": "2021-09-23T15:00:00-06:00",
"pending_cancellation_date": "2021-11-01",
"last_activity_at": "2021-10-13T00:53:32-06:00",
"last_activity_editor": "vscode/1.77.3/copilot/1.86.82",
"assignee": {
"login": "octokitten",
"id": 1,
"node_id": "MDQ76VNlcjE=",
"avatar_url": "https://github.com/images/error/octokitten_happy.gif",
"gravatar_id": "",
"url": "https://api.github.com/users/octokitten",
"html_url": "https://github.com/octokitten",
"followers_url": "https://api.github.com/users/octokitten/followers",
"following_url": "https://api.github.com/users/octokitten/following{/other_user}",
"gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}",
"starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/octokitten/subscriptions",
"organizations_url": "https://api.github.com/users/octokitten/orgs",
"repos_url": "https://api.github.com/users/octokitten/repos",
"events_url": "https://api.github.com/users/octokitten/events{/privacy}",
"received_events_url": "https://api.github.com/users/octokitten/received_events",
"type": "User",
"site_admin": false
}
}
]
}
将团队添加到组织的 Copilot 订阅
注意:此端点处于测试阶段,可能会发生变化。
为每个指定团队中的所有用户购买 GitHub Copilot 座位。组织将相应地付费。有关 Copilot 定价的更多信息,请参阅“GitHub Copilot 定价”。
只有组织所有者可以为其组织成员添加 Copilot 座位。
为了让管理员使用此端点,组织必须拥有 Copilot Business 或 Enterprise 订阅以及配置的建议匹配策略。有关设置 Copilot 订阅的更多信息,请参阅“为您的组织设置 Copilot 订阅”。有关设置建议匹配策略的更多信息,请参阅“为组织中的 GitHub Copilot 配置建议匹配策略”。
OAuth 应用程序令牌和个人访问令牌(经典)需要 manage_billing:copilot
或 admin:org
范围才能使用此端点。
“将团队添加到组织的 Copilot 订阅”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限集
- "GitHub Copilot Business" 组织权限(写入) 和 "管理" 组织权限(写入)
“将团队添加到组织的 Copilot 订阅”的参数
名称,类型,描述 |
---|
accept string 建议设置为 |
名称,类型,描述 |
---|
org string 必填组织名称。名称不区分大小写。 |
名称,类型,描述 |
---|
selected_teams 字符串数组 必需组织内要授予 GitHub Copilot 访问权限的团队名称列表。 |
“将团队添加到组织的 Copilot 订阅”的 HTTP 响应状态代码
状态码 | 描述 |
---|---|
201 | OK |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 此组织尚未启用 Copilot Business 或 Enterprise,尚未为此组织设置账单,尚未为此组织设置公共代码建议策略,或者组织的 Copilot 访问设置设置为为所有用户启用 Copilot 或未配置。 |
500 | 内部错误 |
“将团队添加到组织的 Copilot 订阅”的代码示例
请求示例
curl -L \ -X POST \ -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/copilot/billing/selected_teams \ -d '{"selected_teams":["engteam1","engteam2","engteam3"]}'
OK
从组织的 Copilot 订阅中删除团队
注意:此端点处于测试阶段,可能会发生变化。
取消对每个指定团队的所有成员的 Copilot 座位分配。这将导致指定团队的成员在当前账单周期结束时失去对 GitHub Copilot 的访问权限,并且组织将不再为这些用户付费。
有关 Copilot 定价的更多信息,请参阅“GitHub Copilot 定价”。
有关禁用对 Copilot Business 或 Enterprise 的访问权限的更多信息,请参阅“撤销组织中特定用户对 GitHub Copilot 的访问权限”。
只有组织所有者可以取消其组织成员的 Copilot 座位。
OAuth 应用程序令牌和个人访问令牌(经典)需要 manage_billing:copilot
或 admin:org
范围才能使用此端点。
“从组织的 Copilot 订阅中删除团队”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限集
- "GitHub Copilot Business" 组织权限(写入) 和 "管理" 组织权限(写入)
“从组织的 Copilot 订阅中删除团队”的参数
名称,类型,描述 |
---|
accept string 建议设置为 |
名称,类型,描述 |
---|
org string 必填组织名称。名称不区分大小写。 |
名称,类型,描述 |
---|
selected_teams 字符串数组 必需要撤销对 GitHub Copilot 的访问权限的团队的名称。 |
“从组织的 Copilot 订阅中删除团队”的 HTTP 响应状态代码
状态码 | 描述 |
---|---|
200 | OK |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 此组织尚未启用 Copilot Business 或 Enterprise,尚未为此组织设置账单,尚未为此组织设置公共代码建议策略,或者组织的 Copilot 访问设置设置为为所有用户启用 Copilot 或未配置。 |
500 | 内部错误 |
“从组织的 Copilot 订阅中删除团队”的代码示例
请求示例
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/copilot/billing/selected_teams \ -d '{"selected_teams":["engteam1","engteam2","engteam3"]}'
OK
将用户添加到组织的 Copilot 订阅中
注意:此端点处于测试阶段,可能会发生变化。
为每个指定的用户购买 GitHub Copilot 许可证。组织将相应地进行计费。有关 Copilot 定价的更多信息,请参阅“GitHub Copilot 定价”。
只有组织所有者可以为其组织成员添加 Copilot 座位。
为了让管理员使用此端点,组织必须拥有 Copilot Business 或 Enterprise 订阅以及配置的建议匹配策略。有关设置 Copilot 订阅的更多信息,请参阅“为您的组织设置 Copilot 订阅”。有关设置建议匹配策略的更多信息,请参阅“为组织中的 GitHub Copilot 配置建议匹配策略”。
OAuth 应用程序令牌和个人访问令牌(经典)需要 manage_billing:copilot
或 admin:org
范围才能使用此端点。
“将用户添加到组织的 Copilot 订阅中”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限集
- "GitHub Copilot Business" 组织权限(写入) 和 "管理" 组织权限(写入)
“将用户添加到组织的 Copilot 订阅中”的参数
名称,类型,描述 |
---|
accept string 建议设置为 |
名称,类型,描述 |
---|
org string 必填组织名称。名称不区分大小写。 |
名称,类型,描述 |
---|
selected_usernames 字符串数组 必需要授予 GitHub Copilot 访问权限的组织成员的用户名。 |
“将用户添加到组织的 Copilot 订阅中”的 HTTP 响应状态代码
状态码 | 描述 |
---|---|
201 | OK |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 此组织尚未启用 Copilot Business 或 Enterprise,尚未为此组织设置账单,尚未为此组织设置公共代码建议策略,或者组织的 Copilot 访问设置设置为为所有用户启用 Copilot 或未配置。 |
500 | 内部错误 |
“将用户添加到组织的 Copilot 订阅中”的代码示例
请求示例
curl -L \ -X POST \ -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/copilot/billing/selected_users \ -d '{"selected_usernames":["cooluser1","hacker2","octocat"]}'
OK
从组织的 Copilot 订阅中删除用户
注意:此端点处于测试阶段,可能会发生变化。
取消为每个指定的用户分配的 Copilot 许可证。这将导致指定的用户在当前计费周期结束时失去对 GitHub Copilot 的访问权限,并且组织将不再为这些用户计费。
有关 Copilot 定价的更多信息,请参阅“GitHub Copilot 定价”。
有关禁用对 Copilot Business 或 Enterprise 的访问权限的更多信息,请参阅“撤销组织中特定用户对 GitHub Copilot 的访问权限”。
只有组织所有者可以取消其组织成员的 Copilot 座位。
OAuth 应用程序令牌和个人访问令牌(经典)需要 manage_billing:copilot
或 admin:org
范围才能使用此端点。
“从组织的 Copilot 订阅中删除用户”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限集
- "GitHub Copilot Business" 组织权限(写入) 和 "管理" 组织权限(写入)
“从组织的 Copilot 订阅中删除用户”的参数
名称,类型,描述 |
---|
accept string 建议设置为 |
名称,类型,描述 |
---|
org string 必填组织名称。名称不区分大小写。 |
名称,类型,描述 |
---|
selected_usernames 字符串数组 必需要撤销 GitHub Copilot 访问权限的组织成员的用户名。 |
“从组织的 Copilot 订阅中删除用户”的 HTTP 响应状态代码
状态码 | 描述 |
---|---|
200 | OK |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 此组织未启用 Copilot Business 或 Enterprise,尚未为此组织设置计费,尚未为此组织设置公共代码建议策略,座位管理设置设置为为所有用户启用 Copilot 或未配置,或者无法取消用户的座位,因为它是通过团队分配给他们的。 |
500 | 内部错误 |
“从组织的 Copilot 订阅中移除用户”的代码示例
请求示例
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/copilot/billing/selected_users \ -d '{"selected_usernames":["cooluser1","hacker2","octocat"]}'
OK
获取用户的 Copilot 座位分配详细信息
注意:此端点处于测试阶段,可能会发生变化。
获取当前拥有 GitHub Copilot 访问权限的组织成员的 GitHub Copilot 座位分配详细信息。
只有组织所有者可以查看其组织成员的 Copilot 座位分配详细信息。
OAuth 应用程序令牌和个人访问令牌(经典)需要 manage_billing:copilot
或 read:org
范围才能使用此端点。
“获取用户的 Copilot 座位分配详细信息”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限集
- "GitHub Copilot Business" 组织权限(读取) 和 "管理" 组织权限(读取)
“获取用户的 Copilot 座位分配详细信息”的参数
名称,类型,描述 |
---|
accept string 建议设置为 |
名称,类型,描述 |
---|
org string 必填组织名称。名称不区分大小写。 |
username 字符串 必需GitHub 用户帐户的句柄。 |
“获取用户的 Copilot 座位分配详细信息”的 HTTP 响应状态代码
状态码 | 描述 |
---|---|
200 | 用户的 GitHub Copilot 座位详细信息,包括使用情况。 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 此组织未启用 Copilot Business 或 Enterprise,或者用户有待处理的组织邀请。 |
500 | 内部错误 |
“获取用户的 Copilot 座位分配详细信息”的代码示例
请求示例
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/members/USERNAME/copilot
用户的 GitHub Copilot 座位详细信息,包括使用情况。
状态:200
{ "created_at": "2021-08-03T18:00:00-06:00", "updated_at": "2021-09-23T15:00:00-06:00", "pending_cancellation_date": null, "last_activity_at": "2021-10-14T00:53:32-06:00", "last_activity_editor": "vscode/1.77.3/copilot/1.86.82", "assignee": { "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 }, "assigning_team": { "id": 1, "node_id": "MDQ6VGVhbTE=", "url": "https://api.github.com/teams/1", "html_url": "https://github.com/orgs/github/teams/justice-league", "name": "Justice League", "slug": "justice-league", "description": "A great team.", "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 } }