Appearance
Zugriff auf CuraGo-Daten ohne Caching-Protokoll für Third-Party Apps
1. Allgemeines
In der folgenden Kurzanleitung wird grob skizziert, wie eine Third-Party-App mit dem CuraGo-Server kommunizieren sollte.
Für detailliertere Angaben ist die OpenAPI-Dokumentation heranzuziehen:
text
https://docs.curasoft.dev/cura-go.deHier wird der Datenaustausch ohne Caching-Protokoll erklärt.
Bei großen Datenmengen wird empfohlen, die API inklusive Caching-Protokoll anzusprechen.
Siehe dazu die Dokumentation zur Variante mit Caching.
2. Authentifizierung beim Server
Die Authentifizierung besteht aus zwei Informationen:
- API-Key: Erlaubt den Serverzugriff.
- ACCESS-Key: Erlaubt den Datenzugriff.
Der API-Key wird von CuraSoft zur Verfügung gestellt.
Der ACCESS-Key wird vom Kunden / Pflegedienst / Leistungserbringer zur Verfügung gestellt.
Dieser kann im cura-go.de-Portal unter „Freigaben“ erzeugt werden.
Diese beiden Keys werden beim Authentifizieren im Header mitgeschickt.
Nachdem man sich erfolgreich authentifiziert hat, erhält man ein Bearer-Token, welches bei allen weiteren Requests im Auth-Header mitgeschickt werden muss.
Das Bearer-Token ist ein JWT (JSON Web Token).
Request
Route
http
GET /auth/v3/appHeader
text
X-API-KEY: <api_key>
X-ACCESS-KEY: <access_key>Response
text
<bearer>3. Abfragen von Daten
Request
Route
http
GET /web/v3/rest/{model}Header
text
Authorization: Bearer <bearer>Pfad-Parameter
text
{model}: z. B. Patient oder MitarbeiterResponse
json
[
{ "..": ".." },
{ "..": ".." }
]4. Beispiel: Abfragen von Mandanten
Ein Leistungserbringer bzw. Pflegedienst kann mehrere Zweigstellen bzw. Mandanten haben.
Diese sind in allen hinterlegten Datensätzen durch das Feld mandant_id gekennzeichnet.
Hier kann man sich auflisten lassen, welche Mandanten ein Leistungserbringer bzw. Pflegedienst überhaupt hat.
Request
Route
http
GET /web/v3/rest/MandantHeader
text
Authorization: Bearer <bearer>Response
text
Mandant[]5. Beispiel: Abfragen von Patienten-Daten
Request
Route
http
GET /web/v3/rest/PatientHeader
text
Authorization: Bearer <bearer>Response
text
Patient[]