MeetingHub relie le système d'information de votre établissement — ENT, logiciel de scolarité, GRH — à ses cours en ligne. Votre système y dépose l'emploi du temps et les listes d'inscrits ; MeetingHub le prévient quand une feuille de présence est prête, et il vient la chercher. Plus de double saisie, plus de feuilles perdues entre deux outils.
Cette documentation a deux parties :
- les guides, comme celui-ci, expliquent comment faire, dans l'ordre où on le fait ;
- la référence décrit chaque route, chaque champ, chaque type et chaque code de retour. Commencez par ses Conventions.
Ce qu'il vous faut
Un compte administrateur de votre établissement dans MeetingHub, et un serveur capable de recevoir un appel HTTPS depuis Internet si vous voulez les webhooks.
Une seule porte
L'API a une seule entrée, /api. Ce qui change d'un appelant à l'autre, c'est le justificatif qu'il présente :
- un administrateur y entre avec sa session, comme sur le site. C'est ainsi qu'on pose les clés ;
- vos programmes y entrent avec une clé d'intégration (
mhk_…), dans l'en-têteAuthorization.
Une requête ne porte qu'un justificatif : la session ou la clé, jamais les deux. Une clé n'ouvre que ce que ses portées permettent, et seulement dans son établissement. C'est ce qui garantit qu'une clé donnée à votre ENT ne peut faire que ce pour quoi elle a été posée.
L'établissement se lit dans l'adresse : /api/institutions/:institutionId/…. Votre clé vous donne son identifiant, voir Un premier appel.
Vous éditez une solution de gestion scolaire et ouvrez des établissements pour vos clients ? Votre clé d'éditeur partenaire (mhp_…) ouvre la même porte : voir Éditeurs partenaires.
Les anciennes adresses /api/integration/… et /api/partner/… répondent encore, comme alias dépréciés : chaque réponse porte l'en-tête Deprecation: true et un en-tête Link vers la route de /api qui la remplace. Elles disparaîtront à la prochaine version : passez dès maintenant à /api.
En cinq étapes
- Poser une clé. Un administrateur crée une clé avec les portées dont votre système a besoin. Voir Clés d'intégration.
- Vérifier le branchement. Votre système appelle
GET /api/meavec la clé : la réponse dit le nom de la clé, son établissement et ce qu'elle ouvre. - Déposer l'emploi du temps. Votre ENT envoie son planning, une fois puis chaque nuit. Voir Déposer l'emploi du temps.
- Déposer les inscrits. Il envoie la liste de chaque classe. Voir Déposer une liste d'inscrits.
- Récupérer les feuilles de présence. Un webhook le prévient à la fin de chaque cours, et il vient chercher la feuille. Voir Récupérer les feuilles de présence et Webhooks.
Un premier appel
curl https://reunion.votre-etablissement.fr/api/me \
-H "Api-Version: 1" \
-H "Authorization: Bearer mhk_…"
Api-Version dit le contrat que votre programme attend ; voir Version.
{
"actor": { "kind": "institution-key", "id": "2d388508-…", "name": "ENT — émargement" },
"institutions": [{ "id": "6c1d3a52-…", "name": "Lycée bilingue", "status": "active" }],
"capabilities": ["institution.view", "attendance.read"]
}
Gardez institutions[0].id : c'est l'identifiant de votre établissement, le :institutionId de toutes les autres adresses. capabilities dit ce que la clé ouvre — ses portées, dites en capacités.
Une réponse 401 veut dire que la clé est fausse, révoquée ou expirée. Le détail est dans la référence : Erreurs.
La collection Postman
La collection Postman reprend toutes les routes de /api qu'une clé d'établissement peut atteindre, prêtes à l'emploi. Téléchargez-la depuis l'en-tête de cette page, importez-la, puis renseignez deux variables : base, l'adresse de votre instance, et cle, votre clé d'intégration. Lancez GET /me en premier, puis recopiez l'identifiant qu'elle rend dans la troisième variable, institution.