Routes de configuration
Cinq GET en lecture seule qui exposent vos référentiels — lieux, types d'examens, examens, praticiens, salles — au serveur ApiBorne. Simples à implémenter, elles conditionnent tout le paramétrage des bornes.
Pourquoi ces routes
L'admin ApiBorne configure les bornes en fonction de vos données : rattacher une borne à un lieu, définir les préfixes de tickets par type d'examen, cibler un message patient sur un examen, un praticien ou une salle. Sans vos référentiels, rien de tout cela n'est paramétrable — et surtout, les identifiants doivent être les mêmes que ceux portés par vos rendez-vous sur les routes de communication (locationId, examId, examTypeId, practitionerId, roomId) : c'est ce qui permet à la borne de faire correspondre un RDV aux règles configurées.
X-Kiosk-Device-Id.La sonde de validation (config-check)
À l'activation de l'intégration, le serveur ApiBorne sonde les cinq routes de référentiels (lieux, types d'examens, examens, praticiens, salles) : il vérifie qu'elles répondent et que la forme est correcte. Tant qu'une route échoue, la configuration des bornes reste verrouillée dans l'admin (croix rouge sur la page Intégration). Implémentez-les en premier : elles débloquent tout le reste. La sixième route, /config/document-types, est recommandée mais hors sonde.
Comment les appeler
- base : votre serveur, sous le base path du contrat
/api/apiborneIntegrationService/v1; - auth : header
X-Kiosk-Auth-Keyuniquement (la « Clé d'autorisation compte » de l'admin ApiBorne, page Connectivité) ; - réponse :
200avec l'enveloppe attendue — listes vides acceptées.
curl -sS "https://ris.example.com/api/apiborneIntegrationService/v1/config/exam-types" \
-H 'X-Kiosk-Auth-Key: s3cr3t-key'
# → 200 { "examTypes": [ { "id": "2", "name": "SCANNER", "ticketPrefix": "SC" } ] }Les 6 routes
GET /config/office-placesLieux — Sites / zones d'accueil de l'établissement.
→ 200 { officePlaces: [{ id, name }] }
GET /config/exam-typesTypes d'examens — Les familles d'examens (RADIO, SCANNER, IRM…).
→ 200 { examTypes: [{ id, name, ticketPrefix? }] }
GET /config/examsExamens — Les examens individuels, chacun rattaché à un type.
→ 200 { exams: [{ id, name, examTypeId }] }
GET /config/practitionersPraticiens — Les praticiens de l'établissement.
→ 200 { practitioners: [{ id, name, rppsId? }] }
GET /config/roomsSalles — Les salles d'examen.
→ 200 { rooms: [{ id, name }] }
GET /config/document-typesTypes de documents — LE référentiel derrière les documents requis — il vous appartient.
→ 200 { documentTypes: [{ documentType, label }] }
Swagger à télécharger
Les routes de configuration ont leur propre spécification OpenAPI, distincte du contrat principal (schémas de réponse, exemples, sécurité) :
