Difference between revisions of "Web Services REST API"
From CoGepedia
Line 57: | Line 57: | ||
curl -H "Content-Type: application/json" -X PUT --data @experiment_add.json "http://genomevolution.org/coge/api/v1/experiments?username=xxx&token=yyy" | curl -H "Content-Type: application/json" -X PUT --data @experiment_add.json "http://genomevolution.org/coge/api/v1/experiments?username=xxx&token=yyy" | ||
+ | Here is a sample JSON request body for experiment_add.json: | ||
{ | { | ||
− | " | + | "restricted": true, |
− | "name": "", | + | "types": |
− | + | [ | |
− | "version": " | + | { |
− | " | + | "name" :"xxx", |
− | " | + | "description": "xxx" |
− | " | + | } |
− | " | + | ], |
− | + | "genome_id": 16911, | |
− | + | "version": "xxx", | |
− | + | "name": "xxx", | |
− | " | + | "description": "xxx", |
+ | "source_name": "xxx", | ||
+ | "metadata": | ||
+ | [ | ||
+ | { | ||
+ | "type_group": "xxx", | ||
+ | "type": "xxx", | ||
+ | "text": "xxx", | ||
+ | "link": "xxx" | ||
+ | } | ||
+ | ], | ||
+ | "items": [ | ||
+ | { "type": "irods", "path": "/iplant/home/coge/coge_data/arabidopsis/experimental_condition1.csv" } | ||
+ | ] | ||
} | } | ||
</pre> | </pre> | ||
More examples to be added soon! | More examples to be added soon! |
Revision as of 17:11, 22 May 2014
CoGe's web services API let's you incorporate CoGe's database of organisms, genomes, and data sets into your web site or pipeline.
Here is our draft API specification document:
http://docs.google.com/document/d/1GXOPIVvyTwoGR2IRjDNmdd2nj_6d8db7jx9hG8RxTDc
Below are some examples queries ...
Organism Search
curl http://genomevolution.org/coge/api/v1/organisms/search/col-0 { "organisms": [ { "id": "1", "name": "Arabidopsis thaliana Col-0 (thale cress)", "description": "Eukaryota; Viridiplantae; Streptophyta; Embryophyta; Tracheophyta; Spermatophyta; Magnoliophyta; eudicotyledons; core eudicotyledons; rosids; eurosids II; Brassicales; Brassicaceae; Arabidopsis" } ] }
Organism Fetch
curl http://genomevolution.org/coge/api/v1/organisms/1 { "id": 1, "name": "Arabidopsis thaliana Col-0 (thale cress)", "description": "Eukaryota; Viridiplantae; Streptophyta; Embryophyta; Tracheophyta; Spermatophyta; Magnoliophyta; eudicotyledons; core eudicotyledons; rosids; eurosids II; Brassicales; Brassicaceae; Arabidopsis" “genomes” : [ 16911, ... ] }
Genome Fetch
curl http://genomevolution.org/coge/api/v1/genomes/16911 { "id": 16911 "name": "", "description": "", "version": "10.02", "link": "", "restricted": false, "sequence_type": { "name": "unmasked", "description": "unmasked sequence data" }, "experiments": [31,32,33, ...], "metadata": [], }
Experiment Add
curl -H "Content-Type: application/json" -X PUT --data @experiment_add.json "http://genomevolution.org/coge/api/v1/experiments?username=xxx&token=yyy" Here is a sample JSON request body for experiment_add.json: { "restricted": true, "types": [ { "name" :"xxx", "description": "xxx" } ], "genome_id": 16911, "version": "xxx", "name": "xxx", "description": "xxx", "source_name": "xxx", "metadata": [ { "type_group": "xxx", "type": "xxx", "text": "xxx", "link": "xxx" } ], "items": [ { "type": "irods", "path": "/iplant/home/coge/coge_data/arabidopsis/experimental_condition1.csv" } ] }
More examples to be added soon!