Requesting OSINT Hazards
Returns a 302 redirect to a pre-signed S3 URL. The resource at that URL contains gzipped NDJSON (newline-delimited JSON) with one hazard object per line.
OSINT hazards are detected through proprietary processing of open-source
intelligence -- news articles, social network feeds, and other
authoritative sources -- rather than reported by a single authoritative
agency. The response shape mirrors /active-hazards-query, with an
additional n2h block carrying the contributing sources and
event-specific detail.
This endpoint requires a specific role on your credentials. It is not
enabled by default. If you receive a 403, confirm with your sales
contact or support@disasteraware.com that your credentials carry the
required role.
This redirect behaviour applies to both filtered and unfiltered requests. Clients must follow the redirect and decompress the gzipped response body to read hazard records.
All query parameters are optional. When none are provided the full set of active OSINT hazards is returned.
JWT access token obtained from POST /authorize. Tokens expire after
15 minutes.
Filter by hazard name (partial match).
Filter by hazard type. Comma-separated list for multiple values.
One or more of CIVILUNREST, FLOOD, COMBAT, TERRORISM,
ACTIVESHOOTER, INCIDENT.
COMBAT,TERRORISMFilter by hazard sub-type (hazard_sub_type). Comma-separated list
for multiple values, and pairs naturally with type. Every type
except FLOOD carries a sub-type; FLOOD has no sub-type system and
is always an empty string, so filtering FLOOD by sub_type returns
nothing.
Valid values by type:
CIVILUNREST--PROTEST,STRIKE,RIOTCOMBAT--AIRSTRIKE,MISSILESTRIKE,DRONESTRIKE,BOMBING,ARTILLERY,GROUNDCOMBAT,INVASION,NAVAL,IED,AMBUSHTERRORISM--BOMBING,SUICIDE_BOMBING,IED,VEHICLE_RAMMING,MASS_SHOOTING,KNIFE_ATTACK,HOSTAGE,ASSASSINATION,ARSON,OTHERACTIVESHOOTER--MASS_SHOOTING,DRIVEBY,STANDOFF,SNIPER,SHOOTING,OTHERINCIDENT--ROAD_CLOSURE,BRIDGE,RAIL,PIPELINE,POWER,INDUSTRIAL,WATER,OTHER
Note there is no PORT or AIRPORT sub-type. To find disruptions at
ports and airports, use the supply_chain parameter -- the affected
infrastructure is carried by SupplyChainInfrastructure, not by the
sub-type.
RAIL,ROAD_CLOSUREFilter by severity level. Comma-separated list for multiple values.
OSINT hazards represent observed events and are published as
WARNING.
WARNINGFilter by hazard category. Comma-separated list for multiple values.
OSINT hazards are published as EVENT.
EVENTFilter by country. Comma-separated list for multiple values. This endpoint accepts three interchangeable forms, selected by the length of the value:
- 2 characters -- exact match on the ISO 3166-1 alpha-2 code
(e.g.
US). - 3 characters -- exact match on the ISO 3166-1 alpha-3 code
(e.g.
USA). - 4 or more characters -- substring match against the full
country name, so
United StatesmatchesUnited States of America.
This is more permissive than the country parameter on
/active-hazards-query, which requires the full country name.
US,JPN,United StatesFilter hazards started at or after this timestamp (format YYYY-MM-DD HH:MM:SS).
2026-07-01 00:00:00Filter hazards ended at or before this timestamp (format YYYY-MM-DD HH:MM:SS).
2026-07-31 23:59:59Filter by creation timestamp (format YYYY-MM-DD HH:MM:SS).
Filter by last-update timestamp (format YYYY-MM-DD HH:MM:SS).
Return only hazards whose updatedAt is at or after this timestamp.
Intended as a watermark for incremental polling: store the highest
updatedAt you have seen and pass it back on the next request
(format YYYY-MM-DD HH:MM:SS).
2026-07-13 06:00:00Filter by latitude range as min,max.
-10.0,10.0Filter by longitude range as min,max.
100.0,150.0Filter to hazards whose centroid falls inside a bounding box, given
as minLon,minLat,maxLon,maxLat (WGS84).
100.0,-10.0,150.0,10.0Filter on the geographic precision of the hazard's location
(n2h.location_level). One of point, city, county, corridor,
river_corridor, chokepoint, or region -- point is the most
precise and region the least. Hazards are never published at
country-level precision or coarser.
cityWhen true, return only hazards that disrupt transport or shipping
infrastructure (incident.properties.SupplyChainImpact), such as
port strikes, canal closures, rail suspensions, and airport
shutdowns.
trueFilter by hazard UUID(s). Comma-separated list for multiple values.
Redirect to a pre-signed S3 URL. Follow the Location header to
retrieve gzipped NDJSON hazard data. Each line in the decompressed
body is a JSON object matching the OsintHazard schema.
The pre-signed URL expires after 5 minutes.
Query validation failed.
Forbidden -- the token is invalid or expired, or the credentials
do not carry the role required for OSINT hazards. If your token works
against other endpoints, contact your sales contact or
support@disasteraware.com to have the required role added.
GET /osint-hazards-query HTTP/1.1
Host: api-v2.disasteraware.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"name": [
{
"locale": "en",
"value": "Russian Missile and Drone Strike on Power Grid — Ukraine"
}
],
"description": [
{
"locale": "en",
"value": "A Combat incident was reported in Podilskyi district, Ukraine on 2026-07-03.\nPreliminary reports indicate 10 total victims comprised of 10 fatalities.\n\nEvent Summary*:\n• Combat has been reported in Podilskyi district, Ukraine.\n• Affected areas include: Podilskyi district, Ukraine.\n\nBased on 247 article(s) from: Ukrainska Pravda English, South China Morning Post, ...\n"
}
],
"severity": "WARNING",
"category": "EVENT",
"type": "COMBAT",
"hazard_sub_type": "MISSILESTRIKE",
"uuid": "a6a4b817-8e6f-4f27-8974-c755db09f918",
"comment": "text",
"createdAt": 1783392752,
"updatedAt": 1783981527,
"startedAt": 1783036800,
"endedAt": 1783641600,
"latitude": 50.4895076,
"longitude": 30.4287653,
"version": 2,
"creator": "News2Hazards (Automated)",
"relatedHazards": [
{}
],
"incident": {
"uuid": "text",
"type": "text",
"sourceId": "text",
"sourceRecordId": "text",
"properties": {}
},
"source": {
"id": "text",
"name": "text",
"longName": "text",
"description": "text"
},
"locationDetails": {},
"n2h": {
"hazard_id": "COMBAT-UKR-KYIV-2026-07",
"hazard_sub_type": "MISSILESTRIKE",
"summary": "text",
"is_ongoing": true,
"start_date_iso": "2026-07-03",
"end_date_iso": "text",
"location_level": "point",
"location_specific": "Podilskyi district",
"country": "text",
"article_count": 247,
"quantitative": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"sources": [
{
"name": "Ukrainska Pravda English",
"title": "text",
"url": "https://example.com",
"type": "rss",
"published_at": "text",
"body": "text"
}
],
"extra": {}
},
"alertGeometry": {
"type": "FeatureCollection",
"features": [
{}
]
},
"features": {
"type": "FeatureCollection",
"features": [
{}
]
},
"exposureAreas": {},
"exposureAssessment": {}
}Response Format
Feed Membership and Expiry
Hazard Types
Sub-types
Query Parameters
The country parameter
OSINT-specific parameters
Response Fields
Field Details
Incident Object
Supply-Chain Fields
The n2h Object
Features
Hazard Samples
Last updated
