Skip to content

Fonctionnement du serveur API

Maël Gangloff edited this page May 23, 2023 · 6 revisions

Schéma global de fonctionnement de l'API Skolengo

Une passerelle API

L'authentification de l'utilisateur s'effectue auprès du SSO de son ENT. Pourtant, les requêtes du client se font sur le serveur api.skolengo.com. On peut donc légitimement penser que ce serveur agit comme une passerelle vers les serveurs API des différents ENT.
Cette hypothèse est corroborée par la présence obligatoire de l'en-tête X-Skolengo-Ems-Code qui indique vers quel ENT la requête doit être redirigée.

Par exemple (pour Mon Bureau Numérique) :

X-Skolengo-Ems-Code: gdest

Exemple d'en-têtes d'une réponse :

content-type: application/vnd.api+json;charset=utf-8
version-ent: 4.12.19.4
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
x-krakend: Version undefined
x-krakend-completed: false

KrakenD est une passerelle API open-source et agit comme une passerelle pour rediriger la requête vers l'API du bon ENT.

Un serveur API pour chaque ENT

Chaque ENT possède sa propre API.
Par exemple, Mon Bureau Numérique possède une API sur le serveur api.monbureaunumerique.fr.
En effectuant manuellement des requêtes sur ce serveur, on peut observer que certaines réponses sont identiques à celles obtenues en effectuant ces requêtes sur api.skolengo.com. Cependant, la présence de l'en-tête X-Skolengo-Ems-Code n'est cette fois-ci plus requise.

Clone this wiki locally