BioPortal REST services
This page documents the signatures for NCBO (and, more specifically, BioPortal) REST services. This list may not be exhaustive.
Note: Signatures for BioPortal services have changed in BioPortal 2.0.4 release on January 13th, 2009. This page has the new service URLs. If you have any questions, please contact BioPortal Support.
The prefix for all service URLs in the table below is http://rest.bioontology.org/bioportal/
Services to access ontologies and ontology versions
List all the latest version of ontologies
- Signature: ./ontologies
- Example: http://rest.bioontology.org/bioportal/ontologies
Find a specific ontology based on a version id
- Signature: ./ontologies/{ontology version id}
- Example: http://rest.bioontology.org/bioportal/ontologies/39002
Download an ontology file
- Description: Download the file (.obo, .owl) corresponding to the given ontology version ID.
- Signature: ./ontologies/download/{ontology version id}
- Example: http://rest.bioontology.org/bioportal/ontologies/download/39002
Find all versions of an ontology form a virtual ontology id
- Signature: ./ontologies/versions/{ontology id}
- Example: http://rest.bioontology.org/bioportal/ontologies/versions/1104
Get latest version of an ontology id
- Signature: ./virtual/{ontology_id}
- Example: http://rest.bioontology.org/bioportal/virtual/1104
List all ontology categories id
- Signature: ./categories
- Example: http://rest.bioontology.org/bioportal/categories
Concept services
Get concept id
- Signature: ./concepts/{ontology version id}/{concept id}
- Example: http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource
Get all root concepts for an ontology id
- Signature: ./concepts/{ontology version id}/root
- Example: http://rest.bioontology.org/bioportal/concepts/39002/root
Get concept for latest ontology version id
- Signature: ./virtual/{ontology id}/{concept id}
- Example: http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource
Search services
Search BioPortal
- Signature: ./search/{query}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/search/Gene
- You can use multiple query terms, separated by a space, for example: http://rest.bioontology.org/bioportal/search/lung disease
- Optional arguments:
- ontologyids=<ontologyid>,<ontologyid>… - limits the search to specific ontologies (default: all ontologies)
- isexactmatch=[1/0] – match the entire concept name (default: 0)
- includeproperties=[1/0] – include attributes in the search (default: 0)
- pagesize=<pagesize> - the number of results to display in a single request (default: all)
- pagenum=<pagenum> - the page number to display (pages are calculated using <total results>/<pagesize>) (default: 1)
- Example: http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&isexactmatch=1
Hierarchy Services
Find parents of a given concept in a specific ontology version
- Signature: ./concepts/parents/{ontlogyVersionId}/{conceptId}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/concepts/parents/13578/Melanoma
- Optional arguments:
- level=<integer> - limits results to a given level in the hierarchy
- offset=<integer> – results offset (used for pagination)
- limit=<integer> – limits the number of results
- Example: http://rest.bioontology.org/bioportal/concepts/parents/13578/Melanoma?level=1&offset=1&limit=10
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/virtual/parents/MSH/C0025202 </accessedResource> <accessDate>2009-04-21 10:55:33.494 PDT</accessDate> <list> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0206769</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0206754</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> </list> </success>
Find parents of a given concept in the latest version of a given ontology
- Signature: ./virtual/parents/{ontlogyId}/{conceptId}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/virtual/parents/1032/Melanoma
- Optional arguments:
- level=<integer> - limits results to a given level in the hierarchy
- offset=<integer> – results offset (used for pagination)
- limit=<integer> – limits the number of results
- Example: http://rest.bioontology.org/bioportal/virtual/parents/1032/Melanoma?level=1&offset=1&limit=10
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/concepts/parents/13578/Melanoma </accessedResource> <accessDate>2009-04-21 10:28:43.964 PDT</accessDate> <list> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Common_Neoplasm</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Diseases_and_Disorders</id> <relations> <entry> <string>Level</string> <int>4</int> </entry> </relations> </classBean> </list> </success>
Find children of a given concept in a specific ontology version
- Signature: ./concepts/children/{ontlogyVersionId}/{conceptId}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/concepts/children/13578/Melanoma
- Optional arguments:
- level=<integer> - limits results to a given level in the hierarchy
- offset=<integer> – results offset (used for pagination)
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/concepts/children/13578/Melanoma </accessedResource> <accessDate>2009-04-21 11:02:03.238 PDT</accessDate> <list> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Non-Cutaneous_Melanoma</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Recurrent_Melanoma</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> </list> </success>
Find children of a given concept in the latest version of a given ontology
- Signature: ./virtual/children/{ontlogyId}/{conceptId}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/virtual/children/1032/Melanoma
- Optional arguments:
- level=<integer> - limits results to a given level in the hierarchy
- offset=<integer> – results offset (used for pagination)
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/virtual/children/MSH/C0025202 </accessedResource> <accessDate>2009-04-21 11:04:26.733 PDT</accessDate> <list> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0149722</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0206735</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> </list> </success>
Find paths to root from a concept in a specific ontology version
- Signature: ./concepts/rootpath/{ontologyVersionId}/{conceptId}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/concepts/rootpath/13578/Melanoma
- Optional arguments:
- offset=<integer> – results offset (used for pagination)
- limit=<integer> – limits the number of results
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/concepts/rootpath/13578/Melanoma </accessedResource> <accessDate>2009-04-21 11:06:23.439 PDT</accessDate> <list> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Melanoma</id> <relations> <entry> <string>Path</string> <string> Findings_and_Disorders_Kind.Diseases_Disorders_and_Findings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm </string> </entry> </relations> </classBean> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Melanoma</id> <relations> <entry> <string>Path</string> <string> Findings_and_Disorders_Kind.Diseases_Disorders_and_Findings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm </string> </entry> </relations> </classBean> </list> </success>
Find paths to root from a concept in the latest version of a given ontology
- Signature: ./virtual/rootpath/{ontologyId}/{conceptId}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/virtual/rootpath/1032/Melanoma
- Optional arguments:
- offset=<integer> – results offset (used for pagination)
- limit=<integer> – limits the number of results
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/virtual/rootpath/MSH/C0025202 </accessedResource> <accessDate>2009-04-21 11:08:05.811 PDT</accessDate> <list> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0025202</id> <relations> <entry> <string>Path</string> <string> C1256739.C1256741.C0012674.C0027651.C0027652.C0206769 </string> </entry> </relations> </classBean> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0025202</id> <relations> <entry> <string>Path</string> <string> C1256739.C1256741.C0012674.C0027651.C0027652.C0027658.C0206093.C0206754 </string> </entry> </relations> </classBean> </list> </success>
Find paths to leaves from a concept in a specific ontology version
- Signature: ./concepts/leafpath/{ontologyVersionId}/{conceptId}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/concepts/leafpath/13578/Melanoma
- Optional arguments:
- offset=<integer> – results offset (used for pagination)
- limit=<integer> – limits the number of results
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/concepts/leafpath/13578/Melanoma </accessedResource> <accessDate>2009-04-21 11:10:04.386 PDT</accessDate> <list> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Melanoma</id> <relations> <entry> <string>Path</string> <string> Regressing_Non-Cutaneous_Melanoma.Regressing_Melanoma </string> </entry> </relations> </classBean> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Melanoma</id> <relations> <entry> <string>Path</string> <string> Regressing_Melanoma_of_the_Skin.Regressing_Melanoma </string> </entry> </relations> </classBean> </list> </success>
Find paths to leaves from a concept in the latest version of a given ontology
- Signature: ./virtual/leafpath/{ontologyId}/{conceptId}[?{optional args}]
- Example: http://rest.bioontology.org/bioportal/virtual/leafpath/1032/Melanoma
- Optional arguments:
- offset=<integer> – results offset (used for pagination)
- limit=<integer> – limits the number of results
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/virtual/leafpath/MSH/C0025202 </accessedResource> <accessDate>2009-04-21 11:11:56.348 PDT</accessDate> <list> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0025202</id> <relations> <entry> <string>Path</string> <string>C0025205</string> </entry> </relations> </classBean> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0025202</id> <relations> <entry> <string>Path</string> <string>C0206735</string> </entry> </relations> </classBean> </list> </success>
Find siblings of a given concept in a specific ontology version
- Signature: ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=<level>[&{optional args}]
- Example: http://rest.bioontology.org/bioportal/concepts/siblings/13578/Melanoma?level=1
- Required arguments:
- level=<integer> - limits results to a given level in the hierarchy
- Optional arguments:
- offset=<integer> – results offset (used for pagination)
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/concepts/siblings/13578/Melanoma </accessedResource> <accessDate>2009-04-21 11:15:13.427 PDT</accessDate> <list> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Common_Germ_Cell_Neoplasm</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> <classBean> <ontologyVersionId>13578</ontologyVersionId> <id>Common_Hematopoietic_Neoplasm</id> <relations> <entry> <string>Level</string> <int>1</int> </entry> </relations> </classBean> </list> </success>
Find siblings of a given concept in the latest version of a given ontology
- Signature: ./virtual/siblings/{ontlogyId}/{conceptId}?level=<level>[&{optional args}]
- Example: http://rest.bioontology.org/bioportal/virtual/siblings/1032/Melanoma?level=1
- Required arguments:
- level=<integer> - limits results to a given level in the hierarchy
- Optional arguments:
- offset=<integer> – results offset (used for pagination)
- Sample Output:
<?xml version="1.0" encoding="UTF-8" ?> <success> <accessedResource> /bioportal/virtual/siblings/MSH/C0206093 </accessedResource> <accessDate>2009-04-21 11:30:12.183 PDT</accessDate> <list> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0206720</id> <relations> <entry> <string>Level</string> <int>2</int> </entry> </relations> </classBean> <classBean> <ontologyVersionId>MSH</ontologyVersionId> <id>C0206727</id> <relations> <entry> <string>Level</string> <int>2</int> </entry> </relations> </classBean> </list> </success>