Home › Funding, grants and compliance › Restaurant Health Inspection Scores & Violations
Restaurant health inspection scores, grades, violations and a new-restaurant signal from public open data for New York City, Chicago, King County WA, Montgomery County MD and Austin. One row per restaurant with a comparable 0-100 risk score. No login, no proxy.
| Field | Name | Required | What it does |
|---|---|---|---|
cities | Cities / counties | no | Which public inspection feeds to read. A feed whose newest record is older than 60 days is skipped with a warning. |
daysBack | Inspection window (days) | no | Keep restaurants inspected in the last N days. Default 30. Large windows on New York City are capped at about 150,000 source rows. |
latestOnly | Latest inspection per restaurant | no | On (default): one row per restaurant, its most recent inspection in the window. Off: one row per inspection. |
onlyCritical | Only restaurants with critical violations | no | Keep only rows where the latest inspection cited at least one critical (public health) violation, or a failed or closed result where the source gives no counts. |
onlyNewRestaurants | Only new restaurants (opening inspection) | no | Keep only restaurants with a pre-opening, initial-permit or new-license inspection in the window. A newly opened restaurant signal for sales and supply teams. |
restaurantsOnly | Restaurants and food service only | no | On (default): drop schools, grocery stores, meat markets and similar where the source labels the facility type. Off: keep every inspected food facility. |
minRiskScore | Minimum risk score | no | Optional 0 to 100. Keep only rows at or above this risk score. 40 or more is a good starting point for pest-control or food-safety leads. |
zipCodes | ZIP codes | no | Optional list of 5-digit ZIP codes, for example 10013 or 60661. Leave empty for all. |
keyword | Keyword filter | no | Optional text that must appear in the restaurant name, cuisine, facility type or address, for example "pizza" or "Chinese". |
maxItems | Max rows | no | Stop after this many rows, newest inspection first. You pay only for rows delivered. Hard cap 100000. |
One row per result. These are the 27 fields declared in the actor's dataset schema (field list from the schema, not a sample run).
| Field | Type | Meaning |
|---|---|---|
sourceCity | string | |
restaurantId | string | |
name | string | |
address | string | |
city | string | |
area | string | |
state | string | |
zip | string | |
phone | string | |
cuisine | string | |
facilityType | string | |
inspectionDate | string | |
inspectionType | string | |
score | integer | |
gradeOrResult | string | |
criticalViolations | integer | |
violationsCount | integer | |
topViolations | array | |
closed | boolean | |
riskScore | integer | |
sourceRecordUrl | string | |
isFirstInspection | boolean | |
firstInspectionDate | string | |
daysSinceInspection | integer | |
inspectionsInWindow | integer | |
datasetUrl | string | |
scrapedAt | string |
Public data only, no login. Fields a source does not publish come back empty rather than guessed. Coverage and freshness follow the underlying public source.
Pay on Apify, no subscription: $0.00093 per inspection row (pay per event). The live price is on the actor page.
Disclosure: we build and maintain this actor.