UDENTIVA Plataforma Inteligente de Gestión Dental
RECURSO DE LA API

Citas y calendario

Planificación por médico y por sillón, bloqueo de doble reserva, recordatorio automático y lista de espera. Los conflictos se impiden a nivel de base de datos.

Acceso anticipado Toda la API

Endpoints

10 endpoint

Endpoints de este recurso. Cada endpoint se limita a los datos de la clínica a la que está vinculada la clave de la API; los endpoints de escritura admiten la cabecera Idempotency-Key.

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

Ejemplo de uso

Obtener las citas por rango de fechas

Solicitud
curl https://api.udentiva.com/v1/appointments?from=2026-06-24&to=2026-06-25 \
  -H "Authorization: Bearer udk_live_xxx"
Respuesta
HTTP/1.1 200 OK
[
  {
    "id": "a1b2...",
    "patient_id": "c0ffee00-...",
    "unit_id": "u-1",
    "starts_at": "2026-06-24T10:00:00Z",
    "ends_at": "2026-06-24T10:30:00Z",
    "status": "confirmed"
  }
]

Seguridad en este recurso

La seguridad no es una función, es la propia arquitectura. Las garantías vigentes en este recurso:

La doble reserva es imposible a nivel de base de datos mediante exclusion constraint; aunque haya un error de aplicación, no puede escribirse una cita en conflicto.
La competencia simultánea por un slot se evita mediante el bloqueo distribuido de Redis; dos solicitudes no pueden escribir en el mismo slot al mismo tiempo.
Todos los datos de citas están aislados en su clínica (RLS); los cambios de estado se registran en el registro de auditoría.
Todo el modelo de seguridad →

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"
  }
}

Otros recursos

Pacientes Odontograma y Tratamiento Cobros y finanzas Inventario Imágenes Laboratorio Lead y CRM Turismo de salud Informes y BI Webhooks Transferencia de Datos (Export API)
¿Quiere acceso anticipado?
Sea el primero en enterarse cuando se abra la API.
Contactar