Skip to content

Tools4everBV/HelloID-Conn-Prov-Target-UbeeoATS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HelloID-Conn-Prov-Target-UbeeoATS

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-UbeeoATS is a target connector. UbeeoATS provides a set of REST API's that allow you to programmatically interact with its data.

Getting started

Prerequisites

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
BaseUrl The URL to the API Yes

Correlation configuration

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

Setting Value
Enable correlation No
Person correlation field PersonContext.Person.ExternalId
Account correlation field EmployeeID

Tip

Correlation is handled by Ubeeo. When you send an account to be created with an existing EmployeeID, the existing account will be updated. Correlation - Update

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) Enabled account.
delete.ps1 Removes an existing account or entity.
update.ps1 Updates the attributes of an account.
importEntitlements.ps1 Not applicable - No Get Calls!
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

Correlation - Update

The EmployeeID is used to correlate existing users. If the EmployeeID is found, the current account will be updated. If the EmployeeID is not found, a new account will be created.

User Provisioning Strategy

When the customer wishes to use the user provisioning module, the customer must choose a 'UserName' strategy. Depending on the chosen strategy, some properties in the User JSON will become mandatory.
Please check the API documentation for additional information

OrgUnits / Roles

The connector is designed to use only the primary contract for orgUnits. Although the API supports a list of orgUnits, we currently add only the primary one. If you want to use a list of units, it is possible, but it requires changes to the connector.

EmailAddress - Reboarding

The EmailAddress property is unique in Ubeeo. When an account is disabled, the email address remains in the application. Therefore, if a new person joins the company with the same email address, it cannot be added to the new account in Ubeeo.

Session concurrency

For the Ubeeo ATS connector, set the concurrent sessions setting to 1. The authentication token that HelloID requests is only valid within the current session. If a new token is requested in a parallel process, any existing token becomes invalid. This can lead to authentication errors or failed actions. Setting the session concurrency to 1 ensures that only one action is executed at a time, preventing token invalidation and avoiding errors.

Connector limits - No Get Call

No GET Endpoint

The API does not support a GET request to retrieve account details.

No Compare

There is no comparison in the update script, so a HelloID update trigger always updates the Ubeeo account.

No Enable/Disable action

There is no enable/disable call because the disabled state can be overridden by an update action. So, when an update is performed on a disabled account, the account will be automatically enabled. Therefore, the 'disable' call is performed in the delete script.

No Import Entitlements

There is no import entitlements script because there is no API available to retrieve users.

IP Whitelisting

Please note that Ubeeo will also need to whitelist the IP addresses of the server(s) that will consume the API. Without whitelisting the addresses, the consuming IP address will be blacklisted when calling an endpoint too many times.

API

The API returns an HTML error page when a 401 or 415 error occurs. The connector handles 401 errors and returns a custom error message when they occur. A 415 error only happens if the Content-Type is incorrect, which is hardcoded, so this error should not occur.

Required request body is missing

The error message Required request body is missing is not very clear. For example, if orgUnits is sent as a string instead of an array, or if the body contains incorrectly formatted JSON, the error is returned.

Development resources

API endpoints

The following endpoints are used by the connector

Endpoint Description
/api/oauth/token Retrieve Authorization Token
/api/users Retrieve user information
/api/users/:id Disables an user

API documentation

api-docs.ubeeo.nl

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

Ubeeo ATS - Target

Topics

Resources

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •