Zum Hauptinhalt springen

REST

Konfiguration, Inhalt, Struktur (Stand: Dezember 2020).

Neben standardisierten Schnittstellen wie GDT und HL7 bieten wir auch eine Reihe von REST-Schnittstellen an, die zur Anbindung externer Systeme genutzt werden können.

Patientenimport#

In unserem System können keine Patienten angelegt werden. Wir sind darauf angewiesen, dass diese aus dem Patientenverwaltungssystem zu uns übertragen werden.

Es können einzelne Patienten aber auch komplette Patientenlisten angelegt werden. Z.B. das aktuelle Wartezimmer oder die aktuelle Stationsliste können an uns übermittelt werden.

Konfiguration#

Im ControlCenter wählen Sie als Importschnittstelle REST API und hinterlegen Sie die notwendigen Daten.

Import

Patient anlegen#

Anlegen eines einzelnen Patienten - wenn der Patient bereits in unserem System existiert, werden die Patientendaten automatisch mit den neuen Daten aktualisiert. Der Patientenidentifikator ist die externe PatientenID. Wenn Fälle oder Aufträge verwendet werden, muss die FallID oder AuftragsID angegeben werden.

Jeder Patient, der über diese Schnittstelle in unser System übertragen wird, wird an die aktuelle Patientenliste im Dashboard des ControlCenter's angehängt.

POST /api/v1/integration/importPatient

Request headers

Authorization - SessionID S123456789!

Standard-Anfrage

Die in der Grundabfrage enthaltenen Felder sind Pflichtfelder. Die patientID ist die eindeutige Kennung des Patienten, die vom medizinischen Informationssystem bereitgestellt wird. Die practiceNumber ist gleich der Mandanten-ID im ControlCenter (Mandant).

{
"firstname": "Ivonne",
"lastname": "Schmidt",
"patientID": "1",
"birthdate": "1980-01-15",
"gender": "F",
"practiceNumber": "1",
}

Anfrage mit Auftragsinformationen

{
"firstname": "Ivonne",
"lastname": "Schmidt",
"patientID": "1",
"birthdate": "1980-01-15",
"gender": "F",
"practiceNumber": "1",
"order": {
"orderDate": "2019-05-23T00:01:23.000Z",
"orderID": "2738993S"
"customData": "some string/json"
}
}

Anfrage mit Fallinformationen

{
"firstname": "Ivonne",
"lastname": "Schmidt",
"patientID": "1",
"birthdate": "1980-01-15",
"gender": "F",
"case": {
"caseID": "2738993S"
"practiceNumber": "1",
"admissionDate": "2019-05-23T00:01:23.000Z",
"dischargeDate": "2019-05-23T00:01:23.000Z"
}
}

Patientenliste erstellen#

Erstellen Sie eine vollständige Patientenliste - wenn ein Patient bereits in unserem System vorhanden ist, werden die Patientendaten automatisch mit den neuen Daten aktualisiert. Der Patientenidentifikator ist die externe PatientenID. Wenn Fälle oder Aufträge verwendet werden, muss die FallID oder AuftragsID angegeben werden.

Wenn eine Patientenliste bereitgestellt wird, wird die aktuelle Patientenliste im Dashboard des ControlCenter's durch die neue Liste ersetzt.

Diese Schnittstelle sollte verwendet werden, um eine Wartezimmer- oder Stationsliste zwischen dem führenden medizinischen System und dem ControlCenter zu synchronisieren.

POST /api/v1/integration/importPatientList

Request headers

Authorization - SessionID S123456789!

Standard-Anfrage

[
{
"firstname": "Ivonne",
"lastname": "Schmidt",
"patientID": "1",
"birthdate": "1980-01-15",
"gender": "F",
"practiceNumber": "1",
},
{
"firstname": "Max",
"lastname": "Mustermann",
"patientID": "2",
"birthdate": "1956-06-23",
"gender": "M",
"practiceNumber": "1",
}
]

Das Patientenobjekt kann wie oben gezeigt mit Auftrags- oder Fallinformationen erweitert werden.

Verfügbare Patientendaten#

Hier eine Liste der Patientendaten, die an unser ControlCenter gesendet werden können.

Pflichtfelder

"patientID" = unique patient identifier
"practiceNumber" = Praxisnummer (by default 0, client)
"firstname" = first name of the patient
"lastname" = last name of the patient
"birthdate" = birthdate of the patient (yyyy-MM-dd)
"gender" = gender (F = female, M = male, U = unknown)
"caseID" = unique case identifier (only if cases are used)
"orderID" = unique case identifier (only if orders are used)

Optionale Felder

"title" = Titel
"street" = street
"streetnr" = house number
"city" = city
"postalCode" = postal code
"email" = email
"phone" = phone number
"mobilephone" = mobile phone number
"weight" = weight of the patient (if not known, don't send the field - 0 is not allowed)
"height" = height of the patient (if not known, don't send the field - 0 is not allowed)
"wrPrio" = sorting order for patient list (if not provided, the order of the array is used)
-order workflow-
"orderDate" = the date and time the order was created
"customDate" = needs to be synchronized between AmbulApps and the external system/vendor
-case workflow-
"admissionDate" = admission date of the case
"dischargeDate" = discharge date

Dokumentenexport#

In unserem System werden die Dokumente auf den mobilen Geräten erstellt, ausgefüllt und signiert. Das Ergebnis dieses Prozesses ist ein digital signiertes PDF (PDF A/2b) und strukturierte Daten.

Sowohl das PDF als auch die Daten können über REST an angeschlossene Systeme übertragen werden.

Konfiguration#

Im ControlCenter wählen Sie als Exportschnittstelle REST API und hinterlegen Sie die notwendigen Daten.

Export

Neues Dokument#

Das externe System muss einen Webservice zur Verfügung stellen, der die folgende Anfrage annehmen kann. Jedes Mal, wenn ein Dokument erstellt wird, wird dieser Dienst aufgerufen, um das externe System über das neue Dokument zu informieren.

Standard-Anfrage

{
"patientID": "1",
"documentID": "7886C69D-9D86-4F68-A633-89EA12A39802",
"title": "Anamnesebogen",
"signatureDate": "2019-05-23T00:01:23.000Z",
"creationDate": "2019-05-23T00:01:23.000Z",
"fileName": "4B3EC6B8-86C8-4D6E-8DF9-09D2C8D67CBF.pdf",
"documentData": "TWFuIGlzIGRpc3Rpbmd1aXNoZ..."
}

Anfrage mit Auftragsinformationen

{
"patientID": "1",
"orderID": "2738993S",
"documentID": "7886C69D-9D86-4F68-A633-89EA12A39802",
"title": "Anamnesebogen",
"signatureDate": "2019-05-23T00:01:23.000Z",
"creationDate": "2019-05-23T00:01:23.000Z",
"fileName": "4B3EC6B8-86C8-4D6E-8DF9-09D2C8D67CBF.pdf",
"documentData": "TWFuIGlzIGRpc3Rpbmd1aXNoZ..."
}

Anfrage mit Fallinformationen

{
"patientID": "1",
"caseID": "2738993S",
"documentID": "7886C69D-9D86-4F68-A633-89EA12A39802",
"title": "Anamnesebogen",
"signatureDate": "2019-05-23T00:01:23.000Z",
"creationDate": "2019-05-23T00:01:23.000Z",
"fileName": "4B3EC6B8-86C8-4D6E-8DF9-09D2C8D67CBF.pdf",
"documentData": "TWFuIGlzIGRpc3Rpbmd1aXNoZ..."
}

Dokument aktualisieren#

Änderungen an Dokumenten, die bereits digital signiert wurden, sind nicht möglich. Änderungen können nur durch das Erstellen eines Replikats vorgenommen werden. In diesem Fall wird ein neues Dokument mit dem Inhalt des vorherigen Dokuments erstellt. Das Originaldokument bleibt erhalten.

Noch offene (nicht abgeschlossene) Dokumente werden nicht an angeschlossene Systeme übertragen. Diese Dokumente verbleiben bis zum Signieren nur in unserem System.

Daher bieten wir keine Aktualisierungswege für Dokumente an.

Dokument stornieren#

Digital signierte Dokumente können nicht storniert werden. Wenn ein offenes Dokument in unserem System storniert wird, verbleibt es nur zu Nachverfolgungszwecken in unserem System.

Daher bieten wir keine Route zum Stornieren von Dokumenten an.

Verfügbare Dokumentdaten#

Hier eine Liste der Dokumentdaten, die von unserem ControlCenter versendet werden.

Pflichtfelder

"patientID" = unique patient identifier
"documentID" = unique identifier of the document in our system
"title" = the display name of the document (should be shown in the external system)
"signatureDate" = date the document was signed
"creationDate" = date the document was created
"filename" = the filename that is used in the ControlCenter
"documentDate" = a base64 string with the PDF content