Terminprofil löschen (Schedule Delete)


Inhalt

  1. Beschreibung und fachlicher Kontext
  2. Request
  3. Response

Beschreibung und fachlicher Kontext

Beim Löschen eines Terminprofils handelt es sich um die FHIR-Standardinteraktion delete.

Diese Interaktion ermöglicht das Löschen eines Terminprofils im 116117 Terminservice. Nach der Löschung ist das Terminrprofil nicht mehr für die Erstellung neuer Terminslots verfügbar. Das bedeutet, wenn ein neuer Terminslot erstellt werden soll, kann das gelöschte Terminprofil nicht mehr als Grundlage für diesen neuen Terminslot ausgewählt bzw. angegeben werden.

Ein Terminprofil darf nur dann gelöscht werden, wenn keine zukünftigen Terminbuchungen existieren, die auf Terminslots basieren, die mit diesem Terminprofil verknüpft sind. Für Terminprofile vom Typ AUTOMATISCH, die einem konkreten Arzt zugewiesen sind, muss zusätzlich die Bedingung erfüllt sein, dass der zugewiesene Arzt nicht mehr in der Praxis gemeldet ist; erst dann können diese Terminprofile gelöscht werden.

Das Löschen eines Terminprofils ist zudem versionsabhängig. Das bedeutet, dass das TVS die Version des Terminprofils in der Lösch-Anfrage an den 116117 Terminservice übermitteln muss. Stimmt die Version nicht mit der Version überein, die im 116117 Terminservice für dieses Terminprofil hinterelegt ist, bekommt der Anfragende einen Fehler zurück.


Request

Das Löschen eines Terminprofils erfordert einen DELETE-Request.

Die ID des zu löschenden Terminprofils muss in der URL übergeben werden. In der folgenden Tabelle ist für die Terminprofil-ID der Platzhalter [id] in der Zeile URL eingetragen. Die Terminprofil-ID ist im Feld Schedule.id der Schedule-Ressource zu finden.

Die aktuelle Version des zu löschenden Terminprofils muss als Request Header übergeben werden. In der folgenden Tabelle ist für die Version des Terminprofils der Platzhalter [version] in der Zeile Request Header eingetragen. Die Version des Terminprofils ist im Feld Schedule.meta.versionId der Schedule-Ressource zu finden.


HTTP Method DELETE
URL https://terminsynchronisation.eterminservice.kv-safenet.de/tvs​/terminsynchronisation/api/Schedule/[id]
Request Header If-Match: [version]

Request Header

Folgende Request Header werden von den Systemen des 116117 Terminservices unterstützt und verarbeitet:

Header Verpflichtend? Beschreibung Wert
If-Match ja Aktuelle Version des zu löschenden Terminprofils, zu finden im Feld Schedule.meta.versionId. 1
Authorization ja Im Authentisierungsverfahren erhaltener ACCESS_TOKEN als Bearer Token Bearer ey...

Request Body

Ein Request Body ist NICHT erforderlich.


Beispiele

# Lösche das Terminprofil mit der ID "1ec4f924-cd75-45eb-97df-8848ff792fd5" und der aktuelle Version "1"
DELETE https://terminsynchronisation.eterminservice.kv-safenet.de/tvs​/terminsynchronisation/api/Schedule/1ec4f924-cd75-45eb-97df-8848ff792fd5
If-Match: 1

Response

Für das Löschen eines Terminprofils wird im Erfolgsfall der HTTP-Statuscode 204 No Content zurückgegeben. Wurde das Terminprofil bereits zu einem früheren Zeitpunkt gelöscht, wird ebenfalls der HTTP-Statuscode 204 No Content zurückgegeben.

Im Fehlerfall wird ein dem Fehler entsprechender HTTP-Statuscode (bspw. 400 Bad Request oder 500 Internal Server Error) sowie ein OperationOutcome im Response Body zurückgegeben. Dieses OperationOutcome enthält Details zum aufgetretenen Fehler.


Response Header

Es werden KEINE Response Header von den Systemen des 116117 Terminservices gesetzt und an den Anfragenden zurückgesendet.


Response Body

Im Erfolgsfall wird KEIN Response Body zurückgegeben.

Im Fehlerfall ist im Response Body ein OperationOutcome enthalten. Details hierzu sind unter Profil: Fehler (OperationOutcome) zu finden.


Beispiele

Alle Beispiele für den Fehlerfall sind hier im vorliegenden Projekt zu finden.


<OperationOutcome xmlns="http://hl7.org/fhir">
    <id value="cc8e9f90-31ad-4021-9639-e5b940a88a94" />
    <meta>
        <profile value="https://fhir.kbv.de/StructureDefinition/KBV_PR_116117_TERMINSERVICE_TVS_TERMINSYNCHRONISATION_OperationOutcome_Error|1.0.0" />
    </meta>
    <text>
        <status value="extensions" />
        --- We have skipped the narrative for better readability of the resource ---
    </text>
    <issue>
        <severity value="fatal" />
        <code value="value" />
        <details>
            <coding>
                <system value="https://fhir.kbv.de/CodeSystem/KBV_CS_116117_TERMINSERVICE_TVS_TERMINSYNCHRONISATION_Errors" />
                <code value="TVSTS0000" />
                <display value="Sonstiger Fehler. Unter diagnostics finden Sie n&#228;here Informationen zum Fehler." />
            </coding>
        </details>
        <diagnostics value="Ung&#252;ltiger Input-Parameter" />
    </issue>
</OperationOutcome>
<OperationOutcome xmlns="http://hl7.org/fhir">
    <id value="81758936-362c-411f-9d95-7fac5b19deb6" />
    <meta>
        <profile value="https://fhir.kbv.de/StructureDefinition/KBV_PR_116117_TERMINSERVICE_TVS_TERMINSYNCHRONISATION_OperationOutcome_Error|1.0.0" />
    </meta>
    <text>
        <status value="extensions" />
        --- We have skipped the narrative for better readability of the resource ---
    </text>
    <issue>
        <severity value="fatal" />
        <code value="value" />
        <details>
            <coding>
                <system value="https://fhir.kbv.de/CodeSystem/KBV_CS_116117_TERMINSERVICE_TVS_TERMINSYNCHRONISATION_Errors" />
                <code value="TVSTS0018" />
                <display value="Die Dringlichkeit ist ung&#252;ltig." />
            </coding>
        </details>
    </issue>
</OperationOutcome>