---
title: "Finds Variants by patient or gene or chrom:range"
method: POST
path: "/variants"
tags: ["variants"]
---

# Finds Variants by patient or gene or chrom:range

`POST /variants`

## Request body

- VariantFilters — common filters used to filter variants
  - `chromosome` string — if queried from e.g. gene or range
  - `start` integer
  - `stop` integer
  - `gene` string
  - `genotypes` object[] — This is where you query a patient's variants. Note that you can also do simple arbitrary segregations here
    - `gt` 'het' | 'hom' | 'wt' | 'wtOrMiss' — wt stands for wildtype
    - `patient` string
  - `gnomad` object — cutoffs applied on gnomad frequencies. can include variants that are not covered
    - `include_null` boolean
    - `an` number — Some variants on gnomad has very few available alleles. If AN < an, treat its af as null
    - `af` object
      - `min` number
      - `max` number
    - `hf` object
      - `min` number
      - `max` number
  - `cadd` object
    - `min` number
    - `max` number

## Response `200`

successful operation

- object
  - `parameters` VariantFilters — common filters used to filter variants
    - `chromosome` string — if queried from e.g. gene or range
    - `start` integer
    - `stop` integer
    - `gene` string
    - `genotypes` object[] — This is where you query a patient's variants. Note that you can also do simple arbitrary segregations here
      - `gt` 'het' | 'hom' | 'wt' | 'wtOrMiss' — wt stands for wildtype
      - `patient` string
    - `gnomad` object — cutoffs applied on gnomad frequencies. can include variants that are not covered
      - `include_null` boolean
      - `an` number — Some variants on gnomad has very few available alleles. If AN < an, treat its af as null
      - `af` object
        - `min` number
        - `max` number
      - `hf` object
        - `min` number
        - `max` number
    - `cadd` object
      - `min` number
      - `max` number
  - `data` object[] — collection of variants, but with less detail
    - `id` string
    - `chromosome` string
    - `position` number
    - `gnomad_af` number — If it is not covered by gnomad, the value should be null. If it is covered, but not found, the value should be 0
    - `gnomad_hf` number
    - `gnomad_pop_filter` string[] — Populations that have far too many carriers than average. Used in Phenogenon
    - `filter` string
    - `gene` string[]
    - `codingOrSplicing` boolean
    - `impact` string
    - `consequence` string
    - `cadd` number
    - `numberOfHetsCarriers` number
    - `numberOfHomsCarriers` number
    - `hgvs` string

## Other responses

- `400` — Invalid status value

---

[API](https://skmtc.dev/phenopolis/apis/phenopolis-api.md) · [All operations](https://skmtc.dev/phenopolis/apis/phenopolis-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/phenopolis/phenopolis-api/revisions/91bf2af7c0c2/schema)
