From cffab0daeb44837ad861fa230239a68190503d19 Mon Sep 17 00:00:00 2001 From: Dorine Lambinet Date: Wed, 12 Feb 2025 17:13:29 +0100 Subject: [PATCH] =?UTF-8?q?Ajoute=20table=20correspondance=20API=20statut?= =?UTF-8?q?=20=C3=A9tudiant=20boursier?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../migration-api-particulier-v3.md | 105 +++++++++++++++--- 1 file changed, 88 insertions(+), 17 deletions(-) diff --git a/config/blog_posts/api_particulier/migration-api-particulier-v3.md b/config/blog_posts/api_particulier/migration-api-particulier-v3.md index 5943521e8..43d521625 100644 --- a/config/blog_posts/api_particulier/migration-api-particulier-v3.md +++ b/config/blog_posts/api_particulier/migration-api-particulier-v3.md @@ -255,31 +255,102 @@ Sauf quelques cas à la marge dans le cas de la création d'un scope, nous nous

Table de correspondance de chaque API

+ + + + ### API Quotient familial CAF & MSA -**Synthèse de changements** : + +{:.fr-h6} +#### Synthèse de changements : - L'endpoint V.2 est divisé en deux endpoints en V.3, un pour la modalité d'appel par données d'identité, l'autre pour la modalité d'appel FranceConnect ; - Certaines clés sont regroupées sous une clé parente ; - Tous les noms de clés changent au format snake_case, avec un tiret du bas. - La version 1 de l'API ne sera pas migrée dans la V.3. +{:.fr-h6} +#### Évolutions significatives des champs de la payload : + +{:.fr-table} +| **Champ V.2** | **Champ V.3 correspondant** | **Description des changements** | +|-----------------------------------|-------------------------------------|-------------------------------------------------------------------------------------------------| +| `quotientFamilial` | `data.quotient_familial.valeur` | **Regroupement dans une clé parente** `quotient_familial` et **renommage de la clé** `quotient_familial` en `valeur` en V.3. | +| `mois` | `data.quotient_familial.mois` | **Regroupement dans une clé parente** `quotient_familial` en V.3. | +| `annee` | `data.quotient_familial.annee` | **Regroupement dans une clé parente** `quotient_familial` en V.3. | +| `mois` | `data.quotient_familial.mois` | **Regroupement dans une clé parente** `quotient_familial` en V.3. | +| `annee` | `data.quotient_familial.annee` | **Regroupement dans une clé parente** `quotient_familial` en V.3. | +| `regime` | `data.quotient_familial.fournisseur` | **Regroupement dans une clé parente** `quotient_familial` et **renommage de la clé** `regime` en `fournisseur` en V.3. Même si la donnée renvoyée est identique, la clé a été renommée car l'information MSA ou CAF n'indique pas nécessairement le régime de l'allocataire mais simplement le fournisseur du quotient familial. | +| `allocataires[].anneeDateDeNaissance`
`allocataires[].moisDateDeNaissance`
`allocataires[].jourDateDeNaissance`| `data.allocataires[].date_naissance` | **Fusion des trois champs (jour, mois année) dans une même clé** `date_naissance` en V.3. | +| `enfants[].nomUsuel` | `data.enfants[].nom_usage` | **Renommage de clé** : Pas de changement autre que le renommage de `nomUsuel` en `nom_usage` en V.3. Après investigation auprès du fournisseur de donnée, il s'avère que le nom renvoyé est bien le nom d'usage tel que marqué sur l'acte d'état civil. | +| `enfants[].anneeDateDeNaissance`
`enfants[].moisDateDeNaissance`
`enfants[].jourDateDeNaissance`| `data.enfants[].date_naissance`| **Fusion des trois champs (jour, mois année) dans une même clé** `date_naissance` en V.3. | +| `adresse.identite` | `data.adresse.destinataire` | **Renommage de la clé** `identite` en `destinataire` en V.3. | + +### API Statut étudiant + +{:.fr-h6} +#### Synthèse des changements : +- L'endpoint V.2 est divisé en trois endpoints en V.3, un pour la modalité d'appel par données d'identité, l'autre pour la modalité d'appel FranceConnect, un pour l'appel par INE ; +- Afin de faciliter la compréhension de l'API, la clé `inscriptions` a été renommée en `admissions`. En effet, c'est bien la liste des admissions qui est délivrée pour chaque étudiant. Parmi elles, l'étudiant peut être allé jusqu'à l'inscription, qui est alors indiquée par la clé `est_inscrit: true` ; +- Les scopes (droits d'accès) de cette API évoluent, TODO. +- Certaines clés sont regroupées sous une clé parente ; +- Tous les noms de clés changent au format snake_case, avec un tiret du bas. + + +{:.fr-h6} +#### Évolutions significatives des champs de la payload : + +{:.fr-table} +| **Champ V.2** | **Champ V.3 correspondant** | **Description des changements** | +|-----------------------------------|-------------------------------------|-------------------------------------------------------------------------------------------------| +| `nom` | `data.identite.nom_naissance` | **Regroupement dans une clé parente** `identite` et **renommage de clé** `nom` en `nom_naissance` en V.3. | +| `prenom` | `data.identite.prenom` | **Regroupement dans une clé parente** `identite` en V.3. | +| `dateNaissance` | `data.identite.date_naissance` | **Regroupement dans une clé parente** `identite` en V.3. | +| `inscriptions[]` | `data.admissions[]` | **Renommage de clé parente** `inscriptions` en `admissions` en V.3. | +| `inscriptions[].dateDebutInscription` | `data.admissions[].date_debut` | **Renommage de la clé** `dateDebutInscription` en `date_debut` en V.3. | +| `inscriptions[].dateFinInscription` | `data.admissions[].date_fin` | **Renommage de la clé** `dateFinInscription` en `date_fin` en V.3. | +| `inscriptions[].statut` | `data.admissions[].est_inscrit` | **Renommage de la clé et changement de format** : Le champ `statut`, au format "string" en V2 correspond au champ `est_inscrit` en V.3, qui est un "booléen". | +| `inscriptions[].regime` | `data.admissions[].regime_formation.libelle` et `data.admissions[].regime_formation.code` | **Renommage de la clé** `regime` en `regime_formation` qui devient une clé parente distribuant un libellé et un code en V.3. | +| `inscriptions[].codeCommune` | `data.admissions[].code_cog_insee_commune` | **Renommage de la clé** `codeCommune` en `code_cog_insee_commune` en V.3. | +| `inscriptions[].etablissement` | `data.admissions[].etablissement_etudes` | **Renommage de la clé parente** `etablissement` en `etablissement_etudes` en V.3. | + + +### API Statut étudiant boursier + +{:.fr-h6} +#### Synthèse des changements : +- L'endpoint V.2 est divisé en trois endpoints en V.3, un pour la modalité d'appel par données d'identité, l'autre pour la modalité d'appel FranceConnect, un pour l'appel par INE ; +- Certaines clés sont regroupées sous une clé parente ; +- Tous les noms de clés changent au format snake_case, avec un tiret du bas. + -**Détails des évolutions significatives des champs de la payload :** +{:.fr-h6} +#### Évolutions significatives des champs de la payload : {:.fr-table} -| **Champ V2** | **Champ V3 correspondant** | **Description des changements** | +| **Champ V.2** | **Champ V.3 correspondant** | **Description des changements** | |-----------------------------------|-------------------------------------|-------------------------------------------------------------------------------------------------| -| `quotientFamilial` | `data.quotient_familial.valeur` | **Regroupement dans une clé parente** : Le champ `quotientFamilial` en V2 correspond au champ `valeur` dans l'objet `quotient_familial` en V3. | -| `mois` | `data.quotient_familial.mois` | **Regroupement dans une clé parente** : Le champ `mois` en V2 correspond au champ `mois` dans l'objet `quotient_familial` en V3. | -| `annee` | `data.quotient_familial.annee` | **Regroupement dans une clé parente** : Le champ `annee` en V2 correspond au champ `annee` dans l'objet `quotient_familial` en V3. | -| `mois` | `data.quotient_familial.mois` | **Regroupement dans une clé parente** : Le champ `mois_calcul` en V2 correspond au champ `mois_calcul` dans l'objet `quotient_familial` en V3. | -| `annee` | `data.quotient_familial.annee` | **Regroupement dans une clé parente** : Le champ `annee_calcul` en V2 correspond au champ `annee_calcul` dans l'objet `quotient_familial` en V3. | -| `regime` | `data.quotient_familial.fournisseur` | **Regroupement dans une clé parente et renommage de clé** : Le champ `regime` en V2 correspond au champ `fournisseur` dans l'objet `quotient_familial` en V3. Même si la donnée renvoyée est identique, la clé a été renommée car l'information MSA ou CAF n'indique pas nécessairement le régime de l'allocataire mais simplement le fournisseur du quotient familial. | -| `allocataires[].anneeDateDeNaissance` | `data.allocataires[].date_naissance` (année) | **Regroupement dans une clé parente** : Le champ `anneeDateDeNaissance` en V2 est inclus dans le champ `date_naissance` en V3. | -| `allocataires[].moisDateDeNaissance` | `data.allocataires[].date_naissance` (mois) | **Regroupement dans une clé parente** : Le champ `moisDateDeNaissance` en V2 est inclus dans le champ `date_naissance` en V3. | -| `allocataires[].jourDateDeNaissance` | `data.allocataires[].date_naissance` (jour) | **Regroupement dans une clé parente** : Le champ `jourDateDeNaissance` en V2 est inclus dans le champ `date_naissance` en V3. | -| `enfants[].nomUsuel` | `data.enfants[].nom_usage` | **Renommage de clé** : Pas de changement autre que le renommage de `nomUsuel` en `nom_usage`. Après investigation auprès du fournisseur de donnée, il s'avère que le nom renvoyé est bien le nom d'usage tel que marqué sur l'acte d'état civil. | -| `enfants[].anneeDateDeNaissance` | `data.enfants[].date_naissance` (année) | **Regroupement dans une clé parente** : Le champ `anneeDateDeNaissance` en V2 est inclus dans le champ `date_naissance` en V3. | -| `enfants[].moisDateDeNaissance` | `data.enfants[].date_naissance` (mois) | **Regroupement dans une clé parente** : Le champ `moisDateDeNaissance` en V2 est inclus dans le champ `date_naissance` en V3. | -| `enfants[].jourDateDeNaissance` | `data.enfants[].date_naissance` (jour) | **Regroupement dans une clé parente** : Le champ `jourDateDeNaissance` en V2 est inclus dans le champ `date_naissance` en V3. | -| `adresse.identite` | `data.adresse.destinataire` | **Renommage de clé** : Pas de changement autre que le renommage de `identite` en `destinataire`. | +| `nom` | `data.identite.nom` | **Regroupement dans une clé parente** `identite` en V.3. | +| `prenom`
`prenom2` | `data.identite.prenoms[0]` | **Regroupement dans une clé parente** `identite` et **fusion des deux champs `prenom` et `prenom2` dans une même clé** `prenoms` en V.3. | +| `dateNaissance` | `data.identite.date_naissance` | **Regroupement dans une clé parente** `identite` en V.3. | +| `lieuNaissance` | `data.identite.nom_commune_naissance` | **Regroupement dans une clé parente** `identite` et **renommage de la clé** `lieuNaissance` en `nom_commune_naissance` en V.3. | +| `sexe` | `data.identite.sexe` | **Regroupement dans une clé parente** `identite` en V.3. | +| `boursier` | `data.est_boursier` | **Renommage de la clé** `boursier` en `est_boursier` en V.3. | +| `echelonBourse` | `data.echelon_bourse.echelon` | **Regroupement dans une clé parente** `echelon_bourse` en V.3 et **renommage de la clé** en conséquence. | +| `dateDeRentree` | `data.periode_versement_bourse.date_rentree` | **Regroupement dans une clé parente** `periode_versement_bourse` et **renommage de clé** `dateDeRentree` en `date_rentree` en V.3. | +| `dureeVersement` | `data.periode_versement_bourse.duree` | **Regroupement dans une clé parente** `periode_versement_bourse` et **renommage de clé** `dureeVersement` en `duree` en V.3. | +| `statut` et `statutLibelle` | `data.echelon_bourse .echelon_bourse_regionale_provisoire` | **Remplacement des clés `statut` et `statutLibelle`** par la clé `echelon_bourse_regionale_provisoire` qui est rattachée à la clé parente `echelon_bourse`. Après investigation auprès du fournisseur de la donnée, il s'est avéré que la clé statut définitif ou provisoire indiquait que l'échelon de bourse mentionné était confirmé ou non. De plus, ce champ n'est complété que pour les bourses régionales. Par conséquent la V.3 recontextualise ce champ au bon endroit dans la payload. | +| `villeEtudes` | `data.etablissement_etudes.nom_commune` | **Regroupement dans une clé parente** `etablissement_etudes` et **renommage de clé** `villeEtudes` en `nom_commune` en V.3. | +| `etablissement` | `data.etablissement_etudes.nom_etablissement` | **Regroupement dans une clé parente** `etablissement_etudes` et **renommage de clé** `etablissement` en `nom_etablissement` en V.3. |