Search Post
const url = 'https://example.com/stac/search';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"bbox":[-77.2,38.7,-76.8,39.1],"collections":["geolens-unassigned"],"limit":25}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/stac/search \ --header 'Content-Type: application/json' \ --data '{ "bbox": [ -77.2, 38.7, -76.8, 39.1 ], "collections": [ "geolens-unassigned" ], "limit": 25 }'STAC Item Search (POST with JSON body).
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ”JSON body for POST /search.
object
Maximum number of items returned. Values above 200 are clamped to 200.
Number of items to skip for pagination.
Responses
Section titled “ Responses ”Successful Response
Typed OpenAPI representation of a STAC ItemCollection.
object
Paging metadata emitted with STAC ItemCollections.
object
A GeoJSON Feature conforming to the STAC Item specification.
object
object
A STAC asset attached to an Item.
A GeoJSON GeometryCollection (RFC 7946 §3.1.8).
fix(#430 codex r9): carries geometries instead of coordinates, so
it needs its own model — only generic-GEOMETRY datasets accept it on write
(enforced in the service), and any stored collection must serialize back
out on read.
Deliberately NON-recursive (codex r13, refuted): PostGIS cannot round-trip nested collections through the GeoJSON boundary in either direction — ST_GeomFromGeoJSON rejects them on write and ST_AsGeoJSON raises ‘GeoJson: geometry not supported’ on read — so a recursive model could never receive one and would only convert the write-side 422 into a raw database 500. The write schemas add a raw-payload guard for a clear 422.
object
A GeoJSON geometry object (RFC 7946).
object
A GeoJSON geometry object (RFC 7946).
object
Stable item identifier.
Core STAC Item properties plus extension-defined fields.
STAC extension schema URIs in use.
STAC specification version.
Example
{ "context": { "limit": 10, "matched": 0, "returned": 0 }, "features": [], "links": [], "numberMatched": 0, "numberReturned": 0, "type": "FeatureCollection"}Bad request — invalid query parameters or payload
Not found
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