10 Intelligence Engines
From single-jurisdiction risk scoring to national quarterly reports — compose the exact intelligence you need.
Versioned & Stable
All enterprise endpoints live under /api/v1/ with backward-compatibility guarantees and semantic versioning.
Simple Auth
One header, no OAuth. Send x-legalcals-key with every request and get JSON back with rate-limit metadata.
Authentication
Include your API key in the x-legalcals-key header with every request.
POST /api/v1/risk
Host: legalcals.com
Content-Type: application/json
x-legalcals-key: lc_your_key_here
{
"topic": "rent-increase",
"jurisdiction": "bc",
"scenario": "Proposed rent increase of 5% with 30 days notice."
}Every response includes rate-limit headers so you can throttle client-side:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 42
X-RateLimit-Reset: 1714500000Endpoints
Intelligence
/api/v1/intelligenceJurisdiction summary with citations and freshness warnings
Reasoning
/api/v1/reasoningScenario analysis, compliance path, and outcome reasoning
Checklist
/api/v1/checklistGenerate compliance checklists for a scenario
Risk
/api/v1/riskStructural, procedural, documentation, and overall risk scores
Heatmap
/api/v1/heatmapNational compliance heatmap across all jurisdictions
Similarity
/api/v1/similarity/matrixPairwise jurisdiction similarity vectors
/api/v1/similarity/clustersK-means clustering of jurisdictions
Trends
/api/v1/trends/jurisdictionHistorical trend analysis for one jurisdiction
/api/v1/trends/nationalNational trend report with volatility rankings
Forecast
/api/v1/forecast/jurisdictionPredicted risk levels for a jurisdiction
/api/v1/forecast/nationalNational forecast with confidence and trend direction
Reports
/api/v1/reports/quarterlyQuarterly regulatory intelligence report
/api/v1/reports/annualAnnual year-over-year regulatory report
Topics
/api/v1/topicsList all topics with coverage metadata
/api/v1/topics/{topic}/coveragePlaceholder vs real rule coverage
Code Examples
JavaScript
const res = await fetch("https://legalcals.com/api/v1/risk", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-legalcals-key": "lc_your_key_here",
},
body: JSON.stringify({
topic: "rent-increase",
jurisdiction: "bc",
scenario: "Proposed rent increase of 5% with 30 days notice.",
}),
});
const data = await res.json();
console.log(data.data.overallRisk);Python
import requests
res = requests.post(
"https://legalcals.com/api/v1/risk",
headers={
"Content-Type": "application/json",
"x-legalcals-key": "lc_your_key_here",
},
json={
"topic": "rent-increase",
"jurisdiction": "bc",
"scenario": "Proposed rent increase of 5% with 30 days notice.",
},
)
data = res.json()
print(data["data"]["overallRisk"])cURL
curl -X POST https://legalcals.com/api/v1/risk \
-H "Content-Type: application/json" \
-H "x-legalcals-key: lc_your_key_here" \
-d '{"topic":"rent-increase","jurisdiction":"bc","scenario":"Proposed rent increase of 5% with 30 days notice."}'SDK Downloads
Auto-generated SDKs from the OpenAPI specification. Install or copy directly into your project.
OpenAPI Specification
The complete v1 API is documented in OpenAPI 3.0.3 format. Use it to generate clients in any language, import into Postman, or serve with Swagger UI.
openapi: 3.0.3
info:
title: LegalCals Enterprise API
version: "1.0.0"
servers:
- url: https://legalcals.com/api/v1
security:
- ApiKeyAuth: []
paths:
/intelligence:
post:
operationId: getIntelligence
...