Référence de l’API partenaires
Consultations
Ouvrir une consultation en brouillon, remplir ses modules cliniques (anamnèse, commémoratifs, examen général, diagnostic, comportement), ajouter une note d'équipe et lire l'historique clinique d'un animal. Un partenaire ne valide jamais une consultation, ne la déverrouille ni ne la supprime, et n'écrit ni acte, ni produit, ni ordonnance : ces gestes restent au vétérinaire, dans Treats. Les modules d'actes, la vaccination et les mesures (température, pression, glycémie) se lisent en texte seulement. Une consultation d'un site non ouvert à l'application répond 404, jamais 403.
Lister les consultations
GET/api/partner/v1/consultations#
Rend les consultations des sites ouverts à l'application (ou du seul site demandé), brouillons et validées, triées par updatedAt croissant puis id : c'est la liste de synchronisation. Une consultation remonte quand son en-tête change ou quand un de ses modules est écrit. Une écriture apparaît dans cette liste au plus 60 secondes après ; la lecture par identifiant, elle, est immédiate. Reprendre une synchronisation à updated_since = dernier updatedAt vu − 5 minutes et dédoublonner par id.
Les éléments n'ont ni category ni ownerReport : lire GET /consultations/{id} pour les avoir. Un consentement limité à certains sites ne voit, avec patient_id, que les animaux dont le client est rattaché à l'un de ses sites.
Paramètres
| patient_idrequête · uuid | Ne garde que les consultations de cet animal. Animal inconnu ou non visible de l'application : |
| site_idrequête · uuid | Ne garde que ce site. Le paramètre l'emporte sur l'en-tête. |
| statusrequête · enum | Ne garde que ce statut. Lu sans distinction de casse ( |
| updated_sincerequête · date-time | Ne rend que les consultations dont |
| limitrequête · integer | Taille de la page, de 1 à 200. Au-delà de 200, la page fait 200. Défaut :50 |
| cursorrequête · string | Curseur rendu par la page précédente ( |
| Treats-Site-Iden-tête · uuid | Équivalent de |
Réponse
200Une page de consultations.
Champs de la réponse (2)
| itemsConsultationListItem[] | |
| iduuid | Identifiant de la consultation. |
| publicIdstring | Identifiant public partageable, préfixé |
| siteIduuid | Site de la consultation. |
| patientIduuid | Animal examiné. |
| appointmentIduuid | Rendez-vous d'origine. Nul pour une consultation ouverte sans rendez-vous. peut être null |
| vetIduuid | Membre de l'équipe qui porte la consultation (voir |
| statusenum |
DRAFTVALIDATED |
| reasonstring | Motif affiché de la consultation. peut être null |
| motifIduuid | Motif du référentiel de l'organisation, s'il a été choisi. peut être null |
| templateSlugstring | Modèle de consultation utilisé à l'ouverture. peut être null |
| startedAtdate-time | Début de la consultation. peut être null |
| validatedAtdate-time | Date de validation. Nulle sur un brouillon. peut être null |
| createdAtdate-time | Date de création. |
| updatedAtdate-time | Clé de synchronisation : dernière modification de l'en-tête ou d'un module. Pour une consultation jamais modifiée depuis l'ouverture de l'API, la plus récente de sa création, de son début et de sa validation. |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 400 INVALID_FIELD |
|
| 404 PATIENT_NOT_FOUND |
|
| 404 SITE_NOT_FOUND |
|
Et les erreurs communes à toutes les opérations : erreurs et limites.
Ouvrir une consultation en brouillon
POST/api/partner/v1/consultations#
Ouvre une consultation en brouillon pour un animal, avec ou sans rendez-vous. Le site est celui du rendez-vous ; sans rendez-vous, c'est site_id (ou Treats-Site-Id), ou le seul site ouvert à l'application. Les modules du modèle choisi sont posés (sans templateSlug, le modèle par défaut du site). Le motif affiché prend le nom du motif choisi, à défaut celui du modèle. Si le rendez-vous a un acte associé, sa ligne est posée dans le module de facturation, comme quand la clinique ouvre la consultation. Le rendez-vous passe « en cours » au nom du praticien vetId, sauf s'il est déjà terminé, à facturer ou annulé.
Idempotente par rendez-vous : si ce rendez-vous a déjà sa consultation pour cet animal, elle est rendue telle quelle avec le statut 200 (son praticien n'est pas changé). Une nouvelle consultation répond 201. Une consultation ne s'ouvre que sur un rendez-vous du jour (heure de Paris), sauf si l'animal est déjà en salle d'attente ou en consultation. Ne valide jamais la consultation : la validation reste au vétérinaire, dans Treats.
Paramètres
| site_idrequête · uuid | Site de la consultation sans rendez-vous. Avec un rendez-vous, à omettre ou égal au site du rendez-vous. Le paramètre l'emporte sur l'en-tête. |
| Treats-Site-Iden-tête · uuid | Équivalent de |
| Idempotency-Keyen-tête · stringrequis | Clé unique de l'envoi (un UUID). Le même envoi répété avec la même clé n'est appliqué qu'une fois pendant 24 h. |
Corps de la requête application/json
| patientIduuidrequis | Animal examiné, visible de l'application. |
| vetIduuidrequis | Membre actif de l'équipe de l'organisation qui porte la consultation (voir |
| appointmentIduuid | Rendez-vous d'origine, sur un site ouvert à l'application et pour ce même animal. |
| templateSlugstring | Modèle de consultation du site. Absent : modèle par défaut du site. |
| motifIduuid | Motif actif du référentiel de l'organisation. |
Réponse
200La consultation déjà ouverte pour ce rendez-vous, rendue telle quelle.
Champs de la réponse (16)
| iduuid | Identifiant de la consultation. |
| publicIdstring | Identifiant public partageable, préfixé |
| siteIduuid | Site de la consultation. |
| patientIduuid | Animal examiné. |
| appointmentIduuid | Rendez-vous d'origine. Nul pour une consultation ouverte sans rendez-vous. peut être null |
| vetIduuid | Membre de l'équipe qui porte la consultation (voir |
| statusenum |
DRAFTVALIDATED |
| categoryenum | Type d'événement : consultation, urgence, suivi, chirurgie, hospitalisation, analyse, prévention, acte technique, administratif, euthanasie. Déduit du modèle de consultation. CONSULTATIONEMERGENCYFOLLOW_UPSURGERYHOSPITALIZATIONANALYSISPREVENTIONTECHNICAL_ACTADMINISTRATIVEEUTHANASIApeut être null |
| reasonstring | Motif affiché de la consultation. peut être null |
| motifIduuid | Motif du référentiel de l'organisation, s'il a été choisi. peut être null |
| templateSlugstring | Modèle de consultation utilisé à l'ouverture. peut être null |
| startedAtdate-time | Début de la consultation. peut être null |
| validatedAtdate-time | Date de validation. Nulle sur un brouillon. peut être null |
| createdAtdate-time | Date de création. |
| updatedAtdate-time | Clé de synchronisation, la même que dans la liste : dernière modification de l'en-tête ou d'un module. peut être null |
| ownerReportConsultationOwnerReport | Synthèse remise au propriétaire, posée par le vétérinaire à la validation. Nulle tant qu'aucune de ses trois parties n'est remplie (toujours nulle sur un brouillon ouvert par l'API). peut être null |
| summarystring | Résumé de la consultation. peut être null |
| diagnosisstring | Diagnostic, formulé pour le propriétaire. peut être null |
| instructionsstring | Consignes au propriétaire. peut être null |
Erreurs propres à cette opération
| 400 INVALID_FIELD | Champ hors contrat, |
| 400 SITE_ID_REQUIRED | Sans rendez-vous, l'organisation a ouvert plusieurs sites et ni |
| 400 SITE_MISMATCH |
|
| 404 PATIENT_NOT_FOUND | Animal inconnu, d'une autre organisation, ou dont le client n'est pas rattaché à un site ouvert à l'application. |
| 404 APPOINTMENT_NOT_FOUND | Rendez-vous inconnu ou sur un site non ouvert à l'application. |
| 404 SITE_NOT_FOUND |
|
| 409 APPOINTMENT_OTHER_PATIENT | Le rendez-vous est celui d'un autre animal. |
| 409 CONSULTATION_APPOINTMENT_NOT_TODAY | Le rendez-vous n'est pas aujourd'hui (heure de Paris) et l'animal n'est ni en salle d'attente ni en consultation. Le message donne la date du rendez-vous. |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Notifications envoyées :consultation.startedappointment.updated
Lire une consultation
GET/api/partner/v1/consultations/{id}#
Rend l'en-tête de la consultation, son type d'événement et, une fois validée, la synthèse remise au propriétaire. Le contenu clinique se lit par GET /consultations/{id}/modules. Lecture immédiate, sans le délai de la liste.
Paramètres
| idchemin · uuidrequis | Identifiant de la consultation. |
Réponse
200La consultation.
Champs de la réponse (16)
| iduuid | Identifiant de la consultation. |
| publicIdstring | Identifiant public partageable, préfixé |
| siteIduuid | Site de la consultation. |
| patientIduuid | Animal examiné. |
| appointmentIduuid | Rendez-vous d'origine. Nul pour une consultation ouverte sans rendez-vous. peut être null |
| vetIduuid | Membre de l'équipe qui porte la consultation (voir |
| statusenum |
DRAFTVALIDATED |
| categoryenum | Type d'événement : consultation, urgence, suivi, chirurgie, hospitalisation, analyse, prévention, acte technique, administratif, euthanasie. Déduit du modèle de consultation. CONSULTATIONEMERGENCYFOLLOW_UPSURGERYHOSPITALIZATIONANALYSISPREVENTIONTECHNICAL_ACTADMINISTRATIVEEUTHANASIApeut être null |
| reasonstring | Motif affiché de la consultation. peut être null |
| motifIduuid | Motif du référentiel de l'organisation, s'il a été choisi. peut être null |
| templateSlugstring | Modèle de consultation utilisé à l'ouverture. peut être null |
| startedAtdate-time | Début de la consultation. peut être null |
| validatedAtdate-time | Date de validation. Nulle sur un brouillon. peut être null |
| createdAtdate-time | Date de création. |
| updatedAtdate-time | Clé de synchronisation, la même que dans la liste : dernière modification de l'en-tête ou d'un module. peut être null |
| ownerReportConsultationOwnerReport | Synthèse remise au propriétaire, posée par le vétérinaire à la validation. Nulle tant qu'aucune de ses trois parties n'est remplie (toujours nulle sur un brouillon ouvert par l'API). peut être null |
| summarystring | Résumé de la consultation. peut être null |
| diagnosisstring | Diagnostic, formulé pour le propriétaire. peut être null |
| instructionsstring | Consignes au propriétaire. peut être null |
Erreurs propres à cette opération
| 404 CONSULTATION_NOT_FOUND | Consultation inconnue, d'une autre organisation ou d'un site non ouvert à l'application. |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lire les modules d'une consultation
GET/api/partner/v1/consultations/{id}/modules#
Rend tous les modules de la consultation, dans l'ordre de l'écran, en une seule page (nextCursor vaut toujours null). Pour un module écrivable (writable: true), data donne son contenu selon le contrat publié ; pour les autres (actes, vaccination, mesures, imagerie, biologie…), seul le texte lisible text est rendu, sans aucun prix. Les notes d'équipe passent par GET /consultations/{id}/notes, pas par ces modules.
Paramètres
| idchemin · uuidrequis | Identifiant de la consultation. |
Réponse
200Les modules de la consultation.
Champs de la réponse (2)
| itemsConsultationModule[] | |
| iduuid | Identifiant du module dans cette consultation. |
| slugstring | Identifiant stable du module ( |
| namestring | Nom du module, tel que la clinique le voit. peut être null |
| categorystring | Famille du module, en minuscules : |
| positioninteger | Rang du module dans la consultation (0 si non renseigné). |
| writableboolean |
|
| dataobject | Contenu du module selon son contrat publié ( |
| textstring | Rendu lisible du module, une ligne par constat (séparées par |
| updatedAtdate-time | Dernière modification du module. peut être null |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 404 CONSULTATION_NOT_FOUND | Consultation inconnue, d'une autre organisation ou d'un site non ouvert à l'application. |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Écrire un module de consultation
PUT/api/partner/v1/consultations/{id}/modules/{slug}#
Écrit un module d'une consultation en brouillon. Cinq modules s'écrivent : anamnese (reason, symptomOnset, evolution), commemoratifs (medicalHistory, previousSurgeries, currentTreatment, allergies, notes), examen-general (normal, generalState, mucousMembranes, capillaryRefillSeconds, dehydration, notes), diagnostic (primary, differential, notes) et comportement (attitude, interaction, notes). Le corps ne contient que les champs du module visé : leur type, leurs bornes et leurs valeurs permises sont dans les schémas ModuleData… et sur GET /module-definitions/{slug}. Exemple : PUT /consultations/{id}/modules/anamnese avec {"reason": "Boiterie depuis 2 jours", "symptomOnset": "ONE_THREE_DAYS", "evolution": "STABLE"}.
Champ absent = inchangé, champ à null = effacé ; un objet (allergies) ou une liste (primary, differential) se remplace en entier. Tout le reste du module est gardé tel quel, dont les actes que la clinique y a posés : la facture brouillon n'est jamais touchée. L'écriture se fait sur le module relu au moment d'écrire : une saisie du vétérinaire faite entre-temps est gardée, jamais écrasée. Un corps invalide est refusé en entier avant toute écriture, avec un détail par champ (chemin compris, primary[0].diagnosisId).
Module absent de la consultation : il est ajouté et la route répond 201. Module déjà présent : il est mis à jour, réponse 200.
Paramètres
| idchemin · uuidrequis | Identifiant de la consultation. |
| slugchemin · enumrequis | Module à écrire. Un autre module du site répond |
Corps de la requête application/json
| reasonstring |
|
| symptomOnsetenum |
LESS_24HONE_THREE_DAYSMORE_THREE_DAYSCHRONICpeut être null |
| evolutionenum |
IMPROVEMENTSTABLEWORSENINGpeut être null |
| medicalHistorystring |
|
| previousSurgeriesstring |
|
| currentTreatmentstring |
|
| allergiesobject |
|
| typeenum | Type d'allergie. FOODMEDICATIONOTHERpeut être null |
| allergenstring | Allergène. peut être null |
| normalboolean |
|
| generalStateenum |
GOODCORRECTALTEREDBADpeut être null |
| mucousMembranesenum |
PINKPALECONGESTEDICTERICCYANOTICpeut être null |
| capillaryRefillSecondsnumber |
|
| dehydrationenum |
NONEFIVE_PERCENTSIX_EIGHT_PERCENTTEN_TWELVE_PERCENTTWELVE_FIFTEEN_PERCENTpeut être null |
| primaryobject[] |
|
| labelstring | Libellé. Obligatoire sauf si |
| diagnosisIduuid | Diagnostic actif du référentiel de l'organisation, sinon refus. peut être null |
| differentialobject[] |
|
| labelstring | Libellé. Obligatoire sauf si |
| diagnosisIduuid | Diagnostic actif du référentiel de l'organisation, sinon refus. peut être null |
| attitudeenum |
NORMALDEPRESSEDAGGRESSIVEANXIOUSpeut être null |
| interactionenum |
NORMALDIMINISHEDABSENTpeut être null |
| notesstring |
|
Réponse
200Le module mis à jour, relu après écriture.
Champs de la réponse (9)
| iduuid | Identifiant du module dans cette consultation. |
| slugstring | Identifiant stable du module ( |
| namestring | Nom du module, tel que la clinique le voit. peut être null |
| categorystring | Famille du module, en minuscules : |
| positioninteger | Rang du module dans la consultation (0 si non renseigné). |
| writableboolean |
|
| dataobject | Contenu du module selon son contrat publié ( |
| textstring | Rendu lisible du module, une ligne par constat (séparées par |
| updatedAtdate-time | Dernière modification du module. peut être null |
Erreurs propres à cette opération
| 400 BODY_REQUIRED | Corps absent ou vide. |
| 400 INVALID_FIELD | Champ inconnu du contrat de ce module, texte trop long, valeur hors de la liste permise (sensible à la casse), nombre hors bornes, mauvais type, |
| 404 CONSULTATION_NOT_FOUND | Consultation inconnue, d'une autre organisation ou d'un site non ouvert à l'application. |
| 404 MODULE_NOT_FOUND | Aucun module de ce nom sur le site de la consultation (liste : |
| 409 MODULE_READ_ONLY | Module en lecture seule par l'API (actes, vaccination, mesures, imagerie…). Le message liste les modules écrivables. |
| 409 CONSULTATION_VALIDATED | La consultation est validée : elle ne se modifie plus par l'API. Seul un vétérinaire peut la déverrouiller, dans Treats. |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lire les notes d'équipe d'une consultation
GET/api/partner/v1/consultations/{id}/notes#
Rend les notes d'équipe de la consultation, en une seule page (nextCursor vaut toujours null). Les notes confidentielles ne sont jamais rendues. Exige le droit consultations:notes, distinct de consultations:write qui permet d'écrire une note : une application peut signaler « résultats reçus » sans lire les notes de l'équipe.
Paramètres
| idchemin · uuidrequis | Identifiant de la consultation. |
Réponse
200Les notes d'équipe.
Champs de la réponse (2)
| itemsConsultationNote[] | |
| iduuid | Identifiant de la note. |
| consultationIduuid | Consultation de la note. |
| contentstring | Texte de la note. |
| authorUserIduuid | Auteur : un membre de l'équipe, ou le compte d'intégration de l'application pour une note écrite par l'API. peut être null |
| createdByThisApplicationboolean |
|
| createdAtdate-time | Date d'écriture. peut être null |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 404 CONSULTATION_NOT_FOUND | Consultation inconnue, d'une autre organisation ou d'un site non ouvert à l'application. |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Ajouter une note d'équipe
POST/api/partner/v1/consultations/{id}/notes#
Ajoute une note d'équipe à la consultation, signée par le compte d'intégration de l'application. La note n'est jamais confidentielle. Permise aussi sur une consultation validée : une note s'ajoute, elle ne modifie pas la consultation. Une note ne se modifie ni ne se supprime par l'API.
Paramètres
| idchemin · uuidrequis | Identifiant de la consultation. |
| Idempotency-Keyen-tête · stringrequis | Clé unique de l'envoi (un UUID). Le même envoi répété avec la même clé n'est appliqué qu'une fois pendant 24 h. |
Corps de la requête application/json
| contentstringrequis | Texte de la note, non vide. |
Réponse
201La note créée.
Champs de la réponse (6)
| iduuid | Identifiant de la note. |
| consultationIduuid | Consultation de la note. |
| contentstring | Texte de la note. |
| authorUserIduuid | Auteur : un membre de l'équipe, ou le compte d'intégration de l'application pour une note écrite par l'API. peut être null |
| createdByThisApplicationboolean |
|
| createdAtdate-time | Date d'écriture. peut être null |
Erreurs propres à cette opération
| 400 INVALID_FIELD |
|
| 404 CONSULTATION_NOT_FOUND | Consultation inconnue, d'une autre organisation ou d'un site non ouvert à l'application. |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lister les modules de consultation
GET/api/partner/v1/module-definitions#
Rend les modules de consultation proposés par un site, un par slug, en une seule page (nextCursor vaut toujours null). Pour les cinq modules écrivables (writable: true), fields publie le contrat de leur data : champs, types, bornes et valeurs permises, les mêmes que le formulaire de la clinique. Les autres sont listés en lecture seule, fields vide. Sans site_id, le premier site ouvert à l'application.
Paramètres
| site_idrequête · uuid | Site dont lire les modules. Le paramètre l'emporte sur l'en-tête. |
| Treats-Site-Iden-tête · uuid | Équivalent de |
Réponse
200Les modules du site.
Champs de la réponse (2)
| itemsModuleDefinition[] | |
| slugstring | Identifiant stable du module. |
| namestring | Nom du module, tel que la clinique le voit. |
| categorystring | Famille du module, en minuscules ( |
| writableboolean |
|
| fieldsModuleField[] | Champs du contrat, dans l'ordre de l'écran. Vide pour un module en lecture seule. |
| namestring | Nom du champ dans le corps et dans |
| typeenum |
TEXTENUMBOOLEANDECIMALOBJECTARRAY |
| labelstring | Libellé français du champ. |
| descriptionstring | Précision sur le champ. peut être null |
| maxLengthinteger |
|
| minnumber |
|
| maxnumber |
|
| unitstring |
|
| valuesModuleEnumValue[] |
|
| valuestring | Valeur à envoyer, telle quelle (sensible à la casse). |
| labelstring | Libellé français, celui de l'écran. |
| propertiesModuleField[] |
|
| itemsModuleField[] |
|
| teamOnlyboolean |
|
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 404 SITE_NOT_FOUND |
|
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lire le contrat d'un module
GET/api/partner/v1/module-definitions/{slug}#
Rend un module de consultation du site et, s'il est écrivable, le contrat de son data : c'est le corps attendu par PUT /consultations/{id}/modules/{slug}. Sans site_id, le premier site ouvert à l'application.
Paramètres
| slugchemin · stringrequis | Identifiant du module ( |
| site_idrequête · uuid | Site dont lire le module. Le paramètre l'emporte sur l'en-tête. |
| Treats-Site-Iden-tête · uuid | Équivalent de |
Réponse
200Le module et son contrat.
Champs de la réponse (5)
| slugstring | Identifiant stable du module. |
| namestring | Nom du module, tel que la clinique le voit. |
| categorystring | Famille du module, en minuscules ( |
| writableboolean |
|
| fieldsModuleField[] | Champs du contrat, dans l'ordre de l'écran. Vide pour un module en lecture seule. |
| namestring | Nom du champ dans le corps et dans |
| typeenum |
TEXTENUMBOOLEANDECIMALOBJECTARRAY |
| labelstring | Libellé français du champ. |
| descriptionstring | Précision sur le champ. peut être null |
| maxLengthinteger |
|
| minnumber |
|
| maxnumber |
|
| unitstring |
|
| valuesModuleEnumValue[] |
|
| valuestring | Valeur à envoyer, telle quelle (sensible à la casse). |
| labelstring | Libellé français, celui de l'écran. |
| propertiesModuleField[] |
|
| itemsModuleField[] |
|
| teamOnlyboolean |
|
Erreurs propres à cette opération
| 404 MODULE_NOT_FOUND | Aucun module de ce nom sur le site. |
| 404 SITE_NOT_FOUND |
|
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lire l'historique clinique d'un animal
GET/api/partner/v1/patients/{id}/history#
Rend les consultations récentes de l'animal, de la plus récente à la plus ancienne, résumées, sur les sites ouverts à l'application seulement (hospitalisations comprises, résultats de laboratoire exclus). C'est un résumé, sans curseur (nextCursor vaut toujours null) : pour tout synchroniser, GET /consultations?patient_id=…. limit compte les lignes rendues, après le filtre des sites.
Paramètres
| idchemin · uuidrequis | Identifiant de l'animal. |
| limitrequête · integer | Nombre de consultations au plus, de 1 à 200. Au-delà de 200, 200. Défaut :50 |
| sincerequête · date | Ne garde que les consultations de ce jour ou après ( |
Réponse
200L'historique résumé.
Champs de la réponse (2)
| itemsHistoryEntry[] | |
| consultationIduuid | Consultation (à lire par |
| siteIduuid | Site de la consultation, toujours un site ouvert à l'application. |
| datedate-time | Date de la consultation. |
| categoryenum | Type d'événement : consultation, urgence, suivi, chirurgie, hospitalisation, analyse, prévention, acte technique, administratif, euthanasie. CONSULTATIONEMERGENCYFOLLOW_UPSURGERYHOSPITALIZATIONANALYSISPREVENTIONTECHNICAL_ACTADMINISTRATIVEEUTHANASIA |
| titlestring | Titre affiché dans l'historique de la clinique. peut être null |
| reasonstring | Motif de la consultation. peut être null |
| vetNamestring | Nom du praticien. peut être null |
| validatedboolean |
|
| hasDocumentsboolean |
|
| hasPrescriptionboolean |
|
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 400 INVALID_FIELD |
|
| 404 PATIENT_NOT_FOUND | Animal inconnu, d'une autre organisation, ou dont le client n'est pas rattaché à un site ouvert à l'application. |
Et les erreurs communes à toutes les opérations : erreurs et limites.