Patients API

Data types endpoints

Individuals

api/individuals GET: list of individuals

api/individuals/{id} GET: single individual

The following filters can be used:

  • id (single or multiple ids can be sent): /api/individuals?id=10001&id=10002

  • alternate_ids (case-insensitive partial match): /api/individuals?alternate_ids=10002-23

  • sex (case-insensitive exact match): /api/individuals?sex=female options: female, male, unknown_sex, other_sex

  • karyotypic_sex (case-insensitive exact match): /api/individuals?karyotypic_sex=xx options: unknown_karyotype, XX, XY, XO, XXY, XXX, XXYY, XXXY, XXXX, XYY, other_karyotype

  • active status: /api/individuals?active=true options: true, false

  • deceased status: /api/individuals?deceased=false options: true, false

  • ethnicity (case-insensitive partial match): /api/individuals?ethnicity={value}

  • race (case-insensitive partial match): /api/individuals?race={value}

  • date_of_birth (range filter): /api/individuals?date_of_birth_after=1987-01-01&date_of_birth_before=1990-12-31

  • disease (case-insensitive partial match for disease term label or disease id represented by URI or CURIE): for example, a disease recorded as {"id": "SNOMED:840539006", "label": "COVID-19"} can be searched

    1. by its label

    /api/individuals?disease=covid

    or

    1. by its CURIE

    /api/individuals?disease=SNOMED:840539006

  • found_phenotypic_feature (case-insensitive partial match for phenotypic feature type label or id represented by URI or CURIE), finds all phenotypic feature with negated set to False: for example, a phenotypic feature recorded as {"id": "HP:0000822", "label": "Hypertension"} can be searched

    1. by its label

    /api/individuals?found_phenotypic_feature=hypertension

    or

    1. by its CURIE

    /api/individuals?found_phenotypic_feature=HP:0000822

  • phenopackets__biosamples (single or multiple biosample ids), returns individuals linked to those biosamples:

    /api/individuals?phenopackets__biosamples=2615-01&phenopackets__biosamples=2390-11

  • phenopackets (single or multiple phenopacket ids): /api/individuals?phenopackets=10080&phenopackets=12045

Batch Individuals

api/batch/individuals POST: list of individuals

The following body JSON options can be used:

  • format: case-sensitive, exact match: csv options: csv, phenopackets, fhir, argo

  • id: single or multiple ids can be provided as an array {"id": ["HP:0000822", "HP:0000823"]}