Référence de l’API partenaires
Organisation
Lire les référentiels de l'organisation connectée : ses sites (coordonnées, horaires d'ouverture, jours fériés), son équipe, ses salles, les espèces et races qu'elle propose. Toutes ces routes exigent le droit org:read et sont en lecture seule. Ce sont des listes courtes, rendues en une seule réponse : nextCursor vaut toujours null. Elles ne voient que les sites que l'organisation a ouverts à l'application ; un autre site répond 404 SITE_NOT_FOUND, jamais 403.
Lister les salles
GET/api/partner/v1/rooms#
Rend les salles et ressources actives (salles, bloc, imagerie, équipements…) des sites ouverts à l'application, ou du seul site demandé par site_id ou l'en-tête Treats-Site-Id. Les ressources désactivées par la clinique ne sont pas rendues. Résultat groupé par site, puis dans l'ordre d'affichage choisi par la clinique et par nom. Une seule page : nextCursor vaut toujours null.
Paramètres
| site_idrequête · uuid | Limite la lecture à ce site. Sans lui ni l'en-tête : tous les sites ouverts à l'application. Le paramètre l'emporte sur l'en-tête. |
| Treats-Site-Iden-tête · uuid | Équivalent de |
Réponse
200Les salles actives.
Champs de la réponse (2)
| itemsRoom[] | |
| iduuid | Identifiant de la salle. |
| siteIduuid | Site de la salle. |
| namestring | Nom de la salle, tel que la clinique l'affiche. |
| typeenum | Nature : salle de consultation, bloc opératoire, imagerie, laboratoire, hospitalisation, toilettage, salle d'attente, isolement, équipement, autre. CONSULTATION_ROOMOPERATING_THEATERIMAGING_ROOMLABORATORYHOSPITALIZATIONGROOMINGWAITING_AREAISOLATION_ROOMEQUIPMENTOTHER |
| capacityinteger | Capacité renseignée par la clinique (1 par défaut). Nulle si elle a été effacée. peut être null |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 400 INVALID_SITE_ID |
|
| 404 SITE_NOT_FOUND | Le site demandé est inconnu, d'une autre organisation, ou non ouvert à l'application. |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lister les sites
GET/api/partner/v1/sites#
Rend les sites de l'organisation que l'application peut lire : tous ses sites si l'organisation a ouvert l'accès à tous, sinon ceux qu'elle a choisis. Les sites en sommeil sont inclus (dormant: true). Tri par nom, sans distinction de casse. Liste rendue en une seule page : nextCursor vaut toujours null, et la route ne lit ni limit, ni cursor, ni updated_since, ni filtre de site.
Réponse
200Les sites ouverts à l'application.
Champs de la réponse (2)
| itemsSite[] | |
| iduuid | Identifiant du site. C'est la valeur à passer en |
| organizationIduuid | Organisation du site. |
| namestring | Nom du site. |
| codestring | Code court du site (3 à 5 caractères), stable. Préfixe ses numéros d'ordonnance. peut être null |
| phonestring | Téléphone du site. peut être null |
| emailstring | Adresse email du site. peut être null |
| siretstring | Numéro SIRET du site. peut être null |
| addressSiteAddress | Adresse postale. L'objet est toujours présent, ses champs peuvent être nuls. |
| linestring | Adresse sur une ligne, telle qu'elle figure sur les documents du site. peut être null |
| streetstring | Numéro et voie. peut être null |
| postalCodestring | Code postal. peut être null |
| citystring | Ville. peut être null |
| countrystring | Pays. peut être null |
| timezoneenum | Fuseau des jours calendaires et des horaires du site. Toujours Europe/Paris |
| dormantboolean |
|
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Lire un site
GET/api/partner/v1/sites/{id}#
Rend un site de l'organisation. Un site d'une autre organisation, un site de l'organisation que l'application ne peut pas lire et un identifiant inconnu répondent tous 404 SITE_NOT_FOUND : la réponse ne dit pas si le site existe.
Paramètres
| idchemin · uuidrequis | Identifiant du site. |
Réponse
200Le site.
Champs de la réponse (10)
| iduuid | Identifiant du site. C'est la valeur à passer en |
| organizationIduuid | Organisation du site. |
| namestring | Nom du site. |
| codestring | Code court du site (3 à 5 caractères), stable. Préfixe ses numéros d'ordonnance. peut être null |
| phonestring | Téléphone du site. peut être null |
| emailstring | Adresse email du site. peut être null |
| siretstring | Numéro SIRET du site. peut être null |
| addressSiteAddress | Adresse postale. L'objet est toujours présent, ses champs peuvent être nuls. |
| linestring | Adresse sur une ligne, telle qu'elle figure sur les documents du site. peut être null |
| streetstring | Numéro et voie. peut être null |
| postalCodestring | Code postal. peut être null |
| citystring | Ville. peut être null |
| countrystring | Pays. peut être null |
| timezoneenum | Fuseau des jours calendaires et des horaires du site. Toujours Europe/Paris |
| dormantboolean |
|
Erreurs propres à cette opération
| 404 SITE_NOT_FOUND | Site inconnu, d'une autre organisation, ou non ouvert à l'application. |
| 404 NOT_FOUND |
|
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lister les jours fériés et fermetures d'un site
GET/api/partner/v1/sites/{id}/holidays#
Rend les jours fériés communs à tous les sites (scope: NATIONAL) et les jours de fermeture propres au site (scope: SITE), triés par date croissante. Tous les jours enregistrés sont rendus, passés compris, sans filtre de période. Un jour marqué recurringYearly n'apparaît qu'une fois, à sa date d'origine : reportez-le sur chaque année. Les fermetures exceptionnelles sur une période (congés, formation) et les absences de l'équipe ne sont pas rendues. Une seule page : nextCursor vaut toujours null.
Paramètres
| idchemin · uuidrequis | Identifiant du site. |
Réponse
200Les jours fériés et de fermeture du site, par date croissante.
Champs de la réponse (2)
| itemsSiteHoliday[] | |
| iduuid | Identifiant du jour. |
| datedate | Jour ( |
| labelstring | Libellé (« 1er mai », « Inventaire »…). |
| recurringYearlyboolean |
|
| scopeenum |
NATIONALSITE |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 404 SITE_NOT_FOUND | Site inconnu, d'une autre organisation, ou non ouvert à l'application. |
| 404 NOT_FOUND |
|
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lire les horaires d'ouverture d'un site
GET/api/partner/v1/sites/{id}/opening-hours#
Rend les horaires hebdomadaires du site, un élément par jour paramétré, du lundi au dimanche. Seuls les jours que la clinique a renseignés sont rendus : un site sans horaires rend une liste vide, et un jour absent n'est ni ouvert ni fermé, il est inconnu. Les heures sont locales au site (HH:mm, fuseau timezone du site). Cette route ne tient compte ni des jours fériés ni des fermetures (voir GET /sites/{id}/holidays), ni des absences de l'équipe. Une seule page : nextCursor vaut toujours null.
Paramètres
| idchemin · uuidrequis | Identifiant du site. |
Réponse
200Les horaires du site, du lundi au dimanche.
Champs de la réponse (2)
| itemsSiteOpeningHours[] | |
| dayOfWeekenum | Jour de la semaine. MONDAYTUESDAYWEDNESDAYTHURSDAYFRIDAYSATURDAYSUNDAY |
| closedboolean |
|
| openstring | Heure d'ouverture ( |
| closestring | Heure de fermeture ( |
| breakStartstring | Début de la pause de midi ( |
| breakEndstring | Fin de la pause de midi ( |
| slotMinutesinteger | Durée par défaut d'un créneau de rendez-vous, en minutes. Nulle si le site n'en fixe pas. Rendue aussi un jour fermé. peut être null |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 404 SITE_NOT_FOUND | Site inconnu, d'une autre organisation, ou non ouvert à l'application. |
| 404 NOT_FOUND |
|
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lister les espèces
GET/api/partner/v1/species#
Rend les espèces que l'accueil de la clinique peut choisir : les espèces Treats et celles créées par l'organisation, moins celles qu'elle a masquées ou désactivées pour le site. Le site pris en compte est celui de site_id (ou de l'en-tête Treats-Site-Id) ; à défaut, le site unique ouvert à l'application ; à défaut, s'il y en a plusieurs, aucun réglage de site n'est appliqué et la liste suit le réglage de l'organisation. Tri dans l'ordre d'affichage choisi par la clinique, puis par libellé. Une seule page : nextCursor vaut toujours null.
Paramètres
| site_idrequête · uuid | Site dont on applique le choix d'espèces. Le paramètre l'emporte sur l'en-tête. |
| Treats-Site-Iden-tête · uuid | Équivalent de |
Réponse
200Les espèces proposées.
Champs de la réponse (2)
| itemsSpecies[] | |
| codestring | Code de l'espèce, en majuscules. C'est la valeur à envoyer dans |
| labelstring | Libellé dans la langue de l'organisation, renommé si la clinique l'a renommé. |
| groupenum | Famille fixe, stable d'une organisation à l'autre : à utiliser pour faire correspondre l'espèce à votre propre nomenclature. DOGCATEQUINEBOVINEOVINECAPRINEPORCINEEXOTICFARMOTHER |
| parentCodestring | Pour une espèce créée par la clinique, le code de l'espèce Treats à laquelle elle se rattache. Nul pour une espèce Treats. peut être null |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 400 INVALID_SITE_ID |
|
| 404 SITE_NOT_FOUND | Le site demandé est inconnu, d'une autre organisation, ou non ouvert à l'application. |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lister les races d'une espèce
GET/api/partner/v1/species/{code}/breeds#
Rend les races actives de l'espèce, moins celles que l'organisation a masquées, races créées par l'organisation comprises. L'espèce doit figurer dans GET /species pour le même site (mêmes règles de choix du site) ; sinon 404 SPECIES_NOT_FOUND. Le code d'espèce est lu sans distinction de casse. Tri dans l'ordre d'affichage choisi par la clinique, puis par libellé. Une seule page : nextCursor vaut toujours null.
Paramètres
| codechemin · stringrequis | Code de l'espèce ( |
| site_idrequête · uuid | Site dont on applique le choix d'espèces. Le paramètre l'emporte sur l'en-tête. |
| Treats-Site-Iden-tête · uuid | Équivalent de |
Réponse
200Les races de l'espèce.
Champs de la réponse (2)
| itemsBreed[] | |
| iduuid | Identifiant de la race. C'est la valeur à envoyer dans |
| codestring | Code de la race, en majuscules. |
| labelstring | Libellé dans la langue de l'organisation, renommé si la clinique l'a renommé. |
| speciesCodestring | Code de l'espèce de la race. |
| icadCodestring | Code de la race dans la nomenclature de l'I-CAD (fichier national d'identification), quand il existe. peut être null |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 400 INVALID_SITE_ID |
|
| 404 SITE_NOT_FOUND | Le site demandé est inconnu, d'une autre organisation, ou non ouvert à l'application. |
| 404 SPECIES_NOT_FOUND | Espèce inconnue, ou non proposée par l'organisation pour ce site (masquée, désactivée). |
Et les erreurs communes à toutes les opérations : erreurs et limites.
Lister l'équipe
GET/api/partner/v1/staff#
Rend les membres actifs de l'équipe qui ont une affectation active et en cours de validité sur un site ouvert à l'application, ou sur le seul site demandé par site_id ou l'en-tête Treats-Site-Id. Ni email, ni téléphone, ni droits ; les comptes techniques (intégrations) n'y figurent jamais. Tri par nom puis prénom, sans distinction de casse. Une seule page : nextCursor vaut toujours null.
Paramètres
| site_idrequête · uuid | Limite la lecture à ce site ; |
| rolerequête · enum | Ne garde que les membres de ce rôle. Valeur lue sans distinction de casse ( |
| Treats-Site-Iden-tête · uuid | Équivalent de |
Réponse
200Les membres de l'équipe.
Champs de la réponse (2)
| itemsStaffMember[] | |
| iduuid | Identifiant du membre de l'équipe. |
| firstNamestring | Prénom. |
| lastNamestring | Nom. |
| roleenum | Rôle du compte dans Treats. VETASVADMINSUPER_ADMINVIEWERCLUSTER_MANAGERREGIONAL_DIRECTORGROUP_ADMIN |
| primarySiteIduuid | Site principal de la personne. Nul s'il n'est pas renseigné ou si ce site n'est pas ouvert à l'application. peut être null |
| siteIdsuuid[] | Sites où la personne exerce, parmi les sites lus par l'appel (tous les sites ouverts, ou le seul site demandé par |
| nextCursorstring | Curseur opaque de la page suivante, à repasser tel quel dans |
Erreurs propres à cette opération
| 400 INVALID_SITE_ID |
|
| 400 INVALID_FIELD |
|
| 404 SITE_NOT_FOUND | Le site demandé est inconnu, d'une autre organisation, ou non ouvert à l'application. |
Et les erreurs communes à toutes les opérations : erreurs et limites.