Skip to content

Tools4everBV/HelloID-Conn-Prov-Target-Topicus-Somtoday-ConnectAPI-Student-readme

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

HelloID-Conn-Prov-Target-Somtoday-Student

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.

Table of contents

Introduction

HelloID-Conn-Prov-Target-Somtoday-Student is a target connector that integrates with Somtoday-Student, a system offering REST APIs for programmatic data interaction. This connector is responsible for creating student accounts (referred to as leerlingen) within Somtoday. However, the creation of student records is out of scope. Therefore, a student (leerling) must already exist in Somtoday before an account can be created.

Getting started

Connection settings

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
Instelling The name of the organization (instelling or schoolnaam) in Somtoday Yes
Environment The somtoday environment you wish to connect to Yes
UseConnectorProxy The URL to the API Yes

Warning

The proxy requires different credentials. Make sure to configure the appropriate credentials for the Tool4ever connector proxy in the configuration settings.

Correlation configuration

The correlation configuration is used to specify which properties will be used to match an existing account within Somtoday-Student to a person in HelloID.

Setting Value
Enable correlation True
Person correlation field ExternalId
Account correlation field leerlingNummer

Correlation is based on the leerlingNummer. During the create lifecycle action, all students (leerlingen) are retrieved. If a leerling with the specified leerlingNummer (from correlationValue) is found, the process verifies whether that leerling already has an associated account.

Note

If you also use Somtoday as a source system, you can extend your source person with the leerling uuid. Doing so eliminates the need to retrieve all leerlingen, making that step redundant. This requires modifications in the code to handle the uuid directly instead of fetching all student data.

Warning

The leerlingNummer must be known within HelloID since this its value will be used for correlation.

Tip

For more information on correlation, please refer to our correlation documentation pages.

Available lifecycle actions

The following lifecycle actions are available:

Action Description
create.ps1 Creates a new account.
update.ps1 Updates the attributes of an account.
configuration.json Contains the connection settings and general configuration for the connector.
fieldMapping.json Defines mappings between person fields and target system person account fields.

Field mapping

The field mapping can be imported by using the fieldMapping.json file.

Remarks

Configuration

Environment

Within the configuration, you can choose which environment you are using: test, acceptance, or production. The connector will automatically use the correct base URL to connect to Somtoday based on the selected environment.

Proxy

If you also want to use the Tool4ever connector proxy, make sure to toggle the UseConnectorProxy setting in the configuration.

Warning

The proxy requires different credentials. Make sure to configure the appropriate credentials for the Tool4ever connector proxy in the configuration settings.

Instelling

The Instelling is the name of the organization in Somtoday. An organization (instelling) can have multiple schools. The schoolName is determined by the PrimaryContract.Department.DisplayName.

SchoolName

As mentioned See: Instelling, the schoolName is determined by the PrimaryContract.Department.DisplayName. If, in your environment, the schoolName is stored in a different property, make sure to update the code accordingly.

Note

Accounts will only be created for the schoolName specified.

leerlingNummer

The leerlingNummer is used for correlation wihtin the create lifecycle action. Make sure the leerlingNummer is a available wihtin HelloID for the correlation to function correctly. FOr more information, refer to the correlation section.

AccountReference

Within the create lifecycle action, both the leerlingUUD and schoolUUID will be stored within the accountReference.

Remote Identifier Comparison

The remoteidentifier property is a collection of objects (providerType, domain, identifier). The script checks for missing and newly added identifiers by converting them to JSON strings (compressed for easy comparison). If any identifiers are removed or added, they are stored in propertiesChanged with "Property" set to "remoteidentifier".

If there are changes, the script prepares an update object (changedPropertiesObject).

  • For remoteidentifier, it extracts the first added identifier and stores it as a new object.
  • For other properties, it simply assigns the new value.

Logging

A log message is generated for each updated property.

  • For remoteidentifier, it logs the removed and added values in detail.
  • For other properties, it logs the old and new values.

Development resources

API endpoints

The following endpoints are used by the connector

Endpoint Description
/connect/vestiging/leerling/account Updates and retrieves student account information
/connect/instelling Retrieve instellingen from Somtoday
/connect/vestiging Retrieve vestigingen from Somtoday
/inloggen.{environment}/oauth2/token Retrieve an oAuth token for a specific organization

API documentation

https://editor.swagger.io/?url=https://api.somtoday.nl/rest/v1/connect/documented/openapi

Getting help

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.

HelloID docs

The official HelloID documentation can be found at: https://docs.helloid.com/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •