AF eQTL Browser API Reference

This document provides information about the available APIs for the AF eQTL Browser. Use these endpoints to programmatically access eQTL data.

REST API

The REST API provides eQTL data in JSON format, making it easy to integrate with other applications and analysis pipelines.

Endpoints

Get eQTLs by Gene

GET /api/eqtls/{gene_symbol}/

Retrieves all eQTLs associated with a specific gene symbol.

Path Parameters
Parameter Type Description
gene_symbol string Symbol of the gene (e.g., SYNPO2L, JAG1)
Example Request
GET /api/eqtls/SYNPO2L/
Example Response
[
  {
    "snp": "rs17171731",
    "gene": "ENSG00000166387",
    "symbol": "SYNPO2L",
    "beta_euro": 0.34,
    "beta_afr": 0.18,
    "p_value_euro": 3.5e-7,
    "q_value_euro": 0.0014,
    "p_value_afr": 0.025,
    "q_value_afr": 0.11,
    "chrom": 10,
    "pos": 75415399
  },
  ...
]

DAS Server

The AF eQTL data can be accessed using the Distributed Annotation System (DAS) protocol. This allows integration with genome browsers and other tools that support DAS.

Endpoints

Features Request

GET /das/eqtls/features?segment={chromosome}:{start},{end}

Retrieves eQTL features within a specific genomic region.

Query Parameters
Parameter Type Description
segment string Genomic coordinates in the format {chromosome}:{start},{end}
type string Optional. Filter results by gene symbol
maxbins integer Optional. Maximum number of bins for the response
Note: Segment requests are limited to 6 megabases for performance reasons.
Example Request
GET /das/eqtls/features?segment=22:30759735,30770000
Example Response
<DASGFF>
  <GFF href="/das/eqtls/features?segment=22:30759735,30770000"/>
  <SEGMENT id="22">
    <FEATURE id="rs123456" label="GENE1:rs123456">
      <BETA_EURO>0.45</BETA_EURO>
      <BETA_AFR>0.32</BETA_AFR>
      <P_VALUE_EURO>2.3e-8</P_VALUE_EURO>
      <Q_VALUE_EURO>0.001</Q_VALUE_EURO>
      <P_VALUE_AFR>0.002</P_VALUE_AFR>
      <Q_VALUE_AFR>0.05</Q_VALUE_AFR>
      <POS>30765432</POS>
    </FEATURE>
    ...
  </SEGMENT>
</DASGFF>

Stylesheet Request

GET /das/eqtls/stylesheet

Retrieves the stylesheet defining how eQTL features should be displayed in DAS-compatible browsers.

Complete Dataset

The complete raw dataset for the AF eQTL study is available through the NCBI Gene Expression Omnibus (GEO).

GEO Accession: GSE69890

This dataset contains the full expression quantitative trait loci (eQTL) analysis for both European and African ancestry populations.

Tools and Libraries

The following tools and libraries can be used to interact with the AF eQTL Browser API:

  • Any HTTP client (curl, wget, requests libraries)
  • DAS-compatible genome browsers (e.g., Dalliance)
  • Scripting languages with HTTP libraries (Python, R, JavaScript)

Python Example

import requests

# Get eQTLs for a specific gene
response = requests.get('http://afeqtl.lerner.ccf.org/api/eqtls/SYNPO2L/')
if response.status_code == 200:
  eqtls = response.json()
  for eqtl in eqtls:
    print(f"SNP: {eqtl['snp']}, p-value (Euro): {eqtl['p_value_euro']}")