OpenSearch is a set of technologies that allow publishing of search results in a standard and accessible format. The Ifremer implementation allows for both satellite and in-situ high-performance geospatial data discovery and access.
Let’s start from the beginning.
The OpenSearch base URI addresses, is as follow :
<resource>is one of the available resources. For instance,
<output-format>is one of the supported output formats. For instance,
<resource>specific. For instance, with
granulesas the resource, the query string could be
datasetId=swi_l2anad&startPage=0&count=4&timeStart=1000-03-21T00:00:00Z&timeEnd=2200-01-01T00:00:00Z&geoBox=-180.0,-90.0,180.0,90.0, in order to select all granules from
swi_l2anaddataset. See more in the resources dedicated pages.
You’ll find bellow, the available resources to work with, and the associated documentation.
|granules||Search NetCDF files granules from a wide range of datasets, with search criteria such as bounding box, timespan, and some more properties depending on the datasource|
You’ll find bellow, some more information at the service level.
The only output format supported currently is
Browse to the dedicated resource doc page to see some output examples.
A query can always be completed with the pagination options into the
<query-string>. The available options are :
page_sizeis the number of results listed per page. The maximum is
10000results per page.
page_start_valueidentifies from which result position starts the pagination. Such value starts from 0.
Warning : with or without paging, the ultimate number of results that can be fetched for a given query is limited to 10000 (for instance, you can’t do
count=10000&startPage=1 in query string). This issue will be addressed in a later release.
A response always include information about pagination, in order to programmatically determine if the current page is the latest :
<opensearch:totalResults>8722</opensearch:totalResults> <opensearch:startIndex>0</opensearch:startIndex> <opensearch:itemsPerPage>4</opensearch:itemsPerPage>
opensearch:startIndex is the same as query parameter
opensearch:itemsPerPage is the same as query parameter
opensearch:totalResults refers to the total number of results.
The client must not assume the result’s items are sorted with particular attributes. The only guarantee is, of course, that the order is preserved when asking for previous or next pages.
You may get a timeout error at the service level, if the query took more than
60 seconds to complete. In this case, the HTTP return code will always be
400 (as other errors), and the error message contains the word “timeout”.
You’ll find bellow, some more information at the HTTP level.
The only HTTP method supported is always the
HTTP status code is set to
400 if an error occurs. The code is set to
200 in case of success.
Access-Control-Allow-Origin is set to
The table shows the HTTP response Content-Type associated to the
Our core front-end
Apache servers, as well as our Dockerised
Nginx instances may return an HTTP
504 Gateway Timeout, if the query take too long to complete (
90 seconds after the query has begun). However, as our backends must respond within a
60 seconds timeout, you will most likely received a proper timeout at the OpenSearch service level.