SCIM - REST API Overview
You can call the Talentech SCIM API directly if you want to implement your own custom integration. This can be useful if you are not using Entra ID or your identity provider or identity management system does not support SCIM out of the box.
The Talentech SCIM API is not a full implementation of the SCIM specification. It’s primarily implemented to support how Entra ID handles user provisioning via SCIM APIs.
However, several customers have successfully developed customized integrations for user provisioning and de-provisioning.
This page describes the best practices for the typical scenarios you need to implement when managing user accounts and permissions.
Data objects
The SCIM API operates on two main resources; Users and Groups. A user can be member of zero or more groups, but please note that you need each user to be member of at least one group in order to map it to a Talentech permission group.
Users
Holds the following core user data
ExternalId - Customer owned user Id
User name - An email is always expected
Name - given name and family name in two separate properties
Active - For a new user true is expected
The SCIM standard supports the definition of custom extensions. Talentech has implemented a unique SCIM extension for each of its product that needs it. These extensions are used to transmit product-specific data required to fully provision a user account within the respective product.
Example of product specific data:
The user’s role in the product
The organisation unit(s) the user belongs to
Note that it differs between between the products what data they require.
For a detailed specification of available SCIM extensions see the
API Documentation: POST Users
(Look for the Examples drop down where example payloads for each product can be viewed)
Groups
The group membership is used to grant access to different features withing the Talentech echo system. Examples are
Access to a Talentech products like Webcruiter and Boarding
Administrator access to user management
Note that detailed user permissions based on product-specific roles are often governed by each product's SCIM extension, rather than by group membership. However, group membership still governs access to the product itself.
Group mapping
Groups can be named however is most convenient for the customer.
The group name must be mapped to a Talentech group as part of the SCIM integration setup process. This mapping is handled by the Talentech implementation team.
How to get started
If you plan to create a customized integration with the Talentech SCIM API, you should contact the Talentech implementation team.
However, reading this documentation will help you get started and prepare for the integration process.
Preparation steps
Read documentation above
It is important to understand the concepts explained above under Users and Groups.Ensure you're familiar with the SCIM extension data that may be required to fully provision user accounts in your Talentech product(s). It's essential that your data source has access to all necessary user attributes invluding the extension data.
Agree on the group mapping
This depends on which Talentech features/product your synced users will use. Discuss with implementation team.Get an API Client
Talentech implementation team will set one up for you.
Creating the technical integration
Below, you'll find an overview of common use cases and how to implement them. Be sure to read this in conjunction with the REST API documentation to get all the details you need
Create a group for users that should be provisioned to a specific Talentech feature/product
Create the group with your preferred name by calling endpoint
POST /GroupsAsk Talentech implementation team to map group to the internal Talentech group representing the feature/product.
Provision a new user to a product that requires additional SCIM extension data
Send user including SCIM extension data by calling endpoint
POST /UsersOptionally - store the identifier found in the response of the POST operation. It can be used for future operations on the user.
Add user to the product specific group by calling endpoint
PATCH /Groups/{identifier}with the operation specifier"op": "Add"
Example json for the patch requests can be found in API docs
Fetch a user
Option 1 - Using the Talentech SCIM identifier
GET /Users/{identifier}
Note that the identifier is the SCIM API specific identifier returned when a new user is posted
Option 2 - Using email
GET /Users/?filter=username+eq+{email}
In Talentech SCIM API username is always an email
Option 3 - Using externalId
GET /Users/?filter=externalId+eq+{externalid}
ExternalId is owned by integrating partner and can be any string
Note: Only users that has previously been created using the Talentech SCIM API can be fetched. Users that has been created further down the Talentech piepeline will not appear in the SCIM API. For example users created manually within a specific product or in Talentech user management will not show up in the SCIM API.
Deprovision a user that should no longer have access
Option 1 - When the Talentech identifier is available
Remove the user by calling
DELETE /Users/{identifier}. Note that the identifier is the Talentech identifier (GUID). It was included in the respons when the user was created.
Option 2 - When the Talentech identifier is NOT available
Find the right user by calling endpoint with an additional filter parameter
GET /Users/?filter=username+eq+{email}
orGET /Users/?filter=externalId+eq+{externalid}
The user returned will contain the Talentech identifier (GUID). In the payload the property is just namedidRemove the user by calling
DELETE /Users/{identifier}. using theidfrom step 1 as identifier
Update product specific data by updating the SCIM extension
Fetch the user (see use case above) to get the Talentech SCIM Identifier
Call
PATCH /Users/{identifier}
Example json for the patch requests can be found in API docs