TEKO Schweizerische FachschuleEAI IntegrationslaborLive-Labor · Orthanc & Spital
FallstudieLokal starten

Echte HTTP-Aufrufe · synthetische Daten

Sync und Async
selbst ausführen

Diese Seite spricht die laufende Docker-Lern-API an. Du fragst Orte und Spitalkapazitäten synchron ab, startest eine synthetische Orthanc-Metadatenprüfung asynchron und beobachtest Retry, DLQ und Idempotenz.

öffentlich testbarkein Loginkeine Uploadskeine PatientendatenRate & Größe begrenzt
Datenschutzgrenze: Verwende nur die vorgegebenen Demo-Referenzen. Die API akzeptiert keine Namen, Geburtsdaten, echten Fallnummern oder DICOM-Dateien. Orthanc selbst ist ausschließlich im internen Docker-Netz erreichbar.
Systemstatus

Web, Lern-API und internes Orthanc

Lern-API
wird geprüft …
Orthanc intern
wird geprüft …
Aktive Jobs
API-Version
Statusprüfung läuft.
Labor A · Synchron

Ort → Spital → Kapazität

Antwort im selben HTTP-Request
Noch keine Anfrage.
Was wird nacheinander aufgerufen?
GET/lab/api/v1/locations?postalCode=3011Ort bestimmen
GET/lab/api/v1/hospitals?locationId=ort-bernSpitäler finden
GET/lab/api/v1/hospitals/spital-bern/capacity?department=notfallsynthetische Kapazität lesen
Labor B · Asynchron

Imaging-Job mit Orthanc-Prüfung

202 Accepted ist erst der Anfang
Demo-Studien werden geladen.
Direkt per curl

Ohne Browseroberfläche testen

curl -s https://teko.algorithma.app/lab/healthz
curl -s https://teko.algorithma.app/lab/api/v1/pacs/status
curl -s https://teko.algorithma.app/lab/api/v1/demo-studies

curl -i -X POST https://teko.algorithma.app/lab/api/v1/imaging-jobs \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: imaging-demo-curl-001' \
  -H 'X-Correlation-ID: corr-curl-001' \
  -d '{
    "studyReference":"STUDY-DEMO-BERN-001",
    "sourceHospitalId":"spital-bern",
    "purpose":"teaching-validation",
    "simulation":"success"
  }'
Lokal identisch: Ersetze https://teko.algorithma.app durch http://localhost:3190. Pfade und Responses bleiben gleich.
Referenzpfade

Was direkt geöffnet werden kann

GET/lab/healthzLiveness der API
GET/lab/api/v1/pacs/statussanitisierter interner Orthanc-Status
GET/lab/api/v1/demo-studieserlaubte synthetische Referenzen
GET/lab/openapi.jsonOpenAPI 3.1
GET/lab/api/v1/dead-lettersbegrenzte Demo-DLQ
Auswertung

Vier Dinge erklären können

  • Warum antwortet die Async-API zuerst mit 202 und einer Status-URL?
  • Was unterscheidet den retrybaren Orthanc-Ausfall vom Fachfehler?
  • Wie beweist der gleiche Idempotency-Key, dass keine Doppelwirkung entsteht?
  • Welche Daten fehlen bewusst in öffentlicher API, Queue und Logs?