Documentation : API access to VariantDB

DISCLAIMER The VariantDB-API is under active development. Documentation is most likely not completely up-to-date.

The API is designed to provide remote access to the filtering functions of VariantDB. Results are provided in JSON format. There is currently no functionality to change anything using the API.

Preparation: Obtaining an API key

API access requires a valid api key. To obtain this key, go to the "My Details" page (Accessible by clicking on your username in the top right corner). Check the box to create an API key and press 'Submit'. The presented API-key is a random string of 32-characters, and is valid for 1 week by default. Optionally, an API-key can be made valid indefinitely and can be disabled on demand.

The API-key must be provided on all API calls as follows:

Code
http://143.169.238.105/variantdb/api/<api-command>?apiKey=<YOUR-API-KEY>

NOTE: Do not share your api key, as it represents your login credentials. Once the API will support editing of data, sharing the key can have serious consequences.

API Command 'SavedFilters'

If no filter-id is provided, this method gets all stored filters. The result contains the following items for each stored filter:

  • fid: Numeric Filter-ID.
  • FilterName: The name associated to the filterset
  • Comments: Optional extra information provided when saving the filterset
  • nrRules: The number of filtering criteria included in the filterset

Code
http://143.169.238.105/variantdb/api/SavedFilters?apiKey=<key>
Example output
[{"fid":"122","FilterName":"Simple_Quality","Comments":"Contains a few Quality Metrics","nrRules":3},{"fid":"126","FilterName":"effects_or","Comments":"Filters on either ensembl or refseq effects","nrRules":2},{"fid":"128","FilterName":"ClinVar_exact","Comments":"Provdes exact ClinVar matches","nrRules":1}]

API Command 'SavedFilters/<filter_id>'

Retrieve full details on the specified filter. Returned items are:

  • FilterName: The name associated to the filterset
  • Comments: Optional extra information provided when saving the filterset
  • Created: Date that filterset was saved in the system
  • FilterSettings: String representation of filter details. Elements are delimited by '@@@', key-value pairs by '|||'. A filter rule consists of :
    1. Category: First level section (family, ANNOvAR, ClinVar, ...)
    2. Negate: Include or exclude matching variants
    3. Param: Second level section (RefSeq_Variant_Type, RefSeq_Gene_Location, ...)
    4. Argument: Selected items in option-lists (exonic, intronic, 5'UTR, ...). These values are typically encoded to integers. See API 'GetValueCodes' for decoding options
    5. Value: Value provided by the user in a free text field (e.g. Minimal depth value)
  • FilterTree: JSON encoded representation of the filtering logic. Note that this item is double-encoded, escaping all regular JSON characters.

Code
http://143.169.238.105/variantdb/api/SavedFilters/<filter_id>?apiKey=<key>
Example output
{"FilterName":"effects_or","Created":"2015-02-18 18:30:25","FilterTree":"[{\\\"id\\\":\\\"j1_1\\\",\\\"text\\\":\\\"OR\\\",\\\"icon\\\":\\\"Images\/layout\/OR.png\\\",\\\"li_attr\\\":{\\\"id\\\":\\\"j1_1\\\",\\\"data-jstree\\\":\\\"{ \\\\\\\"opened\\\\\\\" : true, \\\\\\\"type\\\\\\\" : \\\\\\\"logic_AND\\\\\\\" }\\\"},\\\"a_attr\\\":{\\\"href\\\":\\\"#\\\",\\\"id\\\":\\\"j1_1_anchor\\\"},\\\"state\\\":{\\\"loaded\\\":true,\\\"opened\\\":true,\\\"selected\\\":true,\\\"disabled\\\":false,\\\"type\\\":\\\"logic_AND\\\"},\\\"data\\\":{\\\"jstree\\\":{\\\"opened\\\":true,\\\"type\\\":\\\"logic_AND\\\"}},\\\"children\\\":[{\\\"id\\\":\\\"rule_13\\\",\\\"text\\\":\\\" Effect On Transcript: Match RefSeq GeneLocation: downstream, exonic, exonic\/splicing\\\",\\\"icon\\\":\\\"Images\/layout\/filter.png\\\",\\\"li_attr\\\":{\\\"id\\\":\\\"rule_13\\\"},\\\"a_attr\\\":{\\\"href\\\":\\\"#\\\",\\\"id\\\":\\\"rule_13_anchor\\\"},\\\"state\\\":{\\\"loaded\\\":true,\\\"opened\\\":false,\\\"selected\\\":false,\\\"disabled\\\":false},\\\"data\\\":{},\\\"children\\\":[],\\\"type\\\":\\\"default\\\"},{\\\"id\\\":\\\"rule_14\\\",\\\"text\\\":\\\" snpEff: Match Effect Impact: HIGH, MODERATE\\\",\\\"icon\\\":\\\"Images\/layout\/filter.png\\\",\\\"li_attr\\\":{\\\"id\\\":\\\"rule_14\\\"},\\\"a_attr\\\":{\\\"href\\\":\\\"#\\\",\\\"id\\\":\\\"rule_14_anchor\\\"},\\\"state\\\":{\\\"loaded\\\":true,\\\"opened\\\":false,\\\"selected\\\":false,\\\"disabled\\\":false},\\\"data\\\":{},\\\"children\\\":[],\\\"type\\\":\\\"default\\\"}],\\\"type\\\":\\\"logic_OR\\\"}]","Comments":"","FilterSettings":"category13|||Effect_On_Transcript@@@negate13|||@@@param13|||RefSeq_GeneLocation@@@argument13|||17__18__19__@@@category14|||snpEff@@@negate14|||@@@param14|||Effect_Impact@@@argument14|||123__125__"}

API Command 'LoadFilter'

Import a JSON representation of a saved filter set. This method requires POST submission to the API. Posted variables are:

  • json_file: Text file with json representation of the filter set. It's a dump of api-call SavedFilters/<filter_id>
  • apiKey: Your api-userkey.

The method returns the ID of the newly created filter set (field: 'id'). See example scripts for more details.

API Command 'SavedAnnotations'

If no annotationset-id is provided, this method gets all stored annotation sets. The result contains the following items for each stored set:

  • aid: Numeric Annotation-ID.
  • AnnotationName: The name associated to the annotation set
  • Comments: Optional extra information provided when saving the set
  • nrItems: The number of items selected in the set

Code
http://143.169.238.105/variantdb/api/SavedAnnotations?apiKey=<key>
Example output
[{"aid":"37","AnnotationName":"comprehensive","Comments":"","nrItems":82},{"aid":"38","AnnotationName":"Somatic_State","Comments":"Show ploidy and other oncology related stuff","nrItems":10}]

API Command 'SavedAnnotations/<annotation_id>'

Retrieve full details on the specified annotation set. Returned items are:

  • AnnotationName: The name associated to the annotation set
  • Comments: Optional extra information provided when saving the set
  • Created: Date that annotation set was saved in the system
  • AnnotationSettings: List of selected annotations. Items are delimeted by '@@@'. Each item consists of a <Category>;<Annotation_Name> combination.

Code
http://143.169.238.105/variantdb/api/SavedAnnotations/<annotation_id>?apiKey=<key>
Example output
{"AnnotationName":"Somatic_State","Created":"2015-02-19 14:25:43","AnnotationSettings":"GATK_Annotations;AllelicRatio@@@GATK_Annotations;Alt_Allele_Depth@@@GATK_Annotations;DeltaPL @@@GATK_Annotations;Genotype@@@GATK_Annotations;Ploidy@@@GATK_Annotations;Ref_Allele_Depth@@@GATK_Annotations;Somatic_State@@@GATK_Annotations;Stretch_Length@@@GATK_Annotations;Stretch_Unit@@@GATK_Annotations;Tranches_Filter","Comments":"Show ploidy and other oncology related stuff"}

API Command 'LoadAnnotations'

Import a JSON representation of a saved annotation set. This method requires POST submission to the API. Posted variables are:

  • json_file: Text file with json representation of the annation set. It's a dump of api-call SavedAnnotations/<annotation_id>
  • apiKey: Your api-userkey.

The method returns the ID of the newly created annotation set (field: 'id'). See example scripts for more details.

API Command 'Samples'

Retrieve a list of all samples you have access to. Basic provided sample details include:

  • id: Database identifier of the sample
  • sample_name: Provided sample name
  • gender: Either 'Male', 'Female', or 'Undef'
  • project_name: The name of the project in which the sample is stored.
  • project_id: Database identifier of the listed project.

Code
http://143.169.238.105/variantdb/api/Samples?apiKey=<key>
Example output
[{"id":"1","sample_name":"sample3","gender":"Female","project_name":"2013.7.1_10:25:46","project_id":"3"},{"id":"3","sample_name":"sample1","gender":"Female","project_name":"2013.7.1_10:29:55","project_id":"4"},{"id":"4","sample_name":"haloplex","gender":"Undef","project_name":"2013.7.1_10:29:55","project_id":"4"},{"id":"5","sample_name":"sample2","gender":"Undef","project_name":"2013.7.1_10:29:55","project_id":"4"},{"id":"7","sample_name":"S1.affected.Index","gender":"Male","project_name":"2013.7.4_18:31:13","project_id":"6"},{"id":"9","sample_name":"F5_index","gender":"Undef","project_name":"2013.7.5_12:15:37","project_id":"8"}]

API Command 'Samples/<sample_id>'

Retrieve full details on the specified sample. Returned items are:

  • id: Database identifier of the sample
  • sample_name: Provided sample name
  • gender: Either 'Male', 'Female', or 'Undef'
  • project_name: The name of the project in which the sample is stored.
  • project_id: Database identifier of the listed project.
  • project_created: Date when project was initially created. This does not neccessarily reflect the creation date of the sample.
  • clinical_freetext: Provided free-text clinical information of the sample.
  • clinical_hpo: Structured clinical information according to HPO. Included information per associated HPO term:
    • hpo_id: HPO identifier (e.g. HP:0001263)
    • hpo_term: Short HPO name of the phenotype
    • hpo_definition: Definition of the phenotype according to HPO
    • hpo_comment: Further information regarding the term.
    • hpo_xref: External identifiers corresponding to the HPO-id
  • pedigree: Sample relation to rebuild the pedigree. Contains a node (by sample_id) for each sample in the pedigree holding the following information
    • Replicates: The same sample, under additional ids
    • Siblings: Brothers and/or sisters
    • Parents: Father and/or Mother
    • Children: If any, the children of the sample
    • Each of the above is a list with sample_id, sample_name and sample_gender
  • nr_variants: The number of variants for the current sample, without any applied filters.
  • marked_as_finished: 0/1. Samples can be marked as finished in VariantDB.
  • control_sample: 0/1. Indicates if sample is a control sample.

Code
http://143.169.238.105/variantdb/api/Samples/<sample_id>?apiKey=<key>
Example output
{"sample_id":"5","sample_name":"sample2","gender":"Undef","clinical_freetext":"","marked_as_finished":"0","control_sample":"0", "project_id":"4","project_name":"2013.7.1_10:29:55","project_created":"2013-07-01 10:29:55","clinical_hpo":[{"hpo_term":"Intellectual disability","hpo_definition":"Subnormal intellectual functioning which originates during the developmental period. Intellectual disability, previously referred to as mental retardation, has been defined as an IQ score below 70.","hpo_comment":"This term should be used for children at least five years old. For younger children, consider the term Global developmental delay (HP:0001263).","hpo_xref":"MeSH:D008607 \"Intellectual Disability\",UMLS:C0025362 \"Mental Retardation\",UMLS:C0423903 \"Low intelligence\","}],"pedigree":{"5":{"Replicates":[],"Siblings":[],"Parents":[],"Children":{"1":{"sample_name":"sample3","sample_gender":"Female"}}},"1":{"Replicates":[],"Siblings":{"9":{"sample_name":"F5_index","sample_gender":"Undef"}},"Parents":{"5":{"sample_name":"sample2","sample_gender":"Undef"},"3":{"sample_name":"sample1","sample_gender":"Female"}},"Children":[]},"9":{"Replicates":[],"Siblings":{"1":{"sample_name":"sample3","sample_gender":"Female"}},"Parents":[],"Children":[]},"3":{"Replicates":[],"Siblings":{"8":{"sample_name":"test.b.a.final","sample_gender":"Male"}},"Parents":[],"Children":{"1":{"sample_name":"sample3","sample_gender":"Female"}}},"8":{"Replicates":[],"Siblings":{"3":{"sample_name":"sample1","sample_gender":"Female"}},"Parents":[],"Children":[]}},"nr_variants":"66828"}

API Command 'SubmitQuery/Sample/<sample_id>'

Run Query on a specific sample. Available parameters are:

  • <sample_id>: Mandatory. Numeric sample_id of the sample under study.
  • fid=<filter_id>: Optional. Filter setting to use. Only single filters are possible. Create and store filters using the web-interface to apply them here.
  • aid=<annotation_id>: Optional. Annotation sets to add to the variants. Multiple sets can be provided as a comma seperated list.
  • slicestart=<integer>: Optional. If provided, retrieve 100 variants (chromosome/position sorted), starting from the provided value. If absent, retrieve all variants.

The returned structure contains:

  • query_key: Key to retrieve the results of the query
  • queue_position: Position on the processing queue
  • hpc_job_id: If queries are executed on a HPC-system, this value contains the internal hpc_job_id returned from the scheduler.

Code
http://143.169.238.105/variantdb/api/SubmitQuery/Sample/<sample_id>?fid=<filter_id>&aid=<annotation_id>&apiKey=<key>
Example output
{"hpc_job_id":"2634.devbox","query_key":"32","queue_position":"1"}

API Command 'SubmitQuery/Region/<region_description>'

Run Query on a specific region. Available parameters are:

  • <region_description>: Mandatory. This can be either a RefSeq gene sybmol (e.g. ANK3, or a UCSC region description (e.g. chr5:1545000-1546000).
  • fid=<filter_id>: Optional. Filter setting to use. Only single filters are possible. Create and store filters using the web-interface to apply them here.
  • aid=<annotation_id>: Optional. Annotation sets to add to the variants. Multiple sets can be provided as a comma seperated list.
  • slicestart=<integer>: Optional. If provided, retrieve 100 variants (chromosome/position sorted), starting from the provided value. If absent, retrieve all variants.

The returned structure contains:

  • query_key: Key to retrieve the results of the query
  • queue_position: Position on the processing queue
  • hpc_job_id: If queries are executed on a HPC-system, this value contains the internal hpc_job_id returned from the scheduler.

Code
http://143.169.238.105/variantdb/api/SubmitQuery/Region/<sample_id>?fid=<filter_id>&aid=<annotation_id>&apiKey=<key>
Example output
{"hpc_job_id":"2791.devbox","query_key":"189","queue_position":"1"}

API Command 'GetStatus/Query/<query_id>'

Get status of a query specified by its ID. The returned structure contains:

  • status: Current status. Is one of queued/finished/running/error
  • queue_position: Provided if still queued
  • message: Provided if status is 'error', contains information on the problem
  • stderr: Further error messages, if available in case of 'error'
  • ERROR: Error message in case of failure to check query status

Code
http://143.169.238.105/variantdb/api/GetStatus/Query/<query_id>?apiKey=<key>
Example output
{"status":"finished"}

API Command 'GetStatus/Queue'

Get status of the queue for api-submitted queries. The returned structure contains the number of queued queries:

Code
http://143.169.238.105/variantdb/api/GetStatus/Queue?apiKey=<key>
Example output
{"nr_queued":"17"}

API Command 'GetStatus/Annotation'

Get the annotation status of VariantDB. Reports on pending and/or running annotation jobs for variants and modified gene panels

Code
http://143.169.238.105/variantdb/api/GetStatus/Annotation?apiKey=<key>
Example output
["Pending Variant Annotations", "Running Variant Annotations", "Running GenePanel Annotations"]

API Command 'GetStatus/Annotation/<sample_id>'

Get the annotation status of a specified sample. Reports timestamp when annotation was finished.

Code
http://143.169.238.105/variantdb/api/GetStatus/Annotation/<sample_id>?apiKey=<key>
Example output
{"AnnotationStatus":"Finished on Fri Feb 20 15:14:36 CET 2015"}

API Command 'GetStatus/Revision'

Get current version of VariantDB. Specified as the mercurial revision. The returned structure contains the output from "hg tip" for both the web-interface and the database backend.

Code
http://143.169.238.105/variantdb/api/GetStatus/Revision?apiKey=<key>
Example output
{"Site":["changeset: 463:f5e613a8b374","tag: tip","user: Geert Vandeweyer ","date: Fri Feb 20 11:44:09 2015 +0100","summary: Added parsing support for the ArrogantRobot format of 23andMe data",""],"Database":["changeset: 463:f5e613a8b374","tag: tip","user: Geert Vandeweyer ","date: Fri Feb 20 11:44:09 2015 +0100","summary: Added parsing support for the ArrogantRobot format of 23andMe data","","changeset: 74:d906b042eadc","tag: tip","user: Geert Vandeweyer ","date: Mon Jan 12 16:00:42 2015 +0100","summary: Added ExAC annotation table",""]}

API Command 'GetStatus/VariantDB'

Get the status of VariantDB itself. Status can be:

  • Operative: System is fully operational.
  • Construction: System is down for maintenance. All queries are delayed (paused), access to the website is blocked.
  • LiftOver: A conversion to a new genome-build is performed. All queries are delayed, but (read-only) access to the website is possible.

Code
http://143.169.238.105/variantdb/api/GetStatus/VariantDB?apiKey=<key>
Example output
{"status":"Operative"}

API Command 'GetStatus/Stats'

ADMIN only: Get database and server statistics. Output includes:

  • size_database: Total size of VariantDB databases, according to mysql.
  • size_datafiles: Total size of BAM/VCF files stored on VariantDB by its users.
  • system_df: Full output "df -h", performed on the VariantDB web-server.

Code
http://143.169.238.105/variantdb/api/GetStatus/Stats?apiKey=<key>
Example output
{"size_database":[{"Data Base Name":"NGS-Variants-Admin","Data Base Size in MB":"0.51"},{"Data Base Name":"NGS-Variants-hg18","Data Base Size in MB":"606.35"},{"Data Base Name":"NGS-Variants-hg19","Data Base Size in MB":"3302.84"}],"size_datafiles":"36M","system_df":["Filesystem Size Used Avail Use% Mounted on","\/dev\/vda1 19G 9.6G 7.9G 55% \/",":\/dev/vdb1 57G 38G 20G 66% \/tmp"]}

API Command 'GetQueryResults/<Query_ID>'

Get results of a query, specified by its query_id. Output on success includes, for sample based queries, a 'Variants' element, which is an array of all retained variants and the annotations, and a 'Comments' element, which holds encountered problems and/or summary information.

Code
http://143.169.238.105/variantdb/api/GetQueryResults/<query_id>?apiKey=<key>
Example output
{"Variants":[{"esp6500_aa":".","Stretch_Length":"7\/6","Quality_By_Depth":"0.87","set_inheritance":"Not Defined","Ensembl":[{"Ensembl_VariantType":"nonframeshift substitution","Ensembl_TranscriptID":"ENST00000377770","Ensembl_Exon":"1"},{"Ensembl_VariantType":"nonframeshift substitution","Ensembl_TranscriptID":"ENST00000406326","Ensembl_Exon":"1"}],"validation":"-","snp135_rsID":".","MutationTaster":"D (1.000);N (0.065);N (0.400)","Stretch_Unit":"GCG","diagnostic_class":"-","UCSCgene":[{"UCSC_cPointNT":"c.166_169C","UCSC_Transcript":"uc003wlk.3","UCSC_Symbol":"DPP6"},{"UCSC_cPointNT":"c.166_169C","UCSC_Transcript":"uc003wlj.3","UCSC_Symbol":"DPP6"}],"ljb_Sift":". (-1.000)","ljb_PolyPhen2":". (-1.000)","_1000g2012apr_all":".","ljb_MutTast":". (-1.000)","Strand_Bias":"0","validation_details":"","Fisher_Strand_Bias":"2.813","SIFT\/PROVEAN":[{"SIFT_Position":"57\/865","PROVEAN_Effect":"N","PROVEAN_Score":"0.068","SIFT_Score":"-1.000","SIFT_Protein":"ENSP00000367001","SIFT_Effect":".","SIFT_Type":".","SIFT_AA_Change":"G\/.","Grantham_Score":"0"},{"SIFT_Position":"57\/353","PROVEAN_Effect":"N","PROVEAN_Score":"0.420","SIFT_Score":"-1.000","SIFT_Protein":"ENSP00000384393","SIFT_Effect":".","SIFT_Type":".","SIFT_AA_Change":"G\/.","Grantham_Score":"0"}],"Genomic_SuperDups_Score":"0.98228","Alternative Allele Depth":"5","allelic_ratio":"0.1923","_1000g2012apr_eur":".","ref_allele":"CGCG","Tranches_Filter":".","snp130_rsID":".","variant_id":"169469","snp138_NrChr":"0","Stretch":"yes","Phred_Polymorphism":"399.33","Reference Allele Depth":"21","Base_Quality_Rank_Sum":"3.48","Mapping_Quality":"55.56","snp137_NrChr":"0","position":"153750071","esp6500_all":".","genotype":"Heterozygous","snp137_MAF":"0.00000","Phred_Genotype":"99","ljb_GERP":". (-1.000)","estimated_inheritance":"- (0p\/1s\/r)","DeltaPL":"109","Genomic_SuperDups_Location":"chr7:149735855","snp135_MAF":"0.00000","Read_Position_Rank_Sum":"-1.399","Mapping_Quality_Rank_Sum":"-5.421","chr":"chr7","snp138_MAF":"0.00000","ljb_LRT":". (-1.000)","esp5400_aa":".","snp137_Clinical":"0","RefSeq":[{"RefSeq_Symbol":"DPP6","RefSeq_cPointAA":".","RefSeq_Protein_Length_Difference":"0","RefSeq_cPointNT":"c.166_169C"},{"RefSeq_Symbol":"DPP6","RefSeq_cPointAA":".","RefSeq_Protein_Length_Difference":"0","RefSeq_cPointNT":"c.166_169C"}],"snp135_NrChr":"0","_1000g2012apr_afr":".","snp135_Clinical":"0","snp137_rsID":".","snp138_Clinical":"0","alt_allele":"C"},{"esp6500_aa":".","Stretch_Length":"0\/0","Quality_By_Depth":"4.94","set_inheritance":"Not Defined","Ensembl":[{"Ensembl_VariantType":"nonsynonymous SNV","Ensembl_TranscriptID":"ENST00000252321","Ensembl_Exon":"1"}],"validation":"-","snp135_rsID":".","MutationTaster":"D (1.000)","Stretch_Unit":"","diagnostic_class":"-","UCSCgene":[{"UCSC_cPointNT":"c.T1240C","UCSC_Transcript":"uc001qni.3","UCSC_Symbol":"KCNA5"}],"ljb_Sift":"D (1.000)","ljb_PolyPhen2":"D (0.998)","_1000g2012apr_all":".","ljb_MutTast":"D (1.000)","Strand_Bias":"0","validation_details":"","Fisher_Strand_Bias":"0","SIFT\/PROVEAN":[{"SIFT_Position":"414\/613","PROVEAN_Effect":"D","PROVEAN_Score":"-4.866","SIFT_Score":"1.000","SIFT_Protein":"ENSP00000252321","SIFT_Effect":"D","SIFT_Type":".","SIFT_AA_Change":"S\/P","Grantham_Score":"74"}],"Genomic_SuperDups_Score":".","Alternative Allele Depth":"1","allelic_ratio":"0.1667","_1000g2012apr_eur":".","ref_allele":"T","Tranches_Filter":".","snp130_rsID":".","variant_id":"169479","snp138_NrChr":"0","Stretch":"no","Phred_Polymorphism":"444.95","Reference Allele Depth":"5","Base_Quality_Rank_Sum":"-3.82","Mapping_Quality":"41.31","snp137_NrChr":"0","position":"5154553","esp6500_all":".","genotype":"Heterozygous","snp137_MAF":"0.00000","Phred_Genotype":"14","ljb_GERP":"NA (4.520)","estimated_inheritance":"- (0p\/1s\/r)","DeltaPL":"14","Genomic_SuperDups_Location":".","snp135_MAF":"0.00000","Read_Position_Rank_Sum":"-8.117","Mapping_Quality_Rank_Sum":"-0.49","chr":"chr12","snp138_MAF":"0.00000","ljb_LRT":"D (1.000)","esp5400_aa":"0.00054","snp137_Clinical":"0","RefSeq":[{"RefSeq_Symbol":"KCNA5","RefSeq_cPointAA":"p.S414P","RefSeq_Protein_Length_Difference":"0","RefSeq_cPointNT":"c.T1240C"}],"snp135_NrChr":"0","_1000g2012apr_afr":".","snp135_Clinical":"0","snp137_rsID":".","snp138_Clinical":"0","alt_allele":"C"}],"Comments":["2 out of 148 variants passed the used filter settings.","total runtime: 17s"]}

For region based queries, the result contains a 'Variants' and 'Comments' element. The Variants element holds two child elements:

  • general_annotations: Annotations that are not sample specific (e.g. Gene effect, population frequencies, ClinVar associations etc.)
  • sample_specific_annotations: One entry per sample harbouring the variant, identified by the sample_id. These entries hold:
    • sample_details: sample_name, sample_gender
    • variant_details: All specified, sample specific annotations (e.g. Depth, Strand Bias, mapping quality, etc)

Code
http://143.169.238.105/variantdb/api/GetQueryResults/<query_id>?apiKey=<key>
Example output
{"Variants":[{"sample_specific_annotations":{"6":{"sample_details":{"sample_name":"test","sample_gender":"Undef"},"variant_details":{"strand_bias":"-454.52","mapping_quality_rank_sum":"1.008","tranches_filter":".","base_quality_rank_sum":"0.368","fisher_strand_bias":"6.747","deltapl":"496","genotype":"Heterozygous","read_position_rank_sum":"0.818","mapping_quality":"57.92","somatic_state":"1","quality_by_depth":"21.99","ploidy":"2","phred_polymorphism":"989.66","alt_allele_depth":"29","ref_allele_depth":"16","stretch_length":"0\/0"}},"8":{"sample_details":{"sample_name":"test.b.a.final","sample_gender":"Male"},"variant_details":{"strand_bias":"0","mapping_quality_rank_sum":"0.563","tranches_filter":"PASS","base_quality_rank_sum":"0.135","fisher_strand_bias":"0","deltapl":"287","genotype":"Heterozygous","read_position_rank_sum":"-0.832","mapping_quality":"59.92","somatic_state":"1","quality_by_depth":"15.92","ploidy":"2","phred_polymorphism":"366.16","alt_allele_depth":"14","ref_allele_depth":"9","stretch_length":"0\/0"}},"5":{"sample_details":{"sample_name":"sample2","sample_gender":"Undef"},"variant_details":{"strand_bias":"-454.52","mapping_quality_rank_sum":"1.008","tranches_filter":".","base_quality_rank_sum":"0.368","fisher_strand_bias":"6.747","deltapl":"0","genotype":"Heterozygous","read_position_rank_sum":"0.818","mapping_quality":"57.92","somatic_state":"1","quality_by_depth":"21.99","ploidy":"2","phred_polymorphism":"989.66","alt_allele_depth":"29","ref_allele_depth":"16","stretch_length":"0\/0"}}},"variant_id":"34481","general_annotations":{"esp6500_aa":"0.00817","Ensembl":[{"Ensembl_VariantType":"nonsynonymous SNV","Ensembl_TranscriptID":"ENST00000280772","Ensembl_Exon":"37"}],"snp135_rsID":"rs41274672","MutationTaster":"N (0.000)","Stretch_Unit":"","UCSCgene":[{"UCSC_cPointNT":"c.G8988C","UCSC_Transcript":"uc001jky.3","UCSC_Symbol":"ANK3"}],"ljb_Sift":"T (0.890)","ljb_PolyPhen2":"P (0.279)","ljb_MutTast":"NA (0.408)","1000g2012apr_all":"0.02","SIFT\/PROVEAN":[{"SIFT_Position":"2996\/4377","PROVEAN_Effect":"N","PROVEAN_Score":"-0.461","SIFT_Score":"0.826","SIFT_Protein":"ENSP00000280772","SIFT_Effect":"T","SIFT_Type":"Single AA Change","SIFT_AA_Change":"Q\/H","Grantham_Score":"24"}],"Genomic_SuperDups_Score":".","ref_allele":"C","snp130_rsID":"rs41274672","snp138_NrChr":"8052","Stretch":"no","position":"61831651","snp137_NrChr":"8058","esp6500_all":"0.01169","snp137_MAF":"0.01552","ljb_GERP":"NA (-1.300)","Genomic_SuperDups_Location":".","snp135_MAF":"0.01335","1000g2012apr_afr":"0.01","chr":"chr10","snp138_MAF":"0.01540","esp5400_aa":"0.00990","ljb_LRT":"N (0.929)","snp137_Clinical":"0","RefSeq":[{"RefSeq_Symbol":"ANK3","RefSeq_cPointAA":"p.Q2996H","RefSeq_Protein_Length_Difference":"0","RefSeq_cPointNT":"c.G8988C"}],"snp135_NrChr":"6740","snp135_Clinical":"0","1000g2012apr_eur":"0.01","snp137_rsID":"rs41274672","snp138_Clinical":"0","Comments":["Gene Based Query. Only variants annotated by ANNOVAR_refgene table will be listed (intronic variants might be missed!)","1 variants passed the used filter settings.","total runtime: 4s"]}