This page describes the representational state transfer application programming interface (REST API) that can be used by developers to access TCIA data and resources. The APIs complement the existing web interfaces and enable developers to build direct access to TCIA data into their applications using only the API documentation provided. The application developer must ensure that they and the users of their applications comply with the TCIA Programmatic Interface REST API Guides. If you are interested in using the APIs and have any questions, please contact the TCIA Help Desk except where otherwise noted.
The tcia_utils package contains functions to simplify common tasks one might perform when interacting with The Cancer Imaging Archive (TCIA) via Python. If you are using R, please try using this package with reticulate (see example below). Issues with this package should be submitted at https://github.com/kirbyju/tcia_utils/issues. Example notebooks demonstrating tcia_utils functionality can be found at https://github.com/kirbyju/TCIA_Notebooks.
Installation can be achieved with this Pip command:
pip install tcia_utils |
To import functions related to the Collection Manager (Wordpress) for accessing high-level metadata about our datasets:
from tcia_utils import wordpress |
To import functions related to NBIA for accessing our DICOM radiology data:
from tcia_utils import nbia |
To import functions related to pathDB for accessing our digitized pathology data:
from tcia_utils import pathdb |
To import functions related to Datacite for querying Collection metadata such as their DOIs, titles, and abstracts:
from tcia_utils import datacite |
If you prefer R to Python, tcia_utils can be used with reticulate. Here's an example:
# install reticulate first if you haven't already
install.packages("reticulate")
# load reticulate
library(reticulate)
# install tcia_utils
py_install("tcia_utils")
# import tcia_utils
nbia <- import("tcia_utils.nbia") # Equivalent to `from tcia_utils import nbia`
# then you can call its functions directly
results <- tcia$your_function()
print(results)
# e.g. Equivalent to `nbia.getCollections()`
collections <- nbia$getCollections() |