esup-multi

Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

Connecteur appelé par le module cards card. Il doit retourner la liste des cartes dématérialisées à afficher pour un utilisateur donné.

Paramètres d'appels

URL en méthode GET :

Bloc de code
<host>/<uri>/<username>

...

Pas de paramètres ou headers particuliers

Format de retour

Format attendu

Bloc de code
{
	 "lastname": String,
	"firstname": String,
	"birthdate": String,
	"gender": String,
	"affiliation": String,
	"photo": String,
	"ine": String,
	"errors": [String],
	"cards": {
		"studentCard": {
			string;
  "firstname": string;
  "gender?": string;
  "title": String,
            "subtitlestring;
  "subtitle?": String,
            "endDatestring;
  "ine?": Number,
          string;
  "idNumberphoto": String,string;
            "csn": String,
            "qrCode": {
            	"type": String,
            	"value": String
            }
		},
		"euStudentCard": {
            "title": String,
            "subtitle": String,
            "endDate": Number,
            "idNumber": String, 
            "ecsn": Number,
            "euid": Number,
            "qrCode": {
            	"type": String,
            	"value": String
            }
        },
        "staffCard": {
            "title": String,
            "subtitle": String,
            "endDate": Number,
            "idNumber": String,
            "csn": String,
            "qrCode": {
            	"type": String,
            	"value": String
            }
        }
	}	
}"affiliation": string;
  "idNumber": string;
  "endDate": number;
  "qrCode?": {
    "type:" string;
    "value": string;
  };
  "errors": string[];
}

Les données à la racine seront les données communes à chaque carte :

  • lastname : nom de l’utilisateur

  • firstname : prénom de l’utilisateur

  • birthdate gender (nullable) : date de naissance genre de l’utilisateurgender (nullable) : genre de l’utilisateur

  • titlte : titre du document
  • affiliation : type d’utilisateur (student | staff)

  • photo : photo de l’utilisateur encodée en base64

  • ine (nullable) : code INE de l’utilisateur (dans le cas où l’utilisateur est un étudiant)

...

Enfin, à chaque type de carte devra correspondre un template SVG. Par exemple : Pour l’Université de Lorraine, nous avons identifié 3 types de carte différents (soit 3 templates SVG) : studentCard, euStudentCard et staffCard. ???

Avertissement
titleLimite

On ne peut 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 :

...

Remarque

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é

...

Info

L’application catche 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

Bloc de code
{
    "lastname": "Didier",
    "firstname": "Céline",
    "gender": null,
    "affiliation": "staff",
    "ine": null,
    "errors": [],
    "photo": "data:image/jpeg;base64,/9j/4pleindecaracteres"
	"cards": {
        "staffCard": {
            "title": "Carte Professionnelle",
            "subtitle": null,
            "endDate": "2024",
            "idNumber": "UL0000123456",
            "csn": "0A0A0A0A0A0A",
            "qrCode": {
                "type": "text",
                "value": "00000@ul"
            }
        }
    }
}

...