Use Cases
API & Data Integration

Fleet-wide store risk scoring as a native GIS map layer

Score your entire store fleet through the Base Operations API and surface it as a native layer in your GIS environment. A single script classifies every store by Base Score and crime subcategories, turning thousands of addresses into a live, queryable risk map.

Decode local threats to safeguard your global operations.
Fleet-wide store risk scoring as a native GIS map layer
Script
Python script
Source
Base Operations API
Classify
Risk class / store
Map
Esri ArcGIS

See how the Base Operations API fits in your security stack

Read case Study

Use Case Overview

Fleet-wide store risk scoring as a native GIS map layer

Base Operations delivers store-level risk through a REST API, so a retailer can score an entire fleet with a single script and map it in the GIS tools its teams already use. A national mass-market retailer needed one consistent risk read across roughly 9,200 stores, so it replaced a legacy crime-score provider with the Base Operations API and surfaced the results in Esri ArcGIS Enterprise. This use case shows how to turn thousands of store addresses into a live, queryable risk layer.

Who Benefits

This use case is valuable for Corporate Security and Asset Protection leaders managing risk across a large store fleet, GIS and Site-Selection teams who plan around location risk, and Security Analysts who need a consistent score for every site. It's especially relevant for retailers, restaurant and hospitality chains, and any organization operating hundreds or thousands of physical locations.

Protection Impact

A consistent risk score for every store, broken down by crime subcategory, shows exactly where protection is needed and why. Because a composite score can mask a specific threat, the subcategory detail lets teams target the right measure at each store, from shrink strategy to guard modeling, before losses accumulate.

Operational Improvements

Traditional fleet risk scoring often relies on a single legacy crime score that is inconsistent across regions and offers no detail beneath the number. Base Operations transforms this approach by providing:

  • One consistent Base Score for every store, at a defined radius
  • Crime subcategory scores that reveal what a composite score hides
  • API delivery that a single script can run across thousands of locations
  • Output that maps as a native layer in the GIS tools teams already use

Use Case Walkthrough

At fleet scale, the recipe is a loop. The script walks every store's coordinates, asks the API for a score and subcategory breakdown, and writes back a risk classification that ArcGIS can render as a map layer.

Recipe at a glance

Footprint

~9,200 stores nationwide

Refresh cadence

Periodic fleet pull

Team

GIS + site selection

Endpoints

Base Score · 13 subcategory scores · Bulk

Key parameters

radius 0.5 mi (half-mile standard)

Destination

Esri ArcGIS Enterprise (native layer)

Step 1: Iterate every store

A Python script steps through all ~9,200 store locations by latitude and longitude.

How it works

Script
Python script
Iterates store lat/long
Source
Base Operations API
Base Score + subcategory scores · radius 0.5 mi
Classify
Risk class per store
Fleet-wide classification
Map
Esri ArcGIS Enterprise
Native GIS layer · site selection + shrink

Step 2: Score each location

For each store, the API returns a Base Score and subcategory scores at a half-mile radius, the standard the retailer confirmed for store-level risk classification.

Step 3: Classify the risk

Each store gets a risk class derived from its score and subcategory profile.

Step 4: Map it in GIS

The output surfaces as a native layer in Esri ArcGIS Enterprise. The GIS team and the site-selection team both read from it.

The endpoints behind it

Endpoints & parameters

EndpointReturnsKey parameters
Base Score by locationComposite and per-subcategory Base Scores per storelat/long · radius 0.5 mi · categories
Threat subcategory breakdownShrink- and theft-relevant category scoresdrives shrink strategy
Bulk location managementScore the entire ~9,200-store fleetone scheduled pull

What comes back

The composite Base Score classifies the store, and the subcategory scores explain it. This store's composite is a low 15, yet its Vandalism subcategory scores 83. That gap is invisible in the composite and decisive for operations, and it is exactly what drives shrink strategy and guard modeling.

What comes back

15Base Score · suburban store
# Python — illustrative fleet loop for store in stores: # ~9,200 r = requests.get(API, params={ "lat": store.lat, "lng": store.lng, "radius": 0.5, "categories": CRIME_IDS}) store.base_score = r["baseScore"] # 15 store.subscores = r["subcategories"] # Vandalism 83!
Vandalism83
Drug & Alcohol44
Fraud34
Shoplifting27
Simple Assault22
Theft from Vehicle18
Theft15
Burglary14
Vehicle Theft12
Homicide8
Sex Offenses4
Robbery4

Composite Base Score is 15 — but Vandalism scores 83. Subcategories reveal what the composite hides, and that is what drives store-level decisions.

Conclusion

Crime subcategory scores drive decisions about new-store viability, shrink risk, and security-infrastructure investment at fleet scale, because they reveal the specific threats a composite score hides. A single scheduled script turns 9,200 addresses into a live, queryable risk layer inside the tools the retailer's teams already use every day.

This is the shift from reactive to proactive. Every store carries a current, detailed risk score in the same map teams already work from, so decisions about people, assets, and investment start from evidence.