UDENTIVA Plateforme intelligente de gestion dentaire
DÉVELOPPEURS

Documentation de l'API UDENTIVA

Intégrez en toute sécurité les données de votre cabinet à vos propres systèmes. Une API basée sur REST, cohérente et prévisible.

L'accès à l'API externe sera bientôt ouvert
Les points d'accès ci-dessous constituent la couverture complète qui sera ouverte. Contactez-nous pour un accès anticipé.
Modèle de sécurité de l'API
Isolation des données, écriture idempotente, requête paramétrée — une sécurité fondée sur le code. →

Vue d'ensemble

L'API UDENTIVA respecte les principes REST ; elle utilise un corps JSON et retourne des codes de statut HTTP standard. Toutes les requêtes sont faites via HTTPS et authentifiées par clé API. Chaque requête est limitée aux données du cabinet auquel la clé est rattachée (isolation complète des données).

Adresse de base:

https://api.udentiva.com

Authentification

Dans vos requêtes, transportez votre clé API dans l'en-tête Authorization. Les clés sont générées depuis le panneau du cabinet et peuvent être révoquées à tout moment.

# Exemple de requête
curl https://api.udentiva.com/v1/patients \
  -H "Authorization: Bearer udk_live_xxx" \
  -H "Accept: application/json"

Points d'accès

81 point d'accès · 12 source

Tous les points d'accès qui seront ouverts figurent ci-dessous. La page de détail de chaque ressource comporte les paramètres, un exemple de requête/réponse et des notes de sécurité. Les points d'écriture prennent en charge l'en-tête Idempotency-Key.

Patients · 9

Détail & exemple →
GET /v1/patients Récupère la liste des patients paginée
POST /v1/patients Crée un nouvel enregistrement patient
GET /v1/patients/{id} Récupère le détail d'un seul patient
PUT /v1/patients/{id} Met à jour les informations du patient
DELETE /v1/patients/{id} Archive le patient (soft-delete)
GET /v1/patients/{id}/medical Liste l'anamnèse, les allergies et les antécédents médicaux
POST /v1/patients/{id}/medical Ajoute un enregistrement médical/d'anamnèse
GET /v1/patients/{id}/documents Liste les documents du patient
POST /v1/patients/{id}/documents Ajoute un document au patient

Rendez-vous & Agenda · 10

Détail & exemple →
GET /v1/appointments Liste les rendez-vous par plage de dates
POST /v1/appointments Crée un nouveau rendez-vous (avec contrôle de conflit)
POST /v1/appointments/{id}/status Change le statut du rendez-vous
POST /v1/appointments/{id}/reschedule Replanifie le rendez-vous
POST /v1/appointments/{id}/remind Envoie un rappel de rendez-vous
GET /v1/units Liste les fauteuils/unités
GET /v1/doctors Liste les praticiens
GET /v1/waitlist Récupère la liste d'attente
POST /v1/waitlist Ajoute un patient à la liste d'attente
DELETE /v1/waitlist/{id} Retire de la liste d'attente

Odontogramme & Traitement · 14

Détail & exemple →
GET /v1/patients/{id}/odontogram Récupère le schéma dentaire FDI courant
POST /v1/patients/{id}/odontogram Ajoute un état dentaire (append-only)
GET /v1/patients/{id}/odontogram/{tooth}/history Récupère l'historique d'état d'une dent
GET /v1/services Liste le catalogue de services/actes
POST /v1/services Ajoute un poste de service
PUT /v1/services/{id} Met à jour un poste de service
GET /v1/patients/{id}/plans Liste les plans de traitement du patient
POST /v1/patients/{id}/plans Crée un plan de traitement
GET /v1/plans/{id} Récupère le détail du plan de traitement
POST /v1/plans/{id}/status Change le statut du plan
POST /v1/plans/{id}/items Ajoute une phase/un poste au plan
POST /v1/plan-items/{id}/status Change le statut d'un poste du plan
GET /v1/patients/{id}/prescriptions Liste les ordonnances
POST /v1/patients/{id}/prescriptions Crée une ordonnance

Encaissement & Finance · 12

Détail & exemple →
POST /v1/invoices Crée une facture
GET /v1/invoices Liste les factures
GET /v1/invoices/{id} Récupère le détail d'une facture
POST /v1/invoices/{id}/void Annule la facture (écriture inverse)
POST /v1/invoices/{id}/einvoice Envoie la facture en tant qu'e-Fatura (GİB)
GET /v1/einvoices Liste les enregistrements e-Fatura
POST /v1/payments Enregistre un encaissement (idempotent)
GET /v1/patients/{id}/balance Récupère le solde de compte courant du patient
GET /v1/patients/{id}/ledger Liste les mouvements de compte courant du patient
GET /v1/cash/day Récupère le résumé de caisse de fin de journée
GET /v1/cari Liste les soldes de comptes courants
GET /v1/billing/summary Récupère le résumé financier/encaissements

Stock · 6

Détail & exemple →
GET /v1/stock Liste les fiches de stock
GET /v1/stock/critical Liste les stocks au niveau critique
POST /v1/stock Crée une fiche de stock
PUT /v1/stock/{id} Met à jour la fiche de stock
POST /v1/stock/{id}/movement Ajoute un mouvement de stock (entrée/sortie)
GET /v1/stock/{id}/movements Liste les mouvements de stock

Imagerie · 3

Détail & exemple →
GET /v1/patients/{id}/images Liste les images du patient (radiographies/photos)
POST /v1/patients/{id}/images Téléverse une image (S3, stream/presigned)
GET /v1/images/{id}/raw Télécharge le fichier image (presigned)

Laboratoire · 7

Détail & exemple →
GET /v1/lab-orders Liste les commandes de laboratoire
POST /v1/lab-orders Crée une commande de laboratoire
GET /v1/lab-orders/{id} Récupère le détail de la commande
PUT /v1/lab-orders/{id} Met à jour la commande
POST /v1/lab-orders/{id}/status Change le statut de la commande
GET /v1/labs Liste les laboratoires partenaires
POST /v1/labs Ajoute un laboratoire

Lead & CRM · 7

Détail & exemple →
GET /v1/leads Liste les leads/demandes
POST /v1/leads Crée un nouveau lead
POST /v1/leads/{id}/status Change le statut/la phase du lead
GET /v1/tasks Liste les tâches
POST /v1/tasks Crée une tâche
GET /v1/messages Liste les messages de communication du patient
POST /v1/messages Crée un enregistrement de message/communication

Tourisme médical · 5

Détail & exemple →
GET /v1/tourism-cases Liste les cas de tourisme médical
POST /v1/tourism-cases Crée un cas de tourisme médical
POST /v1/tourism-cases/{id}/status Change la phase du cas
GET /v1/shipments Liste les enregistrements de transfert/expédition
POST /v1/shipments Crée un enregistrement de transfert/expédition

Reporting & BI · 3

Détail & exemple →
GET /v1/bi Récupère les métriques de business intelligence
GET /v1/profit Récupère le rapport de rentabilité
GET /v1/rcm Récupère les métriques du cycle de revenus (RCM)

Webhooks · 3

Détail & exemple →
GET /v1/webhooks Liste les abonnements webhook enregistrés
POST /v1/webhooks Enregistre un webhook pour la notification d'événements
DELETE /v1/webhooks/{id} Supprime l'abonnement webhook

Transfert de Données (Export API) · 2

Détail & exemple →
GET /export/v1 Renvoie les jeux de données autorisés et les informations d'utilisation de la clé (découverte)
GET /export/v1/{dataset} Extrait le jeu de données sélectionné de façon paginée (?limit=1000&offset=0)

Format d'erreur

Les erreurs sont renvoyées dans une enveloppe cohérente ; le code s'adresse à la machine, le message à l'utilisateur. Aucune erreur interne / trace de pile n'est jamais divulguée.

{
  "error": {
    "code": "validation_failed",
    "message": "Champ invalide : e-mail"
  }
}

Limite de débit

Les requêtes sont limitées par minute. En cas de dépassement de la limite, un code 429 est renvoyé ; les en-têtes de réponse portent l'information sur le quota restant.

Versionnage

La version de l'API est portée dans l'URL (ex. /v1). Les changements qui rompent la rétrocompatibilité sont publiés dans une nouvelle version.

Événements Webhook

À mesure que des événements se produisent dans votre cabinet, une notification signée est envoyée à l'adresse enregistrée. Vous maintenez ainsi votre propre système à jour en temps réel.

# Types d'événements d'exemple
patient.created   appointment.created   appointment.status_changed
invoice.created   payment.created       lab_order.status_changed
treatment_plan.updated   lead.created   tourism_case.status_changed
Souhaitez-vous un accès anticipé ?
Soyez le premier informé dès l'ouverture de l'API.
Contacter