From Earth Observation Applications to Services
One of the primary goals of APEx is to facilitate the transition of Earth Observation R&D results into reusable, scalable, cloud-based on-demand services. The primary target audience is first of all ESA EOP projects but on the longer term the larger EO science and applications community.
Currently, ESA EOP R&D projects generate a variety of results including, for example, EO-derived value-added products (raster or vector files, typically level-3 and level-4), workflows and algorithms, or conventional (open-source) desktop software solutions. Maintaining these results beyond the lifetime of a specific project is a challenge and is a key objective for APEx.
The vision for the ESA APEx initiative is to adopt FAIR data principles and ensure that project results remain Findable and Accessible and that they become Interoperable and Reusable. For value-added products, this mainly involves ingestion in an ESA-controlled persistent storage solution and exposing these products accordingly (using STAC and other technologies).
Maintaining workflows and algorithms in a FAIR-compliant way requires the adoption of cloud service concepts and implementations. Therefore, APEx envisioned a solution for workflows and algorithms to make them available in a public cloud (platform) in co-location with the key EO data archives as on-demand services using standardised web service APIs. These web services can then be triggered by users with their user-specific parametrisation to produce results for an area and time frame of interest.
However, developing on-demand services can be a challenging task for many projects and depends a lot on the complexity of a workflow/algorithm and its initial implementation. APEx intends to facilitate the transition to cloud-based services by providing guidelines, best practices and tools that support EO R&D projects in overcoming these challenges.
The support offered by APEx in terms of algorithm propagation involves various subcomponents/services, and their relevance depends on a case-by-case basis. The individual service algorithm propagation comprises:
- Refactoring your source code to an openEO process graph or OGC Application Package
- Packaging of your source code to an OGC Application Package
- Onboarding and integration of your service into the APEx Algorithm Catalogue
- Cloudification of desktop toolboxes through a tailored approach
- Optimisation, both on the source code or service level
- Deployment and hosting of your service
- Onboarding of your service onto the ESA Network of Resources
What is an on-demand service?
Resulting on-demand services should be compliant to FAIR data principles.
Therefore, currently APEx-compliant on-demand services should either adopt an openEO User Defined Process (UDP) or an OGC API Process implementation. There are additional APEx compliance and interoperability guidelines which help ensuring FAIR compliance.
How to build an on-demand service?
The easiest and most cost-effective way to build these on-demand services is to use an existing platform that is already part of the ESA Network of Resources (NoR). It is important to note that APEx itself is not a processing platform, but rather an initiative to streamline and aggregate EO based services building on top of existing EO platforms. Consequently, APEx treats compliant EO platforms or hosting environments neutrally and algorithm PIs can decide where to deploy the resulting service.
Which option to choose?
To help out projects, we created dedicated pages to explain the benefits of Application Package via OGC API Processes and openEO based services.
Building an openEO UDP based service
To integrate your algorithm with openEO, you need to convert it into a User Defined Process (UDP). If your application is already built using an openEO process graph or if your workflow is simple enough, the conversion to a UDP should be straightforward. If not, APEx can provide the guidance and support you need to efficiently translate your algorithm into an openEO implementation and UDP service.
Once your workflow is ready as an openEO process graph, you can create a UDP by parameterizing the process graph. This notebook demonstrates exactly how to do that.
After your UDP is created, it can be registered in the APEx Algorithm Catalogue and associated with one or more backends or platforms capable of running it. As APEx continues to evolve, additional tools will become available that aid this process, including functionality to check if your service is still functional.
For further guidance on creating and using UDPs, you can explore the following resources:
Building an OGC application package based service
Another option is to package your software using Docker containers. This approach is very generic and is particularly relevant if you have an existing piece of complex software that you want to make available as a service.
Another APEx compliant cloud service implementation option is to package your software using Docker containers and CWL (Common Workflow Language) wrappers, together forming an OGC Application Package. This approach is very generic and is particularly relevant if you have an existing piece of complex software that you want to make available as a service.
This tutorial explains more about this option.
What are the platforms to choose from?
To offer your algorithm as an on-demand service, it must be available for execution on an APEx-compliant algorithm hosting platform. Currently, APEx supports the integration of services on platforms that adhere to the APEx compliance guidelines. It is important to note that this list of supported platforms is expected to grow as APEx evolves.
For openEO UDPs:
For OGC Processes/Application Package:
If your platform meets the APEx interoperability and compliance guidelines, and you have onboarded your platform to the ESA Network of Resources (or plan to do that), we encourage you to reach out to the APEx team to get it added to the list.
Onboarding your service on the ESA Network of Resources
To further enhance the reach of your developed EO service and to offer it in the ESA NoR portfolio as a commercial service and take advantage of the ESA NOR sponsorship, akey feature of the resulting on-demand services is that they can be onboarded in the ESA Network of Resources (NoR). This integration enhances the service’s visibility and opens up a potential additional revenue stream for the project.
An important step of the onboarding on the NoR is setting the price, expressed in euros per km². The final price of the service is determined by the project consortium and can be supported by APEx tooling. In general, the price needs to cover:
- The processing cost
- A margin for fluctuation in processing cost
- Optionally, a revenue margin for the project
Currently, it is the responsibility of the algorithm hosting platform to add services to their NoR offering. This approach ensures that APEx retains a neutral position, allowing for direct negotiations between platform provider and service provider. Consequently, it is also the responsibility of the platforms to provide an SLA (Service Level Agreement) to the end user. In case of service malfunctions, the end user will interact directly with the platform for support.
How can APEx support your project?
The level of support available depends on your project’s status:
- Ongoing or upcoming ESA EOP projects: We recommend discussing APEx support directly with your TO.
- Completed ESA EOP projects: Please reach out to us to explore how APEx can help propagate and maintain your project’s results.
- Non-ESA projects: APEx propagation services will be available through the ESA Network of Resources (NoR) starting in 2026.
The goal of APEx is to simplify the complex task of building efficient, operational, cloud-based on-demand services. ESA recognizes that achieving this often requires specific skills that may not be present in the project consortium or that could significantly impact the project budget. To assist your project in these activities, APEx can provide the following algorithm propagation services:
- Algorithm Porting
Discover how APEx can assist your project in implementing your algorithm using APEx-compliant technologies, such as openEO User Defined Processes (UDP) or OGC Application Packages. - Algorithm Onboarding
Explore how APEx can assist in deploying your algorithms within an APEx-compatible hosting platform and sharing them across the EO community through the APEx Algorithm Catalogue. - Algorithm Upscaling
Learn how APEx facilitates and simplifies the execution of algorithms at scale. - Algorithm Enhancement
Discover how APEx supports improving the computational performance of your algorithms or workflows. - Toolbox Cloudification
Transform the key functionalities of your favorite EO toolbox into cloud-based services with APEx. - Algorithm Intercomparison
Learn how APEx facilitates comparing algorithms and workflows.
Visit our use cases page to explore various project scenarios and see how APEx can support your specific needs.