Last active
August 14, 2023 15:48
-
-
Save ryanj/47da864d6f892bbb86deb918232d1d14 to your computer and use it in GitHub Desktop.
./invite-users.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Invite these users: | |
export FILE_CSV="BackstageOnboarding\ -\ Invitations.csv" | |
# To this GH_ORG: | |
export GH_ORG=summit23Janus2 | |
# Using this API_TOKEN: | |
export YOUR_TOKEN="YOUR_TOKEN_XYZ" | |
for ghuser in $(cat $FILE_CSV | cut -f 1 -d ',' | grep -v "^login" ); do | |
echo "Adding: ${ghuser}" | |
# Look up user id via username | |
USER_ID=$(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/users/$ghuser | grep '"id":' | sed 's/[^:]*: \([^,]*\),/\1/') | |
# Invite USER_ID to GH_ORG | |
curl -L \ | |
-X POST \ | |
-H "Accept: application/vnd.github+json" \ | |
-H "Authorization: Bearer $YOUR_TOKEN"\ | |
-H "X-GitHub-Api-Version: 2022-11-28" \ | |
https://api.github.com/orgs/$GH_ORG/invitations \ | |
-d "{\"invitee_id\":${USER_ID},\"role\":\"direct_member\"}" | |
## rate limit encountered! is the following delay sufficient? | |
sleep 3 | |
done | |
# For more usage info see the GH API docs | |
#https://docs.github.com/en/rest/orgs/members?apiVersion=2022-11-28#create-an-organization-invitation |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment