Skip to main content

Python client for the grand-challenge.org API

Project description

Grand Challenge API Client

https://img.shields.io/pypi/v/gcapi.svg Build Status Code Coverage Status

Python client for the grand-challenge.org API

  • Free software: Apache Software License 2.0

Features

This client library is a handy way to interact with the REST API for grand-challenge.org from python, and provides some convenience methods.

Uploading Files to Archives, Algorithms or Reader Studies

You will need to get an API token, and find the slug of the object you want to upload to.

First, you will need to authorise the client using your personal API token.

from gcapi import Client

c = Client(token="Your Personal API Token")

Then, prepare the list of files for each image you want to upload.

from pathlib import Path

files = [f.resolve() for f in Path("/path/to/files").iterdir()]

Now, you can upload these files to an Archive, Algorithm or Reader Study which are identified by a slug. For instance, if you would like to upload to the algorithm at https://grand-challenge.org/algorithms/corads-ai/ you would use algorithm="corads-ai". Note that this is case sensitive.

Now you can start the upload.

session = c.upload_cases(files=files, algorithm="corads-ai")

You can change algorithm for archive or reader_study there.

You will get a session that starts the conversion of the files, and then adds the standardised images to the selected object once it has succeeded. You can refresh the session object with

session = c(url=session["api_url"])

and check the session status with session["status"].

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

0.3.4 (2021-02-03)

  • Fix number answer type support for readerstudy validation

0.3.3 (2021-02-02)

  • Adds support for multiple polygon image answers

0.3.2 (2021-02-01)

  • Adds support for Number answers

0.3.1 (2021-02-01)

  • Adds support for Image answers
  • Allows setting content rather than filename in upload_files

0.3.0 (2020-12-02)

  • Breaking Changes in upload_cases:
    • Renamed kwarg files_to_upload to files
    • algorithm kwarg now takes a slug rather than a title
    • Removed run_external_algorithm, use upload_cases instead
  • Add Multiple 2D bounding box question types to reader studies

0.2.9 (2020-09-29)

  • Add support for ETDRS grid annotation endpoints

0.2.8 (2020-06-05)

  • Skip validation of PATCH requests

0.2.7 (2020-05-16)

  • Fixed reader study detail lookups

0.2.6 (2020-05-15)

  • Note: this release has been yanked from pypi
  • Added support for retina polygon annotation sets and retina single polygon annotations
  • If authentication token is unset, the GRAND_CHALLENGE_AUTHORIZATION will be used as a fallback

0.2.5 (2020-04-24)

  • Allow null answers

0.2.4 (2020-04-03)

  • Added GET request params

0.2.3 (2020-03-26)

  • Added ground truth endpoint for reader studies

0.2.2 (2020-03-24)

  • Added support for uploading to archives and reader studies

0.2.1 (2020-03-23)

  • Added Polygon and Choice question types to reader studies

0.2.0 (2020-02-09)

  • Dropped Python 2.7 and 3.5
  • Added support for Python 3.7 and 3.8

0.1.0 (2019-05-07)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for gcapi, version 0.3.4
Filename, size File type Python version Upload date Hashes
Filename, size gcapi-0.3.4-py3-none-any.whl (17.6 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size gcapi-0.3.4.tar.gz (132.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page