What is Common Metadata Repository?
CMR is a high-performance, high-quality, continuously evolving metadata system that catalogs all data and service metadata records for NASA's Earth Observing System Data and Information System (EOSDIS) system and will be the authoritative management system for all EOSDIS metadata. These metadata records are registered, modified, discovered, and accessed through programmatic interfaces leveraging standard protocols and APIs.
What are the benefits of CMR?
Client Partners are benefited in the following ways:
- Ease of Participation—The primary goal of the CMR is to enable organizations to participate in making their resources and capabilities available to the Earth Science community. To facilitate participation by these organizations, the CMR has:
- Minimized the number of requirements that a partner must meet to participate.
- Involved partners in the system's development cycle and requirements definition.
- Selected metadata insert and update mechanisms, that are based on current standard industry practice (for example, XML), and that most databases can generate automatically.
- Provided mapping capabilities to convert from one XML representation into another.
- Cost to Field—The CMR minimizes the Cost to Field by continually evaluating performance and functionality against costs — such as licensing of Commercial Off-the-Shelf (COTS) applications, amount of custom code required, hardware platform requirements, and complexity of networking and installation.
- Cost to Operate—Once fielded, CMR Operations costs are minimized through enhanced efficiency and extensive automation, thereby reducing the need for support from operations staff.
How do I get started with CMR?
User accounts are employed to enable access to restricted data, manage privileges, and/or to interact with other services and tools provided by the CMR. User accounts for the CMR system are created and managed by the Earthdata Login (URS) system. If you need to create an account, click on Earthdata Login and follow the instructions provided. Once created, you can always return to Earthdata Login to manage your account. If you are part of a Data Provider group or other team, the team administrator can set up permissions for you to access their restricted data. Special privilege requests can be made by contacting the CMR operational team at email@example.com.
Creating and Managing CMR Sessions
Tokens are used by the CMR to validate both the requester and their privileges for each request message (i.e., the http call to CMR) submitted. For most searches, a token is not needed because the metadata records are unrestricted and accessible by anyone. However, when specific metadata records are restricted, privileged users require a token to see and access those records.
The same token can be used for multiple requests before being deleted. A series of requests that use the same token is referred to as a "session." All tokens expire at the end of a predefined time period - which is currently fixed at 30 days. Because the token is used to track your session, it must be protected by client applications with the same level of security used for your login name and password.
A normal session is conducted via the following steps:
- Create a token
- Perform one or both of the following tasks in any order:
- Search for records
- Retrieve records
- Delete the token
Is the data public?
The CMR Operations system environment is a publically accessible server that houses the production environment. The Data Holdings within this system include Earth Science data that has been made available to the Earth Science Community by the CMR Data Partners. This environment is monitored 24/7, updated with enhancements and fixes on a monthly cycle, and experiences virtually no down time.
What environments are available?
Three CMR systems are accessible by Client Partners: CMR Operations, CMR UAT and CMR SIT. Each of these systems is briefly described below. For additional information, click on the associated link.
- CMR Operations (https://cmr.earthdata.nasa.gov)—The CMR Operations system environment is a publically accessible server that houses the production environment. The Data Holdings within this system include Earth Science data that has been made available to the Earth Science Community by the CMR Data Partners. This environment is monitored 24/7, updated with enhancements and fixes on a monthly cycle, and experiences virtually no down time.
- CMR User Acceptance Testing, or UAT (https://cmr.uat.earthdata.nasa.gov)—The UAT environment provides a stable test system to serve the needs of the CMR Data, Client, and Service Partners.The Data Holdings within this system consist of whatever the CMR's Data Partners have made available for their own testing purposes. Any enhancements and fixes that are planned for the Operations Environment are installed in this environment two weeks prior to operations delivery. CMR Partners are encouraged to verify the capabilities when a new release is installed.
- CMR Systems Integration Testing, or SIT (https://cmr.sit.earthdata.nasa.gov)—The SIT system was established in order to facilitate an exchange of ideas and provide an initial testing ground for upcoming capabilities. There is often very little metadata available in this test environment, but it is fully functional. The next operational version is released into this system approximately 1 month before its schedule Operational release date. CMR SIT is a closed, private environment only available to CMR Developers.
How do I perform a search?
There are several ways to search the CMR system using the RESTful principles, which include employing:
- The API calls and parameters with the GET method
- The API calls and parameters with the POST method
- A JSON query language with a POST method
- The Alternative Query Language (AQL)
The most popular and preferred method is to use the API calls and parameters with the GET or POST methods. For more detailed information, see the API documentation located at /collaborate/open-data-services-and-software/api/cmr-api.
Note: The CMR URL character limit is currently set to take roughly 500k characters. Clients using the GET Search API with query parameters should be careful not to exceed this limit or an HTTP response of 413 FULL HEAD will be returned. Clients who expect that the query URL could exceed 500k characters should use the POST method as opposed to the GET method for searching.
Is there a list of all the provider holdings (collection count)?
Is there a user guide for CMR client partners?
Is there a forum for CMR client developers?
Are there any APIs for CMR client developers?
Is there a GitHub development platform for CMR?
Where can I go to interact with other users and NASA subject matter experts on a variety of Earth science research and applications topics?
Please visit the Earthdata Forum at https://forum.earthdata.nasa.gov