Nos APIs

Ici nous vous proposons d'utiliser notre API pour synchroniser les données depuis votre logiciel de gestion vers le notre.

Pour synchroniser les données de votre logiciel vers le notre, nous vous proposons d'utiliser directement l'API REST

Structure de données

Au sein de Campus Skills la structure des données peut être décrite ainsi :

  • Votre organisme peut être déployé dans plusieurs villes nous appelons ça des sites

  • Il y a des périodes de formation qui correspondent classiquement aux années scolaires ( 2020/2021, 2021/2022 etc )

  • Il y a des programmes de formations ( BTS MCO, Licence RH ) qui sont déployés sur un site et sur une période.

  • Il y a des années de formation ( Licence RH 1ière année, License RH 2ième année etc.. )

  • Et il y a des groupes qui correspondent à des sessions de formations.

Nous voulons avec cette structure regrouper les apprenants qui suivent la même formation sur le même site pour la même période donnée et la même année.

Cela vous permettra d'avoir un suivi clair.

Ainsi en plus des données sur le contrat, nous vous demandons d'ajouter des informations supplémentaires

Unicité des ids

Attention dans les données à synchroniser nous vous demandons de spécifier les identifiants de vos utilisateurs, ces identifiants doivent être uniques quelque soit la collection.

Par exemple si un etudiant a le même identifiant qu'un maitre d'apprentissage, l'appel API va vous retourner une erreur

Si vous avez des tables différentes en fonction des rôles et donc potentiellement des conflits d'ids entre ces tables, merci de prédixer les identifiant envoyés.

Unicité des emails

Dans notre SI, un email est rattaché à un compte et un seul. Si deux tuteurs entreprises ont le même mail, vous ne pourrez pas synchroniser les données

Synchronisation via API REST

Synchroniser les contrats

POST {{base_url}}/api/sync/v1/contrats

Request Body

NameTypeDescription

contrats*

array

contrats.$.dateFin

string

Date au format DD/MM/YYYY

contrats.$.dateDebut

string

Date au format DD/MM/YYYY

contrats.$.nomGroupe*

string

Nom du groupe

contrats.$.nomEntreprise*

string

Nom de l'entreprise

contrats.$.emailPersonnel*

string

Email du tuteur école

contrats.$.prenomPersonnel*

string

Prénom du tuteur école

contrats.$.nomPersonnel*

string

Nom du tuteur école

contrats.$.codePersonnel*

string

Code du tuteur école, doit être unique parmi tous les utilisateurs

contrats.$.emailMaitreApprentissage*

string

Email maitre apprentissage

contrats.$.prenomMaitreApprentissage*

string

Prenom maitre apprentissage

contrats.$.nomMaitreApprentissage*

string

Nom maitre apprentissage

contrats.$.codeMaitreApprentissage*

string

Identifiant du maitre apprentissage, doit être unique parmi tous les utilisateurs

contrats.$.nomApprenant*

string

Nom de l'apprenant

contrats.$.emailApprenant*

string

email de l'apprenant

contrats.$.prenomApprenant*

string

Prenom de l'apprenant

contrats.$.codeApprenant*

string

Identifiant de l'apprenant, doit être unique parmi tous les utilisateurs

contrats.$.codeGroupe*

string

L'identifiant unique du groupe de l'apprenant

contrats.$.codeContrat*

string

L'identifiant unique du contrat

contrats.$.codePeriode*

string

Identifiant de la période associée ( le couple codePeriode, nomPeriode doit être unique )

contrats.$.nomPeriode*

string

Nom de la période

contrats.$.codeFormation*

string

Identifiant de la formation ( le couple codeFormation, nomFormation doit être unique )

contrats.$.nomFormation*

string

Le nom de la formation

contrats.$.codeSite*

string

Identifiant du site ( le couple codeSite, nomSite doit être unique )

contrats.$.nomSite*

string

Nom du site

contrats.$.codeAnnee*

string

Identifiant de l'année ( le couple codeAnnee, nomAnnee doit être unique )

contrats.$.nomAnnee*

string

Nom de l'année

contrats.$.missionTitle

string

Titre de la mission

contrats.$.missionDetails

string

Descriptif de la mission

contrats.$.monthStartGroup

string

Info de démarrage du groupe permettant de gérer les rentrées décalées

contrats.$.rncp

string

codeRNCP

Récupère tous les contrats intégrés

GET {{base_url}}/api/sync/v1/contrats

Retourne les contrats selon la même structure de donnees que celle envoyee dans le POST au dessus

{
  // Response
}

Récupère tous les contrats transmis

GET {{base_url}}/api/sync/v1/contrats-get-all

Supprimer tous les contrats

DELETE {{base_url}}/api/sync/v1/contrats

Attention cette route est a utiliser uniquement dans le bac à sable

{
  // Response
}

Différence entre contrat transmis et intégré

Un contrat transmis est une donnée que nous recevons via API

Un contrat intégré est un contrat transmis que nous avons su associer à une session ( cela nécessite que l'équipe intégration a configuré les modèles )

Last updated