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 aller 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 den Einsatz in serverseitigen Aufrufen vorgesehen.

Um die DICOMweb-Dienste von PostDICOM nutzen zu können, muss diese Funktion zunächst für Ihr Konto aktiviert sein und Sie müssen ü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 anzufordern.

Benutzername: Dies ist Ihre primäre Anmeldeinformation, in der Regel Ihre E-Mail-Adresse. Sie ist für Ihr Konto eindeutig und wird als Benutzername in der Basisauthentifizierung (Basic Authentication) verwendet.

Passwort: Dies ist das mit Ihrem PostDICOM-Konto verknüpfte Passwort. Es wird in Verbindung mit Ihrem Benutzernamen bei der Basisauthentifizierung verwendet. Für optimale Sicherheit empfehlen wir dringend die Wahl eines starken Passworts. Bitte implementieren Sie serverseitig die notwendigen Sicherheitsmechanismen, 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 für jede Datei eine authentifizierte multipart/related POST-Anfrage gemäß dem STOW-RS-Standard zu erstellen und zu senden.

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 von DICOM-Objekten gemäß dem QIDO-RS-Standard durch und ermöglicht Suchen auf Studien-, Serien- oder Instanzebene. Basierend auf dem angegebenen Suchparameter (wie Patienten-ID, Studien-Instanz-UID oder Serien-Instanz-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 nach dem WADO-RS-Standard. Der Benutzer wählt eine Abrufebene (Studie, Serie oder Instanz) und gibt die entsprechende UID an. Die Funktion führt dann eine authentifizierte Anfrage aus, 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 Identifikator für eine DICOM-Studie. Wird verwendet, um alle mit dieser Studie verknüpften Serien und Instanzen abzurufen.
SeriesInstanceUID string Optional. Ein global eindeutiger Identifikator für eine Serie innerhalb einer DICOM-Studie. Wird verwendet, um alle Bilder dieser Serie abzurufen.
SOPInstanceUID string Optional. Ein eindeutiger Identifikator für eine einzelne DICOM-Bildinstanz. Wird verwendet, um ein bestimmtes Bild über WADO-RS abzurufen.

FreigebenVerwaltung der Freigaben

Freigabelink erstellen

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

Diese Funktion generiert einen sicheren Weblink, um einen oder mehrere Patientenaufträge für externe Benutzer freizugeben. Der Link kann passwortgeschützt werden und optional Downloads erlauben.

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, die jeweils einen Schlüssel "PatientOrderUuid" enthalten und die freizugebenden Patientenaufträge identifizieren.
ExpireDate string (YYYY-MM-DD) Ablaufdatum für den Freigabelink. Nach diesem Datum wird der Link deaktiviert.
SharePassword string Optional. Erforderliches Passwort für den Zugriff auf den Freigabelink. Für öffentlichen Zugriff leer lassen.
Downloadable bool Optional. Legt fest, ob die DICOM-Studien vom Empfänger heruntergeladen werden können.

Patientenauftrag per URL freigeben

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

Diese Funktion generiert eine freigebbare URL für ausgewählte Patientenaufträge mit zusätzlichen Zugangskontrolloptionen 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 zur Identifizierung der freizugebenden Patientenaufträge.
ExpireDate string (YYYY-MM-DD) Datum, nach dem der Freigabelink inaktiv wird.
SharePassword string Optional. Erforderliches Passwort für den Zugriff auf den freigegebenen Link.
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) im PostDICOM-Konto zu erstellen und so die Patientenaufträge besser zu organisieren.

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 vorhandenen Ordners, um den neuen Ordner darin zu erstellen.

Ordner suchen

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

Diese Funktion findet vorhandene Ordner basierend auf Suchkriterien. Sie kann optional die Liste der Patientenaufträge innerhalb jedes gefundenen Ordners einschließen.

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 deren untergeordnete Ordner zu beschränken.
FolderName string Optional. Ein vollständiger oder teilweiser Name für die Suche.
GetOrdersInFolder bool Optional. Wenn auf `true` gesetzt, enthält die Antwort eine Liste von Patientenaufträgen für jeden gefundenen Ordner.

Ordner per URL freigeben

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

Diese Funktion generiert eine sichere, freigebbare URL für einen gesamten Ordner und dessen Inhalt. Sie ermöglicht eine umfassende Zugangskontrolle 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. Die eindeutige Kennung (UUID) des freizugebenden Ordners.
SharePassword string Optional. Ein Passwort zum Schutz des freigegebenen Links. Wenn leer gelassen, ist der Link öffentlich zugänglich.
ShareTitle string Optional. Ein benutzerdefinierter Titel für die Seite des freigegebenen Ordners, der für den Empfänger sichtbar ist.
ShareDescription string Optional. Eine Beschreibung, die auf der Seite des freigegebenen Ordners angezeigt wird.
ExpireDate string (YYYY-MM-DD) Optional. Das Datum, an dem der Freigabelink automatisch inaktiv wird.
UserCanDownloadStudies bool Optional. Wenn auf `true` gesetzt, können die Empfänger die im Ordner enthaltenen Patientenaufträge herunterladen.

Auftrag zu Ordner hinzufügen

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

Diese Funktion stellt eine Verknüpfung zwischen einem vorhandenen Patientenauftrag und einem vorhandenen Ordner her. Dies ist ein organisatorisches Tool; 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 einem Ordner platziert werden soll.
FolderUuidList List Erforderlich. Eine Liste, die die UUID des Zielordners enthält.

WorkflowWorkflow & Zuweisung

Auftrag einem Benutzer zuweisen

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

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

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 Maßnahme erfordert.
AssignedUserUuid string Erforderlich. Die UUID des spezifischen Benutzers, dem die Verantwortung zugewiesen wird.

Auftrag einer Benutzergruppe zuweisen

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

Ähnlich wie bei der Zuweisung an einen einzelnen Benutzer weist diese Funktion einen Patientenauftrag einer gesamten Gruppe zu. Dies ermöglicht teambasierte Workflows, bei denen jedes Gruppenmitglied die Aufgabe bearbeiten 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. Für eine erfolgreiche Erstellung müssen die erforderlichen Parameter angegeben werden.

Erforderliche Parameter Datentyp Beschreibung
InstitutionUuid string Erforderlich. UUID der Einrichtung, in der der Patientenauftrag erstellt wird.
PatientName string Erforderlich. Vollständiger Name des Patienten.
PatientId string Erforderlich. Eindeutiger Identifikator des Patienten, wie 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 Identifikator für den Patienten, falls zutreffend.
PatientSex string Optional. Geschlecht des Patienten (z. B. M, F, O).
StudyDescription string Optional. Untersuchungsbeschreibung der angeforderten Bildgebungsstudie.
AccessionNumber string Optional. Eindeutige Accession Number (Auftragsnummer) für den Auftrag, falls zutreffend.
PatientComplaints string Optional. Text zur Beschreibung der Patientenbeschwerden oder -symptome.
OrderScheduledDatetime string (YYYY-MM-DD HH:MM) Optional. Geplantes Startdatum und Uhrzeit der Prozedur.
RequestedProcedureId string Optional. Identifikator für die angeforderte Prozedur.
RequestedProcedureDescription string Optional. Beschreibung der angeforderten Prozedur.
RequestingPhysician string Optional. Name des anfordernden Arztes.
ReferringPhysiciansName string Optional. Name des überweisenden Arztes, falls abweichend vom anfordernden Arzt.
ScheduledEquipmentUuid string Optional. UUID des Bildgebungsgeräts, das für die geplante Prozedur 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 Einrichtung, 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 sowie Studien- oder Geburtsdaten ab. Sie ermöglicht erweiterte Suchfunktionen für Einrichtungen, 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 zur Identifizierung der Einrichtungen, in denen nach Patientenaufträgen gesucht werden soll.
PatientName string Optional. Filtern nach dem vollständigen Namen des Patienten.
PatientId string Optional. Filtern nach dem eindeutigen Identifikator des Patienten.
OtherPatientId string Optional. Sekundärer Identifikator für den Patienten, falls vorhanden.
AccessionNumber string Optional. Filtern nach der der Studie zugewiesenen Accession Number.
ModalityList List Liste von Modalitäten (z. B. CT, MR, US), um die Suchergebnisse zu filtern.
StudyDateFrom string (YYYY-MM-DD) Optional. Startdatum des Studiendatumsbereichs zum Filtern von Ergebnissen.
StudyDateTo string (YYYY-MM-DD) Optional. Enddatum des Studiendatumsbereichs zum Filtern von Ergebnissen.
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 Einrichtungs-UUID als auch die spezifische UUID des Patientenauftrags, um die Genauigkeit zu gewährleisten und ein 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 Einrichtung, die Eigentümer des Patientenauftrags ist. Stellt sicher, dass der richtige Kontext für das Löschen verwendet wird.
PatientOrderUuid string Erforderlich. UUID des spezifischen Patientenauftrags, der gelöscht werden soll. Dies identifiziert den Auftrag eindeutig im System.

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 mit einem Patientenauftrag verknüpft 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 Einrichtung, in der sich der Auftrag befindet.
PatientOrderUuid string Erforderlich. Die UUID des Auftrags, der die Bilder enthält.
PatientSeriesUuid string Optional. Falls angegeben, werden Tags nur aus dieser bestimmten Serie gelesen.
DicomTagIdList List Optional. Eine Liste von DICOM-Tag-IDs, die abgerufen werden sollen.