ℹ️ Information |
---|
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-GGZ-Ecademy is a target connector. GGZ-Ecademy provides a set of REST API's that allow you to programmatically interact with its data.
The following lifecycle events are available:
Event | Description | Notes |
---|---|---|
create.ps1 | Create (or update) and correlate an Account | - |
update.ps1 | Update the Account | - |
delete.ps1 | Delete the Account | - |
enable.ps1 | Not available / Not supported by the API | - |
disable.ps1 | Not available / Not supported by the API | - |
Permissions.ps1 | Not available / Not supported by the API | - |
The following settings are required to connect to the API.
Setting | Description | Mandatory |
---|---|---|
ClientId | The ClientId to connect to the API | Yes |
ClientSecret | The ClientSecret to connect to the API | Yes |
BaseUrl | The URL to the API | Yes |
Organization [Org] | The company's organization code | Yes |
- The credentials to authenticate the API connection (see: Connection Settings)
- Due to some uncertainties regarding the design of the connector, some assumptions were made, upon which the account object is based. This means that the current code may not work directly in every environment. The actual design will have to be determined during the first implementation.
- Presently, ExternalEngagements are linked to a primary contract, allowing each account to have only one ExternalEngagement. However, the API has the capability to support multiple ExternalEngagements if required. If necessary, the existing code can be modified accordingly.
- The current ExternalEngagements for a GGZ-Ecademy user account remain unaltered, with updates being solely applied to the ExternalEngagements that are matched with the ExternalEngagements in the account object.
- The same applies for the traits within the ExternalEngagements. The connector only updates existing or adding new Traits, while the remaining traits shall be retained without any modification.
- The externalId associated with an ExternalEngagement is stored in the account reference, which is then utilized to disable the previous engagement and set its end date after a change of the primary contract.
- It is not possible to set or update the Username attribute of a GGZ-Ecademy account.
- The API's datetime values caused inconsistent comparisons, so a function
Format-GGZDateObject
was added to extract only the date portion for property comparison, though regional differences between the original code and your implementation may necessitate adjustments to this function. - When updating an existing trait, it is not possible for its values to be null. Attempting to do so will result in an exception being thrown. To clear a trait, you should use an empty string instead.
A new functionality is the possibility to update the account in the target system during the correlation process. By default, this behavior is disabled. Meaning, the account will only be created or correlated.
You can change this behavior in the create.ps1
by setting the boolean $updatePerson
to the value of $true
.
Be aware that this might have unexpected implications. The Update trigger in the
create.ps1
file performs a basic update and does not take into consideration the current account's pre-existing traits and engagements. Consequently, any pre-existing properties will be replaced.
There is no comprehensive configuration required.
For more information on how to configure a HelloID PowerShell connector, please refer to our documentation pages
More information about the GGZ-Ecademy API can be found here: API Docs
If you need help, feel free to ask questions on our forum
The official HelloID documentation can be found at: https://docs.helloid.com/