> For the complete documentation index, see [llms.txt](https://api-v2-docs.disasteraware.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api-v2-docs.disasteraware.com/osint-hazards/requesting-osint-hazards/civilunrest-sample.md).

# Civil Unrest Sample

Civil unrest hazards cover protests, strikes, riots, and demonstrations detected from open-source reporting. The sample below is a `RIOT` — an anti-migrant march in Delft, South Africa, corroborated across 27 articles.

This is also the type that carries most port and airport disruptions: a dockworkers' or air-traffic strike is a `CIVILUNREST` / `STRIKE` event, with the affected infrastructure carried by the supply-chain fields rather than by the sub-type.

These hazards are returned by the [`/osint-hazards-query`](/osint-hazards/requesting-osint-hazards.md) endpoint, which requires a specific role on your credentials.

**Sub-types** (`hazard_sub_type`): **`PROTEST`** (default), `STRIKE`, `RIOT`

## Type-Specific Properties

**Incident properties specific to civil unrest:**

* `Participants` — estimated number of people involved
* `Arrests` — number of arrests reported

**Quantitative counters (`n2h.quantitative`):**

* `participants` — participants in the latest reported incident
* `arrests` — arrests reported
* `deaths` — fatalities reported

Long-running unrest also carries cumulative counters — `participants_cumulative_since` and `deaths_cumulative_since` — which accumulate across the life of the event rather than describing a single day's incident.

## Sample Response

```json
{
  "name": [
    {
      "locale": "en",
      "value": "Anti-migrant March — Delft, South Africa"
    }
  ],
  "description": [
    {
      "locale": "en",
      "value": "A Civil Unrest incident was reported in Delft, South Africa\non 2026-06-28.\n  Preliminary reports indicate 4 total victims comprised of 4 fatalities.\n\nEvent Summary*:\n• Civil Unrest has been reported in Delft, South Africa.\n• Reports indicate approximately 1000 participants.\n• 10 arrests reported.\n• Reports indicate that at least 4 people have been affected.\n• Affected areas include: Delft, South Africa.\n\nBased on 27... [truncated for brevity]"
    }
  ],
  "severity": "WARNING",
  "category": "EVENT",
  "type": "CIVILUNREST",
  "hazard_sub_type": "RIOT",
  "incident": {
    "uuid": "647d2a7d-dfeb-4d5d-a093-1b94022a30a1",
    "type": "CIVILUNREST",
    "sourceId": 3000,
    "sourceRecordId": "CIVILUNREST-SOU-CAPE-TOWN-2026-06",
    "properties": {
      "Total_Fatalities": 4,
      "Total_Wounded": 0,
      "Civilian_Fatalities": 4,
      "Civilian_Wounded": 0,
      "Police_Military_Fatalities": 0,
      "Police_Military_Wounded": 0,
      "Terrorist_Insurgent_Fatalities": 0,
      "Terrorist_Insurgent_Wounded": 0,
      "type": "ACTUAL",
      "Incident_Type": "Civil Unrest",
      "reportDate": "2026-06-30T04:35:32+00:00",
      "action": "NEW_EVENT",
      "Incident_Duration": 4,
      "Created_Time": "2026-06-30T04:35:32+00:00",
      "casualties": "{\"killed\": {\"total\": 4}, \"injured\": {\"total\": 0}}",
      "scopeOfIncident": "Local",
      "name": "Anti-migrant March — Delft, South Africa",
      "status": "ACTIVE",
      "eventDate": "2026-06-28T00:00:00Z",
      "roles": "PUBLIC",
      "locationDescription": "Delft, South Africa",
      "Country_Name": "South Africa",
      "Country_Code": "ZA",
      "Country_Code_3": "ZAF",
      "Province_District_Town": "Delft",
      "Event_Summary": "Anti-immigrant protests in South Africa have led to businesses shuttering and extra police deployment, with demonstrators demanding undocumented foreigners leave the country by Tuesday. Groups protest... [truncated for brevity]",
      "Source": "AllAfrica - Latest",
      "sourceName": "AllAfrica - Latest",
      "event": "Civil Unrest",
      "featureType": "INCIDENT",
      "bufferSize": 5000,
      "rawMessage": "[news article text truncated for brevity]",
      "Scope_of_Incident": "Local",
      "Incident_Severity": "H",
      "Participants": 1000,
      "Arrests": 10,
      "..."
    }
  },
  "uuid": "647d2a7d-dfeb-4d5d-a093-1b94022a30a1",
  "comment": null,
  "createdAt": 1782849521,
  "startedAt": 1782604800,
  "updatedAt": 1782859182,
  "endedAt": 1782950400,
  "latitude": -33.9252902,
  "longitude": 18.4185215,
  "version": 2,
  "creator": "News2Hazards (Automated)",
  "relatedHazards": [],
  "locationDetails": {
    "version": 2,
    "country": "South Africa",
    "country_code": "ZA",
    "country_code_3": "ZAF",
    "continent": "Africa",
    "subregion": "Southern Africa",
    "state_province": "Western Cape",
    "state_code": "ZA-WC",
    "location_type": "land"
  },
  "n2h": {
    "hazard_id": "CIVILUNREST-SOU-CAPE-TOWN-2026-06",
    "hazard_sub_type": "RIOT",
    "summary": "Anti-immigrant protests in South Africa have led to businesses shuttering and extra police deployment, with demonstrators demanding undocumented foreigners leave the country by Tuesday. Groups protest... [truncated for brevity]",
    "is_ongoing": true,
    "start_date_iso": "2026-06-28",
    "end_date_iso": null,
    "location_level": "point",
    "location_specific": "Delft",
    "country": "South Africa",
    "article_count": 27,
    "quantitative": {
      "participants_cumulative_since": 25000,
      "participants": 1000,
      "deaths": 4,
      "arrests": 10,
      "deaths_cumulative_since": 2
    },
    "sources": [
      {
        "name": "AllAfrica - Latest",
        "title": "South Africa: More Than a Dozen South African Journalists Targeted As Anti-Migrant Deadline Looms",
        "url": "https://allafrica.com/stories/202606300014.html",
        "type": "rss",
        "published_at": "2026-06-30T04:35:32+00:00",
        "body": "[article body truncated for brevity]"
      },
      {
        "name": "Daily Nation Kenya",
        "title": "What is behind South Africa's anti-immigrant protests?",
        "url": "https://nation.africa/kenya/news/explainers/what-is-behind-south-africa-s-anti-immigrant-protests--5466186",
        "type": "rss",
        "published_at": null,
        "body": "[article body truncated for brevity]"
      },
      "..."
    ],
    "extra": {
      "..."
    }
  },
  "alertGeometry": {
    "type": "FeatureCollection",
    "features": [
      {
        "type": "Feature",
        "geometry": {
          "type": "Polygon",
          "coordinates": [...]
        },
        "properties": null
      }
    ]
  },
  "features": {
    "type": "FeatureCollection",
    "features": [
      {
        "type": "Feature",
        "properties": {
          "severity": "WARNING",
          "featureType": "INCIDENT",
          "name": "Anti-migrant March — Delft, South Africa",
          "casualties": {
            "killed": {
              "total": 4
            },
            "injured": {
              "total": 0
            }
          },
          "scopeOfIncident": "Local",
          "locationDescription": "Delft, South Africa"
        },
        "geometry": {
          "coordinates": [
            18.4185215,
            -33.9252902
          ],
          "type": "Point"
        }
      },
      {
        "type": "Feature",
        "properties": {
          "severity": "WARNING",
          "featureType": "SMART_ALERT"
        },
        "geometry": {
          "type": "Polygon",
          "coordinates": [...]
        }
      }
    ]
  },
  "exposureAreas": null,
  "exposureAssessment": null,
  "source": {
    "id": 3000,
    "name": "News2Hazards",
    "longName": "News2Hazards Automated Pipeline",
    "description": "Automated hazard detection from news article analysis"
  }
}
```

{% hint style="info" %}
Note: Coordinate arrays have been replaced with `[...]` for brevity. In actual API responses, these properties contain complete GeoJSON coordinate arrays. The `n2h.sources` array and the `incident.properties` and `features` objects have been truncated with `"..."` to show only key fields, and article text has been elided. The `n2h.extra` object is reserved for internal use.
{% endhint %}
