APIs

    Mapping between miRNAs & genes

  1. Mapping miRNAs to target genes
  2. Mapping genes to miRNAs
  3. Network Generation APIs

  4. Generating interaction network for input miRNAs
  5. Generating interaction network for input genes
  6. Functional enrichment APIs

  7. Enriching a list of miRNAs
  8. Enriching a list of genes
  1. Mapping miRNAs to target genes

    The following API can be used to get experimentally validated table results of the miRNA-target interactions (forward mapping):

    POST table/mir
      http://api.mirnet.ca/table/mir

    Headers
      Content-Type    application/json

    Body    raw (application/json)

      {
        "org": "hsa",
        "idOpt": "mir_id",
        "selSource": "Kidney",
        "targetOpt": "gene",
        "myList": "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"
      }

        The different options for input parameters are given below:
            <org> = hsa | mmu | rno | bta | ssc | gga | dre | cel | dme | sma
            hsa - H. sapiens (human)
            mmu - M. musculus (mouse)
            rno - R. norvegicus (rat)
            bta - B. taurus (cattle)
            ssc - S. scrofa (pig)
            gga - G. gallus (chicken)
            dre - D. rerio (zebrafish)
            cel - C. elegans (roundworm)
            dme - D. melanogaster (fruitfly)
            sma - S. mansoni (blood fluke)
    
            <idOpt> = mir_id | mir_acc
            mir_id - miRBase ID
            mir_acc - miRBase Accession
    
            <selSource> = Exosomes | Bone marrow | Kidney | Pancreas | Cervix | Mammary gland | Brain | Liver | Placenta |
            Embryo | Bone | Intestine | Lung | Breast cancerous tissues | Umbilical vein | Peripheral blood | Skin | 
            Prostate | Gastric | Testis | Muscle | Stomach | Head/neck | Bronchus | Nervous | Others
    
            <targetOpt> = gene
    
                                    

    A list of examples for calling /table/mir using several programming languages is shown below:
    
    R request using httr
    require("httr") #install.packages("httr")
    require("jsonlite") #install.packages("jsonlite")
    
    base <- "http://api.mirnet.ca"
    endpoint <- "/table/mir"
    call <- paste(base, endpoint, sep="")
    query_input <- "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"
    query_results <- POST(call, 
                          body = list(org = "hsa", 
                                      idOpt = "mir_id", 
                                      selSource = "Kidney", 
                                      targetOpt = "gene",
                                      myList = query_input), encode = "json")
    
    query_results_text <- content(query_results, "text")
    query_results_json <- fromJSON(query_results_text, flatten = TRUE)
    query_results_df <- as.data.frame(query_results_json)
    
    JavaScript Jquery AJAX 
    var settings = {
      "url": "http://api.mirnet.ca/table/mir",
      "method": "POST",
      "timeout": 0,
      "headers": {
        "Content-Type": "application/json"
      },
      "data": JSON.stringify({"org":"hsa","idOpt":"mir_id","selSource":"Kidney","targetOpt":"gene","myList":"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"}),
    };
    
    $.ajax(settings).done(function (response) {
      console.log(response);
    });
    
    cURL (command line)  
    curl --location --request POST 'http://api.mirnet.ca/table/mir' \
    --header 'Content-Type: application/json' \
    --data-raw '{
    	"org": "hsa",
    	"idOpt": "mir_id",
    	"selSource": "Kidney",
        "targetOpt": "gene",
    	"myList": "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"
    }'
    
    Java Unirest
    HttpResponse<String> response = Unirest.post("http://api.mirnet.ca/table/mir")
      .header("Content-Type", "application/json")
      .body("{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"mir_id\",\n\t\"selSource\": \"Kidney\",\n\"targetOpt\": \"gene\",\n\t\"myList\": \"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p\"\n}\n")
      .asString();
      
    Python Requests
    import requests
    url = "http://api.mirnet.ca/table/mir"
    payload = "{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"mir_id\",\n\t\"selSource\": \"Kidney\",\n\"targetOpt\": \"gene\",\n\t\"myList\": \"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p\"\n}\n"
    headers = {
      'Content-Type': 'application/json'
    }
    response = requests.request("POST", url, headers=headers, data = payload)
    print(response.text.encode('utf8'))
                                
  2. Mapping genes to miRNAs

    The following API can be used to get experimentally validated table results of the miRNA-target interactions (reverse mapping):

    POST table/gene
      http://api.mirnet.ca/table/gene

    Headers
      Content-Type    application/json

    Body    raw (application/json)

      {
        "org": "hsa",
        "idOpt": "symbol",
        "selSource": "Bone marrow",
        "myList": "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"
      }

        The different options for input parameters are given below:
            <org> = hsa | mmu | rno | bta | ssc | gga | dre | cel | dme | sma
            hsa - H. sapiens (human)
            mmu - M. musculus (mouse)
            rno - R. norvegicus (rat)
            bta - B. taurus (cattle)
            ssc - S. scrofa (pig)
            gga - G. gallus (chicken)
            dre - D. rerio (zebrafish)
            cel - C. elegans (roundworm)
            dme - D. melanogaster (fruitfly)
            sma - S. mansoni (blood fluke)
    
            <idOpt> = symbol | entrez | embl
            symbol - Official gene symbo
            entrez - Entrez gene ID
            embl - Ensembl gene ID
    
            <selSource> = Exosomes | Bone marrow | Kidney | Pancreas | Cervix | Mammary gland | Brain | Liver | Placenta |
            Embryo | Bone | Intestine | Lung | Breast cancerous tissues | Umbilical vein | Peripheral blood | Skin | 
            Prostate | Gastric | Testis | Muscle | Stomach | Head/neck | Bronchus | Nervous | Others
    
                                    

    A list of examples for calling /table/gene using several programming languages is shown below:
    
    R request using httr
    require("httr") #install.packages("httr")
    require("jsonlite") #install.packages("jsonlite")
    
    base <- "http://api.mirnet.ca"
    endpoint <- "/table/gene"
    call <- paste(base, endpoint, sep="")
    query_input <- "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"
    query_results <- POST(call, 
                          body = list(org = "hsa", 
                                      idOpt = "symbol", 
                                      selSource = "Bone marrow", 
                                      myList = query_input), encode = "json")
    
    query_results_text <- content(query_results, "text")
    query_results_json <- fromJSON(query_results_text, flatten = TRUE)
    query_results_df <- as.data.frame(query_results_json)
    
    JavaScript Jquery AJAX 
    var settings = {
      "url": "http://api.mirnet.ca/table/gene",
      "method": "POST",
      "timeout": 0,
      "headers": {
        "Content-Type": "application/json"
      },
      "data": JSON.stringify({"org":"hsa","idOpt":"symbol","selSource":"Bone marrow","myList":"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"}),
    };
    
    $.ajax(settings).done(function (response) {
      console.log(response);
    });
    
    cURL (command line)  
    curl --location --request POST 'http://api.mirnet.ca/table/gene' \
    --header 'Content-Type: application/json' \
    --data-raw '{
    	"org": "hsa",
    	"idOpt": "symbol",
    	"selSource": "Bone marrow",
    	"myList": "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"
    }'
    
    Java Unirest
    HttpResponse<String> response = Unirest.post("http://api.mirnet.ca/table/gene")
      .header("Content-Type", "application/json")
      .body("{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"symbol\",\n\t\"selSource\": \"Bone marrow\",\n\t\"myList\": \"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2\"\n}\n")
      .asString();
    
    Python Requests
    import requests
    url = "http://api.mirnet.ca/table/gene"
    payload = "{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"symbol\",\n\t\"selSource\": \"Bone marrow\",\n\t\"myList\": \"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2\"\n}\n"
    headers = {
      'Content-Type': 'application/json'
    }
    response = requests.request("POST", url, headers=headers, data = payload)
    print(response.text.encode('utf8'))
                                
  3. Generating interaction network for input miRNAs

    The following API can be used to get graph data of miRNA-target interactions (json):

    POST graph/mir
      http://api.mirnet.ca/graph/mir

    Headers
      Content-Type    application/json

    Body    raw (application/json)

      {
        "org": "hsa",
        "idOpt": "mir_id",
        "selSource": "Kidney",
        "targetOpt": "gene",
        "myList": "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"
      }

        The different options for input parameters are given below:
            <org> = hsa | mmu | rno | bta | ssc | gga | dre | cel | dme | sma
            hsa - H. sapiens (human)
            mmu - M. musculus (mouse)
            rno - R. norvegicus (rat)
            bta - B. taurus (cattle)
            ssc - S. scrofa (pig)
            gga - G. gallus (chicken)
            dre - D. rerio (zebrafish)
            cel - C. elegans (roundworm)
            dme - D. melanogaster (fruitfly)
            sma - S. mansoni (blood fluke)
    
            <idOpt> = mir_id | mir_acc
            mir_id - miRBase ID
            mir_acc - miRBase Accession
    
            <selSource> = Exosomes | Bone marrow | Kidney | Pancreas | Cervix | Mammary gland | Brain | Liver | Placenta |
            Embryo | Bone | Intestine | Lung | Breast cancerous tissues | Umbilical vein | Peripheral blood | Skin | 
            Prostate | Gastric | Testis | Muscle | Stomach | Head/neck | Bronchus | Nervous | Others
    
            <targetOpt> = gene
    
                                    

    A list of examples for calling /graph/mir using several programming languages is shown below:
    
    R request using httr
    require("httr") #install.packages("httr")
    require("jsonlite") #install.packages("jsonlite")
    
    base <- "http://api.mirnet.ca"
    endpoint <- "/graph/mir"
    call <- paste(base, endpoint, sep="")
    query_input <- "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"
    query_results <- POST(call, 
                          body = list(org = "hsa", 
                                      idOpt = "mir_id", 
                                      selSource = "Kidney", 
                                      targetOpt = "gene",
                                      myList = query_input), encode = "json")
    
    query_results_text <- content(query_results, "text")
    query_results_json <- fromJSON(query_results_text, flatten = TRUE)
    sink("query_results.json")
    cat(query_results_json)
    sink()
    
    JavaScript Jquery AJAX 
    var settings = {
      "url": "http://api.mirnet.ca/graph/mir",
      "method": "POST",
      "timeout": 0,
      "headers": {
        "Content-Type": "application/json"
      },
      "data": JSON.stringify({"org":"hsa","idOpt":"mir_id","selSource":"Kidney","targetOpt":"gene","myList":"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"}),
    };
    
    $.ajax(settings).done(function (response) {
      console.log(response);
    });
    
    cURL (command line)  
    curl --location --request POST 'http://api.mirnet.ca/graph/mir' \
    --header 'Content-Type: application/json' \
    --data-raw '{
    	"org": "hsa",
    	"idOpt": "mir_id",
    	"selSource": "Kidney",
        "targetOpt": "gene",
    	"myList": "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"
    }'
    
    Java Unirest
    HttpResponse<String> response = Unirest.post("http://api.mirnet.ca/graph/mir")
      .header("Content-Type", "application/json")
      .body("{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"mir_id\",\n\t\"selSource\": \"Kidney\",\n\"targetOpt\": \"gene\",\n\t\"myList\": \"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p\"\n}\n")
      .asString();
      
    Python Requests
    import requests
    url = "http://api.mirnet.ca/graph/mir"
    payload = "{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"mir_id\",\n\t\"selSource\": \"Kidney\",\n\"targetOpt\": \"gene\",\n\t\"myList\": \"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p\"\n}\n"
    headers = {
      'Content-Type': 'application/json'
    }
    response = requests.request("POST", url, headers=headers, data = payload)
    print(response.text.encode('utf8'))
                                
  4. Generating interaction network for input genes

    The following API can be used to get graph data of miRNA-target interactions given a gene list input (json):

    POST graph/gene
      http://api.mirnet.ca/graph/gene

    Headers
      Content-Type    application/json

    Body    raw (application/json)

      {
        "org": "hsa",
        "idOpt": "symbol",
        "selSource": "Bone marrow",
        "myList": "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"
      }

        The different options for input parameters are given below:
            <org> = hsa | mmu | rno | bta | ssc | gga | dre | cel | dme | sma
            hsa - H. sapiens (human)
            mmu - M. musculus (mouse)
            rno - R. norvegicus (rat)
            bta - B. taurus (cattle)
            ssc - S. scrofa (pig)
            gga - G. gallus (chicken)
            dre - D. rerio (zebrafish)
            cel - C. elegans (roundworm)
            dme - D. melanogaster (fruitfly)
            sma - S. mansoni (blood fluke)
    
            <idOpt> = symbol | entrez | embl
            symbol - Official gene symbo
            entrez - Entrez gene ID
            embl - Ensembl gene ID
    
            <selSource> = Exosomes | Bone marrow | Kidney | Pancreas | Cervix | Mammary gland | Brain | Liver | Placenta |
            Embryo | Bone | Intestine | Lung | Breast cancerous tissues | Umbilical vein | Peripheral blood | Skin | 
            Prostate | Gastric | Testis | Muscle | Stomach | Head/neck | Bronchus | Nervous | Others
    
                                    

    A list of examples for calling /graph/gene using several programming languages is shown below:
    
    R request using httr
    require("httr") #install.packages("httr")
    require("jsonlite") #install.packages("jsonlite")
    
    base <- "http://api.mirnet.ca"
    endpoint <- "/graph/gene"
    call <- paste(base, endpoint, sep="")
    query_input <- "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"
    query_results <- POST(call, 
                          body = list(org = "hsa", 
                                      idOpt = "symbol", 
                                      selSource = "Bone marrow", 
                                      myList = query_input), encode = "json")
    
    query_results_text <- content(query_results, "text")
    query_results_json <- fromJSON(query_results_text, flatten = TRUE)
    sink("query_results.json")
    cat(query_results_json)
    sink()
    
    JavaScript Jquery AJAX 
    var settings = {
      "url": "http://api.mirnet.ca/graph/gene",
      "method": "POST",
      "timeout": 0,
      "headers": {
        "Content-Type": "application/json"
      },
      "data": JSON.stringify({"org":"hsa","idOpt":"symbol","selSource":"Bone marrow","myList":"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"}),
    };
    
    $.ajax(settings).done(function (response) {
      console.log(response);
    });
    
    cURL (command line)  
    curl --location --request POST 'http://api.mirnet.ca/graph/gene' \
    --header 'Content-Type: application/json' \
    --data-raw '{
    	"org": "hsa",
    	"idOpt": "symbol",
    	"selSource": "Bone marrow",
    	"myList": "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"
    }'
    
    Java Unirest
    HttpResponse<String> response = Unirest.post("http://api.mirnet.ca/graph/gene")
      .header("Content-Type", "application/json")
      .body("{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"symbol\",\n\t\"selSource\": \"Bone marrow\",\n\t\"myList\": \"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2\"\n}\n")
      .asString();
    
    Python Requests
    import requests
    url = "http://api.mirnet.ca/graph/gene"
    payload = "{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"symbol\",\n\t\"selSource\": \"Bone marrow\",\n\t\"myList\": \"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2\"\n}\n"
    headers = {
      'Content-Type': 'application/json'
    }
    response = requests.request("POST", url, headers=headers, data = payload)
    print(response.text.encode('utf8'))
                                
  5. Enriching a list of miRNAs

    The following API can be used to get functional enrichment results for miRNA-target interactions:

    POST function/mir
      http://api.mirnet.ca/function/mir

    Headers
      Content-Type    application/json

    Body    raw (application/json)

      {
        "org": "hsa",
        "idOpt": "mir_id",
        "selSource": "Kidney",
        "targetOpt": "gene",
        "myList": "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p",
        "algorithm": "hyp",
        "dbType": "mirfamily"
      }

        The different options for input parameters are given below:
            <org> = hsa | mmu | rno | bta | ssc | gga | dre | cel | dme | sma
            hsa - H. sapiens (human)
            mmu - M. musculus (mouse)
            rno - R. norvegicus (rat)
            bta - B. taurus (cattle)
            ssc - S. scrofa (pig)
            gga - G. gallus (chicken)
            dre - D. rerio (zebrafish)
            cel - C. elegans (roundworm)
            dme - D. melanogaster (fruitfly)
            sma - S. mansoni (blood fluke)
    
            <idOpt> = mir_id | mir_acc
            mir_id - miRBase ID
            mir_acc - miRBase Accession
    
            <selSource> = Exosomes | Bone marrow | Kidney | Pancreas | Cervix | Mammary gland | Brain | Liver | Placenta |
            Embryo | Bone | Intestine | Lung | Breast cancerous tissues | Umbilical vein | Peripheral blood | Skin | 
            Prostate | Gastric | Testis | Muscle | Stomach | Head/neck | Bronchus | Nervous | Others
    
            <targetOpt> = gene
    
            <algorithm> = hyp
            hyp -- Hypergeometric test
    
            <dbType> = mirfamily | tissue | func | hmdd | Cluster | tf
            mirfamily - miRNA Family
            tissue - miRNA Tissue
            func - miRNA Function
            hmdd - miRNA Disease
            cluster - miRNA Cluster
            tf - miRNA TF
    
                                    

    A list of examples for calling /function/mir using several programming languages is shown below:
    
    R request using httr
    require("httr") #install.packages("httr")
    require("jsonlite") #install.packages("jsonlite")
    
    base <- "http://api.mirnet.ca"
    endpoint <- "/function/mir"
    call <- paste(base, endpoint, sep="")
    query_input <- "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p"
    query_results <- POST(call, 
                          body = list(org = "hsa", 
                                      idOpt = "mir_id", 
                                      selSource = "Kidney", 
                                      targetOpt = "gene",
                                      algorithm = "hyp",
                                      dbType = "mirfamily",
                                      myList = query_input), encode = "json")
    
    query_results_text <- content(query_results, "text")
    query_results_json <- fromJSON(query_results_text, flatten = TRUE)
    sink("query_results.json")
    cat(query_results_json)
    sink()
    
    JavaScript Jquery AJAX 
    var settings = {
      "url": "http://api.mirnet.ca/function/mir",
      "method": "POST",
      "timeout": 0,
      "headers": {
        "Content-Type": "application/json"
      },
      "data": JSON.stringify({"org":"hsa","idOpt":"mir_id","selSource":"Kidney","targetOpt":"gene","myList":"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p","algorithm":"hyp","dbType":"mirfamily"}),
    };
    
    $.ajax(settings).done(function (response) {
      console.log(response);
    });
    
    cURL (command line)  
    curl --location --request POST 'http://api.mirnet.ca/function/mir' \
    --header 'Content-Type: application/json' \
    --data-raw '{
    	"org": "hsa",
    	"idOpt": "mir_id",
    	"selSource": "Kidney",
        "targetOpt": "gene",
    	"myList": "hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p",
    	"algorithm": "hyp",
    	"dbType": "mirfamily"
    }'
    
    Java Unirest
    HttpResponse<String> response = Unirest.post("http://api.mirnet.ca/function/mir")
      .header("Content-Type", "application/json")
      .body("{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"mir_id\",\n\t\"selSource\": \"Kidney\",\n\"targetOpt\": \"gene\",\n\t\"myList\": \"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p\",\n\t\"algorithm\": \"hyp\",\n\t\"dbType\": \"mirfamily\"\n}\n")
      .asString();
      
    Python Requests
    import requests
    url = "http://api.mirnet.ca/function/mir"
    payload = "{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"mir_id\",\n\t\"selSource\": \"Kidney\",\n\"targetOpt\": \"gene\",\n\t\"myList\": \"hsa-mir-101-3p;hsa-mir-133b;hsa-mir-147a;hsa-mir-3140-3p;hsa-mir-361-5p;hsa-mir-510-5p\",\n\t\"algorithm\": \"hyp\",\n\t\"dbType\": \"mirfamily\"\n}\n"
    headers = {
      'Content-Type': 'application/json'
    }
    response = requests.request("POST", url, headers=headers, data = payload)
    print(response.text.encode('utf8'))
                                
  6. Enriching a list of genes

    The following API can be used to get functional enrichment results for gene-miRNA interactions:

    POST function/gene
      http://api.mirnet.ca/function/gene

    Headers
      Content-Type    application/json

    Body    raw (application/json)

      {
        "org": "hsa",
        "idOpt": "symbol",
        "selSource": "Bone marrow",
        "myList": "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2",
        "algorithm": "hyp",
        "dbType": "mirfamily"
      }

        The different options for input parameters are given below:
            <org> = hsa | mmu | rno | bta | ssc | gga | dre | cel | dme | sma
            hsa - H. sapiens (human)
            mmu - M. musculus (mouse)
            rno - R. norvegicus (rat)
            bta - B. taurus (cattle)
            ssc - S. scrofa (pig)
            gga - G. gallus (chicken)
            dre - D. rerio (zebrafish)
            cel - C. elegans (roundworm)
            dme - D. melanogaster (fruitfly)
            sma - S. mansoni (blood fluke)
    
            <idOpt> = symbol | entrez | embl
            symbol - Official gene symbo
            entrez - Entrez gene ID
            embl - Ensembl gene ID
    
            <selSource> = Exosomes | Bone marrow | Kidney | Pancreas | Cervix | Mammary gland | Brain | Liver | Placenta |
            Embryo | Bone | Intestine | Lung | Breast cancerous tissues | Umbilical vein | Peripheral blood | Skin | 
            Prostate | Gastric | Testis | Muscle | Stomach | Head/neck | Bronchus | Nervous | Others
    
            <algorithm> = hyp
            hyp -- Hypergeometric test
    
            <dbType> = kegg | reactome | bp | mf | cc
            kegg - KEGG
            reactome - Reactome
            bp - GO:BP
            mf - GO:mf
            cc - GO:cc
    
                                    

    A list of examples for calling /function/gene using several programming languages is shown below:
    
    R request using httr
    require("httr") #install.packages("httr")
    require("jsonlite") #install.packages("jsonlite")
    
    base <- "http://api.mirnet.ca"
    endpoint <- "/function/gene"
    call <- paste(base, endpoint, sep="")
    query_input <- "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2"
    query_results <- POST(call, 
                          body = list(org = "hsa", 
                                      idOpt = "symbol", 
                                      selSource = "Bone marrow",
                                      algorithm = "hyp",
                                      dbType = "mirfamily",
                                      myList = query_input), encode = "json")
    
    query_results_text <- content(query_results, "text")
    query_results_json <- fromJSON(query_results_text, flatten = TRUE)
    sink("query_results.json")
    cat(query_results_json)
    sink()
    
    JavaScript Jquery AJAX 
    var settings = {
      "url": "api.mirnet.ca/function/gene",
      "method": "POST",
      "timeout": 0,
      "headers": {
        "Content-Type": "application/json"
      },
      "data": JSON.stringify({"org":"hsa","idOpt":"symbol","selSource":"Bone marrow","myList":"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2","algorithm":"hyp","dbType":"bp"}),
    };
    
    $.ajax(settings).done(function (response) {
      console.log(response);
    });
    
    cURL (command line)  
    curl --location --request POST 'api.mirnet.ca/function/gene' \
    --header 'Content-Type: application/json' \
    --data-raw '{
    	"org": "hsa",
    	"idOpt": "symbol",
    	"selSource": "Bone marrow",
    	"myList": "ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2",
    	"algorithm": "hyp",
    	"dbType": "bp"
    }'
    
    Java Unirest
    HttpResponse<String> response = Unirest.post("api.mirnet.ca/function/gene")
      .header("Content-Type", "application/json")
      .body("{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"symbol\",\n\t\"selSource\": \"Bone marrow\",\n\t\"myList\": \"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2\",\n\t\"algorithm\": \"hyp\",\n\t\"dbType\": \"bp\"\n}\n")
      .asString();
    
    Python Requests
    import requests
    url = "api.mirnet.ca/function/gene"
    payload = "{\n\t\"org\": \"hsa\",\n\t\"idOpt\": \"symbol\",\n\t\"selSource\": \"Bone marrow\",\n\t\"myList\": \"ACAT1;DDX3X;MEGF9;FMR1;HAPLN1;IL12A;OLR1;RNF6;SOD3;ELOVL4;MRAP2\",\n\t\"algorithm\": \"hyp\",\n\t\"dbType\": \"bp\"\n}\n"
    headers = {
      'Content-Type': 'application/json'
    }
    response = requests.request("POST", url, headers=headers, data = payload)
    print(response.text.encode('utf8'))