Skip to content

Commit

Permalink
Merge pull request #230 from ansforge/practitioner
Browse files Browse the repository at this point in the history
update test api and fix summary
  • Loading branch information
zilliw authored Jun 25, 2024
2 parents 434440a + 3cd206a commit 3ac6653
Show file tree
Hide file tree
Showing 8 changed files with 20 additions and 105 deletions.
2 changes: 1 addition & 1 deletion docs/pages/documentation/advanced/storage.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ Imaginons par exemple que vous ne souhaitiez récupérer que les id RPPS des Pra

![](img/simple-practitioner-specialty.png)

(*) Référentiels pour les Quanlifications : [TRE-R14](https://mos.esante.gouv.fr/NOS/TRE_R14-TypeDiplome/FHIR/TRE-R14-TypeDiplome), [TRE-R48](https://mos.esante.gouv.fr/NOS/TRE_R48-DiplomeEtatFrancais/FHIR/TRE-R48-DiplomeEtatFrancais),[TRE-R49](https://mos.esante.gouv.fr/NOS/TRE_R49-DiplomeEtudeSpecialisee/FHIR/TRE-R49-DiplomeEtudeSpecialisee),
(*) Référentiels pour les Qualifications : [TRE-R14](https://mos.esante.gouv.fr/NOS/TRE_R14-TypeDiplome/FHIR/TRE-R14-TypeDiplome), [TRE-R48](https://mos.esante.gouv.fr/NOS/TRE_R48-DiplomeEtatFrancais/FHIR/TRE-R48-DiplomeEtatFrancais),[TRE-R49](https://mos.esante.gouv.fr/NOS/TRE_R49-DiplomeEtudeSpecialisee/FHIR/TRE-R49-DiplomeEtudeSpecialisee),
,[TRE-R50](https://mos.esante.gouv.fr/NOS/TRE_R50-DESCGroupe1Diplome/FHIR/TRE-R50-DESCGroupe1Diplome)
,[TRE-R51](https://mos.esante.gouv.fr/NOS/TRE_R51-DESCGroupe2Diplome/FHIR/TRE-R51-DESCGroupe2Diplome)
,[TRE-R52](https://mos.esante.gouv.fr/NOS/TRE_R52-CapaciteDiplome/FHIR/TRE-R52-CapaciteDiplome)
Expand Down
2 changes: 1 addition & 1 deletion docs/pages/guide/version-1/advanced/storage.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ Imaginons par exemple que vous ne souhaitiez récupérer que les id RPPS des Pra

![](img/simple-practitioner-specialty.png)

(*) Référentiels pour les Quanlifications : [TRE-R14](https://mos.esante.gouv.fr/NOS/TRE_R14-TypeDiplome/FHIR/TRE-R14-TypeDiplome), [TRE-R48](https://mos.esante.gouv.fr/NOS/TRE_R48-DiplomeEtatFrancais/FHIR/TRE-R48-DiplomeEtatFrancais),[TRE-R49](https://mos.esante.gouv.fr/NOS/TRE_R49-DiplomeEtudeSpecialisee/FHIR/TRE-R49-DiplomeEtudeSpecialisee),
(*) Référentiels pour les Qualifications : [TRE-R14](https://mos.esante.gouv.fr/NOS/TRE_R14-TypeDiplome/FHIR/TRE-R14-TypeDiplome), [TRE-R48](https://mos.esante.gouv.fr/NOS/TRE_R48-DiplomeEtatFrancais/FHIR/TRE-R48-DiplomeEtatFrancais),[TRE-R49](https://mos.esante.gouv.fr/NOS/TRE_R49-DiplomeEtudeSpecialisee/FHIR/TRE-R49-DiplomeEtudeSpecialisee),
,[TRE-R50](https://mos.esante.gouv.fr/NOS/TRE_R50-DESCGroupe1Diplome/FHIR/TRE-R50-DESCGroupe1Diplome)
,[TRE-R51](https://mos.esante.gouv.fr/NOS/TRE_R51-DESCGroupe2Diplome/FHIR/TRE-R51-DESCGroupe2Diplome)
,[TRE-R52](https://mos.esante.gouv.fr/NOS/TRE_R52-CapaciteDiplome/FHIR/TRE-R52-CapaciteDiplome)
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 15 additions & 1 deletion docs/pages/guide/version-1/getting-started/test-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ subTitle: Démarrage rapide
<div class="wysiwyg" markdown="1">
- [Démarrer les tests API avec Postman](#one-header)
- [Démarrer les tests API avec cURL](#two-header)
- [Utiliser le Démonstrateur API FHIR Annuaire Santé](#three-header)

</div>
<br />

Expand Down Expand Up @@ -149,4 +151,16 @@ curl -H "ESANTE-API-KEY: {{site.ans.demo_key }}" "{{site.ans.api_url}}/fhir/Prac

```

&nbsp;
&nbsp;

## <a id="three-header"></a>3) Utiliser le Démonstrateur API FHIR Annuaire Santé

Consulter le Démonstrateur API FHIR Annuaire Santé et utiliser la clé API pour vous connecter à cette plateforme.

<p align="center">
<img src="img/portail-api-fhir.png" style="width:80%;">
</p>

NOTE| L’erreur NET::ERR_CERT_AUTHORITY_INVALID est rencontrée car le certificat exposé sur le portail de démo de l’API FHIR est un certificat issu de l’IGC Santé de l’ANS, qui n’est pas une autorité de certification reconnue par les navigateurs du marché (a contrario des Thawte, DigiCert, etc). Pour y remédier, il faut ajouter l’AC IGC Santé dans le navigateur pour qu’elle soit reconnue par la suite.

Pour plus d'informations, consulter le site [IGC-Santé de l'ANS] (https://igc-sante.esante.gouv.fr/PC/)
2 changes: 1 addition & 1 deletion docs/pages/guide/version-1/resources/organization.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ subTitle: Ressources
<div class="wysiwyg" markdown="1">
- [Description métier](#one-header)
- [Caractéristiques techniques](#two-header)
- [Caractéristiques techniques](#three-header)
- [Paramètres de recherche](#three-header)
- [Recherche de structure sur critères](#four-header)
- [Rechercher tout](#41-header)
- [Rechercher par date de mise à jour](#42-header)
Expand Down
2 changes: 1 addition & 1 deletion docs/pages/guide/version-1/resources/practitioner-role.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ subTitle: Ressources
<div class="wysiwyg" markdown="1">
- [Description métier](#one-header)
- [Caractéristiques techniques](#two-header)
- [Critères de recherche (SearchParameter)](#three-header)
- [Paramètres de recherche](#three-header)
- [Recherche sur critères](#four-header)
- [Rechercher tout](#41-header)
- [Rechercher par identifiant](#42-header)
Expand Down
2 changes: 1 addition & 1 deletion docs/pages/guide/version-1/resources/search-params.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ layout: menu-version-1
title: Paramètres de recherche
subTitle: Ressources
---
*Lien vers la spécification FHIR : <https://hl7.org/FHIR/search.htm>*
*Lien vers la spécification FHIR : <https://hl7.org/FHIR/search.html>*


<div class="wysiwyg" markdown="1">
Expand Down
99 changes: 0 additions & 99 deletions docs/pages/quick-start/api-basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,105 +4,6 @@ title: Bases de l'API
---


### URL d'accès (base url)

Tous les accès se font via HTTPS.

#### Environnement Production
<div class="wysiwyg" markdown="1">
- [api-url] : https://gateway.api.esante.gouv.fr/fhir/v1
- [ihm-url] : https://portail.openfhir.annuaire.sante.fr
- [gravitee-url] : https://portal.api.esante.gouv.fr (pour obtenir une API KEY)
</div>
<br />

#### Environnement Bac à sable (en accès restreint)
<div class="wysiwyg" markdown="1">
- [api-url] : https://gateway.preprod.api.esante.gouv.fr/fhir/v1
- [ihm-url] : https://demo.portail.openfhir.annuaire.asipsante.fr
- [gravitee-url] : https://portal.preprod.api.esante.gouv.fr
</div>
<br />

### Points de terminaison (endpoints)
<div class="wysiwyg" markdown="1">
- [api-url]/Practitioner (pour les professionnels de santé)
- [api-url]/PractitionerRole (pour les exercices pro et les situations d'exercice)
- [api-url]/Organization (pour les structures)
- [api-url]/HealthcareService (pour les activités de soins et les équipements sociaux)
- [api-url]/Device (pour les équipements matériels lourds)
- [api-url]/metadata (pour le capability statement)
- [api-url]/health (pour le heathcare du service, accessible sans authentification)
</div>
<br />

### Méthodes HTTP (http verbs)
L'API est conforme à la norme REST. Vous pouvez utiliser les ressources avec les méthodes HTTP suivantes :
<div class="wysiwyg" markdown="1">
- GET : lecture de données simple (Regex Posix : \/fhir\/(v[0-9]{0,2}\/)?[a-zA-Z]{0,30} )
- POST : lecture de données au format POST (Regex Posix : \/fhir\/(v[0-9]{0,2}\/)?[a-zA-Z]{0,30}\/_search )
</div>
<br />

### En-têtes (headers)
<div class="wysiwyg" markdown="1">
- ESANTE-API-KEY
</div>
<br />

```xml
-- Exemple :

curl
-H "ESANTE-API-KEY: XXXX-XXXX-XXXX-XXXXX" \
"[api-url]/metadata"

-- XXXX-XXXX-XXXX-XXXXX étant l'API KEY

```
<br />

### Construction de la réponse de base

#### Réponse de base -- Succès

Lien vers la spécification FHIR : <https://www.hl7.org/fhir/R4/bundle.html>

Si la recherche est un succès, le serveur répond :
<div class="wysiwyg" markdown="1">
- Un header avec un code 200 OK HTTP
- Un body contenant une ressource [Bundle](https://www.hl7.org/fhir/R4/bundle.html) dont le type = searchset.
Le bundle encapsule 0 à n ressources Location corespondant aux critères de recherche plus les ressources incluses correspondant aux critères de recherche.
Le service développé renvoie les 200 premiers résultats et 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.
</div>
<br />

NOTE| 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/R4/http.html

#### Réponse de base -- Echec

Lien vers la spécification FHIR : <https://www.hl7.org/fhir/R4/operationoutcome.html>

Si la recherche échoue, le serveur doit répondre :
<div class="wysiwyg" markdown="1">
- 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
</div>
<br />

NOTE| 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/R4/http.html>

### Codes d’état HTTP (HTTP status codes)
Toutes les réponses utilisent des codes d'état HTTP standard.

<div class="wysiwyg" markdown="1">
- 200 (OK) : Successful request (OK)
- 403 (Forbidden) : The request is not allowed
- 404 (Not found) : The resource is not found
</div>
<br />

### Erreur NET::ERR_CERT_AUTHORITY_INVALID sur l'IHM (https://portail.openfhir.annuaire.sante.fr)
L’erreur NET::ERR_CERT_AUTHORITY_INVALID est rencontrée car le certificat exposé sur le portail de démo de l’API FHIR est un certificat issu de l’IGC Santé de l’ANS, qui n’est pas une autorité de certification reconnue par les navigateurs du marché (a contrario des Thawte, DigiCert, etc).
Expand Down

0 comments on commit 3ac6653

Please sign in to comment.