Connecteur appelé par le module card. Il doit retourner les données de l'utilisateur permettant de lui afficher sa carte de l'établissement de manière dématérialisée.
Paramètres d'appels
URL en méthode GET :
<host>/<uri>/<username>
- host : adresse du serveur
- uri : chemin éventuel vers le service
- username : identifiant (login) de l'utilisateur pour lequel on souhaite les informations, soit l'utilisateur qui se connecte.
Pas de paramètres ou headers particuliers
Format de retour
Format attendu
{
"lastname": string,
"firstname": string,
"birthdate": string,
"gender": string,
"title": string,
"subtitle": string,
"ine": string,
"csn": string,
"photo": string,
"affiliation": string,
"idNumber": string,
"endDate": number,
"qrCode": {
"type": string,
"value": string
},
"errors": []
}
lastname : nom de l’utilisateur
firstname : prénom de l’utilisateur
- birthdate (nullable) : date de naissance de l'utilisateur
gender (nullable) : genre de l’utilisateur
- titlte : titre du document
- subtitle (nullable) : complément du titre
- ine (nullable) : code INE de l’utilisateur (dans le cas où l’utilisateur est un étudiant)
- csn (nullable) : numéro de série de la carte
- photo : photo de l’utilisateur encodée en base64
affiliation : type d’utilisateur (student | staff) - permet d'identifier le template SVG à utiliser
idNumber : identifiant de l'utilisateur au sein de l'établissement
endDate : année de fin de validation de l'inscription en cours
- qrCode (nullable) :
type : type d’action au scan du QRCode (text|url)
value : la valeur du QRCode à générer (texte pour un QR de type text ou une url pour un QR de type url)
NB : Pour le moment on s’en tiendra à seulement 2 types de QRCode simple qui sont text et url. Si un établissement veut mettre en place d’autres types (SMS, mailto, vcard…), il devra adapter le code.
Limite
On ne peut pour le moment pas ajouter de données a afficher dans le SVG.
Cas d'erreur
Codes erreurs
Liste des codes erreurs actuels concernant l’API des cartes dématérialisées :
NO_PHOTO : l’utilisateur ne peut pas disposer d’une carte car il n’a pas fourni de photo (à la scolarité de la formation pour un étudiant / à la RH pour les personnels)
NO_ACTIVE_CARD : l’utilisateur ne dispose pas d’une carte active à l’Université
UNPAID_FEES : l'étudiant (ou doctorant) ne voit pas sa carte dématérialisée s’afficher car il n’a pas encore payé les droits d’inscription pour l’année en cours
Ces codes erreurs sont actuellement retournés avec un code HTTP 200 car il ne s’agit pas d’une erreur au sens propre de l’API mais plutôt d’une indication à l’utilisateur qu’il ne peut pas disposer d’une carte dématérialisée dans l’application mobile.
Autres erreurs
user_not_found (code 404) : L’utilisateur dont le login est passé en paramètre lors de l’appel n’a pas pu être trouvé dans le SI de l’Université
Exemple :
{
"error": "user_not_found_in_ldap",
"error_description": "L'utilisateur avec pour uidNumber or login 'bidule' n'a pas pu être trouvé dans le LDAP ou est sursitaire"
}
L’application capte donc 2 types d’erreur :
celles dont le code HTTP n’est pas 200
celles pour lesquelles l’attribut errors est renseigné dans la réponse
Exemple
{
"lastname": "Dupont",
"firstname": "Alice",
"gender": null,
"birthdate": "01/01/2000",
"affiliation": "staff",
"ine": null,
"errors": [],
"photo": "data:image/jpeg;base64,/9j/4AA..."
"ine": null,
"title": "Carte professionnelle",
"subtitle": "Enseignant chercheur",
"csn": null,
"endDate": "2026",
"idNumber": "AA1234567890",
"qrCode": {
"type": "text",
"value": "00000@ul"
}
"errors": []
}