Hero background pattern
Y Combinator LogoNot Backed by Y Combinator, Yet

Public Safety as a Service
API access to real-time crime data.

Enterprise-grade API access to hyperlocal crime, hazards, and civic alerts programmatically — stream live events, run geospatial lookbacks, and power safety-first user experiences.

Request API Access
hercules-sdk-example.js
Request
Live Response
Response
{
  "status": "success",
  "data": {
    "incidents": [
      {
        "id": "inc_2024_0415_001",
        "type": "theft",
        "severity": "high",
        "location": {
          "lat": 23.8103,
          "lng": 90.4125,
          "address": "Gulshan-2, Dhaka",
          "area": "Gulshan"
        },
        "timestamp": "2024-10-15T14:23:00Z",
        "verified": true,
        "confidence": 0.94
      },
      {
        "id": "inc_2024_0415_002",
        "type": "accident",
        "severity": "critical",
        "location": {
          "lat": 23.7516,
          "lng": 90.3763,
          "address": "Farmgate, Dhaka",
          "area": "Tejgaon"
        },
        "timestamp": "2024-10-15T13:45:00Z",
        "verified": true,
        "confidence": 0.98
      }
    ],
    "total": 2,
    "page": 1
  }
}
Custom Solutions

We Build Solutions for Your Industry

Safer Routes, Smarter Operations

Build real-time safety intelligence into your logistics platform. Power dynamic ETAs, driver routing optimization, and rider confidence with circular geofence monitoring.

Safer Routes, Smarter Operations
Live route risk scoring
Geofenced safety alerts
Driver safety dashboards
Rider trust metrics
Platform

What You Get Out of the Box

Enterprise-grade infrastructure for safety data, built for scale and reliability.

{
  "id": "inc_2024_dhk_001",
  "type": "theft",
  "timestamp": "2024-10-15T14:30:00Z",
  "location": {
    "lat": 23.8103,
    "lon": 90.4125,
    "address": "Gulshan 2, Dhaka"
  },
  "severity": "medium",
  "confidence": 0.94,
  "source": "police_report",
  "verified": true
}

Unified Safety Data, One Schema

Aggregated, deduped, and verified incidents (crime, hazards, civic alerts) with timestamps, geo, narrative, confidence, and provenance.

radius_m

Geo-Native Radius Queries Only

Everything is optimized for circles: search within a center point + radius (meters), with time and type filters, returns full records or counts.

Live Stream
Last 7 days
124
Mon
189
Tue
98
Wed
234
Thu
156
Fri
289
Sat
342
Now

Realtime + Historical

Subscribe to live events in a circular geofence or pull multi-year lookbacks for trend analysis and planning.

94%
Verified
12
Sources
Audit Logs

Trust & Controls

Verification flags, source lineage, audit logs, rate limits, role-based API keys, regional data residency.

TypeScript
Python
JavaScript
React
Vue
Angular

Built for Developers

SDKs: TypeScript/JS, Python • REST + WebSocket • Exports to PostGIS, BigQuery, S3/Parquet • Webhooks to Kafka/Pub/Sub/Kinesis • Mapbox/Google Maps/Leaflet friendly.

SOC2
ISO 27001
GDPR
AES-256

Security & Compliance

SOC2-aligned controls, encryption in transit/at rest, PII-minimized payloads, abuse monitoring.

How It Works

Our SDK is Dead Easy to Use.

Our data pipeline transforms raw signals into structured, actionable safety intelligence.

search.ts
import { Hercules } from "@hercules/sdk";

const hx = new Hercules({ 
  apiKey: process.env.HERCULES_API_KEY 
});

const incidents = await hx.incidents.search({
  within: { 
    type: "circle", 
    center: [23.7806, 90.4070], 
    radius_m: 1500 
  },
  types: ["assault", "robbery", "traffic_hazard"],
  since: "2025-10-01T00:00:00Z",
  min_confidence: 0.7,
  limit: 200
});

TypeScript Circle Search

Query incidents within a circular radius using our TypeScript SDK. Specify center coordinates, radius in meters, and filter by incident types with confidence thresholds for precise results.

Live Alerts Stream

Subscribe to real-time incident streams within a circular geofence. Get instant notifications as events occur in your area of interest with WebSocket-powered live updates.

stream.ts
await hx.stream.subscribe({
  within: { 
    type: "circle", 
    center: [23.7806, 90.4070], 
    radius_m: 800 
  },
  onEvent: (e) => handleAlert(e),
  onError: console.error
});
analytics.py
from hercules import Hercules
hx = Hercules(api_key=API_KEY)

df = hx.export.to_dataframe(
    center=[23.7806, 90.4070],
    radius_m=2000,
    types=["theft","harassment","traffic_hazard"],
    since="2025-09-01"
)

hot = (df.assign(hour=df.timestamp.dt.hour)
         .groupby("hour")["id"]
         .count()
         .sort_values(ascending=False)
         .head(10))
print(hot)

Python Export & Analytics

Export incident data to pandas DataFrames for advanced analytics. Perform complex queries, aggregate statistics, and identify patterns with Python's powerful data science ecosystem.

Background

Ready to Build Safer Experiences?

Get API access for enterprise integration or try our consumer app.