Skip to main content
The REST API is now versioned. For more information, see "About API versioning."

Project (classic) 协作者

使用 REST API 管理 经典项目 协作者。

注意:

  • 这些终结点仅与 projects (classic) 交互。 若要管理 Projects,请使用 GraphQL API。 有关详细信息,请参阅“使用 API 管理 Projects”。
  • 若要创建新的 经典项目,组织、用户或存储库必须至少有一个 经典项目。

用于管理 projects (classic) 的 REST API 仅支持使用 personal access token (classic) 进行身份验证。 有关详细信息,请参阅“管理个人访问令牌”。

List project collaborators

Works with GitHub Apps

Lists the collaborators for an organization project. For a project, the list of collaborators includes outside collaborators, organization members that are direct collaborators, organization members with access through team memberships, organization members with access through default organization permissions, and organization owners. You must be an organization owner or a project admin to list collaborators.

Parameters for "List project collaborators"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
project_id integer 必须

The unique identifier of the project.

查询参数
名称, 类型, 说明
affiliation string

Filters the collaborators by their affiliation. outside means outside collaborators of a project that are not a member of the project's organization. direct means collaborators with permissions to a project, regardless of organization membership status. all means all collaborators the authenticated user can see.

默认: all

可以是以下选项之一: outside, direct, all

per_page integer

The number of results per page (max 100).

默认: 30

page integer

Page number of the results to fetch.

默认: 1

HTTP response status codes for "List project collaborators"

Status codeDescription
200

OK

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Code samples for "List project collaborators"

get/projects/{project_id}/collaborators
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

Response

Status: 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 } ]

Add project collaborator

Works with GitHub Apps

Adds a collaborator to an organization project and sets their permission level. You must be an organization owner or a project admin to add a collaborator.

Parameters for "Add project collaborator"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
project_id integer 必须

The unique identifier of the project.

username string 必须

The handle for the GitHub user account.

正文参数
名称, 类型, 说明
permission string

The permission to grant the collaborator.

默认: write

可以是以下选项之一: read, write, admin

HTTP response status codes for "Add project collaborator"

Status codeDescription
204

No Content

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Code samples for "Add project collaborator"

put/projects/{project_id}/collaborators/{username}
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"}'

Response

Status: 204

Remove user as a collaborator

Works with GitHub Apps

Removes a collaborator from an organization project. You must be an organization owner or a project admin to remove a collaborator.

Parameters for "Remove user as a collaborator"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
project_id integer 必须

The unique identifier of the project.

username string 必须

The handle for the GitHub user account.

HTTP response status codes for "Remove user as a collaborator"

Status codeDescription
204

No Content

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Code samples for "Remove user as a collaborator"

delete/projects/{project_id}/collaborators/{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/projects/PROJECT_ID/collaborators/USERNAME

Response

Status: 204

Get project permission for a user

Works with GitHub Apps

Returns the collaborator's permission level for an organization project. Possible values for the permission key: admin, write, read, none. You must be an organization owner or a project admin to review a user's permission level.

Parameters for "Get project permission for a user"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
project_id integer 必须

The unique identifier of the project.

username string 必须

The handle for the GitHub user account.

HTTP response status codes for "Get project permission for a user"

Status codeDescription
200

OK

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Code samples for "Get project permission for a user"

get/projects/{project_id}/collaborators/{username}/permission
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

Response

Status: 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 } }