List Features
const url = 'https://example.com/datasets/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/features/?limit=10&offset=0&include_geometry=true';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
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/datasets/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/features/?limit=10&offset=0&include_geometry=true' \ --header 'Authorization: Bearer <token>'Get paginated GeoJSON features for a dataset.
Pagination is OFFSET-based (fix(#458 E-40), documented limitation): rows can
skip or duplicate across pages under concurrent writes, though feature ids
stay stable (ORDER BY gid, the primary key). Clients that need stable
cursoring should use the OGC API Features endpoint, which supports keyset
pagination via after_gid.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Query Parameters
Section titled “Query Parameters ”Legacy offset-based pagination. Phase 269 H-24 lowered the max limit to 200 from 1000.
Legacy offset-based pagination. Phase 269 H-24 lowered the max limit to 200 from 1000.
Include geometry in response
Include geometry in response
Responses
Section titled “ Responses ”Successful Response
A GeoJSON FeatureCollection with OGC API Features pagination fields.
object
A single GeoJSON Feature.
object
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
object
object
Example
{ "features": [ { "geometry": { "geometries": [ { "type": "Point" } ], "type": "GeometryCollection" }, "type": "Feature" } ], "type": "FeatureCollection"}Example generated
exampleBad request — invalid query parameters or payload
Unauthorized — missing or invalid credentials
Forbidden — caller lacks access to this resource
Not found
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