Overview of the Copernicus Data Space Ecosystem APIs
Authors: Musial Jan , Leszczenski Jacek , Bojanowski Jedrzej , Milcinski Grega , Vrecko Anja , Clarijs Dennis , Dries Jeroen , Marquard Uwe 
Published: March 2024

The Copernicus Data Space Ecosystem introduces an innovative approach to accessing large Earth Observation (EO) data through streaming services and APIs. This study elaborates on advantages of the novel data discovery, streaming and access APIs within the Data Space, emphasizing key components such as: STAC catalog, OData and OpenSearch querying APIs, Browser, S3 interface, Jupyter Hub, openEO, and Sentinel Hub&#8217;s APIs.The OData (Open Data Protocol) stands as the ISO/IEC approved standard, outlining best practices for designing and utilizing REST APIs. It harmonizes various elements such as request and response headers, status codes, HTTP methods, URL conventions, media types, payload formats, and query options. The OpenSearch catalogue enables the search for Copernicus data through a standardized web service. For technical details, the OpenSearch specification serves as a reference. The results from this web service are delivered as GeoJSON feature collections, with each feature representing an Earth observation 'product' and referencing the location of the actual data.STAC (Spatio-Temporal Asset Catalog) emerges as a cutting-edge EO data management standard with robust data discovery and access capabilities. Built on simple JSON entries with resource-pointing URLs, it boasts flexibility in the types of data stored and accommodates new extensions and capabilities seamlessly. The hierarchical structure includes collections (e.g., Sentinel-2 L2A), subdivided into items representing satellite products. These items further break down into assets corresponding to spectral bands. This detailed STAC catalogue facilitates user searches for specific spectral bands and enables streaming of spatial data subsets using HTTP range requests.JupyterHub is a central platform for managing Jupyter Notebooks, simplifying tasks like resource allocation and user authentication. Copernicus Data Space Ecosystem users get free access, but with limited resources. Jupyter Notebooks offer a user-friendly interface for EO data prototyping, integrating with Python SDKs like Sentinel Hub and OpenEO. They grant direct access to the EO data repository, eliminating dependency hassles with pre-configured kernels for immediate prototyping.&#160;Sentinel Hub, a satellite imagery processing service, that excels in on-the-fly actions like gridding, re-projection, mosaicking, etc. It efficiently fetches data for web applications or analytical processes like ML, based on satellite data without replication or pre-processing. Several APIs, including OGC services, contribute to the Data Space Browser for advanced data visualization. Key APIs within the Copernicus Data Space Ecosystem include: BYOC (Bring Your Own COG) API, (Batch) Processing API, (Batch) Statistical API. These APIs empower users to perform diverse tasks, from data ingestion to advanced statistical analyses.OpenEO, revolutionizes geospatial data processing and analysis by offering a unified, interoperable platform for developers, researchers, and scientists. This framework empowers users to address complex geospatial challenges collaboratively, leveraging distributed computing environments and cloud-based resources. The collaborative nature of openEO enables seamless sharing of code, workflows, and data processing methods across platforms, advancing the accessibility, scalability, and reproducibility of Earth Observation (EO) data. OpenEO's intuitive libraries in Python, R, and JavaScript simplify the analysis of diverse datasets. In addition to the SDK, openEO features the Web Editor - an online tool for visually constructing workflows.