Service d'Accès aux Soins
1.0.0 - trial-use
This page is part of the Service d'Accès aux Soins (v1.0.0: trial-use) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Cette requête s’appuie sur le flux 3A du volet d’agenda partagé du CI-SIS volet Gestion Agenda Partagés.
Endpoint |
|
Header |
Accept: application/json+fhir |
Encodage |
UTF-8 |
Version FHIR |
4.0.1 |
Version package |
|
Publication |
|
Interaction FHIR |
Search[1] |
Méthode http associée |
GET |
Ressource recherchée |
Slot |
Construction requête de base |
|
[1] https://www.hl7.org/fhir/http.html#search et https://www.hl7.org/fhir/http.html#general
Cette réponse s’appuie sur le flux 4A du volet d’agenda partagé du CI-SIS.
Lien vers la spécification FHIR : https://www.hl7.org/fhir/bundle.html
Si la recherche est un succès, le serveur répond :
Un header avec un code 200 OK HTTP
Un body contenant une ressource Bundle dont le type =
searchset.
Le bundle encapsule 0 à n ressources Slot corespondant aux
critères de recherche plus les ressources incluses correspondant aux
critères de recherche.
Le service indique le total trouvé dans une balise total
.
Dans le cas où il n’y a pas de résultat le service renvoie total
: 0.
Remarque : la recherche est un succès à partir du moment où la requête peut être exécutée. Il peut il y avoir 0 à n correspondances.
Plus de précision sur la spécification FHIR : https://www.hl7.org/fhir/http.html
Lien vers la spécification FHIR : https://www.hl7.org/fhir/operationoutcome.html
Si la recherche échoue, le serveur doit répondre :
Un header avec un un code erreur HTTP 4XX ou 5XX
Un body contenant une ressource OperationOutcome[^3] qui donne les détails sur la raison de l’échec
Remarque : l’échec d’une recherche est la non-possibilité d’exécuter la requête, ce qui est différent d’aucune correspondance à la recherche. Plus de précision sur la spécification FHIR : https://www.hl7.org/fhir/http.html
ID |
Description |
Paramètre |
Type |
Obligatoire |
Cardinalité |
1 |
Date de début de la recherche de créneaux |
start |
date |
Oui |
1..1 |
2 |
Date de fin de la recherche de créneaux |
start |
date |
Oui |
1..1 |
3 |
Liste des identifiants nationaux des PS (le préfixe correspondant à l'identifiant sera transmis (2)) |
schedule.actor |
token |
Oui |
1..25 |
4 |
Statut des créneaux |
status |
token |
Oui |
1..1 |
Par ailleurs, en complément des ressources Slot, afin de récupérer l’ensemble des informations qui leur sont rattachées et qui seront potentiellement exploitées par le SAS, deux paramètres supplémentaires sont exploités :
_include=Slot:schedule
indique qu’il est nécessaire de transmettre les ressources Schedule associées aux Slot. La présence de cette ressource est nécessaire pour permettre de faire le lien entre le créneau (Slot) et les ressources Practitioner et PractitionerRole associées._include:iterate=Schedule:actor
indique qu’il est nécessaire de transmettre les ressources actor référencées dans les ressources Schedule transmises. En particulier, les ressources Practitioner et PractitionerRole (incluant la ressource Location dans une élément “contained”) sont attendues._include=Slot:service-type-reference
indique qu’il est nécessaire de transmettre les ressources HealthcareService associées aux Slot pour la transmission d’un créneau CPTS. La présence de cette ressource est nécessaire pour permettre de faire le lien entre le créneau (Slot) et les ressources Organization associées._include:iterate=HealthcareService:organization
indique qu’il est nécessaire de transmettre les ressources Organization référencées dans les ressources HealthcareService transmises.La requête ci-dessous correspond à une recherche de créneaux disponibles entre le 12 juin 2024 à 16h20 et le 15 juin 2024 à 16h20 pour les PS correspondant aux RPPS préfixés : 810002909371, 810001288385.
Requête :
get[BASE]/Slot?_include=Slot:schedule&_include:iterate=Schedule:actor&_include=Slot:service-type-reference&_include:iterate=HealthcareService:organization&start=ge2024-06-12T16:20:00.000+02:00&start=le2024-06-15T16:20:00.000+02:00&schedule.actor:Practitioner.identifier=urn:oid:1.2.250.1.71.4.2.1|810002909371,urn:oid:1.2.250.1.71.4.2.1|810001288385&status=free
Réponse simplifiée :
HTTP 200 OK resourceType: Bundle type: searchset total: 1 Slot1 Schedule1 Practitioner1 PractitionerRole1 HealthcareService1 Organization1
Corps de la réponse complète :
La réponse ci-dessous correspond à : 1 créneau disponible avec Docteur Pierre FORET (RPPS : 810002909371)
Consultation
Pour consulter l’exemple en plein écran, cliquer ici.
Cette section détaille les nomenclatures à utiliser afin de renseigner les différents éléments codifiés de la réponse.
free
.coding
, ou sous la forme d’un texte libre au niveau de l’élément text
.origin
à l’URL transmise par l’éditeur au moment de la redirection pour identifier la provenance.1
IDNST
et type.coding.system à «http://interopsante.org/fhir/CodeSystem/fr-location-identifier-type »Le validateur mis à disposition des développeurs dans le cadre du projet SAS offre la possibilité tester le format des bundles de réponse générés. Il permet de vérifier que les réponses sont correctement formatées, que l’ensemble des informations obligatoires sont bien présentes et que les données codifiées exploitent les bonnes nomenclatures. Pour que le validateur puisse effectuer correctement les contrôles au niveau de la structure, il est nécessaire de renseigner pour chacun des “resourceType” correspondant, le meta.profile “URL” ci-dessous :
Note :
Il y a actuellement des inconsistances dans les URLs canoniques des différents profils contenus dans ce guide, certaines URLs sont au format “http://sas.fr/fhir/…” et d’autres au format “https://interop.esante.gouv.fr/ig/fhir/sas/…”. L’uniformisation n’a pas été effectuée pour cette release pour éviter les changements non rétrocompatibles. Ce changement sera à anticiper lors des prochaines releases.
Ci-dessous un exemple :
"id": "a079787b-a509-4a5f-8353-5e99b1c90cf3",
"resourceType": "Bundle",
"type": "searchset",
"total": 1,
"meta": {
"profile": [
"https://interop.esante.gouv.fr/ig/fhir/sas/StructureDefinition/sas-cpts-bundle-aggregator"
]
},
Le validateur est disponible sur l’espace de test de l’ANS : https://interop.esante.gouv.fr/evs/fhir/validator.seam?standard=37. Pour faciliter les tests et conserver l’historique, nous vous recommandons de créer votre compte sur la plateforme.
Afin de tester un fichier, il suffit de sélectionner le format JSON
, d’ajouter le fichier via le bouton Add…
, de sélectionner le modèle BundleAgregateurCPTS
puis de cliquer sur valider
:
|
Figure 1 - Accès au validateur agrégateur de créneaux |
Vous obtiendrez alors un rapport de test mettant en valeur les erreurs bloquantes et les différents warnings :
|
Figure 2 - Rapport validateur agrégateur de créneaux |