The CEDAR system is designed from the start to work as a component within a larger metadata ecosystem. To perform this role, the interfaces and data specifications must be easy to use for developers of interacting data and metadata systems.
The CEDAR Application Program Interface (API) is a collection of REST-based services that provides access to all aspects of the CEDAR system. A few of those services are of particular value to CEDAR users; these are documented as User-Facing API Services. CEDAR's Internal API Services are also REST-based, but require expert knowledge to use effectively.
User-Facing API Services
The user-facing APIs are shown in the diagram to the right. The ones of greatest interest are the Resource Service, which accesses all the CEDAR resources for reading and writing; and the Terminology Service, which wraps BioPortal services in ways that are particularly helpful for CEDAR.
More technical documentation about the CEDAR API, including how to get an API key and test individual commands, can be found in CEDAR's technical documentation in the GitHub documentation pages for the REST API.
The Resource Services provide access to all the CEDAR resources, according to the permissions associated with the API key used. All the resource services available through the UI are available via the Resource Server REST API.
The search service (https://resource.metadatacenter.org/api/#/Search) provides access to the API's search capabilities, which can be used to search for and within particular kinds of resources.
The remaining services access the type of resource named by the service: folders, groups, templates, template elements, template fields, template instances, and users. If you have appropriate permissions, you can create, update, and delete these resources.
The Terminology Service provides a RESTful interface for CEDAR to access the NCBO BIoPortal, the ontology repository upon which CEDAR depends. This service wraps BioPortal API calls to make the calling sequences and responses easier to manage.
The Terminology Service is written in such a way that expansion to support other repositories can be added in the future.
Value Recommender Service
The initial Value Recommender Service has been released for internal use, providing access to recommended values for recommendation-enabled fields, based on the filled values from metadata instances. The Service will also enable external access to these recommendations; please contact the CEDAR team if you want more information on this capability.
Internal API Services
There are a significant number of internal API services, which are not intended for external use because they require so much knowledge of the CEDAR platform. If you are interested in learning about these services, please visit the CEDAR GitHub repository, or contact the CEDAR team.