Query events with filtering, pagination, and sorting
| Parameter | Type | Required | Description |
|---|---|---|---|
page | integer | No | Page number, starting at 1 (default: 1) |
page_size | integer | No | Results per page, 1–500 (default: 50) |
event_category | string[] | No | Filter by event category (repeatable) |
event_type | string[] | No | Filter by event type within category (repeatable) |
event_subtype | string[] | No | Filter by event subtype (repeatable) |
country | string[] | No | Filter by country code (repeatable) |
date_from | string | No | Inclusive start date (YYYY-MM-DD) |
date_to | string | No | Inclusive end date (YYYY-MM-DD) |
search | string | No | Full-text search across title and description |
salience_score_min | float | No | Minimum salience score |
salience_score_max | float | No | Maximum salience score |
article_count_min | integer | No | Minimum number of source articles (≥ 0) |
article_count_max | integer | No | Maximum number of source articles (≥ 0) |
actor_count_min | integer | No | Minimum number of actors involved (≥ 0) |
actor_count_max | integer | No | Maximum number of actors involved (≥ 0) |
sort_by | string | No | Sort column: event_date (default), salience_score, article_count, title, created_at |
sort_order | string | No | Sort direction: asc or desc (default: desc) |
sort_by: Unrecognised values silently fall back to event_date. No validation error is returned.
Note on categorical filters: Passing an unknown value (e.g. an unrecognised event_category) returns an empty result set, not a 422 error.
| Field | Type | Description |
|---|---|---|
id | UUID | Unique event identifier |
title | string | Event title/headline |
description | string | Detailed event description (nullable) |
eventCategory | string | Category ID (e.g., “conflict”, “cyber”) |
eventType | string | Type ID within category |
eventSubtype | string | Subtype ID within type (nullable) |
eventDate | date | Date when the event occurred, YYYY-MM-DD (nullable) |
eventDateEnd | date | End date for multi-day events (nullable) |
location | string | Specific location name (nullable) |
locationCountry | string | ISO 3166-1 alpha-2 country code (nullable) |
locationCoordinates | object | Object with lat and lng floats (nullable) |
fatalities | integer | Number of reported fatalities (nullable) |
injuries | integer | Number of reported injuries (nullable) |
abductions | integer | Number of reported abductions (nullable) |
civilianTargeting | boolean | Whether civilians were deliberately targeted (nullable) |
admin1 | string | First-level administrative division, e.g. state/province (nullable) |
admin2 | string | Second-level administrative division, e.g. district/county (nullable) |
admin3 | string | Third-level administrative division, e.g. commune/ward (nullable) |
geoPrecision | integer | Geographic precision level: 1=exact/rooftop, 2=district/city, 3=approximate/country (nullable) |
salienceScore | float | Relevance/importance score 0.0–1.0 (nullable) |
articleCount | integer | Number of source articles |
actorCount | integer | Number of actors involved |
sourceDomains | string[] | Source domains where event was reported (nullable) |
sourceTypes | string[] | Source/article types contributing to this event: news, government_report, academic, court_document, press_release, blog, social_media, archive, other (nullable) |
createdAt | datetime | When the record was created |
updatedAt | datetime | When the record was last updated |