opendatacube / datacube-explorer

Web-based exploration of Open Data Cube collections
Apache License 2.0
56 stars 31 forks source link

Add OpenSearch API #284

Open whatnick opened 3 years ago

whatnick commented 3 years ago

Bring Explorer at par with Resto by adding an Open-Search API

{"stac_version":"1.0.0-beta2","id":"catalogs","title":"Footprints","description":false,"capabilities":["resto-core","tag","gazetteer","hashtag","shapefileuploader","stacplus"],"planet":"earth","links":[{"rel":"self","type":"application/json","title":"Footprints","href":"https://resto.dev.dea.ga.gov.au"},{"rel":"service-desc","type":"application/json","title":"OpenAPI 3.0 definition endpoint","href":"https://resto.dev.dea.ga.gov.au/api"},{"rel":"service-doc","type":"text/html","title":"OpenAPI 3.0 definition endpoint documentation","href":"https://resto.dev.dea.ga.gov.au/api.html"},{"rel":"conformance","type":"application/json","title":"Conformance declaration","href":"https://resto.dev.dea.ga.gov.au/conformance"},{"rel":"data","type":"application/json","title":"Collections","href":"https://resto.dev.dea.ga.gov.au/collections"},{"rel":"root","type":"application/json","title":"Footprints","href":"https://resto.dev.dea.ga.gov.au"},{"rel":"search","type":"application/json","title":"STAC search endpoint","href":"https://resto.dev.dea.ga.gov.au/search"},{"rel":"child","title":"Classifications","type":"application/json","href":"https://resto.dev.dea.ga.gov.au/catalogs/classifications/catalog.json"},{"rel":"child","title":"Hashtags","type":"application/json","href":"https://resto.dev.dea.ga.gov.au/catalogs/hashtags/catalog.json"},{"rel":"child","title":"Themes","type":"application/json","href":"https://resto.dev.dea.ga.gov.au/catalogs/themes/catalog.json"}]}

This functionality will benefit DEA-Access project.

https://rocket.snapplanet.io/map = SnapPlanet Demo Rocket (Jerome Gasperi) • https://rocket.dev.dea.ga.gov.au/map = DEA Access Dev Rocket • DEA Access API query) = New Resto API example • SARA API query) = Old Resto API example • Resto API reference = New Resto API • Rocket Sites = Mixed links

alexgleith commented 3 years ago

What does making it an open-search API mean?

Is it this? https://www.opensearchserver.com/documentation/api_v2/README.md

In my view, bringing the STAC API up to speed even more, so we can index off it, for example, is a better effort.

The STAC API is a OGC API for Features implementation, so it's an open standard.

whatnick commented 3 years ago

Resto provides both STAC and OpenSearch API's which are required for the Rocket client for STAC to function. This functionality will allow Explorer to act as a Rocket backend.

alexgleith commented 3 years ago

Oh, it uses both APIs does it? Dang.