项目(经典)协作者的 REST API 端点
使用 REST API 管理项目(经典)的协作者。
注意
现在已禁用创建新的项目(经典)。项目(经典)将在 2024 年 8 月 23 日停止使用并删除。您可以在 GitHub 博客 上阅读有关此更改的更多信息。
新的改进的项目体验现已推出。有关更多信息,请参阅“关于项目”。
2024 年 8 月 23 日,所有剩余的项目(经典)将在功能删除之前自动迁移。
这些端点仅与项目(经典)交互。要管理项目,请使用 GraphQL API。有关更多信息,请参阅“使用 API 管理项目”。
管理项目(经典版)的 REST API 仅支持使用个人访问令牌(经典版)进行身份验证。有关更多信息,请参阅“管理您的个人访问令牌”。
列出项目合作者
列出组织项目的合作者。对于项目,合作者列表包括外部合作者、作为直接合作者的组织成员、通过团队成员资格获得访问权限的组织成员、通过默认组织权限获得访问权限的组织成员以及组织所有者。您必须是组织所有者或项目 admin
才能列出合作者。
“列出项目合作者”的细粒度访问令牌
此端点与以下细粒度令牌类型一起使用
细粒度令牌必须至少具有以下权限集之一
- “项目”存储库权限(写入)
- “项目”组织权限(管理员)
“列出项目合作者”的参数
名称、类型、描述 |
---|
accept string 建议设置为 |
名称、类型、描述 |
---|
project_id integer 必需项目的唯一标识符。 |
名称、类型、描述 |
---|
affiliation string 根据合作者的关联关系进行筛选。 默认: 可以是以下之一: |
per_page integer 每页结果数(最大 100)。有关更多信息,请参阅“在 REST API 中使用分页”。 默认: |
page 整数 要获取的结果页码。有关更多信息,请参阅“在 REST API 中使用分页”。 默认: |
“列出项目协作者”的 HTTP 响应状态码
状态码 | 描述 |
---|---|
200 | OK |
304 | 未修改 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 验证失败,或端点已被垃圾邮件攻击。 |
“列出项目协作者”的代码示例
请求示例
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/projects/PROJECT_ID/collaborators
响应
状态: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 } ]
添加项目协作者
将协作者添加到组织项目并设置其权限级别。您必须是组织所有者或项目admin
才能添加协作者。
“添加项目协作者”的细粒度访问令牌
此端点与以下细粒度令牌类型一起使用
细粒度令牌必须至少具有以下权限集之一
- “项目”存储库权限(写入)
- “项目”组织权限(管理员)
“添加项目协作者”的参数
名称、类型、描述 |
---|
accept string 建议设置为 |
名称、类型、描述 |
---|
project_id integer 必需项目的唯一标识符。 |
username 字符串 必需GitHub 用户帐户的句柄。 |
名称、类型、描述 |
---|
permission 字符串 要授予协作者的权限。 默认: 可以是以下之一: |
“添加项目合作者”的 HTTP 响应状态码
状态码 | 描述 |
---|---|
204 | 无内容 |
304 | 未修改 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 验证失败,或端点已被垃圾邮件攻击。 |
“添加项目合作者”的代码示例
请求示例
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/projects/PROJECT_ID/collaborators/USERNAME \ -d '{"permission":"write"}'
响应
状态:204
删除用户作为合作者
从组织项目中删除合作者。您必须是组织所有者或项目 admin
才能删除合作者。
“删除用户作为合作者”的细粒度访问令牌
此端点与以下细粒度令牌类型一起使用
细粒度令牌必须至少具有以下权限集之一
- “项目”存储库权限(写入)
- “项目”组织权限(管理员)
“删除用户作为合作者”的参数
名称、类型、描述 |
---|
accept string 建议设置为 |
名称、类型、描述 |
---|
project_id integer 必需项目的唯一标识符。 |
username 字符串 必需GitHub 用户帐户的句柄。 |
“删除用户作为合作者”的 HTTP 响应状态码
状态码 | 描述 |
---|---|
204 | 无内容 |
304 | 未修改 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 验证失败,或端点已被垃圾邮件攻击。 |
“删除用户作为合作者”的代码示例
请求示例
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/projects/PROJECT_ID/collaborators/USERNAME
响应
状态:204
获取用户对项目的权限
返回合作者对组织项目的权限级别。permission
键的可能值:admin
、write
、read
、none
。您必须是组织所有者或项目 admin
才能查看用户的权限级别。
“获取用户对项目的权限”的细粒度访问令牌
此端点与以下细粒度令牌类型一起使用
细粒度令牌必须至少具有以下权限集之一
- “项目”存储库权限(写入)
- “项目”组织权限(管理员)
“获取用户对项目的权限”的参数
名称、类型、描述 |
---|
accept string 建议设置为 |
名称、类型、描述 |
---|
project_id integer 必需项目的唯一标识符。 |
username 字符串 必需GitHub 用户帐户的句柄。 |
“获取用户对项目的权限”的 HTTP 响应状态码
状态码 | 描述 |
---|---|
200 | OK |
304 | 未修改 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 资源未找到 |
422 | 验证失败,或端点已被垃圾邮件攻击。 |
“获取用户对项目的权限”的代码示例
请求示例
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/projects/PROJECT_ID/collaborators/USERNAME/permission
响应
状态:200
{ "permission": "admin", "user": { "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 } }