openeo-logo

How to use OpenEO

Install

pip install openeo

Connect, authenticate, and run a job

import openeo

# Connect and authenticate via EGI Check-In
con = openeo.connect("https://openeo.eodc.eu/v1.0/")
con = con.authenticate_oidc(provider_id="egi")

# Load a collection with spatial and temporal filters
sig0 = con.load_collection(
    "SENTINEL1_GRD",
    spatial_extent={"west": 22, "south": 39.483774, "east": 22.225465, "north": 39.6},
    temporal_extent=["2018-02-28T04:00:00Z", "2018-02-28T05:00:00Z"],
    bands=["VV"]
)

# Apply a process
sig0_reduced = sig0.reduce_dimension("t", "mean")

# Save and submit as a batch job
sig0_save = sig0_reduced.save_result(format="netcdf")
sig0_job = sig0_save.create_job()
sig0_job.start_job()

Step by step:

  1. openeo.connect(...) — connects to the eodc OpenEO backend.

  2. authenticate_oidc(provider_id="egi") — authenticates using EGI Check-In (OIDC). A browser window will open on first use to complete the login flow.

  3. con.load_collection(...) — defines a lazy data cube filtered by collection, spatial extent, time range, and bands. Nothing is downloaded yet.

  4. reduce_dimension("t", "mean") — applies a temporal mean reduction. OpenEO supports many built-in processes; see the OpenEO Processes reference.

  5. save_result(format="netcdf") — specifies the output format.

  6. create_job() / start_job() — submits the processing request as a batch job on the eodc backend.

Tips

  • Use con.list_collections() to browse available datasets.

  • Results can be saved directly to a User Workspace using the save_result process with a workspace target.

  • Monitor running jobs at https://openeo.eodc.eu.