Actinia — The GRASS GIS REST API
Actinia is an open source REST API for scalable, distributed, high performance processing of geographical data that mainly uses GRASS GIS for computational tasks.
It provides a REST API to process satellite images, time series of satellite images, arbitrary raster data with geographical relations and vector data.
The REST interface allows to access, manage and manipulate the GRASS GIS database via HTTP GET, PUT, POST and DELETE requests and to process raster, vector and time series data located in a persistent GRASS GIS database. Actinia allows the processing of cloud based data, for example all Landsat 4-8 scenes as well as all Sentinel-2 scenes in an ephemeral databases. The computational results of ephemeral processing are available via object storage as GeoTIFF files.
API documentation
The full API documentation is available here
actinia command execution - actinia shell
There is also an option to interactively control actinia. For details, see here.
Installation
Docker images are available from https://hub.docker.com/r/mundialis/actinia-core
docker pull mundialis/actinia-core
For own deployments or local dev-setup, see the docker/
subfolder.
Actinia is also available on OSGeoLive.
Examples
Data management
- List all locations that are available in the actinia persistent database:
curl -u 'demouser:gu3st!pa55w0rd' -X GET "https://actinia.mundialis.de/api/v3/locations"
- List all mapsets in the location latlong_wgs84:
curl -u 'demouser:gu3st!pa55w0rd' -X GET "https://actinia.mundialis.de/api/v3/locations/latlong_wgs84/mapsets"
- List all space-time raster datasets (STRDS) in location latlong_wgs84 and mapset Sentinel_timeseries:
curl -u 'demouser:gu3st!pa55w0rd' -X GET "https://actinia.mundialis.de/api/v3/locations/latlong_wgs84/mapsets/modis_ndvi_global/strds"
- List all raster map layers of the STRDS:
curl -u 'demouser:gu3st!pa55w0rd' -X GET "https://actinia.mundialis.de/api/v3/locations/latlong_wgs84/mapsets/modis_ndvi_global/strds/ndvi_16_5600m/raster_layers"
Landsat and Sentinel-2 NDVI computation
- Compute the NDVI of the top of athmosphere (TOAR) corrected Landsat4 scene LC80440342016259LGN00:
curl -u 'demouser:gu3st!pa55w0rd' -X POST "https://actinia.mundialis.de/api/v3/landsat_process/LC80440342016259LGN00/TOAR/NDVI"
- NDVI computation of Sentinel-2A scene S2A_MSIL1C_20170212T104141_N0204_R008_T31TGJ_20170212T104138:
curl -u 'demouser:gu3st!pa55w0rd' -X POST "https://actinia.mundialis.de/api/v3/sentinel2_process/ndvi/S2A_MSIL1C_20170212T104141_N0204_R008_T31TGJ_20170212T104138"
The results of the asynchronous computations are available as GeoTIFF file in a cloud storage for download.
List of available endpoints
To see a simple list of endpoints (and more), consult the "paths" section in the API JSON; or, to list the available endpoints on command line, run
# sudo npm install -g json
curl -u 'demouser:gu3st!pa55w0rd' -X GET https://actinia.mundialis.de/api/v3/swagger.json | json paths | json -ka