Skip to main content

Outside Collaborators

List outside collaborators for an organization

List all users who are outside collaborators of an organization.

get /orgs/{org}/outside_collaborators

Parameters

NameTypeInDescription
acceptstringheader

Setting toapplication/vnd.github.v3+json is recommended.

orgstringpath
filterstringquery

Filter the list of outside collaborators. Can be one of:
* 2fa_disabled: Outside collaborators without two-factor authentication enabled.
* all: All outside collaborators.

Default: all

per_pageintegerquery

Results per page (max 100)

Default: 30

pageintegerquery

Page number of the results to fetch.

Default: 1

Code samples

Example

Shell
curl \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/orgs/ORG/outside_collaborators
JavaScript @octokit/core.js
await octokit.request('GET /orgs/{org}/outside_collaborators', { org: 'ORG' })
GitHub CLI gh api
gh api \ -H "Accept: application/vnd.github.v3+json" \ /orgs/ORG/outside_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 } ]

Status codes

HTTP Status CodeDescription
200

OK

Notes

Convert an organization member to outside collaborator

When an organization member is converted to an outside collaborator, they'll only have access to the repositories that their current team membership allows. The user will no longer be a member of the organization. For more information, see "Converting an organization member to an outside collaborator". Converting an organization member to an outside collaborator may be restricted by enterprise administrators. For more information, see "Enforcing repository management policies in your enterprise."

put /orgs/{org}/outside_collaborators/{username}

Parameters

NameTypeInDescription
acceptstringheader

Setting toapplication/vnd.github.v3+json is recommended.

orgstringpath
usernamestringpath

Code samples

Example

Shell
curl \ -X PUT \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/orgs/ORG/outside_collaborators/USERNAME
JavaScript @octokit/core.js
await octokit.request('PUT /orgs/{org}/outside_collaborators/{username}', { org: 'ORG', username: 'USERNAME' })
GitHub CLI gh api
gh api \ --method PUT \ -H "Accept: application/vnd.github.v3+json" \ /orgs/ORG/outside_collaborators/USERNAME

User is getting converted asynchronously

Status: 202

Example

Shell
curl \ -X PUT \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/orgs/ORG/outside_collaborators/USERNAME
JavaScript @octokit/core.js
await octokit.request('PUT /orgs/{org}/outside_collaborators/{username}', { org: 'ORG', username: 'USERNAME' })
GitHub CLI gh api
gh api \ --method PUT \ -H "Accept: application/vnd.github.v3+json" \ /orgs/ORG/outside_collaborators/USERNAME

User was converted

Status: 204

Status codes

HTTP Status CodeDescription
202

User is getting converted asynchronously

204

User was converted

403

Forbidden if user is the last owner of the organization, not a member of the organization, or if the enterprise enforces a policy for inviting outside collaborators. For more information, see "Enforcing repository management policies in your enterprise."

404

Resource not found

Notes

Remove outside collaborator from an organization

Removing a user from this list will remove them from all the organization's repositories.

delete /orgs/{org}/outside_collaborators/{username}

Parameters

NameTypeInDescription
acceptstringheader

Setting toapplication/vnd.github.v3+json is recommended.

orgstringpath
usernamestringpath

Code samples

Example

Shell
curl \ -X DELETE \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/orgs/ORG/outside_collaborators/USERNAME
JavaScript @octokit/core.js
await octokit.request('DELETE /orgs/{org}/outside_collaborators/{username}', { org: 'ORG', username: 'USERNAME' })
GitHub CLI gh api
gh api \ --method DELETE \ -H "Accept: application/vnd.github.v3+json" \ /orgs/ORG/outside_collaborators/USERNAME

Response

Status: 204

Status codes

HTTP Status CodeDescription
204

No Content

422

Unprocessable Entity if user is a member of the organization

Notes