Chicago Restaurant Inspections Scraper | CDPH Data
Pricing
from $19.00 / 1,000 results
Chicago Restaurant Inspections Scraper | CDPH Data
Pull Chicago Department of Public Health restaurant inspection records with name, address, facility type, risk, results, and violations. Filter by ward or result. Ideal for food safety research, restaurant prospecting, and city compliance monitoring.
Pricing
from $19.00 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share

🌭 Chicago Food Inspection Scraper
🚀 Pull Chicago Department of Public Health food inspection results with pass/fail outcomes, risk levels, and violation details.
🕒 Last updated: 2026-05-25 · 📊 20 fields per record · 250,000+ inspection records · all licensed Chicago food establishments
The Chicago Food Inspection Scraper pulls live results from the City of Chicago Department of Public Health open data portal. Each record carries the establishment name, license number, address, risk category, inspection type, pass/fail outcome, and the full text of violations cited.
| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Journalists and civic-tech researchers | Public-records reporting, accountability dashboards |
| Real-estate and insurance analysts | Neighborhood risk modeling, due diligence |
| Marketers and lead-gen teams | Business prospecting, market sizing |
| Data engineers and BI teams | ETL pipelines, automated alerting |
| Academics and urban planners | Policy research, public-health analysis |
📋 What the Chicago Food Inspections Scraper does
- Pulls live records from the official open-data API in batches of up to 1,000 rows per request
- Lets you filter by the source's own native columns before download (no post-processing required)
- Returns one normalized JSON row per record with stable, predictable field names
- Pushes results to a clean Apify dataset that exports to CSV, Excel, JSON, or XML
- Auto-paginates so you can pull thousands of records in one run
💡 Why it matters: government open-data portals throttle, rate-limit, and break under heavy load. This actor wraps the official endpoint, handles pagination, normalizes nulls, and gives you a stable schema even when the source UI rearranges its dashboard.
🎬 Full Demo
🚧 Coming soon - GIF demo of the actor running in Apify Console.
⚙️ Input
| Field | Type | Required | Description |
|---|---|---|---|
| maxItems | integer | No | How many records to pull. Free plan caps at 10. |
| Filters | string | No | Optional source-native filters narrow results before download. |
{"maxItems": 100}
{"maxItems": 500}
⚠️ Good to Know: the source endpoint is a public government open-data API. Records reflect what the agency has published as of its most recent refresh cycle and may not be real-time.
📊 Output
| Field | Description |
|---|---|
imageUrl | Image URL (always null for tabular records) |
title | Primary record title (business name or activity) |
url | Link back to the open data portal page |
id | Stable identifier for this record |
inspection_id | Source field inspection_id |
dba_name | Source field dba_name |
aka_name | Source field aka_name |
license_ | Source field license_ |
facility_type | Source field facility_type |
risk | Source field risk |
address | Source field address |
city | Source field city |
state | Source field state |
zip | Source field zip |
inspection_date | Source field inspection_date |
inspection_type | Source field inspection_type |
results | Source field results |
violations | Source field violations |
latitude | Source field latitude |
longitude | Source field longitude |
sourceUrl | Open data portal URL |
scrapedAt | ISO timestamp when the row was collected |
error | Error message (null on success) - always last |
Sample records
[{"imageUrl": null,"title": "SUBWAY 24453","url": "https://data.cityofchicago.org/Health-Human-Services/Food-Inspections/4ijn-s7e5","id": "2637321","inspection_id": "2637321","dba_name": "SUBWAY 24453","aka_name": "SUBWAY 24453","license_": "2856691","facility_type": "Restaurant","risk": "Risk 1 (High)","address": "111 N WABASH AVE","city": "CHICAGO","state": "IL","zip": "60602","inspection_date": "2026-05-22T00:00:00.000","inspection_type": "Canvass","results": "Pass w/ Conditions","violations": "3. MANAGEMENT, FOOD EMPLOYEE AND CONDITIONAL EMPLOYEE; KNOWLEDGE, RESPONSIBILITIES AND REPORTING - Comments: OBSERVED SEVERAL MISSING SIGNED EMPLOYEE HEALTH POLICIES FOR EMPLOYEES MUST PROVIDE AND MAINTAIN.(PRIORITY FOUNDATION 7-38-010)(CITATION ISSUED) | 36. THERMOMETERS PROVIDED & ACCURATE - Comments: OBSERVED NO INTERIOR THERMOMETER FOR 2- DOOR PREP COOLER IN FRONT PREP AREA MUST PROVIDE AND MAINTAIN. | 37. FOOD PROPERLY LABELED; ORIGINAL CONTAINER - Comments: MUST LABEL FOOD STORAGE CONTAINERS WHEN FOOD IS NOT IN ORIGINAL PACKAGE WITH COMMON NAME(SHAKERS) | 39. CONTAMINATION PREVENTED DURING FOOD PREPARATION, STORAGE & DISPLAY - Comments: MUST PROVIDE A SPLASH GAURD AT FRONT HAND SINK NEXT TO PANS ON COUNTER TOP TO PREVENT CONTAMINATION. | 47. FOOD & NON-FOOD CONTACT SURFACES CLEANABLE, PROPERLY DESIGNED, CONSTRUCTED & USED - Comments: MUST REPAIR OR REPLACE WORN CUTTING BOARDS ON TOPSIDE OF COLD LINE TO BE IN GOOD REPAIR. | 49. NON-FOOD/FOOD CONTACT SURFACES CLEAN - Comments: MUST CLEAN SPILLAGE IN LOWER CABINET AT SODA MACHINE IN DINING AREA. | 55. PHYSICAL FACILITIES INSTALLED, MAINTAINED & CLEAN - Comments: MUST PROVIDE A HOOKING SYSTEM TO HANG UP WET MOPS. | 58. ALLERGEN TRAINING AS REQUIRED - Comments: OBSERVED NO FOOD ALLERGEN TRAINING FOR FOOD MANAGERS MUST PROVIDE AND MAINTAIN. | 60. PREVIOUS CORE VIOLATION CORRECTED - Comments: PREVIOUS CORE VIOLATION FROM REPORT #2628354 12/11/25 NOT CORRECTED-#57-2-102.13: EXPIRED FOOD HANDLER CERTIFICATES PROVIDED FOR ALL FOOD HANDLERS. INSTRUCTED TO PROVIDE PROOF OF FOOD HANDLER TRAINING FOR ALL FOOD HANDLERS.(PRIORITY FOUNDATION 7-42-090)(CITATION ISSUED) | 64. MISCELLANEOUS / PUBLIC HEALTH ORDERS - Comments: OBSERVED DEFAULT BEVERAGE ON KIDS MEAL CHOCOLATE MILK AT 140 CALORIES NEEDS TO BE 130 OR LESS CALORIES AND MAINTAIN.","latitude": 41.88352649174743,"longitude": -87.62608219678731,"sourceUrl": "https://data.cityofchicago.org/Health-Human-Services/Food-Inspections/4ijn-s7e5","scrapedAt": "2026-05-25T17:54:47.085Z","error": null},{"imageUrl": null,"title": "NICKY'S","url": "https://data.cityofchicago.org/Health-Human-Services/Food-Inspections/4ijn-s7e5","id": "2637326","inspection_id": "2637326","dba_name": "NICKY'S","aka_name": "NICKY'S","license_": "7813","facility_type": "Restaurant","risk": "Risk 1 (High)","address": "5801 S KEDZIE AVE","city": "CHICAGO","state": "IL","zip": "60629","inspection_date": "2026-05-22T00:00:00.000","inspection_type": "Short Form Complaint","results": "Pass","violations": "10. ADEQUATE HANDWASHING SINKS PROPERLY SUPPLIED AND ACCESSIBLE - Comments: OBSERVED NO HANDWASHING SIGNAGE IN CUSTOMER RESTROOM. INSTRUCTED PERSON IN CHARGE HANDWASHING SIGNAGE IS REQUIRED AT ALL HANDSINKS. | 16. FOOD-CONTACT SURFACES: CLEANED & SANITIZED - Comments: OBSERVED RUST ON INTERIOR SIDE OF ICE MACHINE/SCREWS. INSTRUCTED PERSON TO REMOVE AND REPLACE. | 49. NON-FOOD/FOOD CONTACT SURFACES CLEAN - Comments: OBSERVED BUILD UP ON INTERIOR OF 2-DOOR COLD HOLD UNIT IN REAR OF FACILITY. INSTRUCTED PERSON IN CHARGE TO CLEAN AND MAINTAIN.","latitude": 41.787976364169765,"longitude": -87.70325124213517,"sourceUrl": "https://data.cityofchicago.org/Health-Human-Services/Food-Inspections/4ijn-s7e5","scrapedAt": "2026-05-25T17:54:47.151Z","error": null}]
✨ Why choose this Actor
| Feature | What it means |
|---|---|
| 🟢 Live data | Pulls directly from the source API on every run |
| 🔄 Auto-pagination | Walks the dataset 1,000 rows at a time |
| 🎯 Native filters | Filter by the columns the source already indexes |
| 📦 Stable schema | One row, one record, no nested table reshapes |
| 💾 Multiple formats | CSV, Excel, JSON, XML on the dataset page |
📈 How it compares to alternatives
| Option | Effort | Pagination | Filters | Refresh |
|---|---|---|---|---|
| This actor | Run once | Built-in | Built-in | Per run |
| Direct API | Write SoQL by hand | DIY | DIY | DIY |
| CSV portal export | Download megabytes every time | None | Limited | Manual |
| Custom scraper | Weeks of engineering | DIY | DIY | DIY |
🚀 How to use
- Create a free Apify account (free credits included)
- Open the actor page
- Set
maxItemsand any filters you need - Click Run
- Download the dataset as CSV, Excel, JSON, or XML
💼 Business use cases
Market intelligence
Track the volume, type, and geography of records over time to surface trends before competitors do.
Compliance and risk
Pull official records for due diligence, vendor screening, insurance underwriting, or KYC workflows.
Lead generation
Filter the feed to surface businesses or properties matching a target profile.
Reporting and BI
Pipe the dataset into BI tools for ongoing public-records dashboards.
🔌 Automating Chicago Food Inspections Scraper
Connect this actor to Make, Zapier, Slack, Airbyte, GitHub Actions, n8n, Pipedream, or Google Drive through the standard Apify integrations to run the scraper on a schedule and push results downstream automatically.
🌟 Beyond business use cases
Research
Academics use this data for urban studies, public-health epidemiology, and policy analysis.
Personal
Curious citizens can audit their own neighborhood or block-level activity.
Non-profit
Civic-tech and accountability organizations track service delivery, equity, and government performance.
Experimentation
Data-science learners get a clean real-world dataset for ML practice.
🤖 Ask an AI assistant about this scraper
Paste the URL of this page into ChatGPT, Claude, Perplexity, or GitHub Copilot and ask: "How would I use this scraper to build X?"
❓ Frequently Asked Questions
🟦 Is this real-time? It pulls the most recent data the source agency has published. Refresh cadence depends on the agency (often nightly or weekly).
🟦 Do I need an API key? No. The source endpoint is public.
🟦 What if a filter returns zero rows?
The actor pushes a single {error: ...} record explaining the empty result so your pipelines do not silently fail.
🟦 Can I run this on a schedule? Yes. Configure a schedule on the Apify Console for hourly, daily, or weekly runs.
🟦 Can I get more than 10 records? Upgrade to a paid plan. Free users get a 10-record preview.
🟦 What export formats are supported? CSV, Excel (XLSX), JSON, XML, RSS, and HTML from the dataset page.
🟦 Does this respect rate limits? Yes. The actor uses a single sequential pagination loop.
🟦 Will field names change? Field names are pinned to source API column names. If the source changes column IDs you may need an updated actor build.
🟦 Can I use this commercially? The source data is public-domain government information. Always re-read the source's terms of use for your specific commercial application.
🟦 What about privacy? This actor only returns data the agency has chosen to publish to the open-data portal. Records the agency suppresses are not included.
🔌 Integrate with any app
Make · Zapier · Slack · Airbyte · GitHub Actions · Google Drive · Webhooks · REST API · n8n · Pipedream · Bubble · Retool · Power Automate · Airtable · Notion.
🔗 Recommended Actors
| Actor | What it does |
|---|---|
| NYC Restaurant Inspections | NYC DOHMH grades and violations |
| Chicago Food Inspections | Chicago Department of Public Health results |
| LA Business Licenses | LA City active business registry |
| NYC DCWP Business Licenses | Every NYC consumer-protection licensed business |
| Chicago 311 Service Requests | All Chicago non-emergency complaints |
💡 Pro Tip: browse the complete ParseForge collection.
🆘 Need Help? Open our contact form
⚠️ Disclaimer: independent tool, not affiliated with Chicago Food Inspections or its publishing agency. Only publicly available data is collected.