Utilisation de l'API

Le contrôle d'accès

L'Authentification / autorisation à l'application web SISERI repose sur la mise en œuvre de OpenIDConnect. Ce dernier est un protocole d'authentification basé sur le OAuth 2.0, lui-même étant un protocole de délégation d'accès utilisé typiquement pour contrôler l'accès à des API REST.

Le fournisseur d'identité supporte OpenID Connect

​Diagramme 1 : diagramme de séquence authentification (OIDC)​

La première étape consiste à demander l'autorisation pour accéder à l'application SISERI via une authentification avec login et mot de passe (Conformément au protocole OIDC) :

Demande d'authentification :

Paramètres

Name Type Required Valeur Description
client_id String true siseri-front  
username String true {login/email}  
password String true {mot de passe}  
grant_type String true password  

Réponse

Code de retour Description Schema
200 Vous êtes connecté access_token
401 Couple identifiant/mot de passe invalide No Content

Appel de l'API SISERI à l'aide d'un token

L'appel à l'API est documenté dans le swagger https://siseri.irsn.fr/siseri/swagger-ui/index.html

Diagramme 2 : diagramme d'architecture des interfaces asynchrones d'import​

1. Authentification : 

2. Récupération du token OAuth2.0 : à partir de la réponse de l'authentification et à mettre dans chaque appel à un endpoint.

3. Appels à un Endpoint :

Liste complète des endpoints à disposition : https://siseri.irsn.fr/siseri/swagger-ui/index.html

Par exemple :

  • Endpoint travailleurs : POST / URI « api/import/travailleur/v1/import »

    Cet endpoint retourne un numéro de série « uuid ».


4. Récupération de l’identifiant unique de la requête d’import « uuid » :

On devra le récupérer à partir de la réponse.
Par abus de langage, on a utilisé aussi le terme « idAppel » pour l’identifiant unique « uuid ».


5.Consulter l'état d'avancement :

par exemple : 

  • Endpoint travailleurs : GET / URI « api/import/travailleur/v1/status/{uuid} »

6. Récupérer le rapport d'exécution

par exemple : 

  • Endpoint travailleurs : POST / URI « /api/import/travailleur/v1/rapport/execution »