TIFlow - Kernfunktionalitäten
Version 2.0.0-ballot.1 - ci-build

Server-Anforderungen: Consent-Query

Diese Seite enthält die normativen Anforderungen an den TI-Flow-Fachdienst für den Consent-Endpunkt.

Der TI-Flow-Fachdienst MUSS alle Zugriffe auf die Ressource Consent mittels der HTTP-Operationen PUT, PATCH, oder HEAD unterbinden und mit mit dem HTTP-Code "405 - Method Not Allowed" abbrechen, damit keine unzulässigen Operationen ausgeführt werden können.

POST /Consent

Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-POST-Operation auf den Endpunkt /Consent die zeta-user-info.professionOID des Nutzers bestimmen und sicherstellen, dass ausschließlich Nutzer in der Rolle
  • oid_versicherter
die Operation am TI-Flow-Fachdienst aufrufen, und bei Abweichungen die Operation mit dem folgenden Fehler:
HTTP-Code 403 - Forbidden
Severity error
Code invalid
Details Code TIFLOW_AUTH_ROLE_NOT_ALLOWED
Details Text Der Nutzer ist nicht berechtigt, die aufgerufene Operation anzufordern
abbrechen, damit eine Einwilligung nicht durch Unberechtigte erteilt werden kann.
Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-POST-Operation auf den Endpunkt /Consent sicherstellen, dass der zeta-user-info.identifier des Nutzers (KVNR) und die KVNR in Consent.patient.identifier übereinstimmen und im Fehlerfall die Operation mit dem folgenden Fehler:
HTTP-Code 403 - Forbidden
Severity error
Code invalid
Details Code SVC_IDENTITY_MISMATCH
Details Text FHIR Profile Validation Failed
abbrechen, damit eine Einwilligung für einen Versicherten nicht durch Dritte erteilt werden kann.
Der TI-Flow-Fachdienst MUSS die im HTTP-POST-Operation auf die Ressource Consent übertragene Consent Ressource gegen das FHIR-Profil Consent prüfen und bei Nicht-Konformität die Operation mit dem folgenden Fehler:
HTTP-Code 400 - Bad Request
Severity error
Code invalid
Details Code SVC_VALIDATION_FAILED
Details Text FHIR Profile Validation Failed
abbrechen, damit nur FHIR-valide Ressourcen in den TI-Flow-Fachdienst hochgeladen werden.
Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-POST-Operation auf den Endpunkt /Consent sicherstellen, dass noch keine Consent Ressource für den zeta-user-info.identifier des Nutzers (KVNR) und Consent.category.coding.code = <Einwilligungstyp> aus URL-Parameter category gespeichert ist und im Fehlerfall die Operation mit dem folgenden Fehler:
HTTP-Code 409 - Conflict
Severity error
Code invalid
Details Code TIFLOW_CONSENT_ALREADY_EXISTS
Details Text -
abbrechen, um maximal eine Einwilligung für den Versicherten für jeden Einwilligungstypen zu speichern.
Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-POST-Operation auf den Endpunkt /Consent den Zeitpunkt des erfolgreichen Operationsaufrufs in der Consent-Ressource unter .dateTime mit Sekundengenauigkeit hinterlegen. Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-POST-Operation auf den Endpunkt /Consent - falls bei den Prüfungen keine Fehler aufgetreten sind, welche zum Abbruch der Operation führen - die übermittelte Ressource persistieren. Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-POST-Operation auf den Endpunkt /Consent, falls bei den Prüfungen keine Fehler aufgetreten sind, welche zum Abbruch der Operation führen, die übermittelte Ressource persistieren. Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-GET-Operation auf den Endpunkt /Consent die zeta-user-info.professionOID des Nutzers bestimmen und sicherstellen, dass ausschließlich Nutzer in der Rolle
  • oid_versicherter
die Operation am TI-Flow-Fachdienst aufrufen, und bei Abweichungen die Operation mit dem folgenden Fehler:
HTTP-Code 403 - Forbidden
Severity error
Code invalid
Details Code TIFLOW_AUTH_ROLE_NOT_ALLOWED
Details Text Der Nutzer ist nicht berechtigt, die aufgerufene Operation anzufordern
abbrechen, damit die Information zur Einwilligung nicht durch Unberechtigte ausgelesen werden kann.
Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-GET-Operation auf den Endpunkt /Consent die dem Versicherten zugeordneten Consent-Ressourcen anhand des zeta-user-info.identifier des Nutzers (KVNR) identifizieren und in den Response aufnehmen, die in Consent.Patient.identifier die entsprechende KVNR des Versicherten referenziert haben, damit ausschließlich Versicherte ihre eigenen Information zu Einwilligungen einsehen können. Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-Operation DELETE auf den Endpunkt /Consent prüfen, dass der URL-Parameter ?category angegeben ist und bei Abweichung die Operation mit dem folgenden Fehler:
HTTP-Code 405 - Method Not Allowed
Severity error
Code invalid
Details Code TIFLOW_CONSENT_CATEGORY_REQUIRED
Details Text -
abbrechen, um das Löschen mehrerer Ressourcen über einen Request zu verhindern.
Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-Operation DELETE auf den Endpunkt /Consent die zeta-user-info.professionOID des Nutzers bestimmen und sicherstellen, dass ausschließlich Nutzer in der Rolle
  • oid_versicherter
die Operation am TI-Flow-Fachdienst aufrufen und bei Abweichungen die Operation mit dem folgenden Fehler:
HTTP-Code 403 - Forbidden
Severity error
Code invalid
Details Code TIFLOW_AUTH_ROLE_NOT_ALLOWED
Details Text Der Nutzer ist nicht berechtigt, die aufgerufene Operation anzufordern
abbrechen, damit die Information zur Einwilligung nicht durch Unberechtigte gelöscht werden kann.
Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-Operation DELETE auf den Endpunkt /Consent prüfen, dass der für ?category angegebene Wert in den CodeSystemen
  • https://gematik.de/fhir/erpchrg/CodeSystem/GEM_ERPCHRG_CS_ConsentType
  • https://gematik.de/fhir/erp-eu/CodeSystem/GEM_ERPEU_CS_ConsentType
enthalten ist und bei fehlerhafter Prüfung die Operation mit dem folgenden Fehler:
HTTP-Code 400 - Bad Request
Severity error
Code invalid
Details Code TIFLOW_CONSENT_CATEGORY_INVALID
Details Text -
abbrechen, damit nur Löschrequests für definierte Consent Typen ausgeführt werden.

Es bestehen anwendungsfall-spezifische Anforderungen, welche Inhalte beim Widerruf einer Einwilligung zu löschen sind.

Der TI-Flow-Fachdienst MUSS beim Aufruf der HTTP-Operation DELETE auf den Endpunkt /Consent die Ressource löschen, bei der Consent.patient.identifier dem zeta-user-info.identifier des Nutzers (KVNR) sowie Consent.category.coding.code dem in ?category übermittelten Wert entspricht.