Introduction
Cette API permet d’accéder à l’entretien pharmaceutique pour un patient au travers d’un appel contextuel.
La logique est la suivante:
- Création de l’utilisateur s’il n’existe pas
- Redirection vers la fiche de l’entretien pharmaceutique en cours
Attention : si l’utilisateur n’existe pas et que celui-ci est créé à la volée, il est nécessaire que le code identifiant pharmacie soit bien celui en charge de l’accompagnement du patient pour ne pas avoir une erreur d’autorisation à la consultation.
Point d’entrée
URL de l’appel contextuel
L’url de base est https://partner-connect.{env}.posos.co où {env} est
l’environnement suivant : preprod pour la validation, production pour le
live.
post/api/partners/:facilitySlug/bpm/medication-review-infos
Avec facilitySlug le facilitySlug unique pour votre intégration et qui sera le même pour l’ensemble des pharmacies
En-têtes HTTP
| Nom | Valeur |
|---|---|
Content-Type | application/json |
Authorization | Bearer <token> |
Authentification
Une authentification est nécessaire pour l’appel à cet endpoint. Il y a deux types de jetons d’authentification qui peuvent être utilisés
Jeton par certificat (x5c)
Le jeton peut être signé avec la clé publique fournie dans un certificat dans le x5c du jeton. L’autorité de certification correspondante doit nous être fournie au préalable pour que nous la rajoutions dans les autorités de confiance.
Généralement ce mode opératoire vous permet de générer un jeton par pharmacie ou opérateur (intervenant de santé). Dans ce cas le jeton d’authentification doit contenir les claims suivants.
| Attribut | Type | Description |
|---|---|---|
email | string | Email de l’intervenant de santé Requis |
posos_id | string | Identifiant unique de l’intervenant de santé Requis |
cip | string | Identifiant unique de la pharmacie Requis |
given_name | string | Prénom de l’intervenant de santé Requis |
family_name | string | Nom de l’intervenant de santé Requis |
Note : les champs posos_id et email doivent être uniques pour l’opérateur parmi toutes les pharmacies (pas uniquement pour sa pharmacie).
Jeton d’accès à nos APIs
Le jeton peut également être le jeton standard d’accès à nos APIs et appels contextuels dont la génération est décrite dans la page Authentification.
Cette méthode doit uniquement être utilisée dans le cas d’un accès serveur à serveur, et ne doit pas émaner de la pharmacie pour des raisons de sécurité (il est possible de faire des requêtes pour n’importe quelle pharmacie de l’éditeur).
Dans ce scénario il sera obligatoire de fournir dans le corps de la requête le champ operator.
Corps de la requête
| Nom | type | Description |
|---|---|---|
patientIpp | string | IPP (identifiant) du patient dans le logiciel Posos Requis |
operator | object | Détails de l’intervenant de santé qui réalise l’entretien. Le format est identique à celui attendu pour le jeton par certificat (x5c). Requis sauf dans l’authentification x5c |
{
"patientIpp": "ABCDEFG01"
}Format de la réponse
Le résultat obtenu est du JSON de la forme suivante:
Output
{
"medicationReview": { ... }
}Le champ medicationReview contient les informations de l’accompagnement en cours pour le patient
Exemple de réponse
Output
{
"medicationReview": {
"id": "58ea6fc6-ba29-4a88-bbd1-75b604438ee3",
"adverseEffects": [],
"archived": false,
"billing": {
"reference": {
"content": {
"code": {
"amount": 0,
"label": "BMI"
},
"status": "MISSING_STEPS"
},
"versionedObjectId": "c182daed-1e55-480f-a12c-83b71983ad6e"
}
},
"comment": null,
"documents": [],
"nextReviewDate": null,
"eligibilityCriteria": false,
"isAdhesionCollected": true,
"medicationCount": null,
"prescriptions": [],
"reviewerParty": {
"reference": {
"partyId": "bc94c4e4-4bd7-4751-8f23-4a6e53b0e0b3",
"originTenantSlug": null,
"content": {
"name": "demo",
"kind": "OFFICINE",
"contacts": null
}
}
},
"validatorParty": null,
"steps": {
"current": "PREPARATION",
"counselingInterview": {
"validationDate": null,
"date": null,
"patientTreatments": [],
"patientTreatmentEvolutions": []
},
"interview": {
"validationDate": null,
"questions": null,
"patientTreatmentEvolutions": []
},
"preparation": {
"validationDate": null,
"importedPrescriptions": [],
"patientTreatments": []
},
"report": {
"validationDate": null,
"comment": null,
"patientTreatments": [],
"patientTreatmentEvolutions": []
},
"reportValidation": null,
"observance": {
"validationDate": null,
"questions": null,
"patientTreatments": []
}
}
}
}Codes de réponse
| Code | Description |
|---|---|
201 | |
400 | Un des paramètres passés dans la requête est invalide |
401 | Le token passé est invalide |
404 | Aucun accompagnement n’existe pour ce patient |