Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tools4everbv/helloid-conn-prov-target-procademy
Procademy - Target
https://github.com/tools4everbv/helloid-conn-prov-target-procademy
edu lms provisioning
Last synced: about 18 hours ago
JSON representation
Procademy - Target
- Host: GitHub
- URL: https://github.com/tools4everbv/helloid-conn-prov-target-procademy
- Owner: Tools4everBV
- Created: 2022-12-12T10:59:47.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-01-15T14:22:11.000Z (12 months ago)
- Last Synced: 2024-11-10T22:36:27.580Z (about 2 months ago)
- Topics: edu, lms, provisioning
- Language: PowerShell
- Homepage:
- Size: 28.3 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# HelloID-Conn-Prov-Target-Procademy
| :warning: Warning |
|:---------------------------|
| Note that this connector is "a work in progress" and therefore not ready to use in your production environment. || :information_source: 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. |
## Table of contents
- [HelloID-Conn-Prov-Target-Procademy](#helloid-conn-prov-target-procademy)
- [Table of contents](#table-of-contents)
- [Introduction](#introduction)
- [Getting started](#getting-started)
- [Connection settings](#connection-settings)
- [Prerequisites](#prerequisites)
- [Remarks](#remarks)
- [Account verification](#account-verification)
- [Update account](#update-account)
- [`$aRef` not being used](#aref-not-being-used)
- [Entitlements](#entitlements)
- [channel\_id](#channel_id)
- [Correlation based on `procademy_user_id`](#correlation-based-on-procademy_user_id)
- [Error handling](#error-handling)
- [Setup the connector](#setup-the-connector)
- [Getting help](#getting-help)
- [HelloID docs](#helloid-docs)## Introduction
_HelloID-Conn-Prov-Target-Procademy_ is a _target_ connector. Procademy 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 |
| ------------ | ----------- |
| [api/v2/users/store/bulk | This endpoint is used to create one (or multiple) accounts. |
| api/v2/users/deactivate | This endpoint is used to deactivate one (or multiple) accounts |The following lifecycle events are available:
| Event | Description | Notes |
|--- |--- |--- |
| create.ps1 | Create (or update) and correlate an account | Verification to check if the account exists is not available. See [account verification](#Account-verification) |
| update.ps1 | Update the Account | Update (or create) and correlate an account | Verification to check if the account exists is not available. See [account verification](#Account-verification) |
| disable.ps1 | Disable the Account | Deactivates the account |## Getting started
### Connection settings
The following settings are required to connect to the API.
| Setting | Description| Mandatory |
| ------------ | -----------| ----------- |
| AuthenticationKey | The AuthenticationKey to connect to the Procademy API | Yes |
| BaseUrl | The URL to the Procademy API | Yes |### Prerequisites
None.
### Remarks
Procademy is a somewhat different API in the sense that we cannot retrieve users from the Procademy API and the verification if the account must be created or updated is being done within Procademy itself. This has some implications on the way the connector works.
#### Account verification
An API call to retrieve a user account is not available. When a user account is created, (send to the 'bulk' endpoint) Procademy uses the `external_id` to verify if the user account already exists. If not, the account will be created or otherwise updated.
#### Update account
Normally we offer the possibility to update the account if it already exists. However, since Procademy verifies the account existence internally, we don't know if the account will be created or updated.
As a result, the option to update the account from the configuration settings, is not available and both `create.ps1` and `update.ps1` have a somewhat different look and feel.
#### `$aRef` not being used
Because we cannot retrieve the account from Procademy, the `$aRef` is not being used in this connector.
#### Entitlements
Entitlements (known as 'groupId's) are a part of the `account` object in both the create and update lifecycle events. At this point it is unclear how many groupId's there are and if we can retrieve them from Procademy.
#### channel_id
A user can be created with a property called `channel_id`. At this point its unclear if this is being used. However, users created with this property can only be deactivated using the same channel_id.
#### Correlation based on `procademy_user_id`
The account correlation currently uses the 'procademy_user_id'. The assumption is that this id is also used to deactivate the account.
#### Error handling
The connector is coded without access to a test environment. Therefore, error handling has not been implemented apart from the default error handling behavior. This will need to be adjusted accordingly during implementation.
## Setup the connector
No special setup actions are required.
## Getting help
> _For more information on how to configure a HelloID PowerShell connector, please refer to our [documentation](https://docs.helloid.com/hc/en-us/articles/360012558020-Configure-a-custom-PowerShell-target-system) pages_
> _If you need help, feel free to ask questions on our [forum](https://forum.helloid.com)_
## HelloID docs
The official HelloID documentation can be found at: https://docs.helloid.com/