Setting Up SCIM Provisioning with Okta
Last updated: March 25, 2026
Overview
HackerRank enables you to set up provisioning through your SSO by configuring the SCIM protocol.
As an identity provider, Okta enables you to provide SSO access to the cloud, on-premise, and mobile applications. Once you sign into Okta, you can launch your web applications without re-entering your credentials.
This article guides you on how to configure SCIM provisioning with Okta.
Features
The following provisioning features are supported:
Push new Users
New users created through Okta and assigned to HackerRank for Work are created within the application.
Push Profile Updates
Updates made to a user’s profile within Okta will update the user’s profile in HackerRank for Work.
Import New Users
Users created within HackerRank for Work can be downloaded and turned into a User object in Okta.
Import Profile Updates
Updates on a provisioned user’s profile within HackRank for Work can be downloaded and synced in Okta.
Push Groups
Groups are provisioned as Teams and members within those groups are mapped into the team on HackerRank for Work.
Only Add Users to Group is supported.
Silent Provisioning
Users are silently provisioned through Okta, which indicates that new users will not receive Welcome or Activation emails.
Note: HackerRank accepts only the user's email address. In the setup, the user defines the SAML assertion with the necessary data. HackerRank SSO fails if it receives anything other than an email address.
Prerequisites
Your organization has an Enterprise plan with HackerRank.
Configure SSO using SAML before setting up the provisioning with HackerRank for Work
Configuring SCIM Provisioning with Okta
The process of configuring SCIM Provisioning with Okta includes the following:
Generating an API Key from HackerRank
Log in to HackerRank for Work with the Company Admin user account.
On the home page, click the drop-down next to the user icon on the top right corner of the page.
Click Settings and click Single Sign On on the left panel.
Click Generate Key under SCIM Protocol.
Copy the API Key that is generated.
Configuring Provisioning for HackerRank
Click the Provisioning tab in the HackerRank for Work application in Okta.
Click Configure API Integration.
Select the Enable API Integration check box.
Enter the API Token generated from HackerRank for Work in API Token.
Click Test API Credentials to verify that the token is valid, then click Save.
In the To App option under the Provisioning tab, select the Create Users and Update User Attributes check boxes.
Click Save. You can now begin provisioning users to HackerRank for Work.
Importing Users
The Import Users option helps to prevent overwriting existing permissions for users that are already created in HackerRank. This option pulls users back into Okta to keep your directory in sync.
To import users:
Click the Import tab in the HackerRank for Work application in Okta.
Click Import Now to pull the list of users from HackerRank for Work.
Select the users to be imported and Confirm Assignments.
If users in HackerRank for Work exist in Okta but are not assigned to the HackerRank for Work application, an EXACT label is associated with the user. A new user is not created, but the user will be assigned to the application.
The Confirm Imported User Assignments dialog box appears.
Click Confirm.
Now, the user appears in your directory.
You can navigate to the Assignment tab to verify the newly imported users.
Provisioning Steps
Perform these steps to create users in HackerRank for Work:
Click the Assignments tab in the HackerRank for Work application in Okta.
Click Assign.
There are two options in this list:
Assign to People
Assign to Groups
Assign to People
Provision a single user.
Click Assign for the user that you want to provision.
Enter the required attribute fields for these roles:
Role
Recruiter
Create tests, questions, and interviews.
Access candidates.
Send invites
Developer
Create tests, questions, and interviews.
Access candidates.
Interviewer
Create and give interviews
Company Admin: Grant the ability to override and grant more permissions for users in the whole company.
Team Admin: Grant the ability to override permissions for users within the same team.
Click Save and Go Back to view your newly assigned user.
Assign to Groups
Provision a group of users.
Click Assign for the group that you want to provision.
Enter the required attribute fields for these roles: (all users within the group will be provisioned with the same value for the attributes).
Role
Recruiter
Create tests, questions, and interviews.
Access candidates.
Send invites.
Developer
Create tests, questions, and interviews.
Access candidates.
Interviewer
Create and give interviews
Company Admin: Grant the ability to override and grant more permissions for users in the whole company.
Team Admin: Grant the ability to override permissions for users within the same team.
Click Save and Go Back. Your group has been assigned to the application.
You can also view the list of users assigned in the People tab.
Migrating to New Instance of HackerRank
The HackerRank SCIM application is updated to provide a better experience to Okta users. The summary of changes is:
A new attribute (Interviewer Role) is added
If you are a current user, you need to add a new instance of HackerRank in your Okta org.
If you already have an existing instance of HackerRank, follow these steps to migrate to a newly updated instance of HackerRank:
Log in to your Okta org as an Admin.
Open the Admin UI.
Click Add Applications.
Add a new instance of HackerRank.
Configure the application including Provisioning.
After SCIM Provisioning has been enabled, go to the Import tab of your new HackerRank app instance.
Click Import Now.
After the users from HackerRank are downloaded, select the users you want created or linked in Okta.
Click Confirm Assignments. A pop-up appears to confirm with proceeding for the assignment confirmation.
Click Confirm.
Navigate to the Admin Dashboard.
Open your previous HackerRank app instance.
Go to the Provisioning tab.
On the SETTINGS section, click the API option.
Click the Edit option and clear the Enable API Integration checkbox.
Click Save.
You can now deactivate or delete your previous HackerRank app instance and use the new HackerRank app you added.
Note:
If you were using SAML as the sign-on mode for your previous HackerRank app instance, you will need to set up SAML on your new HackerRank app instance in Okta (recommended) or maintain the previous HackerRank app instance to ensure that the SAML functionality continues to work.
If you were using your previous HackerRank app as a profile master for certain Okta attributes, you must set your new HackerRank app as the profile master for the same attributes.
Push Groups
To have access to tests and candidate reports, it is a best practice for users to be part of at least one team.
Follow these steps to assign your users to a team within HackerRank for Work.
Warning: Users must be provisioned to the application using Assignments for Push Groups to work. Group names must be unique and have not been created on HackerRank.
Click the Push Groups tab in the HackerRank for Work application on Okta.
Click Push Groups.
Select Find groups By name.
Using the search box, find your group
Click Save.
On successful group push, Active status appears for the group.
Common Group - Team Configurations
All users are in one group.
If you want HackerRank users to be in one team and have equal access to all tests and candidates, push a single group that all users belong to. For example, Everyone or HackerRank Users.
The group will be pushed and only those users assigned through the Assignments tab will be added to the team Everyone.
HackerRank users are in teams according to organization recruiting.
If you want to create Teams in HackerRank that correspond to organizations, divisions, or geo-locations, find the corresponding groups in Okta and push them as Teams in HackerRank.
User Attributes
There are various attributes that you need to configure when assigning or updating users.
Username/Email: The primary email is used as the username in HackerRank and cannot be updated from Okta. Choosing to update either username or primary email in Okta will not be reflected in the HackerRank for Work application.
Given Name: First name of the user.
Family Name: Last name of the user.
Role
Recruiter
Create tests, questions, and interviews.
Access candidates.
Send invites.
Developer
Create tests, questions, and interviews.
Access candidates.
Interviewer
Create and give interviews.
Company Admin: Ability to override and grant more permissions for users in the whole company. The value must be either true or false.
Team Admin: Ability to override permissions for users within the same team. The value must be either true or false.
De-Provisioning a User
You can deprovision a User by clicking on the X icon on the right of the User in each row and then confirming it.
The resources, such as Tests, Interviews, Questions, and so on, are transferred to the Owner of the Company, and the User will be locked.
Troubleshooting and Tips
We suggest keeping Okta as the source of truth.
This integration is optimized for creating users and teams. The following Okta features are not supported.
Teams in HackerRank cannot be synced back to Okta as a Push Group option.
Push Now functionality.
Delete Group in the target app.
Remove members from the group.