Menu
1. Groupes d'utilisateurs
1.1. GroupCategory
GET /api/group_categories
Description :
Récupère un ensemble de données concernant l’ensemble des catégories de groupes.
Paramètres d’entrée :
page (integer) : 1 (valeur par défaut)
Réponse :
{
...
"hydra:member": [
{
"@id": "string", // Id de la catégorie
"@type": "string", // Type de l'élément (=groupCategory)
"name": "string", // Nom de la catégorie
"alias": "string", // Alias de la catégorie
"color": "string", // Couleur de la catégorie
"groupsCount": 0 // Nombre de groupes
}
],
...
}
POST /api/group_categories
Description :
Créer une nouvelle catégorie de groupe.
Paramètres d’entrée :
Aucune donnée n’est requise.
Corps de la requête :
{
"name": "string", // Nom de la catégorie
"color": "string" // Couleur de la catégorie (ex : #8c091e)
}
Réponse :
{
"@context": "string",
"@id": "string", // Id de la catégorie
"@type": "string", // Type de l'élément (GroupCategory)
"id": 0, // Id de la catégorie
"name": "string", // Nom de la catégorie
"alias": "string", // Alias de la catégorie
"color": "string", // Couleur de la catégorie
"groupsCount": 0 // Nombre de groupe présents dans cette catégorie
}
GET /api/group_categories/{id}
Description :
Récupère un ensemble de données liées à une catégorie de groupe.
Paramètres d’entrée:
Id (string) : Identifiant de la catégorie de groupe.
page (integer) : 1 (valeur par défaut)
Réponse :
{
"@context": "string",
"@id": "string", // Id de la catégorie
"@type": "string", // Type l'élément (=GroupCategory)
"name": "string", // Nom de la catégorie de groupe
"alias": "string", // Alias de la catégorie de groupe
"color": "string", // Couleur de la catégorie de groupe
"groupsCount": 0 // Nombre de groupe présents dans cette catégorie
}
PUT /api/group_categories/{id}
Description :
Met à jour un, ou plusieurs, élément choisi d’une catégorie de groupe.
Paramètres d’entrée :
Id (string) : Identifiant de la catégorie de groupe.
Corps de la requête :
{
"name": "string", // Nom de la catégorie
"color": "string" // Couleur de la catégorie (ex : #8c091e)
}
Réponse :
{
"@context": "string",
"@id": "string", // Id de la catégorie
"@type": "string", // Type de l'élément (=GroupCategory)
"id": 0, // Id de la catégorie
"name": "string", // Nom de la catégorie
"alias": "string", // Alias de la catégorie
"color": "string", // Couleur de la catégorie
"groupsCount": 0 // Nombre de groupe présents dans cette catégorie
}
1.2. Group
GET /api/groups
Description :
Récupère un ensemble de données lié aux groupes présents sur la plateforme.
Paramètres d’entrée :
members (string) : Chaine de caractères contenu dans l’identifiant de l’utilisateur
members[] (array[string]) : Tableau des identifiants
name (string) : Chaine de caractères contenu dans le nom du/des groupes
alias (string) : Alias exact du groupe
alias[] (array[string]) : Tableau des alias exacts des groupes
externalId (string) : Chaine de caractère contenu dans le matricule de l’utilisateur
externalId[] (array[string]) : Tableau des matricules
groupCategory (string) : Chaine de caractères contenu dans l’identifiant complet de la catégorie de groupes (= »/api/group_categories/3584″)
groupCategory[] (array[string]) : Tableau des identifiants des catégories de groupes
page (integer) : 1 (valeur par défaut)
Réponse :
{
...
"hydra:member": [
{
"@id": "string", // Id du groupe
"@type": "string", // Type de l'élément (=Group)
"name": "string", // Nom du groupe
"alias": "string", // Alias du groupe
"archived": true, // État d'archivage
"externalId": "string",
"groupCategory": "string", // Catégorie du groupe
"membersCount": 0, // Nombre de membres
"strictlyApplyAffiliateRules": true // Mode de gestion des automates du groupe
}
],
...
}
POST /api/groups
Description :
Créer une nouvelle ressource groupe sur une plateforme.
Paramètres d’entrée:
Aucune donnée n’est requise.
Corps de la requête :
{
"name": "string", // Nom du groupe
"groupCategory": "string" //Identifiant de la catégorie ( ex : "/api/group_categories/3757")
}
Réponse :
{
"@context": "string",
"@id": "string", // Id du groupe
"@type": "string", // Type de l'élément (=Group)
"name": "string", // Nom du groupe
"alias": "string", // Alias de la route
"archived": true, // État d'archivage
"externalId": "string", // UUID du groupe Azure
"groupCategory": "string", // Appartenance à une catégorie
"membersCount": 0, // Nombre de personne dans le groupe
"strictlyApplyAffiliateRules": true // Mode de gestion des automates du groupe
}
GET /api/groups/{id}
Description :
Récupère un ensemble de données lié à un groupe présent sur une plateforme.
Paramètres d’entrée :
Id (string) : Identifiant du groupe.
Réponse :
{
"@context": "string",
"@id": "string", // Id du groupe
"@type": "string", // Type de l'élément (=Group)
"name": "string", // Nom du groupe
"alias": "string", // Alias du groupe
"externalId" : "string", // UUID du groupe Azure
"archived": true, // État d'archivage
"groupCategory": "string", // Id de la catégorie de groupe
"membersCount": 0, // Nombre de membre du groupe
"members": [
"string" // Id des membres
],
...
}
PUT /api/groups/{id}
Description :
Met à jour un ensemble de données lié à un groupe présent sur une plateforme.
Paramètres d’entrée :
Id (string) : Identifiant du groupe.
Corps de la requête :
{
"name": "string", // Nom du groupe
"archived": true, // État d'archivage
"groupCategory": "string" //Identifiant de la catégorie ( ex : "/api/group_categories/3757")
}
Réponse :
{
"@context": "string",
"@id": "string", // Id du groupe
"@type": "string", // Type de l'élément (=Group)
"name": "string", // Nom du groupe
"alias": "string", // Alias du groupe
"archived": true, // État d'archivage
"groupCategory": "string", // Catégorie du groupe
"membersCount": 0, // Nombre de membres
"members": [
"string" // Id des membres
],
"strictlyApplyAffiliateRules": true // Mode de gestion des automates du groupe
}
PATCH /api/groups/{id}
Description :
Met à jour le mode opératoire (Strict / non strict) de la gestion des automates du groupe.
Paramètres d’entrée :
Id (string) : Identifiant du groupe.
Corps de la requête :
{
"strictlyApplyAffiliateRules": true // Mode de gestion des automates du groupe
}
Réponse :
{
"@context": "string",
"@id": "string", // Id du groupe
"@type": "string", // Type de l'élément (=Group)
"name": "string", // Nom du groupe
"alias": "string", // Alias du groupe
"archived": true, // État d'archivage
"groupCategory": "string", // Catégorie du groupe
"membersCount": 0, // Nombre de membres
"members": [
"string" // Id des membres
],
"strictlyApplyAffiliateRules": true // Mode de gestion des automates du groupe
}
1.3. GroupSubscriptionRule
GET /api/group_subscription_rules
Description :
Récupère l’ensemble des règles configurées pour les automates d’un ou plusieurs groupes.
Paramètres d’entrée :
group (string) : Chaine de caractères contenu dans l’identifiant complet du groupe (= »/api/groups/28743″)
group[] (array[string]) : Tableau des identifiants des groupes
page (integer) : 1 (valeur par défaut)
Réponse :
{
...
"hydra:member": [
{
"@context": "string",
"@id": "string", // Id de l'élément
"@type": "string", // Type de l'élément (=GroupSubscriptionRule)
"group": "string", // Id du groupe
"rules": [
{
"@type": "string", // Type d'opérateur
"@name": "string", // Nom du type d'opérateur
"@operator": "string", // Valeur de l'opérateur
"@value": "string" // Valeur à laquelle doit correspondre la règle
}
]
}
],
...
}
POST /api/group_subscription_rules
Description :
Crée une règle de l’automate d’un groupe d’utilisateur.
Paramètres d’entrée :
Aucune donnée n’est requise.
Corps de la requête :
{
"group": "string", // Id du groupe
"rules": [
{
"@type": "string", // Type d'opérateur
"@name": "string", // Nom du type d'opérateur
"@operator": "string", // Valeur de l'opérateur
"@value": "string" // Valeur à laquelle doit correspondre la règle
}
]
}
Réponse :
{
"@context": "string",
"@id": "string", // Id de l'élément
"@type": "string", // Type de l'élément (=GroupSubscriptionRule)
"group": "string", // Id du groupe
"rules": [
{
"@type": "string", // Type d'opérateur
"@name": "string", // Nom du type d'opérateur
"@operator": "string", // Valeur de l'opérateur
"@value": "string" // Valeur à laquelle doit correspondre la règle
}
]
}
GET /api/group_subscription_rules/{id}
Description :
Récupère un ensemble de données lié à une règle de l’automate d’un groupe.
Paramètres d’entrée :
Id (string) : Identifiant de l’élément GroupSubscriptionRule.
Réponse :
{
"@context": "string",
"@id": "string", // Id de l'élément
"@type": "string", // Type de l'élément (=GroupSubscriptionRule)
"group": "string", // Id du groupe
"rules": [
{
"@type": "string", // Type d'opérateur
"@name": "string", // Nom du type d'opérateur
"@operator": "string", // Valeur de l'opérateur
"@value": "string" // Valeur à laquelle doit correspondre la règle
}
]
}
PUT /api/group_subscription_rules/{id}
Description :
Met à jour un ensemble de données d’une règle d’un automate de groupe.
Paramètres :
Id (string) : Identifiant de l’élément GroupSubscriptionRule.
Corps de la requête :
{
"rules": [
{
"@type": "string", // Type d'opérateur
"@name": "string", // Nom du type d'opérateur
"@operator": "string", // Valeur de l'opérateur
"@value": "string" // Valeur à laquelle doit correspondre la règle
}
]
}
Réponse :
{
"@context": "string",
"@id": "string", // Id de l'élément
"@type": "string", // Type de l'élément (=GroupSubscriptionRule)
"group": "string", // Id du groupe
"rules": [
{
"@type": "string", // Type d'opérateur
"@name": "string", // Nom du type d'opérateur
"@operator": "string", // Valeur de l'opérateur
"@value": "string" // Valeur à laquelle doit correspondre la règle
}
]
}
DELETE /api/group_subscription_rules/{id}
Description :
Supprime une règle d’un automate de groupe.
Paramètres :
Id (string) : Identifiant de l’élément GroupSubscriptionRule.
Réponse :
Code 204 : Règle supprimée.
Code 404 : Ressource non trouvée.
2. Utilisateurs
2.1. User
GET /api/users
Description :
Récupère un ensemble de données sur les utilisateurs d’une plateforme.
Paramètres :
externalId (string) : Matricule
externalId[] (array[string]) : Tableau des matricules des utilisateurs
username (string) : Identifiant de connexion exact de l’utilisateur
username[] (array[string]) : Tableau des identifiants de connexion exacts des utilisateurs
email (string) : Adresse mail exacte de l’utilisateur
email[] (array[string]) : Tableau des adresses mail exactes des utilisateurs
firstName (string) : Chaine de caractères contenu dans le/les prénoms de/des utilisateurs
lastName (string) : Chaine de caractères contenu dans le/les noms de/des utilisateurs
groups (string) : Chaine de caractères contenu dans l’identifiant complet du groupe (= »/api/groups/28743″)
groups[] (array[string]) : Tableau des identifiants des groupes
page (integer) : 1 (valeur par défaut)
Réponse :
{
...
"hydra:member": [
{
"@id": "string", // Id de l'utilisateur
"@type": "string", // Type de l'élément (=User)
"username": "string", // Identifiant de l'utilisateur
"email": "string", // Email de l'utilisateur
"loginType": 0, // Type de compte (ex : Local, Azure, ...)
"enabled": true, // Activitation ou non du compte
"lastLogin": "2023-08-21T14:56:03.151Z", // Dernière date de connexion
"externalId": "string", // Matricule
"firstName": "string", // Prénom
"lastName": "string", // Nom
"groups": [
"string" // Id des groupes auxquels l'utilisateur est inscrit
]
}
],
...
}
GET /api/users/{id}
Description :
Récupère un ensemble de données d’un utilisateur.
Paramètres :
Id (string) : Identifiant de l’utilisateur.
Réponse :
{
"@context": "string",
"@id": "string", // ID de l'utilisateur
"@type": "string", // Type de l'élément (=User)
"username": "string", // Identifiant de l'utilisateur
"email": "string", // Email de l'utilisateur
"loginType": 0, // Type de compte (ex : Local, Azure, ...) (*)
"enabled": true, // Activitation ou non du compte
"lastLogin": "2023-08-21T14:56:03.151Z", // dernière date de connexion
"externalId": "string", // Matricule
"firstName": "string", // Prénom
"lastName": "string", // Nom
"lastIp": "string", // Dernière adresse IP de connexion
"userProfile": {
"address": "string", // Adresse
"homeNumber": "string", // Téléphone fixe
"mobileNumber": "string", // Téléphone portable
"privateEmail": "string", // Email de contact
"hasExtraTime": true, // Temps additionnel
"birthDate": "2023-08-21T14:57:18.926Z" // Date d'anniversaire
},
"groups": [
"string" // Id des groupes auxquels l'utilisateur est inscrit
]
}
* LoginType :
- 1 : Compte CAS
- 2 : Compte local
- 3 : Compte OAUTH
- 4 : Compte JWT
- 5 : Compte LTI
- 6 : Compte SAML
PATCH /api/users/{id}
Description :
Met à jour le statut (actif / inactif) d’un compte utilisateur.
Paramètres :
Id (string) : Identifiant de l’utilisateur.
Corps de la requête :
{
"enabled": true // Statut du compte
}
Réponse :
{
"@context": "string", // Nom de la route
"@id": "string", // ID de la route
"@type": "string", // Type de la route
"enabled": true // Statut du compte
}
PATCH /api/users/{id}/groups
Description :
Met à jour l’appartenance à un, ou plusieurs, groupe d’un utilisateur.
Il est important de noter que cette route désinscrit l’utilisateur des groupes auxquels il appartient afin de l’inscrire dans ceux fournis dans le corps de la requête.
Paramètres :
Id (string) : Identifiant de l’utilisateur.
Corps de la requête :
{
"groups": [
"/api/groups/ID_GROUP_1", // Id complet du groupe
"/api/groups/ID_GROUP_2"
]
}
Réponse :
{
"@context": "string",
"@id": "string", // Id de l'utilisateur
"@type": "string", // Type de l'élément (=User)
"groups": [
"string" // Liste des groupes auxquels l'utilisateur est inscrit
]
}
GET /api/users/{id}/login_traces
Description :
Récupère les données concernant les traces de connexion de l’utilisateur.
Paramètres :
Id (string) : Identifiant de l’utilisateur
loginDate[before] (string) : Dates inférieures ou égales pour lesquelles il existe des traces de connexion (= »2023-09-20T15:55:59+00:00″)
loginDate[strictly_before] (string) : Dates strictement inférieures pour lesquelles il existe des traces de connexion (= »2023-09-20T15:55:59+00:00″)
loginDate[after] (string) : Dates supérieures ou égales pour lesquelles il existe des traces de connexion (= »2023-09-20T15:55:59+00:00″)
loginDate[strictly_after] (string) : Dates strictement supérieures pour lesquelles il existe des traces de connexion (= »2023-09-20T15:55:59+00:00″)
page (integer) : 1 (valeur par défaut)
Réponse :
{
...
"hydra:member": [
{
"@id": "string", // Id complet de la trace de connexion (ex : "/api/login_traces/31441409")
"@type": "string", // Type de l'élément (=LoginTrace)
"id": 0, // Id numérique de la trace de connexion (ex : 31441409)
"user": "string", // Id de l'utilisateur
"loginDate": "2023-08-21T15:00:13.290Z", // Date et heure de connexion
"ip": "string", // Adresse IP de connexion
"userAgent": "string" // Informations sur le matériel utilisé
}
],
...
}
GET /api/users/{id}/participants
Description :
Récupère les données concernant les autoévaluations auxquels l’utilisateur .
Paramètres :
id (string) : Identifiant de l’utilisateur
lastCorrectionDate[before] (string) : Dates inférieures ou égales des dernières générations de copies corrigées (= »2023-09-20T15:55:59+00:00″)
lastCorrectionDate[strictly_before] (string) : Dates strictement inférieures des dernières générations de copies corrigées (= »2023-09-20T15:55:59+00:00″)
lastCorrectionDate[after] (string) : Dates supérieures ou égales des dernières générations de copies corrigées (= »2023-09-20T15:55:59+00:00″)
lastCorrectionDate[strictly_after] (string) : Dates strictement supérieures ou égales des dernières générations de copies corrigées (= »2023-09-20T15:55:59+00:00″)
page (integer) : 1 (valeur par défaut)
itemsPerPage (integer) : 15 (valeur par défaut)
Réponse :
{
...
"hydra:member": [
{
"@id": "string", // Id de l'élément AssessmentParticipant
"@type": "string", // Type de l'élément (=AssessmentParticipant)
"assessment": {
"@id": "string", // Id de l'élément SelfAssessment
"@type": "string" // Type de l'élément (=SelfAssessment)
},
"lastScore": null, // Dernier scrore obtenu
"lastCorrectionDate": null // Date de la dernière génération de la copie corrigée
},
...
}
2.2. CustomUserAttributes
GET /api/custom_user_attributes
Description :
Récupère l’ensemble des attributs supplémentaires configurés. Il s’agit de champs supplémentaires (ajoutés sur demande par THEIA) disponibles au niveau des comptes utilisateurs.
Paramètres :
page (integer) : 1 (valeur par défaut)
Réponse :
{
...
"hydra:member": [
{
"@id": "string", // Id de l'attribut
"@type": "string", // Type de l'élément (=CustomUserAttributes)
"name": "string" // Nom de l'attribut
}
],
...
}
GET /api/custom_user_attributes/{id}
Description :
Récupère un ensemble de données d’un attribut supplémentaire.
Paramètres :
Id (string) : Identifiant de l’attribut.
Réponse :
{
"@context": "string",
"@id": "string", // Id de l'attribut
"@type": "string", // Type de l'élément (=CustomUserAttributes)
"name": "string" // Nom de l'attribut
}