Giter Site home page Giter Site logo

diseasexpress-rest-api's Introduction

d3b-disease-express-rest-api

Rest API for disease express

Build and Deploy(after clone)

  1. docker build -t disease-express:latest .
  2. docker run -p 80:80 --e MONGO_URI=<mongo_uri> --e MONGO_DATABASE=<database> --name disease-express disease-express

example docker run -p 8080:80 -e JAVA_OPTS="-Xms1g" --e MONGO_URI=mongodb://host.docker.internal:27017 --e MONGO_DATABASE=disease_express --name disease-express disease-express

Queries

  1. Give me all sample annotation & RSEM value data where symbol is GPC2

    This is done in two api calls

    • curl -X GET 'http://disease-express.dev.cavatica-dns.org/api/v1/samples' -H 'accept: application/json'
    • curl -X GET 'http://disease-express.dev.cavatica-dns.org/api/v1/data/genes/symbols/GPC2/normalizations/rsem' -H 'accept: text/tab-separated-values'
  2. Give me all TPM data where transcript_id is ENST00000292377.3 for samples that have disease is ALL

    • curl -X POST 'http://disease-express.dev.cavatica-dns.org/api/v1/tags/data/transcripts/ids/ENST00000292377.3/normalizations/sample_abundance,sample_rsem_isoform' -H 'accept: text/tab-separated-values' -H "Content-Type: application/json" -d '{"$eq":{"disease": "ALL"}}'
  3. Give me all sample annotation & TPM & FPKM value data for a subset of genes (gene symbol is in GPC2, MYCN, ALK) in study TARGET that have mycn_status is amplified?

    This is done in two api calls

    • curl -X GET 'http://disease-express.dev.cavatica-dns.org/api/v1/samples' -H 'accept: application/json'
    • curl -X POST 'http://disease-express.dev.cavatica-dns.org/api/v1/tags/data/genes/symbols/GPC2,MYCN,ALK/normalizations/rsem,sample_abundance,sample_rsem_isoform?projection=summary' -H 'accept: text/tab-separated-values' -H 'Content-Type: application/json' -d '{"$and":[{"$eq":{"study":"TARGET"}},{"$eq":{"mycn_status":"amplified"}}]}'
  4. Give me all sample annotation and RSEM value for all genes where study is ‘TCGA’ AND disease is ‘THCA’ AND disease_subtype is ‘Papillary Thyroid Cancer’ AND definition is ‘Primary Solid Tumor’ AND extrathyroid_invasion_stage is T4a.

    This is done in two api calls

    • curl -X GET 'http://disease-express.dev.cavatica-dns.org/api/v1/samples' -H 'accept: application/json'
    • curl -X POST 'http://disease-express.dev.cavatica-dns.org/api/v1/data/normalizations/rsem?projection=summary' -H 'accept: text/tab-separated-values' -H 'Content-Type: application/json' -d '{"$and":[{"$eq":{"study":"TCGA"}},{"$eq":{"disease":"THCA"}},{"$eq":{"disease_subtype":"Papillary Thyroid Cancer"}},{"$eq":{"definition":"Primary Solid Tumor"}},{"$eq":{"extrathyroid_invasion_stage":"T4a"}}]}'
  5. Give me all samples where mycn_status is amplified AND risk is high.

    • curl -X POST 'http://disease-express.dev.cavatica-dns.org/api/v1/data/normalizations/rsem,sample_abundance,sample_rsem_isoform?projection=summary' -H 'accept: text/tab-separated-values' -H 'Content-Type: application/json' -d '{"$and":[{"$eq":{"risk":"high"}},{"$eq":{"mycn_status":"amplified"}}]}'
  6. I would like to get all data where disease is ALL AND gender is male AND cns_status is 2.

    • curl -X POST 'http://disease-express.dev.cavatica-dns.org/api/v1/data/normalizations/rsem,sample_abundance,sample_rsem_isoform?projection=summary' -H 'accept: text/tab-separated-values' -H 'Content-Type: application/json' -d '{"$and":[{"$eq":{"disease":"ALL"}},{"$eq":{"gender":"male"}}, {"$eq":{"cns_status":2}}]}'
  7. Give me sample, clinical annotation and RSEM value for all genes where study in [‘TCGA’, ‘TARGET’] AND rsem > 50 AND gender is female.

    • TODO
  8. Give me all FPKM data for all genes where disease is NBL AND definition is Primary Solid Tumor AND mycn_status is amplified.

    • curl -X POST 'http://disease-express.dev.cavatica-dns.org/api/v1/data/normalizations/rsem?projection=summary' -H 'accept: text/tab-separated-values' -H 'Content-Type: application/json' -d '{"$and":[{"$eq":{"disease":"NBL"}},{"$eq":{"definition":"Primary Solid Tumor"}}, {"$eq":{"mycn_status":"amplified"}}]}'

Note: Check Notes.md for additional information about disease-express

diseasexpress-rest-api's People

Contributors

kalletlak avatar blackdenc avatar alubneuski avatar anthony-cros avatar yuankunzhu avatar

Watchers

James Cloos avatar  avatar  avatar  avatar  avatar

Forkers

kalletlak

diseasexpress-rest-api's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.