Search Datasets Endpoint
const url = 'https://example.com/search/datasets/?sort_by=relevance&offset=0&limit=10&filter-lang=cql2-text&exclude_synthetic=true&spatial_predicate=intersects';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/search/datasets/?sort_by=relevance&offset=0&limit=10&filter-lang=cql2-text&exclude_synthetic=true&spatial_predicate=intersects'Search datasets with text, spatial, and faceted filters.
Authorizations
Section titled “ Authorizations ”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “ Query Parameters ”Sort: relevance, date_added, name, last_updated
Sort: relevance, date_added, name, last_updated
Pagination offset
Pagination offset
Page size. Values above the maximum (200) are clamped to it rather than rejected, per OGC API Features Core /req/core/fc-limit-response-1(C).
Page size. Values above the maximum (200) are clamped to it rather than rejected, per OGC API Features Core /req/core/fc-limit-response-1(C).
Filter language: cql2-text or cql2-json
Filter language: cql2-text or cql2-json
Exclude synthetic/test datasets
Exclude synthetic/test datasets
Spatial predicate: intersects or within
Spatial predicate: intersects or within
Responses
Section titled “ Responses ”Successful Response
OGC API Records FeatureCollection with match counts.
object
Total records matching the query
Number of records in this response page
Single OGC API Records Feature.
object
object
Properties block of an OGC API Records Feature.
object
Identifiers assigned by the described resource’s source system.
object
object
object
Fresh, due, overdue, or unknown — how the dataset’s last refresh compares to its declared update_frequency. ‘unknown’ for origins nothing can refresh. Advisory only, and distinct from the quality score’s own freshness.
Healthy, missing, inaccessible, or unknown. ‘unknown’ means never probed, or an origin kind with nothing to probe.
object
One entry in the raster:bands STAC extension array.
fix(#1805 review round 3 P2): matches the shape service_records.py
actually serializes per band. statistics matches the normalized
band_info shape core/raster_bands.py (introduced by #1803, the raster
lifecycle PR) produces on read; keep this in sync if that PR changes
the per-band keys.
Link object in OGC API Records.
object
Link object in OGC API Records.
object
Example
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "type": "dataset", "never_edited": false, "record_type": "vector_dataset", "source_freshness": "unknown", "source_health": "unknown", "has_quicklook": false } } ]}Bad request — invalid query parameters or payload
Unauthenticated — a credential was supplied and could not be resolved (expired, revoked, or malformed). Sending no credential at all is not an error on these operations; they answer anonymously with the public subset. Neither is sending an unresolvable credential alongside a capability that authorizes the request on its own — a valid X-Embed-Token or a valid signed tile template (sig, exp, scope). Those are served and the unrelated credential is ignored.
Validation error
Too many requests — retry after the advertised interval
Headers
Section titled “ Headers ”Seconds until the request may be retried
Internal server error
Service unavailable — the database could not serve the request