How to: Using the CMR API and asyncio for fast CMR Queries in Python


Published: Sept. 27, 2022

NASA's Common Metadata Repository (CMR) is a metadata system that catalogs NASA's Earth Observing System Data and Information Systems (EOSDIS) data and associated metadata records. When querying, NASA's CMR is limited to returning a total of 1 million granule results and 2000 granule results per page. Each granule will have a number of files or assets associated with it depending on the instrument. This guide explains how to use the NASA Earthdata Search API and Python to perform large queries (requests that return more than 2000 granules) against NASA's CMR, prepare a list of URLs to access or download assets associated with those granules, and utilize asynchronous/parallel requests to increase speed of querying and list construction.

NASA Earthdata CMR Search API Documentation

Relevant Products

Product Long Name


Name Filters Description