Subjects¶
The subject is the individual whose material is being tested. Subjects are the least-mutable entity in the clinical data model; they carry demographics and identifiers and link to one or more samples.
Data model¶
| Field | Purpose |
|---|---|
id (UUID) |
Internal primary key |
display_id |
Human-readable identifier, unique per project |
| Demographics | Sex, date of birth, etc. (schema depends on project settings) |
| Clinical notes | Free-text or structured |
tags, properties |
Categorisation and flexible metadata |
A subject has no lifecycle state machine. Its life is "created, referenced by samples, optionally edited". There is no terminal state.
Subjects and families¶
For hereditary cases, subjects often form a family group. iFlow does not
enforce a family-graph structure on the Subjects entity; the relationship
(proband, mother, father, etc.) is recorded on the sample's role
within an order, not on the subject itself. This lets the same biological
sample play different roles in different family workups.
Files¶
Subject-scoped uploads (consent forms, clinical documents, pedigree charts)
live under subjects/{slug}/uploads/ in the project bucket, where {slug}
is derived from display_id — see File Paths.
UI¶
- Subjects list —
/subjects. - Subject detail —
/subjects/{subject_id}. Shows demographics, linked samples, and subject-level uploads. - New subject —
/subjects/new.
API¶
Base URL: https://miner.<env-domain>/api/v1/subjects. Standard CRUD
endpoints.
CLI¶
iflow subjects list
iflow subjects create --display-id NA12878 --project <project-id>
iflow subjects get NA12878
Related reading¶
- Samples — the specimens drawn from subjects.
- Intake workflow.