Important
This repository contains the connector and configuration code only. The implementer is responsible to acquire the connection details such as username, password, certificate, etc. You might even need to sign a contract or agreement with the supplier before implementing this connector. Please contact the client's application manager to coordinate the connector requirements.
HelloID-Conn-Prov-Target-KPN-Mobile-Services is a target connector. KPN-Mobile-Services provides a set of REST API's that allow you to programmatically interact with its data. The HelloID connector uses the API endpoints listed in the table below.
Endpoint | Description |
---|---|
/hierarchy/subscribers | Subscriber account management |
/hierarchy/children | Locations management |
/subscribers/{ID}/delete | Deletes the subscriber |
/hierarchy/subscribers/{ID}/move" | Moves the subscriber to different location |
The following lifecycle actions are available:
Action | Description |
---|---|
create.ps1 | PowerShell create lifecycle action for creating a subscriber and setting the correct costcenter |
delete.ps1 | PowerShell delete lifecycle action for deleting the subscriber |
update.ps1 | PowerShell update lifecycle action for updating the subscriber and moving the subscriber to the correct costcenter |
configuration.json | Default configuration.json |
fieldMapping.json | Default fieldMapping.json |
The correlation configuration is used to specify which properties will be used to match an existing account within KPN-Mobile-Services to a person in HelloID.
To properly setup the correlation:
-
Open the
Correlation
tab. -
Specify the following configuration:
Setting Value Enable correlation True
Person correlation field PersonContext.Person.ExternalId
Account correlation field EmployeeNumber
Note
The possible properties to use with the filter are: FIRSTNAME, LASTNAME, SURNAME_PREFIX, CONTRACTS, DEBTORNAME, FIXED_NUMBER, EMPLOYEE_NUMBER.
If you want to use a different correlation property instead of EMPLOYEE_NUMBER
, you can change the filter in the get request inside the create.ps1
script. Keep in mind that the property needs to be in capital letters. For more information see the API documentation.
Tip
For more information on correlation, please refer to our correlation documentation pages.
The field mapping can be imported by using the fieldMapping.json file.
The following settings are required to connect to the API.
Setting | Description | Mandatory |
---|---|---|
ClientId | The UserName to connect to the API | Yes |
ClientSecret | The Password to connect to the API | Yes |
BaseUrl | The URL to the API | Yes |
- Connection setting
- Costcenter property on the contract needs to have an value
-
The "get children" API request works similarly to the "get subscribers" request, which is why there are two GET calls for subscribers in both the create and update scripts.
-
The body of the "update subscriber" API call requires all properties that are set in the "create" action lifecycle. If any properties are missing in the body, they will reset to their default values (e.g., strings will become empty, and integers will become null).
-
The field mapping uses the "subscriber." for most properties. This is because the body in the create request expects certain properties at the same level as the "subscriber." property, which contains the subscriber model.
-
The property GroupId gets mapped to none in the fieldmapping because this is mapped in the code. The groupId is filled with the value of the internal ID of a cost center. We retrieve the cost center based on the cost center number in the field mapping.
How to setup the connector in HelloID. Are special settings required. Like the primary manager settings for a source connector.
Tip
For more information on how to configure a HelloID PowerShell connector, please refer to our documentation pages.
Tip
If you need help, feel free to ask questions on our forum.
Tip
For more information about the KPN mobile services API, please refer to swagger.
The official HelloID documentation can be found at: https://docs.helloid.com/