Skip to main content

🧠 LabCAS Infosphere

The LabCAS Infosphere is an API that provides information about the Laboratory Catalog and Archive Service for the Early Detection Research Network.

💁 Example Usage

To retreive the imaging coverage report using the curl command:

curl --silent \
    --user 'secret:p4ssw0rd' \
    https://edrn-labcas.jpl.nasa.gov/infosphere/imaging

Replace the username secret and password p4ssw0rd with the correct credentials. You'll see a response similar to:

[
    {
        "collection": "Lung_Team_Project_2",
        "site": "AvinPOWpghrek",
        "event": "1234567",
        "participantId": "00112233455"
    },
    {
        "collection": "Lung_Team_Project_2",
        "site": "AvinPOWpghrek",
        "event": "2345678",
        "participantId": "11223344556"
    },

To have the data formatted as CSV, run:

curl --silent \
    --user 'secret:p4ssw0rd' \
    'https://edrn-labcas.jpl.nasa.gov/infosphere/imaging?format=csv'

The response will be similar to:

collection,site,event,participantId
Lung_Team_Project_2,AvinPOWpghrek,1234567,00112233455
Lung_Team_Project_2,AvinPOWpghrek,2345678,11223344556

To retreive the Postman collection:

curl --silent https://edrn-labcas.jpl.nasa.gov/infosphere/docs/postman-collection

You can then explore and test the API using the Postman tool.

🎯 Features

This API server currently provides:

  • Health check endpoint: GET /ping returns the current UTC timestamp so clients and operators can quickly verify service availability.
  • Protected imaging endpoint: GET /imaging requires HTTP Basic authentication and validates users against LDAP group membership.
  • Imaging coverage report: aggregates distinct (site, event, participantID) values from Solr and the DMCC API for the Lung_Team_Project_2 and Prostate_MRI collections.
  • Multiple response formats: GET /imaging supports ?format=json (default) and ?format=csv.
  • Postman specification. You can retrieve a Postman-compatible specification of the API by following the link from GET /docs.

These endpoints are typically available at https://SERVER/SUBPATH/ENDPOINT, such as https://edrn-labcas.jpl.nasa.gov/infosphere/imaging. The SUBPATH may be omitted depending on configuration.

📦 Installation

This software requires Python 3.12 or higher but lower than Python 4. To install the released version of the software, create a Python virtual environment and run

python3 -m venv .venv
.venv/bin/pip install jpl.labcas.infosphere==VERSION

Substitute VERSION for the desired version. Use .venv/bin/pip and .venv/bin/python so you do not need to activate the environment.

To install from source:

git clone --quiet https://github.com/EDRN/jpl.labcas.infosphere
cd jpl.labcas.infosphere
python3 -m venv .venv
.venv/bin/pip install --editable .
pre-commit install

🚀 Usage

Launch the server by running

.venv/bin/labcas-infosphere

Run it with --help to see the options. After installation, you can also run modules with .venv/bin/python -m jpl.labcas.infosphere.main. It's recommended to run the server at all times, such as under Supervisor or similar system.

👉 Note: The Infosphere uses the DMCC API which requires a client secret. This can be provided using an environment variable, DMCC_CLIENT_SECRET. If not specified, you'll be prompted to enter it.

To test locally, issue

curl --insecure --silent https://localhost:8998/ping

You should get a timestamp.

📄 License

Licensed under the Apache 2.0 software license. See LICENSE.md for details.

🤝 Contributing

Issues and pull requests are welcome on GitHub. See also the EDRN Code of Conduct and Contributors' Guide.

👤 Credits

  • Developed by Sean Kelly @nutjob4life
  • QC by Heather Kincaid @hoodriverheather

This API was developed in response to EDRN/EDRN-metadata#180.

Copyright © 2026 California Institute of Technology. U.S. Government sponsorship acknowledged.

Metadata

Release files for jpl.labcas.infosphere 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jpl.labcas.infosphere 1.0.1
File Size Uploaded
jpl_labcas_infosphere-1.0.1.tar.gz 19.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jpl.labcas.infosphere 1.0.1
File Interpreter ABI Platform
jpl_labcas_infosphere-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 43.9 kB

Release files / jpl_labcas_infosphere-1.0.1.tar.gz

Download URL jpl_labcas_infosphere-1.0.1.tar.gz
Size 19.4 kB
Tags Source
SHA-256 checksum
How to use checksums
eba71fef67bf5bde0672418ad0952b7e74e014a986bfa94be44c077401b662b4
BLAKE2b-256 checksum
How to use checksums
b8a25b4035ac455b9abd836a5cfcbc63d0b83d2345f15543270ce1700b3f1c8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.13

Release files / jpl_labcas_infosphere-1.0.1-py3-none-any.whl

Download URL jpl_labcas_infosphere-1.0.1-py3-none-any.whl
Size 24.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
533c9eba1917531ea9dd00360ec1261aab89530f17e50cc8e42064ba262ffdf5
BLAKE2b-256 checksum
How to use checksums
b809e43242d6b8484cd8944d3fddc31569b7cd96573ec5868746b62c51271209
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.13

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page