analytics

Get Incident Counts

AI detections grouped by incident_type over a window (default rolling 24h; start/end win when both given), rolled up per site and per camera — the Analytics → Incident Data tab. site_id/camera_id repeat for multi-select: UUID-typed so malformed ids 422 at the edge instead of 500ing in Postgres, and length-capped to bound the authorization and analytics IN clauses. Same tenant scoping as /analytics/summary.

get/analytics/incidents

Request

  • Base URL
    https://api.verdun.ai (the document declares no server; this is the origin it was published from)
  • URL
    https://api.verdun.ai/analytics/incidents
  • Auth
    HTTP bearer

Query parameters

hoursinteger nullable
startstring date-time nullable
endstring date-time nullable
parent_idstring uuid nullable
site_idstring[] nullable
camera_idstring[] nullable

Response

Successful Response

window_startstring date-time required

Start of the counted window (UTC).

window_endstring date-time required

End of the counted window (UTC).

totalinteger required

All AI detections in the window across the selected scope.

Example response

{
  "total": 412,
  "totals": [
    {
      "incident_type": "INTRUSION",
      "count": 57
    }
  ],
  "sites": [
    {
      "count": 120,
      "by_type": {
        "INTRUSION": 12,
        "NORMAL": 80
      }
    }
  ],
  "cameras": [
    {
      "count": 45,
      "by_type": {
        "LOITERING": 3,
        "NORMAL": 40
      }
    }
  ],
  "gate_rejections": {
    "total": 11,
    "by_reason": [
      {
        "reason": "no_object_of_interest",
        "count": 8
      }
    ]
  }
}

Changes

No recorded changes to this operation across all 2 revisions of this API.