Skip to main content
O controle de versão da API REST já foi feito. Para obter mais informações, confira "Sobre o controle de versão da API".

Pontos de extremidade da API REST para colaboradores do Project (classic)

Use a API REST para gerenciar colaboradores em um projeto (clássico).

Note

Projects (classic) foi removido. Leia mais sobre a alteração no the GitHub Blog.

A experiência de projetos nova e aprimorada está disponível. Para obter mais informações, confira "Sobre Projects".

Esses pontos de extremidade interagem apenas com o projects (classic). Para gerenciar o Projects, use a API do GraphQL. Para obter mais informações, confira "Usando a API para gerenciar Projects".

A API REST para gerenciar projects (classic) só dá suporte à autenticação usando um personal access token (classic). Para obter mais informações, confira "Gerenciar seus tokens de acesso pessoal".

List project collaborators

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.

Tokens de acesso refinados para "List project collaborators"

Esse ponto de extremidade funciona com os seguintes tipos de token refinados:

O token refinado deve ter pelo menos um dos seguintes conjuntos de permissões:

  • "Projects" repository permissions (write)
  • "Projects" organization permissions (admin)

Parâmetros para "List project collaborators"

Cabeçalhos
Nome, Tipo, Descrição
accept string

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

Parâmetros de caminho
Nome, Tipo, Descrição
project_id integer Obrigatório

The unique identifier of the project.

Parâmetros de consulta
Nome, Tipo, Descrição
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.

Padrão: all

Pode ser um dos: outside, direct, all

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

Padrão: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

Padrão: 1

Códigos de status de resposta HTTP para "List project collaborators"

Código de statusDescrição
200

OK

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Exemplos de código para "List project collaborators"

Se você acessar o GitHub em GHE.com, substitua api.github.com pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com.

Exemplo de solicitação

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

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.

Tokens de acesso refinados para "Add project collaborator"

Esse ponto de extremidade funciona com os seguintes tipos de token refinados:

O token refinado deve ter pelo menos um dos seguintes conjuntos de permissões:

  • "Projects" repository permissions (write)
  • "Projects" organization permissions (admin)

Parâmetros para "Add project collaborator"

Cabeçalhos
Nome, Tipo, Descrição
accept string

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

Parâmetros de caminho
Nome, Tipo, Descrição
project_id integer Obrigatório

The unique identifier of the project.

username string Obrigatório

The handle for the GitHub user account.

Parâmetros do corpo
Nome, Tipo, Descrição
permission string

The permission to grant the collaborator.

Padrão: write

Pode ser um dos: read, write, admin

Códigos de status de resposta HTTP para "Add project collaborator"

Código de statusDescrição
204

No Content

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Exemplos de código para "Add project collaborator"

Se você acessar o GitHub em GHE.com, substitua api.github.com pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com.

Exemplo de solicitação

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

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

Tokens de acesso refinados para "Remove user as a collaborator"

Esse ponto de extremidade funciona com os seguintes tipos de token refinados:

O token refinado deve ter pelo menos um dos seguintes conjuntos de permissões:

  • "Projects" repository permissions (write)
  • "Projects" organization permissions (admin)

Parâmetros para "Remove user as a collaborator"

Cabeçalhos
Nome, Tipo, Descrição
accept string

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

Parâmetros de caminho
Nome, Tipo, Descrição
project_id integer Obrigatório

The unique identifier of the project.

username string Obrigatório

The handle for the GitHub user account.

Códigos de status de resposta HTTP para "Remove user as a collaborator"

Código de statusDescrição
204

No Content

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Exemplos de código para "Remove user as a collaborator"

Se você acessar o GitHub em GHE.com, substitua api.github.com pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com.

Exemplo de solicitação

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

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.

Tokens de acesso refinados para "Get project permission for a user"

Esse ponto de extremidade funciona com os seguintes tipos de token refinados:

O token refinado deve ter pelo menos um dos seguintes conjuntos de permissões:

  • "Projects" repository permissions (write)
  • "Projects" organization permissions (admin)

Parâmetros para "Get project permission for a user"

Cabeçalhos
Nome, Tipo, Descrição
accept string

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

Parâmetros de caminho
Nome, Tipo, Descrição
project_id integer Obrigatório

The unique identifier of the project.

username string Obrigatório

The handle for the GitHub user account.

Códigos de status de resposta HTTP para "Get project permission for a user"

Código de statusDescrição
200

OK

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Exemplos de código para "Get project permission for a user"

Se você acessar o GitHub em GHE.com, substitua api.github.com pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com.

Exemplo de solicitação

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