MorphoSource is a publicly accessible 3D data repository that enables museums, researchers, and scholars to upload, curate, and share 3D and 2D media representing physical objects of scholarly importance that can be found, viewed, and downloaded by other subject experts, educators, and the public. The MorphoSource REST API allows users to query and search repository records, including Media, Physical Objects, Organizations, and media collections like Projects and Teams. Users can also use the API to download MorphoSource media. Users who manage projects and teams can use the API to retrieve usage information for media in their media collections, including numbers of downloads, download requests, and other usage statistics.
The API is described with intuitive human-readable documentation powered by Stoplight. This documentation includes example requests and responses which can be very helpful when getting started with the API. We also make available an OpenAPI 3 Schema specification document that expresses and describes the API in ways that machines can interpret.
This is a list of major API endpoints that are described in this documentation, with links to pages describing each endpoint.
Endpoint | Description |
---|---|
/api/media/{media-id} | Get individual media record |
/api/media/{media-id}/file-metadata | Get individual media file metadata |
/api/media/{media-id}/iiif/manifest | Get individual media IIIF manifest |
/api/media | Search media records |
/api/download/{media-id} | Download media file |
Endpoint | Description |
---|---|
/api/physical-objects/{physical-object-id} | Get individual physical object record |
/api/physical-objects | Search physical object records |
Endpoint | Description |
---|---|
/api/organizations/{organization-id} | Get individual organization record |
/api/organizations | Search organization records |
Endpoint | Description |
---|---|
/api/projects/{project-or-team-id} | Get individual project or team records |
/api/projects | Search project or team records |
/api/projects/{project-or-team-id}/media | Get media in project or team |
/api/projects/{project-or-team-id}/biological-specimens | Get biological specimens in project or team |
/api/projects/{project-or-team-id}/cultural-heritage-objects | Get cultural heritage objects in project or team |
/api/projects/{project-or-team-id}/media-download-counts | Get metadata and download counts of media in project or team |
/api/projects/{project-or-team-id}/media-downloads | Get downloads of media in project or team |
/api/projects/{project-or-team-id}/media-requests | Get requests to download restricted media in project or team |
/api/projects/{team-id}/view-only-media-projects | Get projects containing media in a team but not owned by team |
To better understand the metadata fields and terms used in the API, consult the MorphoSource Terms Vocabulary and MorphoSource Controlled Vocabularies terms ontologies. These ontologies define and characterize the data model and metadata fields used by MorphoSource to record important attributes of media and physical object records, as well as the imaging and processing workflows that produce media.
The creation of this API documentation was supported by the National Science Foundation under Grant Number DBI-2149257. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.