{ "description": "OperationDefinition für die Buchung eines Termins. Die Operation überprüft ob der Termin noch verfügbar ist im Termin-Repository.", "_filename": "OperationDefinition-ISiKAppointmentBookOperation.json", "package_name": "de.gematik.isik-terminplanung", "date": "2023-03-24", "system": false, "publisher": "gematik GmbH", "instance": false, "name": "book", "type": "true", "experimental": "false", "resourceType": "OperationDefinition", "title": null, "package_version": "2.0.3", "status": "active", "id": "e347a18b-ccb6-4abf-84a7-bdc31b49c488", "resource": [ "Appointment" ], "affectsState": true, "kind": "operation", "url": "https://gematik.de/fhir/isik/v2/Terminplanung/OperationDefinition/AppointmentBook", "code": "book", "version": "2.0.3", "parameter": [ { "max": "1", "min": 1, "use": "in", "name": "appt-resource", "type": "Appointment", "documentation": "Eine Appointment-Ressource entsprechend dem dazugehörigen ISiK-Profil. Das Appointment MUSS den Status 'proposed' enthalten. Invalide Appointment-Ressourcen MÜSSEN mit einer OperationOutcome und dem Status Code HTTP 400 - Bad Request abgewiesen werden. Falls der Parameter als einzige Parameter verwendet wird KANN die Appointment-Ressource direkt im HTTP Body anstelle einer Parameter-Ressource übergeben werden. Die referenzierte Ressource MUSS dem ISiKTermin-Profil entsprechen. Invalide Ressource MÜSSEN abgelehnt werden durch das Termin Repository." }, { "max": "1", "min": 0, "use": "in", "name": "cancelled-appt-id", "type": "uri", "documentation": "Für die vorliegende Spezifikation ist die Verschiebung eines Termin eins zwei-stufiger Prozess, bei dem ein Termin storniert und ein neuer Termin neu gebucht wird. Dieser Parameter repräsentiert die Ressourcen-Id des stornierten Appointments. Der uri-Parameter kann eine absoulte URL enthalten, Server SOLLTEN jedoch nur Termine für ihre eigene Domäne verwalten. Im neu-angelegten Appointment MUSS eine Reference auf den abgesagten Termin hinterlegt werden (vgl. Appointment.extension:replaces). Der Status der abgesagten Ressource MUSS durch den Server angepasst werden." }, { "max": "1", "min": 0, "use": "in", "name": "schedule", "type": "Reference", "documentation": "Im Falle das ein Appointment keine Referenz auf ein oder mehrere Slots enthält MUSS der Server die benötigten Slots auf Basis der Referenz auf Schedule, sowie dem Start- und Endzeitpunkt im Appointment ermitteln.", "targetProfile": [ "https://gematik.de/fhir/isik/v2/Terminplanung/StructureDefinition/ISiKKalender" ] }, { "max": "1", "min": 0, "use": "out", "name": "return", "type": "Bundle", "documentation": "Als Return-Parameter wird ein Bundle vom Typ 'searchset' zurückgegeben, welches eine aktualisierte Appointment- oder eine OperationOutcome-Ressource enthält. Im Falle das die Terminbuchung akzeptiert wird MUSS das Appointment persistiert werden. Das id-Element der Ressource MUSS korrekt gefüllt werden. Der Status der Appointment-Ressource muss auf 'booked' geändert werden. Der Server MUSS die verwendeten Slot-Ressourcen als Referenz im Appointment angeben." } ] }