Skip to content

Reinviting org members thorugh API does not support reinstating privileges #388

Open

Description

@audunsolemdal

https://github.com/github/platform-samples/blob/master/api/powershell/invite_members_to_org.ps1

So through the GUI if you invite users who have been part of the org recently, you get these options to reinstate privileges which is great

image

I checked the network tab and it makes a POST request towards
https://github.com/orgs/equinor/invitations?invitee_id=<github_id>&role=reinstate

This doesn’t seem to happen / be available when making the call through the API though
https://docs.github.com/en/rest/reference/orgs#create-an-organization-invitation

We tested removing a user, inviting them through the script. The invite works, but the privileges are not reinstated. The person had lost access to their repos + starred equinor repos (assuming this is because he lost repo access, assuming also access to Github teams etc.

Since this isn’t supported through the API call, I assume this also means that the SCIM provisioning which re-invites removed org members also makes them start fresh, which is sub-optimal for our use case.

I’ve also had reports earlier that re-instated members also have had their personal access tokens / ssh keys “lost”, which probably means they mean have been de-authortized from using SSO to the org. I have not verified if or when this happens myself.

Activity

  1. matmut7 commented on Aug 14, 2023

    @matmut7

    Hi, did anyone find something about reinstating a member through the API ?

  2. YazanAlnasr commented on Sep 27, 2023

    @YazanAlnasr

    you can use the API that creates invitations https://docs.github.com/en/rest/orgs/members?apiVersion=2022-11-28#create-an-organization-invitation
    but instead of using one of the roles mentioned in the docs you can use the role "reinstate"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions