API Documentation
Calchis API v1 provides programmatic access to US catastrophe intelligence. All event output is OGC-compliant GeoJSON. All coordinates WGS84. All timestamps UTC ISO 8601. Hazard score endpoints support ?format=oasis for OASIS LMF integration.
Get started in 5 minutes
Create a free account
Sign up at calchis.com/pricing to get started. The free tier includes live event feeds, consequence rings, and basic hazard scoring with no authentication required. Public endpoints work immediately.
Get your API token
Sign in with your email (magic link) to receive a JWT access token. Pass it as a Bearer token in the Authorization header for protected endpoints. Enterprise subscribers also receive dedicated API keys for server-to-server integration.
Make your first request
Fetch all active US disaster events as GeoJSON. No authentication required.
curl -s "https://calchis.com/api/v1/events/live" \
-H "Accept: application/json" | jq .Code Examples
Get hazard score for a location
GET /api/v1/risk/score — Returns multi-peril hazard scores with full score component breakdown. Free tier returns one peril; Analyst and Enterprise return all relevant perils.
curl -s "https://calchis.com/api/v1/risk/score?lat=29.76&lng=-95.37&perils=hurricane" \
-H "Authorization: Bearer YOUR_TOKEN" | jq .Export in OASIS LMF format
GET /api/v1/risk/score?format=oasis — Same endpoint, OASIS Loss Modeling Framework output. Compatible with Moody's RMS and Verisk integration pipelines. Enterprise+ only.
curl -s "https://calchis.com/api/v1/risk/score?lat=29.76&lng=-95.37&perils=hurricane&format=oasis" \
-H "Authorization: Bearer YOUR_TOKEN" -o hazard_score.jsonCreate an ILS parametric trigger
POST /api/v1/triggers — Monitor cat bond positions against live event data. Threshold types include wind speed (kt), storm surge (ft), magnitude, gauge stage, and industry loss. Analyst tier: up to 10 triggers. Enterprise: unlimited.
curl -X POST "https://calchis.com/api/v1/triggers" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Gulf Hurricane CAT3+ Monitor",
"peril": "hurricane",
"lat": 29.76,
"lng": -95.37,
"radius_km": 200,
"threshold_type": "wind_speed",
"threshold_value": 96,
"threshold_unit": "kt",
"alert_at_pct": 80,
"notes": "Alert when a storm reaches 80% of CAT3 threshold within 200km of Houston"
}'Base URL
https://calchis.com/api/v1Authentication
Public endpoints (no auth required)
Live events, consequence rings, and basic hazard scores are available without authentication. Rate limited to 60 requests/minute by IP.
Bearer token (Analyst, Enterprise)
After signing in with Supabase Auth (magic link), include the JWT access token in every request to protected endpoints.
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...API keys (Enterprise)
Server-to-server API keys are issued to Enterprise subscribers for programmatic integration. Generate keys from your API key settings. Pass them as Bearer tokens.
Authorization: Bearer YOUR_API_KEYRate Limits
All API routes use sliding-window rate limiting. Rate limit headers X-RateLimit-Remaining and X-RateLimit-Reset are included on every response. Exceeding the limit returns 429 with a Retry-After header.
Response Format
Event feeds return OGC-compliant GeoJSON FeatureCollections. Each feature includes a Point geometry (WGS84 coordinates as [lng, lat]) and a properties object with event metadata, severity, status, and source provenance.
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-118.2437, 34.0522]
},
"properties": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"title": "M5.2 Earthquake — Los Angeles, CA",
"event_type": "earthquake",
"severity": 5.2,
"severity_label": "M5.2 MODERATE",
"status": "active",
"started_at": "2026-03-20T14:23:00Z",
"source": "usgs",
"source_url": "https://earthquake.usgs.gov/earthquakes/eventpage/ci12345678",
"confidence_score": 1.0,
"slug": "m52-earthquake-los-angeles-ca-2026-03-20"
}
}
]
}Events
Live US multi-peril disaster event feeds
/api/v1/events/liveAll active + monitoring events as GeoJSON FeatureCollectionpublic/api/v1/events/{id}Single event detail with full metadatapublic/api/v1/events/{id}/ringsConsequence ring polygons as GeoJSONpublic/api/v1/events/nearbyEvents within radius of a lat/lng pointpublicAnalysis
Deterministic event analysis, predictions, and timelines
/api/v1/events/{id}/predictionIndicative severity forecast (simplified from published models)analyst/api/v1/events/{id}/timelineEvent status arc (containment, wind, gauge readings)agency/api/v1/events/{id}/exposurePopulation and structure exposure within consequence zonesanalyst/api/v1/events/{id}/briefingPDF leadership briefing exportanalyst/api/v1/events/{id}/ics209Incident Status Summary (partial ICS-209) auto-generation from live event dataagencyScenarios
What-if scenario planning for tabletop exercises and preparedness
/api/v1/scenarios/runRun a hypothetical disaster scenario with impact estimatesanalystInfrastructure
HIFLD critical infrastructure (hospitals, fire stations, schools, EMS)
/api/v1/infrastructureQuery infrastructure within radius as GeoJSONpublicScoring
Multi-peril hazard scores with full methodology transparency
/api/v1/risk/scorePoint-in-time hazard score by lat/lng. Supports ?format=oasis. Free key: 100 req/day.public/api/v1/events/{id}/scoreHazard scores at the event's geographic locationpublicPortfolio
Portfolio management and exposure analysis
/api/v1/portfolioList portfolios with nested locationsagency/api/v1/portfolioCreate a portfolioagency/api/v1/portfolio/exposurePortfolio exposure against active consequence ringsagency/api/v1/portfolio/ep-curveExceedance probability curve for a portfolioagencyTriggers
ILS parametric trigger monitoring for cat bond positions
/api/v1/triggersList active ILS triggersagency/api/v1/triggersCreate a parametric triggeragency/api/v1/triggers/{id}/historyTrigger evaluation history with threshold proximityagencyLocations
Saved locations with alerting and exposure checking
/api/v1/locationsList saved locationspublic/api/v1/locationsSave a new locationpublic/api/v1/locations/exposureCheck saved locations against active event ringspublic/api/v1/locations/alertsUnread alert notificationspublicOutput Formats
JSON (default)
All responses default to JSON. Event feeds use OGC-compliant GeoJSON FeatureCollection format.
OASIS LMF
Add ?format=oasis to scoring endpoints for OASIS Loss Modeling Framework output. Compatible with Moody's RMS and Verisk platforms.
OASIS LMF v2.5.0 Compatible · Agency and Enterprise
OpenAPI Specification
Full OpenAPI 3.0.3 specification with request/response schemas, authentication, and parameter documentation. Available for import into Postman, Swagger UI, or automated client generation.
Download it at calchis.com/docs/openapi.yaml. It is generated from the same file the test suite checks against every route.
Data Standards
| Coordinate System | WGS84 (EPSG:4326) |
| Timestamps | UTC ISO 8601 |
| Event Output | OGC-compliant GeoJSON |
| Field Naming | ACORD-compatible on insurance outputs |
| Score Format | 0.00–10.00 with score_components JSONB |
| Source Provenance | source + source_url + ingested_at on every record |
API access is subject to rate limits and subscription tier. For situational awareness and decision support only — not a primary alerting or dispatch system. Verify against official sources before operational use.