GET ld/:species/:id/:d_prime/:r2/:population_name/:window_size

Computes and returns LD values between the given variant and all other variants in a window centered around the given variant. The window size is set to 500 kb.

Parameters

Required

NameTypeDescriptionDefaultExample Values
id String Variant id - rs56116432
species String Species name/alias - homo_sapiens
human

Optional

NameTypeDescriptionDefaultExample Values
callback String Name of the callback subroutine to be returned by the requested JSONP response. Required ONLY when using JSONP as the serialisation method. Please see the user guide. - randomlygeneratedname
d_prime Float Measure of LD. If D' is provided only return pairs of variants whose D' value is equal to or greater than the value provided. 0 1.0
population_name String Only compute LD for this population. Use GET /info/variation/populations/:species?filter=LD to retrieve a list of all populations with LD data. 0 1000GENOMES:phase_3:KHV
r2 Float Measure of LD. If r-squared is provided only return pairs of variants whose r-squared value is equal to or greater than the value provided. 0 0.85
window_size Integer Window size in kb. The maximum allowed value for the window size is 500 kb. LD is computed for the given variant and all variants that are located within the specified window. 500 500

Example Requests

/ld/human/rs1042779?content-type=application/json;population_name=1000GENOMES:phase_3:KHV


use strict;
use warnings;

use HTTP::Tiny;

my $http = HTTP::Tiny->new();

my $server = 'http://rest.ensembl.org';
my $ext = '/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV';
my $response = $http->get($server.$ext, {
  headers => { 'Content-type' => 'application/json' }
});

die "Failed!\n" unless $response->{success};


use JSON;
use Data::Dumper;
if(length $response->{content}) {
  my $hash = decode_json($response->{content});
  local $Data::Dumper::Terse = 1;
  local $Data::Dumper::Indent = 1;
  print Dumper $hash;
  print "\n";
}

import requests, sys

server = "http://rest.ensembl.org"
ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV"

r = requests.get(server+ext, headers={ "Content-Type" : "application/json"})

if not r.ok:
  r.raise_for_status()
  sys.exit()

decoded = r.json()
print repr(decoded)

import requests, sys

server = "http://rest.ensembl.org"
ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV"

r = requests.get(server+ext, headers={ "Content-Type" : "application/json"})

if not r.ok:
  r.raise_for_status()
  sys.exit()

decoded = r.json()
print(repr(decoded))

require 'net/http'
require 'uri'

server='http://rest.ensembl.org'
path = '/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV'

url = URI.parse(server)
http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(path, {'Content-Type' => 'application/json'})

response = http.request(request)

if response.code != "200"
  puts "Invalid response: #{response.code}"
  puts response.body
  exit
end


require 'rubygems'
require 'json'
require 'yaml'

result = JSON.parse(response.body)
puts YAML::dump(result)

import java.net.URL;
import java.net.URLConnection;
import java.net.HttpURLConnection;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.Reader;


public class EnsemblRest {

  public static void main(String[] args) throws Exception {
    String server = "http://rest.ensembl.org";
    String ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV";
    URL url = new URL(server + ext);

    URLConnection connection = url.openConnection();
    HttpURLConnection httpConnection = (HttpURLConnection)connection;
    
    httpConnection.setRequestProperty("Content-Type", "application/json");
    

    InputStream response = connection.getInputStream();
    int responseCode = httpConnection.getResponseCode();

    if(responseCode != 200) {
      throw new RuntimeException("Response code was not 200. Detected response was "+responseCode);
    }

    String output;
    Reader reader = null;
    try {
      reader = new BufferedReader(new InputStreamReader(response, "UTF-8"));
      StringBuilder builder = new StringBuilder();
      char[] buffer = new char[8192];
      int read;
      while ((read = reader.read(buffer, 0, buffer.length)) > 0) {
        builder.append(buffer, 0, read);
      }
      output = builder.toString();
    } 
    finally {
        if (reader != null) try {
          reader.close(); 
        } catch (IOException logOrIgnore) {
          logOrIgnore.printStackTrace();
        }
    }

    System.out.println(output);
  }
}


curl 'http://rest.ensembl.org/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV' -H 'Content-type:application/json'

wget -q --header='Content-type:application/json' 'http://rest.ensembl.org/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV'  -O -

/ld/human/rs1042779?content-type=application/json;population_name=1000GENOMES:phase_3:KHV;d_prime=1.0


use strict;
use warnings;

use HTTP::Tiny;

my $http = HTTP::Tiny->new();

my $server = 'http://rest.ensembl.org';
my $ext = '/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;d_prime=1.0';
my $response = $http->get($server.$ext, {
  headers => { 'Content-type' => 'application/json' }
});

die "Failed!\n" unless $response->{success};


use JSON;
use Data::Dumper;
if(length $response->{content}) {
  my $hash = decode_json($response->{content});
  local $Data::Dumper::Terse = 1;
  local $Data::Dumper::Indent = 1;
  print Dumper $hash;
  print "\n";
}

import requests, sys

server = "http://rest.ensembl.org"
ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;d_prime=1.0"

r = requests.get(server+ext, headers={ "Content-Type" : "application/json"})

if not r.ok:
  r.raise_for_status()
  sys.exit()

decoded = r.json()
print repr(decoded)

import requests, sys

server = "http://rest.ensembl.org"
ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;d_prime=1.0"

r = requests.get(server+ext, headers={ "Content-Type" : "application/json"})

if not r.ok:
  r.raise_for_status()
  sys.exit()

decoded = r.json()
print(repr(decoded))

require 'net/http'
require 'uri'

server='http://rest.ensembl.org'
path = '/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;d_prime=1.0'

url = URI.parse(server)
http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(path, {'Content-Type' => 'application/json'})

response = http.request(request)

if response.code != "200"
  puts "Invalid response: #{response.code}"
  puts response.body
  exit
end


require 'rubygems'
require 'json'
require 'yaml'

result = JSON.parse(response.body)
puts YAML::dump(result)

import java.net.URL;
import java.net.URLConnection;
import java.net.HttpURLConnection;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.Reader;


public class EnsemblRest {

  public static void main(String[] args) throws Exception {
    String server = "http://rest.ensembl.org";
    String ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;d_prime=1.0";
    URL url = new URL(server + ext);

    URLConnection connection = url.openConnection();
    HttpURLConnection httpConnection = (HttpURLConnection)connection;
    
    httpConnection.setRequestProperty("Content-Type", "application/json");
    

    InputStream response = connection.getInputStream();
    int responseCode = httpConnection.getResponseCode();

    if(responseCode != 200) {
      throw new RuntimeException("Response code was not 200. Detected response was "+responseCode);
    }

    String output;
    Reader reader = null;
    try {
      reader = new BufferedReader(new InputStreamReader(response, "UTF-8"));
      StringBuilder builder = new StringBuilder();
      char[] buffer = new char[8192];
      int read;
      while ((read = reader.read(buffer, 0, buffer.length)) > 0) {
        builder.append(buffer, 0, read);
      }
      output = builder.toString();
    } 
    finally {
        if (reader != null) try {
          reader.close(); 
        } catch (IOException logOrIgnore) {
          logOrIgnore.printStackTrace();
        }
    }

    System.out.println(output);
  }
}


curl 'http://rest.ensembl.org/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;d_prime=1.0' -H 'Content-type:application/json'

wget -q --header='Content-type:application/json' 'http://rest.ensembl.org/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;d_prime=1.0'  -O -

/ld/human/rs1042779?content-type=application/json;population_name=1000GENOMES:phase_3:KHV;window_size=500;d_prime=1.0


use strict;
use warnings;

use HTTP::Tiny;

my $http = HTTP::Tiny->new();

my $server = 'http://rest.ensembl.org';
my $ext = '/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;window_size=500;d_prime=1.0';
my $response = $http->get($server.$ext, {
  headers => { 'Content-type' => 'application/json' }
});

die "Failed!\n" unless $response->{success};


use JSON;
use Data::Dumper;
if(length $response->{content}) {
  my $hash = decode_json($response->{content});
  local $Data::Dumper::Terse = 1;
  local $Data::Dumper::Indent = 1;
  print Dumper $hash;
  print "\n";
}

import requests, sys

server = "http://rest.ensembl.org"
ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;window_size=500;d_prime=1.0"

r = requests.get(server+ext, headers={ "Content-Type" : "application/json"})

if not r.ok:
  r.raise_for_status()
  sys.exit()

decoded = r.json()
print repr(decoded)

import requests, sys

server = "http://rest.ensembl.org"
ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;window_size=500;d_prime=1.0"

r = requests.get(server+ext, headers={ "Content-Type" : "application/json"})

if not r.ok:
  r.raise_for_status()
  sys.exit()

decoded = r.json()
print(repr(decoded))

require 'net/http'
require 'uri'

server='http://rest.ensembl.org'
path = '/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;window_size=500;d_prime=1.0'

url = URI.parse(server)
http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(path, {'Content-Type' => 'application/json'})

response = http.request(request)

if response.code != "200"
  puts "Invalid response: #{response.code}"
  puts response.body
  exit
end


require 'rubygems'
require 'json'
require 'yaml'

result = JSON.parse(response.body)
puts YAML::dump(result)

import java.net.URL;
import java.net.URLConnection;
import java.net.HttpURLConnection;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.Reader;


public class EnsemblRest {

  public static void main(String[] args) throws Exception {
    String server = "http://rest.ensembl.org";
    String ext = "/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;window_size=500;d_prime=1.0";
    URL url = new URL(server + ext);

    URLConnection connection = url.openConnection();
    HttpURLConnection httpConnection = (HttpURLConnection)connection;
    
    httpConnection.setRequestProperty("Content-Type", "application/json");
    

    InputStream response = connection.getInputStream();
    int responseCode = httpConnection.getResponseCode();

    if(responseCode != 200) {
      throw new RuntimeException("Response code was not 200. Detected response was "+responseCode);
    }

    String output;
    Reader reader = null;
    try {
      reader = new BufferedReader(new InputStreamReader(response, "UTF-8"));
      StringBuilder builder = new StringBuilder();
      char[] buffer = new char[8192];
      int read;
      while ((read = reader.read(buffer, 0, buffer.length)) > 0) {
        builder.append(buffer, 0, read);
      }
      output = builder.toString();
    } 
    finally {
        if (reader != null) try {
          reader.close(); 
        } catch (IOException logOrIgnore) {
          logOrIgnore.printStackTrace();
        }
    }

    System.out.println(output);
  }
}


curl 'http://rest.ensembl.org/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;window_size=500;d_prime=1.0' -H 'Content-type:application/json'

wget -q --header='Content-type:application/json' 'http://rest.ensembl.org/ld/human/rs1042779?population_name=1000GENOMES:phase_3:KHV;window_size=500;d_prime=1.0'  -O -

Resource Information

MethodsGET
Response formatsjson
xml
jsonp