OPERATIONS / OVERVIEW

Downtown Chicago · 60601

CONNECTING
HOSTED INCIDENT APIConnecting
Incidents · 24h≡
6

↑ 12% from prior period

Urgent now!
2

↓ 1 in the last hour

Median response◷
4m 12s

Within target · under 5 min

Pattern signal✦
Elevated

Property cluster · east sector

USER-MANAGED VIDEO / LIVE STREAM

Live camera feed

No feed configured
Invalid video feeds removed

Add an authorized HTTPS feed or import a validated JSON catalog to restore live video.

OFFICIAL SOURCE DISCOVERY

Multi-state feed directory

Start with verified transportation agencies, then connect only the media and data paths each agency actually publishes.

8sources4camera paths2snapshot networks
DataChicago, IL
City of Chicago

Chicago Traffic Tracker

Conditions · counts · camera locations

Use for traffic conditions and inventory. Camera locations do not automatically provide a raw public video stream.

VideoNevada statewide
Nevada DOT

Nevada 511 API

Camera API · events · road conditions

Request a key, ingest the Cameras endpoint server-side, and normalize authorized HTTPS image or HLS view URLs into CivicShield JSON.

SnapshotCalifornia statewide
Caltrans

Caltrans QuickMap

Camera snapshots · incidents · closures

Caltrans publishes selected still images rather than full-motion video. Link to QuickMap or use published data under its conditions of use.

DataTexas statewide
TxDOT

DriveTexas API

Road conditions · closures · incidents

This official API does not contain live camera feeds. Route its records to the incident layer and pair it with an authorized local camera source.

VideoHouston, TX
Houston TranStar

Houston TranStar

Camera viewer · incidents · speeds

Use the official camera catalog for discovery. Confirm media endpoint, browser access, and redistribution terms before adding a stream URL.

VideoArizona statewide
Arizona DOT

AZ 511 API

Camera API · events · message boards

Request a developer key, retrieve the Cameras resource server-side, and import compatible authorized views into the feed manager.

SnapshotFlorida statewide
Florida DOT

Florida 511

Camera snapshots · incidents · congestion

FL511 publishes roadway camera snapshots and an official map embed path. Use the supported embed or approved snapshot integration.

VideoNew York statewide
New York State DOT

511NY Developer Feeds

Camera API · events · alerts

Apply for developer access, accept the access agreement, and keep the issued key in the server-side adapter.

Connection ruleKeep API keys server-side. Before display, verify HTTPS, CORS/browser playback, uptime, retention, attribution, and agency redistribution terms. Import only authorized image, HLS, MP4, or MJPEG endpoints into the feed manager.

COPY-READY BACKEND GUIDE

How to update the backend with API keys

Copy these commands into Google Cloud Shell when you are ready. This page only shows the procedure—it never asks for, transmits, or stores an API key.

READ-ONLY GUIDE
PROJECTasc-2026
CLOUD RUN SERVICEcivicshield-api
REGIONus-west4
ProviderEnvironment variableSecret ID
Nevada 511NVROADS_API_KEYnvroads-api-key
Arizona 511AZ511_API_KEYaz511-api-key
511NYNY511_API_KEYny511-api-key
Authorized partnerSOURCE_PARTNER_API_KEYsource-partner-api-key
  1. 01
    Choose one provider

    This example uses Nevada 511. Substitute the matching environment variable and Secret ID from the table above.

    PROJECT_ID="asc-2026"
    REGION="us-west4"
    SERVICE="civicshield-api"
    ENV_VAR="NVROADS_API_KEY"
    SECRET_ID="nvroads-api-key"
  2. 02
    Create the secret once

    Enable Secret Manager, then create the named container. Skip the create command if this Secret ID already exists.

    gcloud services enable secretmanager.googleapis.com \
      --project="$PROJECT_ID"
    
    gcloud secrets create "$SECRET_ID" \
      --project="$PROJECT_ID" \
      --replication-policy="automatic"
  3. 03
    Add or rotate the key

    The hidden prompt keeps the credential out of the command itself. Press Enter after pasting the provider key.

    read -rsp "Provider API key: " CIVICSHIELD_SECRET && echo
    printf %s "$CIVICSHIELD_SECRET" | gcloud secrets versions add "$SECRET_ID" \
      --project="$PROJECT_ID" \
      --data-file=-
    unset CIVICSHIELD_SECRET
  4. 04
    Attach it to Cloud Run

    This creates a new backend revision and exposes the secret only as the selected server-side environment variable.

    gcloud run services update "$SERVICE" \
      --project="$PROJECT_ID" \
      --region="$REGION" \
      --update-secrets="$ENV_VAR=$SECRET_ID:latest"
  5. 05
    Verify the new revision

    This prints the ready revision and service URL without printing any secret value.

    gcloud run services describe "$SERVICE" \
      --project="$PROJECT_ID" \
      --region="$REGION" \
      --format="value(status.latestReadyRevisionName,status.url)"
Never expose a key

Do not paste secrets into a camera URL, JSON import, browser storage, client-side code, Git repository, screenshot, or support message. Rotate the key immediately if it is exposed.

LIVE FEED

Incident activity

12-HOUR PATTERN

Activity by hour

Hosted dataset activity

INCIDENT MIX

Top categories

LAST 24H
Traffic38%
Property27%
Public safety21%
Community14%

IMPLEMENTATION MAP

Your supplied stack, connected end to end.

The dashboard reads privacy-limited incident records from the production Django service on Google Cloud. Chicago open data may be delayed and must not be represented as live dispatch.

01DBHOSTED DATABASECloud SQL incidentsPostgreSQL · normalized recordsDEPLOYED
02APIINCIDENT SERVICERead official recordsCloud Run · /api/v1/incidentsCONNECTED
03DJDJANGO ADAPTERChicago open dataOfficial reported-crime datasetCONNECTED
04AIOPENAI AGENTGoverned synthesisverified incidents → briefSERVER KEY NEEDED
AGENT GOAL

Synthesize recent verified incidents into a concise shift brief.

INPUT

Normalized ZIP-scoped incident records from the authorized feed.

OUTPUT

Patterns, watch items, uncertainty notes, and source references.

APPROVAL BOUNDARY

Decision support only; never dispatch or modify incident records.