Restaurant Inspection Data Scraper - 7 US Cities
Pricing
from $5.00 / 1,000 results
Restaurant Inspection Data Scraper - 7 US Cities
Restaurant inspection data scraper for 7 US cities in one normalized schema: health grades, scores, violation detail, geocodes. Export CSV/JSON or monitor for new results.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
Brandt May
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
One restaurant inspection data scraper that unifies 7 US city and county health portals into a single normalized schema - grades, scores, violation detail, and geocodes included.
What it does
This restaurant health inspection API pulls food inspection data from 7 US city and county open-data portals - NYC, Chicago, Cincinnati, Austin, King County (Seattle), Boulder County (CO), and Montgomery County (MD) - and normalizes them into one consistent schema. Every competing actor is single-city (usually NYC-only), which forces you to run and reconcile multiple scrapers with mismatched fields. This food inspection data scraper does the reconciliation for you: one run returns restaurant health grades, numeric scores, risk levels, and full violation detail across all cities, ready to export as CSV or JSON.
You choose the granularity - one row per violation for detailed food safety analysis, or one row per inspection for a rollup view - and filter by city, date range, business name, or result.
Who it's for
- Food-safety monitoring teams tracking new violations and failed inspections across multiple markets
- Journalists and investigators building restaurant inspection datasets for reporting
- Restaurant-tech and real estate platforms scoring locations by health history
- Insurers and risk analysts underwriting food-service businesses
- Consumer apps (food delivery, review, discovery) surfacing health grades and scores
What you get / Output
Each record is normalized to the same fields regardless of source city:
| Field | Description |
|---|---|
sourceCity | Which of the 7 portals the record came from |
businessName | Name of the establishment |
businessId | Source-portal identifier for the establishment |
facilityType | Type of facility (e.g. restaurant, mobile vendor) |
address | Street address |
zip | ZIP code |
inspectionDate | Date of the inspection |
inspectionType | Type of inspection (routine, complaint, re-inspection, etc.) |
result | Inspection outcome (e.g. pass, fail) |
score | Numeric inspection score where the city reports one |
grade | Letter/health grade where the city reports one |
riskLevel | Risk category where the city reports one |
violationCode | Code for the specific violation |
violationDescription | Text description of the violation |
critical | Whether the violation is flagged critical |
latitude | Geocoded latitude |
longitude | Geocoded longitude |
granularity | Whether the row is a violation or inspection record |
Not every city publishes every field (for example, letter grades and numeric scores vary by jurisdiction). Fields are populated where the source portal provides them and left empty otherwise - the schema stays constant so your downstream code never breaks.
Input / How to query
Configure the run with these filters and modes:
- cities - pick any subset of the 7 supported portals, or all of them
- inspection date range - limit results to a start/end window
- business name - target a specific establishment or chain
- result contains - filter by outcome text (e.g.
fail) - granularity -
violation(one row per violation) orinspection(one row per inspection)
Example use cases
- Multi-city violation monitoring - pull
granularity: violationfor NYC, Chicago, and Seattle on a nightly schedule and alert when newcriticalviolations appear. - Health-grade enrichment for a delivery app - fetch
grade,score, andresultperbusinessNameandaddressto display trust signals next to listings. - Investigative reporting - export failed inspections (
result contains: fail) across all 7 cities for a date range, then map them withlatitude/longitude. - Real-estate site scoring - join
zip,facilityType, andriskLevelto evaluate the food-service risk profile of a commercial location. - Insurance underwriting - build a per-establishment inspection history keyed on
businessIdto price food-service policies.
Recurring use / scheduling
Set up a schedule in Apify (for example, daily or weekly) to keep an inspection dataset current for monitoring. Because each record carries businessId, inspectionDate, and violationCode, you can dedupe incremental runs on that combination and flag only genuinely new inspections or violations - ideal for a restaurant inspection monitoring API that surfaces fresh failures and health-grade changes.
FAQ
How do I get restaurant health inspection data for multiple US cities?
Run this actor with the cities you need selected. It returns normalized inspection records - grades, scores, and violations - for any subset of NYC, Chicago, Cincinnati, Austin, King County (Seattle), Boulder County (CO), and Montgomery County (MD) in a single dataset.
Is there an API for restaurant inspection scores and grades?
Yes. This actor exposes inspection score, grade, result, and riskLevel fields through the Apify API and dataset exports, so you can pull them programmatically wherever the source city publishes them.
How do I download NYC and Chicago restaurant inspection data as CSV?
Select NYC and Chicago as your cities, run the actor, and export the resulting dataset as CSV (JSON, Excel, and other formats are also available). Both cities come back in the same normalized schema, so there's nothing to reconcile.
How can I monitor restaurant health inspection results for new violations?
Schedule the actor to run on an interval with granularity: violation, then dedupe on businessId + inspectionDate + violationCode to detect records you haven't seen before - especially those flagged critical.
Where can I get restaurant food safety violation data in bulk?
Run with granularity: violation and a broad date range across all 7 cities to pull violation-level records - including violationCode, violationDescription, and the critical flag - in one export.
How do I normalize restaurant inspection grades across different cities?
That's the core job of this actor. Each of the 7 portals uses different field names and formats; the actor maps them all to one schema (grade, score, result, riskLevel, and more) so grades are comparable across cities.
What is the best restaurant inspection data API for a food delivery or review app?
For multi-city coverage in a single schema, this actor is purpose-built for it: pull grade, score, result, address, and geocodes per establishment and drop them straight into your app's listings without stitching together separate single-city scrapers.
How do journalists get restaurant inspection records for investigations?
Filter by date range, result contains: fail, and the cities in scope, then export the full dataset with violation detail and latitude/longitude for mapping and analysis - all from public health-department records.
Data source & notes
Data comes from the official public open-data portals operated by each city or county (NYC, Chicago, Cincinnati, Austin, King County/Seattle, Boulder County CO, and Montgomery County MD), served via their Socrata open-data APIs. These are public government records published by the respective health departments.
Notes and limitations:
- Field coverage varies by city - jurisdictions that don't issue letter grades or numeric scores will leave
grade/scoreempty, while the rest of the schema stays consistent. - Data freshness reflects whatever each portal has published; the actor does not add records beyond what the source provides.
- Coverage is limited to the 7 supported portals listed above.