curl y jq; cada paso es igual con cualquier cliente HTTP.
Antes de empezar
- Una clave de API de la organización con
services.read,professionals.read,calendar.read,appointments.read,appointments.create,appointments.rescheduleyappointments.cancel, ypatients.administrative.readpara encontrar al paciente. - Las áreas de datos
agendayteamactivadas (lo están por defecto). Buscar al paciente por nombre necesita además el áreapatients; si está desactivada, usa un id de paciente que ya tengas.
1. Consigue los ids
centerId de GET /v1/centers y envíalo en los pasos siguientes.
2. Busca huecos libres
Respuesta
- Los huecos siguen el horario de la clínica y el intervalo de la agenda, y dejan fuera lo que el profesional ya tiene reservado o bloqueado: exactamente lo que aceptaría la agenda de Brelio.
- Las horas están en UTC. La clínica del ejemplo está en Madrid (UTC+1), así que
08:00Zson las 09:00 hora local. - La ventana es de 31 días como máximo y llegan como mucho 50 huecos. La duración es la del servicio salvo que envíes
durationMinutes.
3. Resérvalo
Envía uno de losstartAt como start, con una Idempotency-Key nueva:
201 Created
id. Es opaco: puede contener : y una fecha, y esa fecha no cambia cuando la cita se mueve. Úsalo tal cual.
Si alguien ha ocupado el hueco desde que buscaste, la respuesta es 409 APPOINTMENT_OVERLAP_DETECTED: vuelve a buscar y ofrece otra hora.
4. Léela
Respuesta
GET /v1/agenda?from=…&to=… lista las mismas citas de una ventana, con los mismos ids.
5. Reprográmala
Envía laversion que acabas de leer como expectedVersion, y un start nuevo de una nueva búsqueda de huecos:
Respuesta
409 VERSION_CONFLICT: vuelve a leerla y decide otra vez. Consulta la concurrencia.
6. Cancélala
Respuesta
reasones solo administrativo. Nunca pongas información clínica.- Cancelar no se puede deshacer por la API.
- Una cita que ya tiene sesión (paciente llegado o después) se cancela en Brelio:
409 APPOINTMENT_CANCEL_IN_BRELIO.
Límites de esta versión
- Solo citas sueltas. Las series recurrentes responden
422 APPOINTMENT_RECURRING_UNSUPPORTEDal reprogramar o cancelar. - Reservar, reprogramar y cancelar es solo por REST; los asistentes MCP pueden leer la agenda y los huecos, pero todavía no escribir.
patientIden la agenda esnullsalvo que el áreapatientsde la clínica esté activada y tu clave esté aceptada para datos de pacientes.
Todo el flujo en Node.js
book.mjs