https://api.crimescore.io/v1 Crime Data API
Crime data API for real estate and location products
Resolve addresses, look up ZIP and coordinate-based Safety Scores, explain model factors, retrieve bounded nearby incidents, and embed matching safety maps through one product-ready API.
Browse-only API reference
Integrate one consistent Safety Score contract
This page is the readable product reference. Use the playground when you are ready to add a key and run a live request.
https://api.dev.crimescore.io/v1 Authentication
Send your secret key in the request header
Score and incident routes use the x-api-key header. Keep secret keys on your server. Use a
publishable key only for the hosted embed workflow.
curl "https://api.crimescore.io/v1/score?zip=10001" \
-H "x-api-key: YOUR_SECRET_KEY" Endpoints
Choose the smallest route for the product job
5 live routes and surfaces. Everything documented below is available today. Compare CrimeScore with SpotCrime.
/v1/score Starter, Pro, Enterprise Safety Score by coordinate or ZIP
Use the score endpoint when your product needs a higher-is-safer 0-100 Safety Score, letter grade, resolved geography, and component scores.
- lat + lng or zip
- No mixed coordinate and ZIP queries
Returns the overall Safety Score, grade, component scores, resolved geography, and release metadata.
GET /v1/score?lat=40.7128&lng=-74.0060
{
"geoid": "360610031002",
"resolved": {
"lat": 40.7128,
"lng": -74.006,
"state": "NY",
"county_fips": "061"
},
"safety_score": 28,
"safety_grade": "D",
"components": {
"violent_crime": 24.8,
"property_crime": 37.9,
"disorder": 29.2,
"frequency": 31.5
},
"data": {
"census_vintage": "2024",
"model_version": "2.0"
}
} /v1/score/details Starter, Pro, Enterprise Contributor details by component
Use score details on Starter and higher tiers when your product needs the available contributor explanation for the overall score or a selected component.
- lat + lng or zip
- component is optional
Adds the eligible contributors for the overall score or one selected component.
GET /v1/score/details?lat=40.7128&lng=-74.0060&component=property_crime
{
"geoid": "360610031002",
"resolved": {
"lat": 40.7128,
"lng": -74.006,
"state": "NY",
"county_fips": "061"
},
"component": "property_crime",
"safety_score": 37.9,
"safety_grade": "D",
"contributors": [
{
"label": "High rental vacancy rate",
"direction": "lowers_safety_score",
"impact": "high"
}
],
"data": {
"census_vintage": "2024",
"model_version": "2.0"
}
} /v1/incidents/nearby Pro and Enterprise Bounded incidents near a point
Use nearby incidents when a listing, map click, address lookup, or internal workflow needs a short-term local pulse beside the score.
- lat + lng
- radius_m
- hours
Returns bounded recent incident context; it does not recompute or replace the modeled Safety Score.
GET /v1/incidents/nearby?lat=40.7128&lng=-74.0060&radius_m=5000&hours=24
{
"capturedAt": "2026-06-23T16:00:00.000Z",
"center": {
"lat": 40.7128,
"lng": -74.006
},
"radius_m": 5000,
"hours": 24,
"limit": 25,
"count": 3,
"scannedCells": 4,
"incidents": [
{
"id": "crimescore_9f3a2b7c1d4e5f60718293ab",
"label": "Theft",
"categories": ["property"],
"latitude": 40.7142,
"longitude": -74.0028,
"reportedAt": "2026-06-23T13:42:00Z",
"distance_m": 384
}
]
} /v1/geocode Public helper Address to coordinate helper
Use geocode when a public search box or app workflow needs to resolve a US address before centering the map or calling the score API.
- address
Resolves a US address before a coordinate score or map request. It does not return a Safety Score.
GET /v1/geocode?address=1600%20Pennsylvania%20Ave%20NW%20Washington%20DC
{
"query": "1600 Pennsylvania Ave NW Washington DC",
"matched": true,
"lat": 38.8977,
"lng": -77.0365,
"matchedAddress": "1600 PENNSYLVANIA AVE NW, WASHINGTON, DC, 20500"
} /embed Starter, Pro, Enterprise Embeddable safety map
Use the hosted embed when a customer-facing page needs the map layer without rebuilding the CrimeScore map stack.
- publishable key
- lat + lng or zip
- theme + layer
Loads the embeddable map surface. Starter embeds retain CrimeScore attribution.
<iframe
src="https://crimescore.io/embed?key=cs_pub_...&lat=40.7128&lng=-74.0060&zoom=12&theme=dark"
width="100%"
height="520"
></iframe> Response handling
Use standard HTTP status outcomes
Start with an account
Review the contract before beginning a trial
Account creation is payment-free. Production API access begins with a Starter trial or paid plan.
Why raw crime data is not enough
Most crime APIs start with incident rows. That can help if you are building a public blotter, but it puts a lot of cleanup work on your team. Categories vary by city, update timing is uneven, and population density can make busy places look worse without context.
CrimeScore is built for teams that need a product-ready signal. You send coordinates, we resolve the Census block group, and the API returns a higher-is-safer Safety Score with the response detail available on your plan.
What the API returns
The score endpoint returns a 0 to 100 Safety Score, a letter grade, component scores, resolved location metadata, and model data. Starter and higher tiers can call score details for contributor explanations.
The nearby incidents endpoint is separate and gives bounded local context around a coordinate without turning your app into a raw public feed.
- Address and coordinate based scoring
- Public geocode helper for US address search
- Census block group level resolution
- Overall score plus violent crime, property crime, disorder, and frequency components
- Nearby incident context
- Embeddable crime map layers for customer-facing pages
Built for real product workflows
CrimeScore is useful when crime data is one part of a larger user decision, like comparing listings, reviewing markets, enriching location profiles, or giving customers a safer way to understand neighborhood context.
The API is not designed for predictive policing, individual screening, or any workflow that makes a legally adverse decision about a specific person based on their address.
FAQ
Common questions
Is CrimeScore a raw crime data API?
CrimeScore provides normalized Safety Scores and bounded recent activity context. It is not a bulk raw incident export feed.
Can I query by latitude and longitude?
Yes. The score endpoint accepts latitude and longitude, resolves the location, and returns the matching neighborhood score where coverage is available.
Can I use CrimeScore in a real estate product?
Yes. Real estate and PropTech platforms are core use cases, as long as the score is used for location context and not prohibited individual-level decisions.