Skip to main content

pypi actions codecov downloads clinicedc

edc-retinopathy

Add a diabetic retinopathy screening form and REST API for integrating with a fundus camera in a clinicedc project.

A clinician creates an EyeExamRegister instance in the EDC before the exam. The camera software (fundus-camera-watchdog) resolves the subject, uploads eye images, DICOM files and reports, then checks status.

Requires django>=5.2,<6.1 and djangorestframework>=3.16.0

REST API

All endpoints use TokenAuthentication.

GET /api/retinopathy/ping/

Health check. Returns {"status": "ok"}.

POST /api/retinopathy/resolve/

Confirm a EyeExamRegister exists for a subject. Payload:

{"subject_identifier": "105-10-0001-2"}

Returns 200 with eye_exam_register_id and uploaded list, or 404 if no session exists.

POST /api/retinopathy/<subject_identifier>/<file_type>/

Upload a file. Multipart form with file, capture_datetime, and optional checksum (SHA-256). Valid file types:

  • left, right – eye images (JPEG/PNG)

  • left_dicom, right_dicom – DICOM files

  • left_report, right_report, report – reports (PDF/HTML)

Multiple files per type are accepted. Files are stored with their original filenames under <storage_dir>/images/<session_pk>/.

GET /api/retinopathy/<subject_identifier>/status/

Session status: uploaded types, missing types, and whether the session is complete.

Models

EyeExamRegister

Created by the clinician in the EDC. Links to RegisteredSubject and stores contra-indication screening fields, report type (combined / per-eye), and device ID.

SessionFile

One record per uploaded file. Tracks file type, original filename, stored path, content type, size, SHA-256 checksum, and capture timestamp.

Settings

EDC_RETINOPATHY_STORAGE_DIR

Base path for file storage. Must contain an images/ subdirectory.

EDC_RETINOPATHY_MAX_FILE_SIZE_MB

Maximum upload size in MB (default: 10).

EDC_RETINOPATHY_VISIT_DATETIME_FILTER

Datetime filter for Call List. If set, filters the list of subjects to those who attended AFTER the given datetime.

See also https://edc-retinopathy.readthedocs.io/en/latest/

Download files

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

Source Distribution

edc_retinopathy-1.2.0.tar.gz (41.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

edc_retinopathy-1.2.0-py3-none-any.whl (78.1 kB view details)

Uploaded Python 3

File details

Details for the file edc_retinopathy-1.2.0.tar.gz.

File metadata

  • Download URL: edc_retinopathy-1.2.0.tar.gz
  • Upload date:
  • Size: 41.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for edc_retinopathy-1.2.0.tar.gz
Algorithm Hash digest
SHA256 f07e18c4cb1853343c4f2a097ea40c55bff55f69f9baabc47757172cc6623864
MD5 0b23e9926441f683fda35f293c1a415a
BLAKE2b-256 b202dc3a08997594cd0c1719ab2e9d5df783f0852baba03f2137672dd9e2cec1

See more details on using hashes here.

File details

Details for the file edc_retinopathy-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: edc_retinopathy-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 78.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for edc_retinopathy-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3ce19fbe498e804e2f52c5208329ccd2e0135a3b7c740d2346623b8b657bb749
MD5 e64811fdd3dca3e58c2ef4943ad70c07
BLAKE2b-256 394696bdecb6140a23438e5c456a7191072314f4e25f671022d8178f4a6af9bb

See more details on using hashes here.

Release history Release notifications | RSS feed

1.3.0

2 files

1.2.1

2 files

This release

1.2.0 This release

2 files

1.1.0

2 files

1.0.0

2 files

0.8.0

2 files

0.7.8

2 files

0.7.7

2 files

0.7.6

2 files

0.7.5

2 files

0.7.4

2 files

0.7.3

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.0

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.1

2 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