UDENTIVA Plataforma Inteligente de Gestión Dental
DESARROLLADORES

Documentación de la API de UDENTIVA

Integre de forma segura los datos de su clínica con sus propios sistemas. Una API basada en REST, coherente y predecible.

El acceso a la API externa se abrirá pronto
Los siguientes endpoints componen el alcance completo que se abrirá al exterior. Contáctenos para acceso anticipado.
Modelo de seguridad de la API
Aislamiento de datos, escritura idempotente, consulta parametrizada: seguridad basada en el código. →

Vista general

La API de UDENTIVA cumple los principios REST; usa un cuerpo JSON y devuelve códigos de estado HTTP estándar. Todas las solicitudes se realizan sobre HTTPS y se autentican con una clave de API. Cada solicitud se limita a los datos de la clínica a la que está vinculada la clave (aislamiento total de datos).

Dirección base:

https://api.udentiva.com

Autenticación

En las solicitudes, lleve su clave de API en la cabecera Authorization. Las claves se generan desde el panel de la clínica y pueden anularse en cualquier momento.

# Ejemplo de solicitud
curl https://api.udentiva.com/v1/patients \
  -H "Authorization: Bearer udk_live_xxx" \
  -H "Accept: application/json"

Endpoints

81 endpoint · 12 fuente

A continuación se listan todos los endpoints que se abrirán al exterior. En la página de detalle de cada recurso encontrará los parámetros, un ejemplo de solicitud/respuesta y notas de seguridad. Los endpoints de escritura admiten la cabecera Idempotency-Key.

Pacientes · 9

Detalle y ejemplo →
GET /v1/patients Obtiene la lista de pacientes paginada
POST /v1/patients Crea un nuevo registro de paciente
GET /v1/patients/{id} Obtiene el detalle de un solo paciente
PUT /v1/patients/{id} Actualiza la información del paciente
DELETE /v1/patients/{id} Archiva el paciente (soft-delete)
GET /v1/patients/{id}/medical Lista la anamnesis, las alergias y el historial médico
POST /v1/patients/{id}/medical Añade un registro médico/de anamnesis
GET /v1/patients/{id}/documents Lista los documentos del paciente
POST /v1/patients/{id}/documents Añade un documento al paciente

Citas y calendario · 10

Detalle y ejemplo →
GET /v1/appointments Lista las citas por rango de fechas
POST /v1/appointments Crea una nueva cita (con control de conflictos)
POST /v1/appointments/{id}/status Cambia el estado de la cita
POST /v1/appointments/{id}/reschedule Reprograma la cita
POST /v1/appointments/{id}/remind Envía un recordatorio de cita
GET /v1/units Lista los sillones/unidades
GET /v1/doctors Lista los médicos
GET /v1/waitlist Obtiene la lista de espera
POST /v1/waitlist Añade un paciente a la lista de espera
DELETE /v1/waitlist/{id} Retira de la lista de espera

Odontograma y Tratamiento · 14

Detalle y ejemplo →
GET /v1/patients/{id}/odontogram Obtiene el odontograma FDI actual
POST /v1/patients/{id}/odontogram Añade un estado dental (append-only)
GET /v1/patients/{id}/odontogram/{tooth}/history Obtiene el historial de estados de un diente
GET /v1/services Lista el catálogo de servicios/procedimientos
POST /v1/services Añade una línea de servicio
PUT /v1/services/{id} Actualiza la línea de servicio
GET /v1/patients/{id}/plans Lista los planes de tratamiento del paciente
POST /v1/patients/{id}/plans Crea un plan de tratamiento
GET /v1/plans/{id} Obtiene el detalle del plan de tratamiento
POST /v1/plans/{id}/status Cambia el estado del plan
POST /v1/plans/{id}/items Añade una fase/línea al plan
POST /v1/plan-items/{id}/status Cambia el estado de la línea del plan
GET /v1/patients/{id}/prescriptions Lista las recetas
POST /v1/patients/{id}/prescriptions Crea una receta

Cobros y finanzas · 12

Detalle y ejemplo →
POST /v1/invoices Crea una factura
GET /v1/invoices Lista las facturas
GET /v1/invoices/{id} Obtiene el detalle de la factura
POST /v1/invoices/{id}/void Anula la factura (asiento inverso)
POST /v1/invoices/{id}/einvoice Envía la factura como e-Fatura (GİB)
GET /v1/einvoices Lista los registros de e-Fatura
POST /v1/payments Registra un cobro (idempotente)
GET /v1/patients/{id}/balance Obtiene el saldo de cuenta corriente del paciente
GET /v1/patients/{id}/ledger Lista los movimientos de cuenta corriente del paciente
GET /v1/cash/day Obtiene el resumen de caja de cierre de día
GET /v1/cari Lista los saldos de cuenta corriente
GET /v1/billing/summary Obtiene el resumen de finanzas/cobros

Inventario · 6

Detalle y ejemplo →
GET /v1/stock Lista las fichas de stock
GET /v1/stock/critical Lista los stocks en nivel crítico
POST /v1/stock Crea una ficha de stock
PUT /v1/stock/{id} Actualiza la ficha de stock
POST /v1/stock/{id}/movement Añade un movimiento de stock (entrada/salida)
GET /v1/stock/{id}/movements Lista los movimientos de stock

Imágenes · 3

Detalle y ejemplo →
GET /v1/patients/{id}/images Lista las imágenes del paciente (radiografía/foto)
POST /v1/patients/{id}/images Sube una imagen (S3, stream/presigned)
GET /v1/images/{id}/raw Descarga el archivo de imagen (presigned)

Laboratorio · 7

Detalle y ejemplo →
GET /v1/lab-orders Lista los pedidos de laboratorio
POST /v1/lab-orders Crea un pedido de laboratorio
GET /v1/lab-orders/{id} Obtiene el detalle del pedido
PUT /v1/lab-orders/{id} Actualiza el pedido
POST /v1/lab-orders/{id}/status Cambia el estado del pedido
GET /v1/labs Lista los laboratorios asociados
POST /v1/labs Añade un laboratorio

Lead y CRM · 7

Detalle y ejemplo →
GET /v1/leads Lista los leads/solicitudes
POST /v1/leads Crea un nuevo lead
POST /v1/leads/{id}/status Cambia el estado/fase del lead
GET /v1/tasks Lista las tareas
POST /v1/tasks Crea una tarea
GET /v1/messages Lista los mensajes de comunicación del paciente
POST /v1/messages Crea un registro de mensaje/comunicación

Turismo de salud · 5

Detalle y ejemplo →
GET /v1/tourism-cases Lista los casos de turismo de salud
POST /v1/tourism-cases Crea un caso de turismo
POST /v1/tourism-cases/{id}/status Cambia la fase del caso
GET /v1/shipments Lista los registros de transferencia/envío
POST /v1/shipments Crea un registro de transferencia/envío

Informes y BI · 3

Detalle y ejemplo →
GET /v1/bi Obtiene las métricas de inteligencia de negocio
GET /v1/profit Obtiene el informe de rentabilidad
GET /v1/rcm Obtiene las métricas del ciclo de ingresos (RCM)

Webhooks · 3

Detalle y ejemplo →
GET /v1/webhooks Lista las suscripciones de webhook registradas
POST /v1/webhooks Registra un webhook para la notificación de eventos
DELETE /v1/webhooks/{id} Elimina la suscripción de webhook

Transferencia de Datos (Export API) · 2

Detalle y ejemplo →
GET /export/v1 Devuelve los conjuntos de datos permitidos de la clave y la información de uso (descubrimiento)
GET /export/v1/{dataset} Extrae el conjunto de datos seleccionado paginado (?limit=1000&offset=0)

Formato de error

Los errores se devuelven con un sobre coherente; el código va dirigido a la máquina, el mensaje al usuario. El error interno o el stack nunca se filtran.

{
  "error": {
    "code": "validation_failed",
    "message": "Campo no válido: correo electrónico"
  }
}

Límite de velocidad

Las solicitudes se limitan por minuto. Al superar el límite se devuelve un 429; las cabeceras de respuesta llevan la información de la cuota restante.

Versionado

La versión de la API se transporta en la ruta (p. ej. /v1). Los cambios que rompen la compatibilidad hacia atrás se publican en una nueva versión.

Eventos de webhook

A medida que ocurren eventos en su clínica, se envía a su dirección registrada una notificación firmada. Así mantiene su propio sistema actualizado al instante.

# Tipos de evento de ejemplo
patient.created   appointment.created   appointment.status_changed
invoice.created   payment.created       lab_order.status_changed
treatment_plan.updated   lead.created   tourism_case.status_changed
¿Quiere acceso anticipado?
Sea el primero en enterarse cuando se abra la API.
Contactar