Users can be added to an existing Project using their emails. You can specify the role of the users being added using the ProjectUserRole enum. ProjectUserRole can take the following values:
ADMIN = 0
ANNOTATOR = 1
REVIEWER = 2
ANNOTATOR_REVIEWER = 3
TEAM_MANAGER = 4
The Project hash can be found within the URL once a Project has been selected:app.encord.com/projects/view/\<project_hash>/summary or app.us.encord.com/projects/view/\<project_hash>/summary
For collaborative teams using our SDK, we recommend creating shared service accounts and creating SSH keys for those shared accounts. For example, to have several people create Ontologies, datasets, and projects programmatically, create an email account for use with Encord (for example, encord-admins@mycompany.com) and generate an SSH for that email account.
The following script shows how to add two new annotators to the project. Note how all users get assigned the same role.
Global
Copy
# Import dependenciesfrom encord import EncordUserClient, Projectfrom encord.utilities.project_user import ProjectUserRoleSSH_PATH = "<private-key-path>"#Authenticate using the path to your private keyuser_client = EncordUserClient.create_with_ssh_private_key( ssh_private_key_path=SSH_PATH)# Specify the project you'd like to add users toproject = user_client.get_project("<project_hash>")# Add users by specifying their email addresses, as well as the role these users should have.added_users = project.add_users( ["example1@encord.com", "example2@encord.com"], ProjectUserRole.ANNOTATOR,)# Print the new users added to the projectprint(added_users)
US
Copy
# Import dependenciesfrom encord import EncordUserClient, Projectfrom encord.utilities.project_user import ProjectUserRoleSSH_PATH = "<private-key-path>"#Authenticate using the path to your private keyuser_client = EncordUserClient.create_with_ssh_private_key( ssh_private_key_path=SSH_PATH, domain="https://api.us.encord.com")# Specify the project you'd like to add users toproject = user_client.get_project("<project_hash>")# Add users by specifying their email addresses, as well as the role these users should have.added_users = project.add_users( ["example1@encord.com", "example2@encord.com"], ProjectUserRole.ANNOTATOR,)# Print the new users added to the projectprint(added_users)