The Incidents API is the primary read interface of GeoSentinel. An incident is a deduplicated, spatio-temporally clustered aggregate of one or more canonical events sourced from NASA FIRMS, USGS, GDELT, ACLED, and other ingestors. Incidents move through a lifecycle (Documentation Index
Fetch the complete documentation index at: https://mintlify.com/danizd/GeoSentinel/llms.txt
Use this file to discover all available pages before exploring further.
open → updated → stale → closed / false_positive) and expose computed fields such as severity_max, confidence, and fatalities_total that consolidate data across all linked events. Both endpoints are read-only and require no authentication.
GET /v1/incidents
Returns a paginated list of incidents matching the supplied filters. By default, only incidents in open or updated status are returned, ordered by last_seen descending.
Query Parameters
Bounding box filter expressed as four comma-separated decimal values:
lon_min,lat_min,lon_max,lat_max. Incidents whose canonical_point falls within the envelope are returned. The filter uses PostGIS ST_Within against a ST_MakeEnvelope built from the four values in SRID 4326.Example: -10.0,35.0,5.0,45.0 (Iberian Peninsula)Filter incidents to a single event category. Must be one of the following values:
| Value | Description |
|---|---|
conflict | Armed conflict and battle events |
disaster_natural | Earthquakes, floods, and other natural disasters |
wildfire | Active fire and wildfire hotspots |
mobility | Significant population or vehicle movement |
humanitarian | Humanitarian crises and relief operations |
other | Events that do not fit any primary category |
Comma-separated list of lifecycle statuses to include in the result set. Defaults to
Note:
open,updated when the parameter is omitted. Valid status values:| Value | Meaning |
|---|---|
open | Newly created incident, not yet re-observed |
updated | Incident received at least one new linked event since creation |
stale | No new observations for an extended period |
closed | Incident confirmed as ended |
false_positive | Incident marked as erroneous by a correction |
false_positive records are excluded even when present in this list unless include_fp=true is also set.ISO 8601 datetime string. Only incidents where
last_seen >= since are returned. Accepts UTC timestamps with or without the Z suffix.Example: 2025-01-01T00:00:00ZMinimum value for the
severity_max field. Only incidents with severity_max >= min_severity are returned. Must be between 0 and 10 inclusive.Minimum value for the
confidence field. Only incidents with confidence >= min_confidence are returned. Must be between 0 and 10 inclusive.Comma-separated list of source names. Only incidents whose
sources array overlaps with the supplied list are returned. Uses a PostgreSQL array && (overlap) operator.Example: firms,usgsWhen
true, incidents with status false_positive are included in the result set even if false_positive is not present in the status filter. Defaults to false.1-based page number. Must be
>= 1. Use together with limit to paginate through large result sets.Maximum number of incidents to return per page. Must be
<= 100. Defaults to 20.UUID of a saved Area of Interest. When provided, only incidents whose
canonical_point intersects the AOI’s geometry are returned. The filter uses PostGIS ST_Intersects. If the supplied UUID does not match any AOI, the spatial filter is silently skipped.Example: 550e8400-e29b-41d4-a716-446655440000Response Schema
200 OK — returns an IncidentListResponse object.
Total number of incidents matching the applied filters, regardless of pagination.
The current page number, mirroring the
page query parameter.Array of incident objects for the current page, ordered by
last_seen descending.Examples
GET /v1/incidents/{incident_id}
Retrieves a single incident by its UUID. Returns the full IncidentResponse object, identical in shape to the items in the incidents array of the list endpoint. The raw_payload and actors fields are populated from the first linked canonical event.
Path Parameters
The UUID of the incident to retrieve. Must match the
incident_id primary key in the incidents table.Example: 550e8400-e29b-41d4-a716-446655440000Response Schema
200 OK — returns a single IncidentResponse object. See the field descriptions in the list endpoint response above — the schema is identical.
Errors
| Status | Detail | Condition |
|---|---|---|
404 | Incident not found | No incident with the given UUID exists in the database |
422 | Validation error | The supplied incident_id is not a valid UUID format |
