DICOMweb-Dokumentation

VoraussetzungenEinführung & Allgemeine Informationen

Dieses Dokument bietet einen umfassenden technischen Leitfaden für die DICOMweb-API-Funktionen mit Beispielmethoden, die in einer C#-Beispielanwendung verwendet werden. Es enthält detaillierte Erklärungen zu allen verfügbaren Funktionen und deckt sowohl Standard-DICOMweb-Dienste (wie QIDO-RS, WADO-RS und STOW-RS) als auch benutzerdefinierte DICOMweb-API-Endpunkte ab, die von PostDICOM entwickelt wurden. Diese Funktionen sind für die Verwendung in serverseitigen Aufrufen konzipiert.

Um die DICOMweb-Dienste von PostDICOM nutzen zu können, müssen Sie diese Funktion zunächst für Ihr Konto aktivieren lassen und über gültige Benutzeranmeldeinformationen verfügen. Wenn der DICOMweb-Zugriff für Ihr Konto noch nicht aktiviert ist und Sie Ihre Anwendung in PostDICOM integrieren möchten, kontaktieren Sie uns bitte, um die Aktivierung zu beantragen.

Benutzername: Dies ist Ihre primäre Anmeldeinformation, normalerweise Ihre E-Mail-Adresse. Sie ist für Ihr Konto eindeutig und wird als Benutzername bei der Basisauthentifizierung verwendet.

Passwort: Dies ist das Passwort, das mit Ihrem PostDICOM-Konto verknüpft ist. Es wird zusammen mit Ihrem Benutzernamen bei der Basisauthentifizierung verwendet. Für optimale Sicherheit empfehlen wir dringend die Wahl eines starken Passworts. Bitte sorgen Sie für notwendige Sicherheitsmechanismen bei Ihrem serverseitigen Aufruf, damit dieser Benutzername und dieses Passwort von Ihnen geschützt werden.

Sie können Ihr Passwort und Ihre Sicherheitseinstellungen über Ihre Kontoprofilseite verwalten, nachdem Sie sich bei Ihrem PostDICOM-Konto angemeldet haben.


DICOMwebDICOMweb-Standarddienste

DICOM-Instanzen speichern (STOW-RS)

UploadDicomImagesInAFolder(UserName, Password, WebAddress, FileNamesList)

Diese Funktion orchestriert das Hochladen aller .dcm-Dateien aus einem angegebenen lokalen Ordner auf den DICOMweb-Server. Sie identifiziert zunächst alle relevanten Dateien und verwendet dann Hilfsmethoden, um eine authentifizierte Multipart/Related-POST-Anfrage für jede Datei zu erstellen und zu senden, wobei der STOW-RS-Standard eingehalten wird.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
DirectoryPath string Der vollständige Pfad zum lokalen Verzeichnis, das die hochzuladenden DICOM-Dateien (.dcm) enthält.

Abfrage von DICOM-Objekten (QIDO-RS)

QidoSearch(UserName, Password, WebAddress, PatientID, StudyInstanceUID, SeriesInstanceUID)

Diese Funktion führt eine Abfrage nach DICOM-Objekten unter Verwendung des QIDO-RS-Standards durch und ermöglicht die Suche auf Studien-, Serien- oder Instanzebene. Basierend auf dem bereitgestellten Suchparameter (wie Patienten-ID, Studieninstanz-UID oder Serieninstanz-UID) erstellt sie die entsprechende URL und führt eine authentifizierte Anfrage aus, um übereinstimmende Ergebnisse vom Server abzurufen.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
PatientID string Optional. Wird verwendet, um den Patienten zu identifizieren und nach zugehörigen Studien zu suchen.
StudyInstanceUID string Optional. Wird verwendet, um nach einer bestimmten Studie oder allen Serien innerhalb dieser Studie zu suchen.
SeriesInstanceUID string Optional. Wird verwendet, um nach allen Bildinstanzen innerhalb einer bestimmten Serie zu suchen.

Abrufen von DICOM-Instanzen (WADO-RS)

RetrieveImagesUsingWadoRs(UserName, Password, WebAddress, StudyInstanceUID, SeriesInstanceUID, SOPInstanceUID)

Diese Funktion bietet ein interaktives Menü zum Abrufen von DICOM-Objekten unter Verwendung des WADO-RS-Standards. Der Benutzer wählt eine Abrufebene (Studie, Serie oder Instanz) und gibt die entsprechende UID an. Die Funktion stellt dann eine authentifizierte Anfrage, verarbeitet die Multipart/Related-Antwort und speichert jeden DICOM-Teil als separate .dcm-Datei in einem neu erstellten lokalen Verzeichnis.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
StudyInstanceUID string Optional. Ein global eindeutiger Bezeichner für eine DICOM-Studie. Wird verwendet, um alle Serien und Instanzen abzurufen, die dieser Studie zugeordnet sind.
SeriesInstanceUID string Optional. Ein global eindeutiger Bezeichner für eine Serie innerhalb einer DICOM-Studie. Wird verwendet, um alle Bilder dieser Serie abzurufen.
SOPInstanceUID string Optional. Ein eindeutiger Bezeichner für eine einzelne DICOM-Bildinstanz. Wird verwendet, um ein spezifisches Bild mittels WADO-RS abzurufen.

TeilenFreigabeverwaltung

Freigabelink erstellen

CreateShareLink(UserName, Password, WebAddress, PatientOrderInfoList, ExpireDate, SharePassword, Downloadable)

Diese Funktion generiert einen sicheren Weblink, um einen oder mehrere Patientenaufträge mit externen Benutzern zu teilen. Der Link kann passwortgeschützt sein und optional Downloads zulassen.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das Passwort für das PostDICOM-Konto. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
PatientOrderInfoList List Liste von JSON-Strings, von denen jeder einen "PatientOrderUuid"-Schlüssel enthält, der die zu teilenden Patientenaufträge identifiziert.
ExpireDate string (YYYY-MM-DD) Ablaufdatum für den Freigabelink. Nach diesem Datum wird der Link deaktiviert.
SharePassword string Optional. Passwort, das für den Zugriff auf den Freigabelink erforderlich ist. Leer lassen für öffentlichen Zugriff.
Downloadable bool Optional. Bestimmt, ob die DICOM-Studien vom Empfänger heruntergeladen werden können.

Patientenauftrag per URL teilen

SharePatientOrderWithUrl(UserName, Password, WebAddress, OrderUuidList, ExpireDate, SharePassword, UserCanDownloadStudies)

Diese Funktion generiert eine teilbare URL für ausgewählte Patientenaufträge mit zusätzlichen Zugriffskontrolloptionen wie Download-Berechtigung und Passwortschutz.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail) des PostDICOM-Kontos. (aus der Initialisierung)
Password string Das Passwort für das PostDICOM-Konto. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
OrderUuidList List Liste von UUIDs, die die zu teilenden Patientenaufträge identifizieren.
ExpireDate string (YYYY-MM-DD) Datum, nach dem der Freigabelink inaktiv wird.
SharePassword string Optional. Passwort, das für den Zugriff auf den geteilten Link erforderlich ist.
UserCanDownloadStudies bool Optional. Wenn auf true gesetzt, kann der Empfänger die Studien herunterladen.

OrdnerOrdner- & Auftragsverwaltung

Ordner erstellen

CreateFolder(UserName, Password, WebAddress, FolderName, FolderDescription, ParentFolderUuid)

Diese Funktion wird verwendet, um einen neuen Ordner (einen virtuellen Container) innerhalb des PostDICOM-Kontos zu erstellen, um die Organisation von Patientenaufträgen zu unterstützen.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
FolderName string Erforderlich. Der sichtbare Name für den neuen Ordner.
FolderDescription string Optional. Eine Textbeschreibung für den Ordner.
ParentFolderUuid string Optional. Die UUID eines bestehenden Ordners, um den neuen Ordner darin zu erstellen.

Ordner suchen

SearchFolder(UserName, Password, WebAddress, ParentFolderUuid, FolderName, GetOrdersInFolder)

Diese Funktion findet bestehende Ordner basierend auf Suchkriterien. Sie kann optional die Liste der Patientenaufträge innerhalb jedes gefundenen Ordners enthalten.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
ParentFolderUuid string Optional. Eine Ordner-UUID, um die Suche auf dessen Unterordner zu beschränken.
FolderName string Optional. Ein vollständiger oder teilweiser Name, nach dem gesucht werden soll.
GetOrdersInFolder bool Optional. Wenn `true`, enthält die Antwort eine Liste von Patientenaufträgen für jeden gefundenen Ordner.

Ordner per URL teilen

ShareFolderWithUrl(UserName, Password, WebAddress, FolderUuid, SharePassword, ShareTitle, ShareDescription, ExpireDate, UserCanDownloadStudies)

Diese Funktion generiert eine sichere, teilbare URL für einen gesamten Ordner und dessen Inhalt. Sie ermöglicht eine umfassende Zugriffskontrolle durch Festlegen eines benutzerdefinierten Titels, einer Beschreibung, eines Passworts, eines Ablaufdatums und der Angabe, ob die Inhalte vom Empfänger heruntergeladen werden können.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
FolderUuid string Erforderlich. Der eindeutige Bezeichner (UUID) des zu teilenden Ordners.
SharePassword string Optional. Ein Passwort zum Schutz des geteilten Links. Wenn leer gelassen, ist der Link öffentlich zugänglich.
ShareTitle string Optional. Ein benutzerdefinierter Titel für die Seite des geteilten Ordners, sichtbar für den Empfänger.
ShareDescription string Optional. Eine Beschreibung, die auf der Seite des geteilten Ordners angezeigt wird.
ExpireDate string (YYYY-MM-DD) Optional. Das Datum, an dem der Freigabelink automatisch inaktiv wird.
UserCanDownloadStudies bool Optional. Wenn `true`, können Empfänger die im Ordner enthaltenen Patientenaufträge herunterladen.

Auftrag zum Ordner hinzufügen

AddOrderToFolder(UserName, Password, WebAddress, PatientOrderUuid, FolderUuidList)

Diese Funktion erstellt eine Verknüpfung zwischen einem bestehenden Patientenauftrag und einem bestehenden Ordner. Dies ist ein Organisationswerkzeug; es werden keine Daten verschoben oder kopiert.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
PatientOrderUuid string Erforderlich. Die UUID des Patientenauftrags, der in einen Ordner gelegt werden soll.
FolderUuidList List Erforderlich. Eine Liste mit der UUID des Zielordners.

ArbeitsablaufArbeitsablauf & Zuweisung

Auftrag an Benutzer zuweisen

AssignOrderToUser(UserName, Password, WebAddress, PatientOrderUuid, AssignedUserUuid)

Diese Funktion ist ein zentrales Workflow-Tool. Sie weist einem einzelnen Benutzer einen Patientenauftrag zu und signalisiert damit, dass dieser Benutzer nun für eine Aufgabe im Zusammenhang mit diesem Auftrag verantwortlich ist (z. B. Befundung).

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
PatientOrderUuid string Erforderlich. Die UUID des Patientenauftrags, der eine Aktion erfordert.
AssignedUserUuid string Erforderlich. Die UUID des spezifischen Benutzers, dem die Verantwortung zugewiesen wird.

Auftrag an Benutzergruppe zuweisen

AssignOrderToUserGroup(UserName, Password, WebAddress, PatientOrderUuid, AssignedUserGroupUuid)

Ähnlich wie bei der Zuweisung an einen einzelnen Benutzer weist diese Funktion einen Patientenauftrag einer ganzen Gruppe zu und ermöglicht so teambasierte Arbeitsabläufe, bei denen jedes Gruppenmitglied die Aufgabe übernehmen kann.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
PatientOrderUuid string Erforderlich. Die UUID des Patientenauftrags, der der Gruppe zugewiesen werden soll.
AssignedUserGroupUuid string Erforderlich. Die UUID der Benutzergruppe, der der Auftrag zugewiesen werden soll.

PatientenauftragLebenszyklus von Patientenaufträgen & Datenabruf

Patientenauftrag erstellen

CreatePatientOrder(UserName, Password, WebAddress, InstitutionUuid, PatientName, PatientId, OtherPatientId, PatientSex, PatientBirthdate, Modality, StudyDescription, AccessionNumber, PatientComplaints, OrderScheduledDatetime, RequestedProcedureId, RequestedProcedureDescription, RequestingPhysician, ReferringPhysiciansName, ScheduledEquipmentUuid)

Diese Funktion erstellt einen neuen Patientenauftrag, um Bildgebungsstudien im System zu planen und zu verwalten. Erforderliche Parameter müssen für eine erfolgreiche Erstellung angegeben werden.

Erforderliche Parameter Datentyp Beschreibung
InstitutionUuid string Erforderlich. UUID der Institution, in der der Patientenauftrag erstellt wird.
PatientName string Erforderlich. Vollständiger Name des Patienten.
PatientId string Erforderlich. Eindeutiger Bezeichner des Patienten, wie z. B. eine nationale ID oder Patienten-ID.
PatientBirthdate string (YYYY-MM-DD) Erforderlich. Geburtsdatum des Patienten im ISO-Format.
Modality string Erforderlich. Modalitätstyp wie CT, MR, US, usw.
OtherPatientId string Optional. Ein zusätzlicher Bezeichner für den Patienten, falls zutreffend.
PatientSex string Optional. Geschlecht des Patienten (z. B. M, F, O).
StudyDescription string Optional. Beschreibung der bestellten Bildgebungsstudie.
AccessionNumber string Optional. Eindeutige Auftragsnummer (Accession Number) für den Auftrag, falls zutreffend.
PatientComplaints string Optional. Text, der die Beschwerden oder Symptome des Patienten beschreibt.
OrderScheduledDatetime string (YYYY-MM-DD HH:MM) Optional. Das geplante Startdatum und die Uhrzeit des Verfahrens.
RequestedProcedureId string Optional. Bezeichner für das angeforderte Verfahren.
RequestedProcedureDescription string Optional. Beschreibung des angeforderten Verfahrens.
RequestingPhysician string Optional. Name des Arztes, der die Studie angefordert hat.
ReferringPhysiciansName string Optional. Name des überweisenden Arztes, falls abweichend vom anfordernden Arzt.
ScheduledEquipmentUuid string Optional. UUID des Bildgebungsgeräts, das für das geplante Verfahren verwendet werden soll.

Eigenschaften des Patientenauftrags abrufen

GetPatientOrderProperties(UserName, Password, WebAddress, PatientOrderInstitutionUuid, PatientOrderUuid)

Diese Funktion ruft den vollständigen Satz von Eigenschaften für einen einzelnen, spezifischen Patientenauftrag ab.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
PatientOrderInstitutionUuid string Erforderlich. Die UUID der Institution, zu der der Auftrag gehört.
PatientOrderUuid string Erforderlich. Die UUID des spezifischen Patientenauftrags, der abgerufen werden soll.

Nach Patientenaufträgen suchen

GetPatientOrderList(UserName, Password, WebAddress, InstitutionUuidList, PatientName, PatientId, OtherPatientId, AccessionNumber, ModalityList, StudyDateFrom, StudyDateTo, PatientBirthdateFrom, PatientBirthdateTo)

Diese Funktion ruft eine Liste von Patientenaufträgen basierend auf einer Kombination von Suchfiltern wie Patientenname, ID, Modalität und Studien- oder Geburtsdaten ab. Sie ermöglicht erweiterte Suchfunktionen für Institutionen, die mehrere Aufträge verwalten.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
InstitutionUuidList List Liste von UUIDs, die die Institutionen identifizieren, in denen nach Patientenaufträgen gesucht werden soll.
PatientName string Optional. Nach vollständigem Namen des Patienten filtern.
PatientId string Optional. Nach eindeutigem Bezeichner des Patienten filtern.
OtherPatientId string Optional. Sekundärer Bezeichner für den Patienten, falls verfügbar.
AccessionNumber string Optional. Nach der Studie zugewiesener Auftragsnummer filtern.
ModalityList List Liste von Modalitäten (z. B. CT, MR, US), um die Suchergebnisse zu filtern.
StudyDateFrom string (YYYY-MM-DD) Optional. Startdatum des Studienzeitraums zum Filtern der Ergebnisse.
StudyDateTo string (YYYY-MM-DD) Optional. Enddatum des Studienzeitraums zum Filtern der Ergebnisse.
PatientBirthdateFrom string (YYYY-MM-DD) Optional. Startdatum des Geburtsdatumsbereichs, um Patienten nach Alter zu filtern.
PatientBirthdateTo string (YYYY-MM-DD) Optional. Enddatum des Geburtsdatumsbereichs, um Patienten nach Alter zu filtern.

Patientenauftrag löschen

DeletePatientOrder(UserName, Password, WebAddress, PatientOrderInstitutionUuid, PatientOrderUuid)

Diese Funktion löscht einen Patientenauftrag dauerhaft aus dem System. Sie erfordert sowohl die Institutions-UUID als auch die spezifische Patientenauftrags-UUID, um Genauigkeit zu gewährleisten und versehentliches Löschen zu verhindern.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
PatientOrderInstitutionUuid string Erforderlich. UUID der Institution, die den Patientenauftrag besitzt. Stellt sicher, dass der korrekte Kontext für das Löschen verwendet wird.
PatientOrderUuid string Erforderlich. UUID des spezifischen Patientenauftrags, der gelöscht werden soll. Dies identifiziert den Auftrag im System eindeutig.

Dicom TagDICOM-Tag-Inhalt abrufen

DICOM-Tag-Inhalt abrufen

GetDicomTagContent(UserName, Password, WebAddress, PatientOrderInstitutionUuid, PatientOrderUuid, PatientSeriesUuid, DicomTagIdList)

Diese Funktion ruft die Werte bestimmter DICOM-Tags aus den Bildern ab, die einem Patientenauftrag zugeordnet sind.

Erforderliche Parameter Datentyp Beschreibung
UserName string Der Benutzername (E-Mail-Adresse) für das PostDICOM-Konto. (aus der Initialisierung)
Password string Das mit dem PostDICOM-Konto verknüpfte Passwort. (aus der Initialisierung)
WebAddress string Die Basis-URL der API. (aus der Initialisierung)
PatientOrderInstitutionUuid string Erforderlich. Die UUID der Institution, in der sich der Auftrag befindet.
PatientOrderUuid string Erforderlich. Die UUID des Auftrags, der die Bilder enthält.
PatientSeriesUuid string Optional. Wenn angegeben, werden Tags nur aus dieser spezifischen Serie gelesen.
DicomTagIdList List Optional. Eine Liste von DICOM-Tag-IDs, die abgerufen werden sollen.