Skip to main content

Enterprise Server 3.15 est actuellement disponible en tant que version finale (RC).

L’API REST est maintenant versionnée. Pour plus d’informations, consultez « À propos des versions de l’API ».

Points de terminaison d’API REST pour les groupes externes

Utilisez l’API REST pour afficher les groupes de fournisseurs d’identité externes disponibles pour votre organisation, et de gérer la connexion entre les groupes externes et les équipes de votre organisation.

About external groups

Note

SCIM for GitHub Enterprise Server is currently in beta and subject to change. GitHub recommends testing with a staging instance first. See "Setting up a staging instance."

To use these endpoints, the authenticated user must be a team maintainer or an owner of the organization associated with the team.

Get an external group

Displays information about the specific group's usage. Provides a list of the group's external members as well as a list of teams that this group is connected to.

You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "GitHub's products" in the GitHub Help documentation.

Jetons d’accès affinés pour « Get an external group »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Members" organization permissions (write)

Paramètres pour « Get an external group »

En-têtes
Nom, Type, Description
accept string

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

group_id integer Obligatoire

The unique identifier of the group.

Paramètres de requête
Nom, Type, Description
per_page integer

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

Default: 30

page integer

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

Default: 1

Codes d’état de la réponse HTTP pour « Get an external group »

Code d’étatDescription
200

OK

Exemples de code pour « Get an external group »

Exemple de requête

get/orgs/{org}/external-group/{group_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ http(s)://HOSTNAME/api/v3/orgs/ORG/external-group/GROUP_ID

Response

Status: 200
{ "group_id": "123", "group_name": "Octocat admins", "updated_at": "2021-01-24T11:31:04-06:00", "teams": [ { "team_id": 1, "team_name": "team-test" }, { "team_id": 2, "team_name": "team-test2" } ], "members": [ { "member_id": 1, "member_login": "mona-lisa_eocsaxrs", "member_name": "Mona Lisa", "member_email": "mona_lisa@github.com" }, { "member_id": 2, "member_login": "octo-lisa_eocsaxrs", "member_name": "Octo Lisa", "member_email": "octo_lisa@github.com" } ] }

List external groups in an organization

Lists external groups available in an organization. You can query the groups using the display_name parameter, only groups with a group_name containing the text provided in the display_name parameter will be returned. You can also limit your page results using the per_page parameter. GitHub Enterprise Server generates a url-encoded page token using a cursor value for where the next page begins. For more information on cursor pagination, see "Offset and Cursor Pagination explained."

You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "GitHub's products" in the GitHub Help documentation.

Jetons d’accès affinés pour « List external groups in an organization »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Members" organization permissions (write)

Paramètres pour « List external groups in an organization »

En-têtes
Nom, Type, Description
accept string

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

Paramètres de requête
Nom, Type, Description
per_page integer

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

Default: 30

page integer

Page token

display_name string

Limits the list to groups containing the text in the group name

Codes d’état de la réponse HTTP pour « List external groups in an organization »

Code d’étatDescription
200

OK

Exemples de code pour « List external groups in an organization »

Exemple de requête

get/orgs/{org}/external-groups
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ http(s)://HOSTNAME/api/v3/orgs/ORG/external-groups

Response

Status: 200
{ "groups": [ { "group_id": "123", "group_name": "Octocat admins", "updated_at": "2021-01-24T11:31:04-06:00" }, { "group_id": "456", "group_name": "Octocat docs members", "updated_at": "2021-03-24T11:31:04-06:00" } ] }

List a connection between an external group and a team

Lists a connection between a team and an external group.

You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "GitHub's products" in the GitHub Help documentation.

Jetons d’accès affinés pour « List a connection between an external group and a team »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Members" organization permissions (write)

Paramètres pour « List a connection between an external group and a team »

En-têtes
Nom, Type, Description
accept string

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

team_slug string Obligatoire

The slug of the team name.

Codes d’état de la réponse HTTP pour « List a connection between an external group and a team »

Code d’étatDescription
200

OK

Exemples de code pour « List a connection between an external group and a team »

Exemple de requête

get/orgs/{org}/teams/{team_slug}/external-groups
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ http(s)://HOSTNAME/api/v3/orgs/ORG/teams/TEAM_SLUG/external-groups

Response

Status: 200
{ "groups": [ { "group_id": "123", "group_name": "Octocat admins", "updated_at": "2021-01-24T11:31:04-06:00" }, { "group_id": "456", "group_name": "Octocat docs members", "updated_at": "2021-03-24T11:31:04-06:00" } ] }

Update the connection between an external group and a team

Creates a connection between a team and an external group. Only one external group can be linked to a team.

You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "GitHub's products" in the GitHub Help documentation.

Jetons d’accès affinés pour « Update the connection between an external group and a team »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Members" organization permissions (write)

Paramètres pour « Update the connection between an external group and a team »

En-têtes
Nom, Type, Description
accept string

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

team_slug string Obligatoire

The slug of the team name.

Paramètres du corps
Nom, Type, Description
group_id integer Obligatoire

External Group Id

Codes d’état de la réponse HTTP pour « Update the connection between an external group and a team »

Code d’étatDescription
200

OK

Exemples de code pour « Update the connection between an external group and a team »

Exemple de requête

patch/orgs/{org}/teams/{team_slug}/external-groups
curl -L \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ http(s)://HOSTNAME/api/v3/orgs/ORG/teams/TEAM_SLUG/external-groups \ -d '{"group_id":123}'

Response

Status: 200
{ "group_id": "123", "group_name": "Octocat admins", "updated_at": "2021-01-24T11:31:04-06:00", "teams": [ { "team_id": 1, "team_name": "team-test" }, { "team_id": 2, "team_name": "team-test2" } ], "members": [ { "member_id": 1, "member_login": "mona-lisa_eocsaxrs", "member_name": "Mona Lisa", "member_email": "mona_lisa@github.com" }, { "member_id": 2, "member_login": "octo-lisa_eocsaxrs", "member_name": "Octo Lisa", "member_email": "octo_lisa@github.com" } ] }

Remove the connection between an external group and a team

Deletes a connection between a team and an external group.

You can manage team membership with your IdP using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see GitHub's products in the GitHub Help documentation.

Jetons d’accès affinés pour « Remove the connection between an external group and a team »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Members" organization permissions (write)

Paramètres pour « Remove the connection between an external group and a team »

En-têtes
Nom, Type, Description
accept string

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

team_slug string Obligatoire

The slug of the team name.

Codes d’état de la réponse HTTP pour « Remove the connection between an external group and a team »

Code d’étatDescription
204

No Content

Exemples de code pour « Remove the connection between an external group and a team »

Exemple de requête

delete/orgs/{org}/teams/{team_slug}/external-groups
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ http(s)://HOSTNAME/api/v3/orgs/ORG/teams/TEAM_SLUG/external-groups

Response

Status: 204