Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Import users through third party (Google, Slack, BambooHR etc) #346

Merged
merged 19 commits into from
Sep 12, 2023

Conversation

GDay
Copy link
Member

@GDay GDay commented Aug 25, 2023

This PR allows an admin to create/use an integration to mass import users.
These integrations are separate from the normal ones as they do not trigger something for a specific new hire. These are only used to import users.

When someone adds an integration like this (with the type: import_users), then it will add a button to the colleagues page to allow an admin to import one or more users.

On the import page, it will start fetching users directly from the third party API. You can configure how many pages it should fetch (when the results are paginated). You shouldn't fetch more than 5000 users in total as that will take a long time to load/create and could potentially time out. This feature is not intended to be used by very large organizations. Large organizations should use something else, like OpenID to automatically create users when someone logs in or programmatically import users (please contact me if you need help with that).

It will fetch the first_name, last_name, and email from the specified API. These are used to create users, by default, users are saved as an "other" user, they won't receive a message about their account creation, but you can now select them to be assigned as a buddy/manager or in sequences to send messages to.

In some cases, you might want to not include specific users (think of contractors or bot users that are still listed in the API as real users). In those cases you can ignore the user, by clicking on the button next to them. This will permanently ignore this user from every showing up in this list again. You can still create them manually though if you still need them to be in the list of colleagues/admins. Existing users are also be ignored from the list.

image

BambooHR import manifest: https://integrations.chiefonboarding.com/manifest/12

Google import manifest: https://integrations.chiefonboarding.com/manifest/11

@coveralls
Copy link
Collaborator

coveralls commented Aug 30, 2023

Coverage Status

coverage: 92.128% (-1.3%) from 93.423% when pulling b767a1b on import-colleagues-from-google into e02a95e on master.

@GDay GDay marked this pull request as ready for review September 3, 2023 16:25
@GDay GDay force-pushed the import-colleagues-from-google branch from fb8a0f3 to 87b634d Compare September 6, 2023 21:06
back/admin/integrations/models.py Outdated Show resolved Hide resolved
back/admin/integrations/models.py Outdated Show resolved Hide resolved
back/admin/integrations/models.py Outdated Show resolved Hide resolved
back/admin/integrations/models.py Show resolved Hide resolved
back/admin/integrations/models.py Show resolved Hide resolved
back/admin/people/views.py Outdated Show resolved Hide resolved
back/back/templatetags/general.py Show resolved Hide resolved
back/organization/models.py Outdated Show resolved Hide resolved
docs/Integrations.md Outdated Show resolved Hide resolved
back/admin/people/tests.py Show resolved Hide resolved
@GDay GDay mentioned this pull request Sep 10, 2023
@GDay GDay merged commit bdb3eba into master Sep 12, 2023
3 checks passed
@GDay GDay deleted the import-colleagues-from-google branch September 12, 2023 13:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants