1. Get all organism available on remote server that have genome data available

1.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/taxonomies/' -X GET

1.2. Response Fields

Path Type Description

[]

array

list of organisms

[].resource

string

taxonomy id of the organism

1.3. Sample Response

[ {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9606",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "10090",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "30538",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "8496",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "8049",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9597",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "8822",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "13146",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9685",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9031",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "10029",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "143292",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7718",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7897",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9913",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9541",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9615",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7868",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9669",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7227",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "31032",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9581",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "8962",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "61622",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "60711",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "10141",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "29088",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9796",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "482537",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "8090",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9767",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "10181",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "8128",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "8479",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "212257",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9823",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "43780",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9986",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "10116",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9813",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9940",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9476",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9305",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "94438",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "47144",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "120498",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9395",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9103",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "9807",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "59729",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7217",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7220",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7222",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7230",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7234",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7237",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7238",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7240",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7244",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7260",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7245",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7070",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "135651",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "6238",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "6239",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "281687",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "31234",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "54126",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "1570291",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "10244",
  "id" : 0,
  "annotatorClassName" : ""
}, {
  "link" : null,
  "type" : "TAXONOMY",
  "resource" : "7955",
  "id" : 0,
  "annotatorClassName" : ""
} ]

2. Get all genome types (remote databases) that support given organism.

2.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/taxonomies/9606/genomeTypes/' -X GET

2.2. Path Parameters

Table 1. /minerva/api/genomics/taxonomies/{taxonomyId}/genomeTypes/
Parameter Description

taxonomyId

organism taxonomy id

2.3. Response Fields

Path Type Description

[]

array

list of genome types

[].type

string

type

2.4. Sample Response

[ {
  "type" : "UCSC"
} ]

3. Get all available genome versions for specified organism and genome type

3.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/taxonomies/9606/genomeTypes/UCSC/versions/' -X GET

3.2. Path Parameters

Table 2. /minerva/api/genomics/taxonomies/{taxonomyId}/genomeTypes/{genomeType}/versions/
Parameter Description

taxonomyId

organism taxonomy id

genomeType

genome type, acceptable values: UCSC

3.3. Response Fields

Path Type Description

[]

array

list of genome versions

[].version

string

version

3.4. Sample Response

[ {
  "version" : "hg38"
}, {
  "version" : "hg24may2000"
}, {
  "version" : "hg19"
}, {
  "version" : "hg18"
}, {
  "version" : "hg17"
}, {
  "version" : "hg16"
}, {
  "version" : "hg15june2000"
}, {
  "version" : "hg13"
}, {
  "version" : "hg12"
}, {
  "version" : "hg11"
}, {
  "version" : "hg10"
}, {
  "version" : "10april2003"
}, {
  "version" : "hg8"
}, {
  "version" : "hg7"
}, {
  "version" : "hg6"
}, {
  "version" : "hg5"
}, {
  "version" : "hg4"
}, {
  "version" : "hs1"
} ]

4. Get remote url for specified genome, version, and remote database

4.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/taxonomies/9606/genomeTypes/UCSC/versions/hg38:getAvailableRemoteUrls' -X GET

4.2. Path Parameters

Table 3. /minerva/api/genomics/taxonomies/{taxonomyId}/genomeTypes/{genomeType}/versions/{version}:getAvailableRemoteUrls
Parameter Description

taxonomyId

organism taxonomy id

genomeType

genome type, acceptable values: UCSC

version

genome version

4.3. Response Fields

Path Type Description

[]

array

list of urls

[].url

string

url

4.4. Sample Response

[ {
  "url" : "https://hgdownload.soe.ucsc.edu//goldenPath/hg38/bigZips/hg38.2bit"
} ]

5. Start downloading genome data from remote database to minerva

5.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/' -X POST \
    -d 'organismId=1570291&type=UCSC&version=eboVir3&url=http%3A%2F%2Fminerva-dev.lcsb.uni.lu%2FeboVir3.2bit' \
    --cookie "MINERVA_AUTH_TOKEN=xxxxxxxx" \
    -H 'Content-Type: application/x-www-form-urlencoded'

5.2. Request Parameters

Parameter Description

organismId

organism taxonomy id

type

genome type, acceptable values: UCSC

version

genome version

url

url address from where the file should be downloaded

6. Get information about specific downloaded genome

6.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/taxonomies/1570291/genomeTypes/UCSC/versions/eboVir3/' -X GET

6.2. Path Parameters

Table 4. /minerva/api/genomics/taxonomies/{taxonomyId}/genomeTypes/{genomeType}/versions/{version}/
Parameter Description

taxonomyId

organism taxonomy id

genomeType

genome type, acceptable values: UCSC

version

genome version

6.3. Response Fields

Path Type Description

downloadProgress

double

download progress (0-100%)

geneMapping

Array

list of available gene mappings for given genome

geneMapping[].name

String

name of the gene mapping

geneMapping[].sourceUrl

String

source url of the gene mapping

geneMapping[].localUrl

String

url with local copy of the mapping

geneMapping[].downloadProgress

Number

download progress

geneMapping[].idObject

Number

id of the gene mapping

idObject

Number

unique id of genome in minerva

localUrl

String

url on minerva where local copy of genome can be accessed

organism

Object

organism identifier

organism.resource

String

organism identifier

organism.type

String

organism identifier type (usually TAXONOMY)

sourceUrl

String

genome source url

type

String

type of genome (database from which it was downloaded)

version

String

genome version

6.4. Sample Response

{
  "organism" : {
    "link" : null,
    "type" : "TAXONOMY",
    "resource" : "1570291",
    "id" : 1735,
    "annotatorClassName" : ""
  },
  "version" : "eboVir3",
  "type" : "UCSC",
  "downloadProgress" : 100.0,
  "sourceUrl" : "ftp://hgdownload.cse.ucsc.edu/goldenPath/eboVir3/bigZips/eboVir3.2bit",
  "localUrl" : "ftp://hgdownload.cse.ucsc.edu/goldenPath/eboVir3/bigZips/eboVir3.2bit",
  "idObject" : 15,
  "geneMapping" : [ {
    "downloadProgress" : 0.0,
    "localUrl" : "https://minerva-dev.lcsb.uni.lu/tmp/refGene.bb",
    "sourceUrl" : "https://minerva-dev.lcsb.uni.lu/tmp/refGene.bb",
    "name" : "custom-gene-mapping",
    "idObject" : 17
  } ]
}

7. Get information about all downloaded genomes

7.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/' -X GET

7.2. Response Fields

Path Type Description

[]

array

list of downloaded genomes

[].downloadProgress

double

download progress (0-100%)

[].geneMapping

Array

list of available gene mappings for given genome

[].geneMapping[].name

String

name of the gene mapping

[].geneMapping[].sourceUrl

String

source url of the gene mapping

[].geneMapping[].localUrl

String

url with local copy of the mapping

[].geneMapping[].downloadProgress

Number

download progress

[].geneMapping[].idObject

Number

id of the gene mapping

[].idObject

Number

unique id of genome in minerva

[].localUrl

String

url on minerva where local copy of genome can be accessed

[].organism

Object

organism identifier

[].organism.resource

String

organism identifier

[].organism.type

String

organism identifier type (usually TAXONOMY)

[].sourceUrl

String

genome source url

[].type

String

type of genome (database from which it was downloaded)

[].version

String

genome version

7.3. Sample Response

[ {
  "organism" : {
    "link" : null,
    "type" : "TAXONOMY",
    "resource" : "1570291",
    "id" : 1733,
    "annotatorClassName" : ""
  },
  "version" : "eboVir3",
  "type" : "UCSC",
  "downloadProgress" : 100.0,
  "sourceUrl" : "ftp://hgdownload.cse.ucsc.edu/goldenPath/eboVir3/bigZips/eboVir3.2bit",
  "localUrl" : "ftp://hgdownload.cse.ucsc.edu/goldenPath/eboVir3/bigZips/eboVir3.2bit",
  "idObject" : 13,
  "geneMapping" : [ {
    "downloadProgress" : 0.0,
    "localUrl" : "https://minerva-dev.lcsb.uni.lu/tmp/refGene.bb",
    "sourceUrl" : "https://minerva-dev.lcsb.uni.lu/tmp/refGene.bb",
    "name" : "custom-gene-mapping",
    "idObject" : 16
  } ]
} ]

8. Delete downloaded genome

8.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/11/' -X DELETE \
    --cookie "MINERVA_AUTH_TOKEN=xxxxxxxx"

8.2. Path Parameters

Table 5. /minerva/api/genomics/{genomeId}/
Parameter Description

genomeId

genome id (genomeId is retrieved as idObject described above in 6.3)

9. Add gene mapping

9.1. Path Parameters

Table 6. /minerva/api/genomics/{genomeId}/geneMapping/
Parameter Description

genomeId

genome id (genomeId is retrieved as idObject described above in 6.3)

9.2. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/12/geneMapping/' -X POST \
    -d 'name=mappingName&url=https%3A%2F%2Fminerva-dev.lcsb.uni.lu%2Ftmp%2FrefGene.bb' \
    --cookie "MINERVA_AUTH_TOKEN=xxxxxxxx" \
    -H 'Content-Type: application/x-www-form-urlencoded'

10. Delete gene mapping

10.1. CURL sample

$ curl 'https://minerva-service.lcsb.uni.lu/minerva/api/genomics/10/geneMapping/11/' -X DELETE \
    --cookie "MINERVA_AUTH_TOKEN=xxxxxxxx"

10.2. Path Parameters

Table 7. /minerva/api/genomics/{genomeId}/geneMapping/{geneMappingId}/
Parameter Description

genomeId

genome id (genomeId is retrieved as idObject described above in 6.3)

geneMappingId

gene genome mapping id (geneMapping[].objectId described in 6.3)