L'API B12 est hébergée à https://b12.apprentx.rocks/api. Celle-ci requiert un jeton d'accès disponible sur demande.
L'API de provisionnement de B12 implémente la spécification SCIM :
https://www.rfc-editor.org/rfc/rfc7644
Attributs SCIM B12
Le mappage d'attributs SCIM définit les attributs qui se synchronisent entre un fournisseur d'identité (IdP) et B12 lorsque des utilisateurs sont provisionnés et mis-à-jour.
Ci-dessous se trouve la liste des attributs SCIM que B12 supporte.
Core
Chaque ressource SCIM inclut ces attributs communs:
| Attribut SCIM | Description | Type | Requis? | Défaut |
| id | L'identifiant B12 | String | Oui | |
| schemas | Array | Oui | ||
| schemas[] | String | Oui | ||
| meta | Object | Oui | ||
| meta.resourceType | String | Oui | ||
| meta.created | Datetime | Oui | ||
| meta.lastModified | Datetime | Oui | ||
| meta.location | String | Non | ||
| meta.version | String | Non |
https://www.rfc-editor.org/rfc/rfc7643#section-3.1
User
| Attribut SCIM | Description | Type | Requis? | Défaut |
| userName | Sous format email | String | Oui | |
| name | Object | Oui | ||
| name.givenName | Prénom de l'utilisateur | String | Oui | |
| name.familyName | Nom de famille de l'utilisateur | String | Oui | |
| active | Boolean | Non | true | |
| emails | Array | Oui | ||
| emails[].value | String | Oui | ||
| preferredLanguage | B12 ne supporte que le français et l'anglais | String | Non | "fr-CA" |
| timezone | Sous le format IANA ex.: "Europe/Paris" | String | Non | "America/Toronto" |
| roles | Array | Non | [{ value: "LEARNER" }] | |
| roles[].value | Valeurs possibles: LEARNER, MANAGER, TRAINER, DESIGNER, ADMIN | String | Oui |
https://www.rfc-editor.org/rfc/rfc7643#section-4.1
User extension
Des attributs personnalisés peuvent être mappé depuis un IdP vers des champs personnalisés de B12. Les attributs SCIM sont sous le format suivant:
urn:ietf:params:scim:schemas:extension:customb12:2.0:User:[B12_USER_FIELD_ID]| Attribut SCIM | Description | Type | Requis? | Défaut |
|
urn:ietf:params: scim:schemas: extension:customb12: 2.0:User |
Objet | Non | ||
|
urn:ietf:params: scim:schemas: extension:customb12: 2.0:User:[B12_USER_FIELD_ID] |
String | Non |
Endpoints
GET /api/scim/v2/Users
Pour aller chercher un ensemble d'utilisateur correspondant à un filtre.
GET /api/scim/v2/Users/:userId
Pour aller chercher un utilisateur selon son id.
POST /api/scim/v2/Users
Pour créer un utilisateur.
PATCH /api/scim/v2/Users/:userId
Pour modifier un utilisateur selon son id.
DELETE /api/scim/v2/Users/:userId
Pour supprimer (desactiver) un utilisateur selon son id.