Robert S Weigel

and 18 more

Heliophysics data analysis often involves combining diverse science measurements, many of them captured as time series. Although there are now only a few commonly used data file formats, the diversity in mechanisms for automated access to and aggregation of such data holdings can make analysis that requires inter-comparison of data from multiple data providers difficult. The Heliophysics Application Programmer’s Interface (HAPI) is a recently developed standard for accessing distributed time-series data to increase interoperability. The HAPI specification is based on the common elements of existing data services, and it standardizes the two main parts of a data service: the request interface and the response data structures. The interface is based on the REpresentational State Transfer (REST) or RESTful architecture style, and the HAPI specification defines five required REST endpoints. Data are returned via a streaming format that hides file boundaries; the metadata is detailed enough for the content to be scientifically useful, e.g., plotted with appropriate axes layout, units, and labels. Multiple mature HAPI-related open-source projects offer server-side implementation tools and client-side libraries for reading HAPI data in multiple languages (IDL, Java, MATLAB, and Python). Multiple data providers in the US and Europe have added HAPI access alongside their existing interfaces. Based on this experience, data can be served via HAPI with little or no information loss compared to similar existing web interfaces. Finally, HAPI has been recommended as a COSPAR standard for time series data delivery.

Jon Vandegriff

and 13 more

Interoperability between datasets in Heliophysics and Planetary archives is increasingly important to address complex science questions about space weather and planetary plasma environments. Yet for cross-disciplinary studies, data ingestion is often a tedious, time-consuming process. We have developed the Heliophysics Application Programmer’s Interface (HAPI), a standard specification that captures a lowest common denominator method for accessing time series data. HAPI offers the ability to request data from multiple sources using a single interface, coupled with the ability to get identically formatted data from each source. HAPI has been recognized as a standard by the Committee on Space Research (COSPAR) and has gained adoption at multiple institutions in the US, including Goddard Space Flight Center’s Coordinated Data Analysis Web (GSFC/CDAWeb), the Planetary Data System Planetary Plasma Interactions Node (PDS/PPI), and the Laboratory for Atmospheric and Space Physics (LASP) Interactive Solar Irradiance Data Center (LISIRD). European plasma data centers such as the French Plasma Physics Data Centre (CDPP) and European Space Astronomy Centre (ESAC) are also in the process of adopting HAPI. We present an overview of the HAPI specification and describe how data centers can add HAPI access to their content. We also present how scientists can plot or download HAPI data using Python or using existing analysis tools such as Autoplot (Faden, 2010) and Space Physics Environment Data Analysis Software (SPEDAS) (Angelopoulos, 2019). Faden, J.B., Weigel, R.S., Merka, J. et al. Autoplot: a browser for scientific data on the web. Earth Sci Inform 3, 41–49 (2010). https://doi.org/10.1007/s12145-010-0049-0 Angelopoulos V, Cruce P, Drozdov A, et al. The Space Physics Environment Data Analysis System (SPEDAS). Space Sci Rev. 2019;215(1):9. doi:10.1007/s11214-018-0576-4

Jon Vandegriff

and 12 more

The ability to access time series data with one API would significantly enhance science data interoperability. The Heliophysics Application Programmers Interface (HAPI) is a simple, standardized mechanism for exposing time series data through a service. HAPI is being adopted by data centers within the Planetary and Heliophysics communities, especially for plasma, particle and field datasets. At the recent COSPAR meeting, the Panel on Space Weather passed a resolution encouraging data providers to have at minimum a HAPI server to deliver time series data. The COSPAR is now considering the resolution for full organizational endorsement. HAPI standardizes the two key parts of a data service: the request interface and the result format. The request interface is very simple and captures the common features of many existing data access services. For result formats, the HAPI specification allows several options, all of them streaming. Servers must provide a Comma Separated Value (CSV) result format, but may optionally provide a JSON or binary stream as well. The details of the request and result formats are described in the current version of the specification document, which is available at GitHub: https://github.com/hapi-server/data-specification. Several institutions have recently added HAPI-compliant access. These include the large Heliophysics archive at Goddard’s Coordinated Data Analysis Web (CDAWeb), as well as the Planetary Plasma Interactions node of the Planetary Data System, the Laboratory for Atmospheric and Space Physics at CU Boulder, the University of Iowa, George Mason University, and the Johns Hopkins University Applied Physics Lab. Multiple client options are available for accessing HAPI data from the growing number of servers. Autoplot (Faden, et al, 2010) and SPEDAS (http://spedas.org/wiki) both read HAPI data, and other clients (Java, Python, Matlab, IDL) can be downloaded from the HAPI Github project. The ease with which various providers have adapted existing servers to create a HAPI-compliant capability shows that it does capture a useful way to represent time series data. Because clients for reading HAPI data are also easy to create, we anticipate significant growth and interest in this emerging standard. Faden, et al, Earth Sci Inform (2010) 3:41–49, DOI 10.1007/s12145-010-0049-0