EODAG as STAC server

EODAG has a STAC compliant REST API. It can serve configured providers data through this STAC API. To run the server, do:

eodag serve-rest

Below is the content of the help message of this command (eodag serve-rest –help):

Usage: eodag serve-rest [OPTIONS]

  Start eodag HTTP server

  Set EODAG_CORS_ALLOWED_ORIGINS environment variable to configure Cross-
  Origin Resource Sharing allowed origins as comma-separated URLs (e.g.

  -f, --config PATH   File path to the user configuration file with its
                      credentials, default is ~/.config/eodag/eodag.yml
  -l, --locs PATH     File path to the location shapefiles configuration file
  -d, --daemon        run in daemon mode
  -w, --world         run uvicorn using IPv4 (all network interfaces),
                      otherwise bind to (localhost).
  -p, --port INTEGER  The port on which to listen  [default: 5000]
  --debug             Run in debug mode (for development purpose)
  --help              Show this message and exit.


After you have launched the server, navigate to its home page. For example, for a local development server launched with eodag serve-rest -f <config> --debug, go to You will see a documentation of the interface.

Available operations are:

  • List product types as collections:

    # All supported product types
    # <provider> only supported product types<provider>
  • Search product:

The supported request parameters are (from STAC API):

  • collections: the product type

  • bbox: the search bounding box defined by: min_lon,min_lat,max_lon,max_lat.

  • datetime: RFC 3339 format datetime. Single, or as interval start/stop.

  • limit: items returned per page

EODAG additional query parameters:

  • provider: preferred provider

  • customParameter: any custom querry parameter supported by the provider

Example URL:


EODAG provides additional catalogs that extend browsing/filtering capabilities:

  • country -> filters items on a specific area defined by selected country

  • year
    • month
      • day -> filters items using specified time interval

  • cloud_cover -> filters items with specified maximum cloud cover

Example URLs:

Browsing over catalogs can be experienced connecting EODAG STAC API to STAC-Browser. Simply run:

git clone
cd eodag
docker-compose up
# or for a more verbose logging:
EODAG_LOGGING=3 docker-compose up

(EODAG_LOGGING environment variable definition will increase eodag logging level, and accepts values: 1, 2, or 3 for maximum level)

And browse

STAC browser example


In addition of the docker-compose configuration included in sources and described just above, eodag-server is available on

$ docker run -p 5000:5000 --rm csspace/eodag-server:2.12.1


# list available product types for ``peps`` provider:
$ curl "" | jq ".collections[].id"

# search for items
$ curl ",43,1,44&datetime=2018-01-20/2018-01-25" \
| jq ".numberMatched"

# browse for items
$ curl "" \
| jq ".numberMatched"

# get download link
$ curl "" \
| jq ".features[0].assets.downloadLink.href"

# download
$ wget ""