RequestPsnWorkflow

Zweck

Abfragen bzw. anlegen von Pseudonymen auf Basis eines vorkonfigurierten Pseudonymisierungsablaufs (Workflow) für einen gegebenen Geltungsbereich (Studie und Standort). Rückgabe der generierten standort- und studienspezifischen-Pseudonyme als Params.

Voraussetzung
  • Die spezifizierte Studie muss im Zielsystem bekannt und angelegt sein.
  • Die spezifizierte Quell-Domäne (source) muss im Zielsystem bekannt und angelegt sein.
  • Die standortspezifische Domäne (target) muss im Zielsystem bekannt und angelegt sein.
  • Der spezifizierte API-KEY muss valid sein und über die nötigen Rechte zum Aufruf der Funktion verfügen.
  • Das optional spezifizierte Event muss im Workflow-Manager konfiguriert sein.
Aufruf und Rückgabe

Die bereitgestellte Funktionalität kann per POST-Request aufgerufen werden. Die erforderlichen Angaben werden per POST-BODY in Form von FHIR Parameters übermittelt.

<HOST>:<PORT>/ttp-fhir/fhir/dispatcher/$requestPsnWorkflow

Der Funktionsaufruf liefert eine Parameters-Ressource bestehend aus multiplen Multi-Part-Parametern zurück.

The resource cannot be rendered.

Im Erfolgsfall wird jeweils ein pseudonym-Parameter zurückgegeben mit folgenden Teilen:

  1. original = der zu pseudonymisierende Werte (Teil des Requests)
  2. target = die genutzte Pseudonymisierungsdomäne (Teil des Requests)
  3. pseudonym = das fTTP-seitig erzeugte Pseudonym.

Im Einzel-Fehlerfall wird jeweils ein error-Parameter zurückgegeben, ebenfalls mit den Teilen original und target sowie einem error-code anstelle des Pseudonyms.

Im vollständigen Fehlerfall wird einer der folgenden HTTP Statuscodes in Verbindung mit einer OperationOutcome-Ressource zurückgegeben:

  • 400: fehlende oder fehlerhafte Parameter
Beispiel

Beispielhafter Request-Body (orientiert am Beispiel der fTTP-NUM Standort Use Cases):

<Parameters xmlns="http://hl7.org/fhir">
    <parameter>
        <name value="study" />
        <valueString value="num" />
    </parameter>
    <parameter>
        <name value="original" />
        <valueString value="dic_1H51T" />
    </parameter>
    <parameter>
        <name value="source" />
        <valueString value="dic_erlangen" />
    </parameter>
    <parameter>
        <name value="target" />
        <valueString value="codex" />
    </parameter>
    <parameter>
        <name value="apikey" />
        <valueString value="abcdef12345" />
    </parameter>
</Parameters>

Eine beispielhafte Rückmeldung (orientiert am Beispiel der fTTP-NUM Standort Use Cases) kann wie folgt aussehen:

<Parameters xmlns="http://hl7.org/fhir">
    <parameter>
        <name value="pseudonym" />
        <part>
            <name value="original" />
            <valueIdentifier>
                <system value="https://ths-greifswald.de/gpas" />
                <value value="dic_1H51T" />
            </valueIdentifier>
        </part>
        <part>
            <name value="target" />
            <valueIdentifier>
                <system value="https://ths-greifswald.de/gpas" />
                <value value="codex" />
            </valueIdentifier>
        </part>
        <part>
            <name value="pseudonym" />
            <valueIdentifier>
                <system value="https://ths-greifswald.de/gpas" />
                <value value="codex_6348Q7" />
            </valueIdentifier>
        </part>
    </parameter>
    <parameter>
        <name value="error" />
        <part>
            <name value="original" />
            <valueIdentifier>
                <system value="https://ths-greifswald.de/gpas" />
                <value value="dic_2Q42E" />
            </valueIdentifier>
        </part>
        <part>
            <name value="target" />
            <valueIdentifier>
                <system value="https://ths-greifswald.de/gpas" />
                <value value="codex" />
            </valueIdentifier>
        </part>
        <part>
            <name value="error-code" />
            <valueCoding>
                <system value="http://hl7.org/fhir/issue-type" />
                <code value="not-found" />
                <display value="Not Found" />
            </valueCoding>
        </part>
    </parameter>
</Parameters>