#web-client #dicom #web #client #http

dicom-web

A high-level API for accessing DICOMweb resources

2 releases

new 0.1.1 Feb 10, 2025
0.1.0 Feb 10, 2025

#170 in HTTP client

Download history 181/week @ 2025-02-07

181 downloads per month

MIT/Apache

42KB
790 lines

DICOMWEB-rs

continuous integration

This is a DICOMweb client library, using the excellent dicom-rs crate.

Features

  • QIDO-RS:
    • /studies: query all studies
    • /studies/{uid}/series: query all series inside a specific study
    • /studies/{uid}/series/{uid}/instances: query all instances in a specific series
    • /series: query all series
    • /instances: query all instances
  • WADO-RS:
    • /studies/{uid}: retrieve all instances in a specific study
    • /studies/{uid}/metadata: retrieve metadata for all instances in a study
    • /studies/{uid}/series/{uid}: retrieve all instances in a specific series
    • /studies/{uid}/series/{uid}/instances/{uid}: retrieve a single instance
    • /studies/{uid}/series/{uid}/instances/{uid}/metadata: retrieve metadata for a specific instance
    • /studies/{uid}/series/{uid}/instances/{uid}/frames/{framelist}: retrieve frame pixeldata for a specific instance

Usage

use dicom_web::DicomWebClient;

let mut client = DicomWebClient::with_single_url("http://localhost:8042");
client.set_basic_auth("orthanc", "orthanc");

let studies = client.query_studies().run().await.unwrap();

Dependencies

~13–25MB
~338K SLoC