FDA Warning Letters Scraper
Pricing
from $15.00 / 1,000 results
FDA Warning Letters Scraper
[๐ฐ $15 / 1K] Scrape the official FDA Warning Letters database. Get company, posted and issue dates, issuing office, subject, response and closeout status, letter URL, and full letter text. Filter by keyword, company, office, subject, or date range.
Pricing
from $15.00 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Pull the full archive of published FDA Warning Letters โ recipient company, posted and issue dates, issuing office, subject, response-letter and closeout status, letter URL, and the complete letter text โ as clean, structured records you can search and filter. Built for regulatory-affairs specialists, pharma quality and compliance teams, legal researchers, and market-intelligence analysts who need FDA enforcement signals without combing FDA.gov letter by letter.
Why This Scraper?
- ~3,600 archived warning letters โ the complete published FDA enforcement archive, not a truncated newest-only excerpt feed like other tools offer.
- 16 structured fields per letter โ company, posted date, letter issue date, issuing office, subject, response and closeout status with dates, letter URL, excerpt, and a provenance timestamp on every row.
- Full letter body on demand โ turn on one toggle to capture each letter's complete text plus its MARCS-CMS reference number and delivery method (VIA UPS, email, and so on), far beyond the one-line summary.
- Filter by issuing office โ target CDER (drugs), CFSAN and the Human and Animal Food program, CDRH (devices), CBER (biologics), CTP (tobacco), or any district office by name.
- Response-letter and closeout tracking โ boolean flags plus dates on every row let you separate open enforcement actions from resolved ones without parsing any text.
- Posted-date range filtering โ pull only letters posted between any two dates (YYYY-MM-DD) to isolate a quarter, a month, or a specific enforcement wave.
- Multi-keyword search, merged and de-duplicated โ run several terms in a single job across company, subject, and office; results merge and de-duplicate by each letter's own unique URL, so no letter is counted twice.
- Company and subject "contains" filters โ narrow to a named manufacturer or a violation theme such as CGMP, adulterated, misbranded, or unapproved new drug.
- Official public-record source โ every field comes straight from FDA.gov, the authoritative US government enforcement database, so the data is public, citable, and audit-ready.
Use Cases
Regulatory Intelligence
- Track new enforcement actions across CDER, CFSAN, CDRH, CBER, and CTP as letters are posted
- Build an internal early-warning feed for adulterated, misbranded, and CGMP violations in your product category
- Benchmark your quality program against the deficiencies FDA is actively citing this year
Pharma & Competitive Monitoring
- Watch a named competitor or contract manufacturer for new letters with the company-name filter
- Map which violation types and subjects draw FDA scrutiny in your therapeutic area
- Flag supply-chain risk when a supplier or CMO receives a data-integrity or CGMP letter
Legal & Compliance
- Assemble a defensible record of enforcement precedent with full letter text and MARCS-CMS reference numbers
- Separate open matters from resolved ones using the response-letter and closeout flags
- Support due-diligence reviews with the official government source cited on every record
Market & Business Intelligence
- Quantify enforcement trends by office, subject, and posted date for reports and dashboards
- Feed a compliance-risk model with structured, de-duplicated enforcement records
- Track tobacco (CTP), dietary supplement, and food-safety enforcement volume over time
Lead & Signal Generation
- Identify companies under active FDA pressure that may need remediation, QA, or regulatory consulting
- Prioritize outreach toward letters with no closeout letter yet โ the unresolved actions
Getting Started
Newest Letters (simplest)
Leave every filter blank to pull the most recent warning letters across all FDA offices:
{"maxResults": 100}
Filtered by Office and Date
Drug-related CGMP letters from CDER posted since the start of 2025:
{"searchTerms": ["CGMP"],"issuingOffice": "CDER","dateFrom": "2025-01-01","maxResults": 250}
Full Detail Pull (advanced)
Multiple keywords, tightened to a company and subject, within a date window, with the complete letter text:
{"searchTerms": ["adulterated", "misbranded"],"companyName": "Pharma","subject": "unapproved","issuingOffice": "Center for Drug","dateFrom": "2024-01-01","dateTo": "2025-12-31","includeLetterBody": true,"maxResults": 500}
Input Reference
What to Search
| Parameter | Type | Default | Description |
|---|---|---|---|
searchTerms | array | [] | One or more keywords searched across company name, subject, and issuing office (for example "recall", "adulterated", "CGMP", or a company name). Each term is searched separately and the results are merged and de-duplicated. Leave blank to collect all letters, newest first. |
Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
companyName | string | "" | Keep only letters whose recipient company or individual name contains this text (case-insensitive), e.g. "Pharma". |
issuingOffice | string | "" | Keep only letters from an FDA office whose name contains this text (case-insensitive), e.g. "CDER", "Center for Drug", "Human and Animal Food". |
subject | string | "" | Keep only letters whose subject or violation topic contains this text (case-insensitive), e.g. "unapproved", "misbranded", "tobacco", "CGMP". |
dateFrom | string | "" | Only letters posted on or after this date. Format YYYY-MM-DD (e.g. 2024-01-01). |
dateTo | string | "" | Only letters posted on or before this date. Format YYYY-MM-DD (e.g. 2025-12-31). |
Output Detail & Limits
| Parameter | Type | Default | Description |
|---|---|---|---|
includeLetterBody | boolean | false | Also open each letter's page to capture the full letter text, reference number, and delivery method. Leave off for faster, cheaper listing-level runs. |
maxResults | integer | 100 | How many letters to collect in total across all searches. Set to 0 to collect as many as possible, bounded to the full published set. |
Output
Each warning letter becomes one flat record. Example:
{"companyName": "Example Pharmaceuticals, Inc.","postedDate": "2026-06-24","letterIssueDate": "2026-06-18","issuingOffice": "Center for Drug Evaluation and Research (CDER)","subject": "CGMP/Finished Pharmaceuticals/Adulterated","responseLetterPosted": false,"responseLetterDate": null,"closeoutLetterPosted": false,"closeoutLetterDate": null,"letterUrl": "https://www.fda.gov/inspections-compliance-enforcement-and-criminal-investigations/warning-letters/example-pharmaceuticals-inc-725157-06182026","excerpt": "...your firm's methods, facilities, or controls for manufacturing...","letterBody": "WARNING LETTER\n\nDear Mr. Doe:\n\nThe U.S. Food and Drug Administration inspected your drug manufacturing facility...","referenceNumber": "MARCS-CMS 725157","deliveryMethod": "VIA UPS","matchedSearchTerm": "CGMP","scrapedAt": "2026-07-11T14:32:00Z"}
Core Letter Fields
| Field | Type | Description |
|---|---|---|
companyName | string | Recipient company or individual named in the letter. |
postedDate | string | Date the letter was posted to FDA.gov (YYYY-MM-DD). |
letterIssueDate | string | null | Date the letter was issued. |
issuingOffice | string | FDA center or office that issued the letter. |
subject | string | Subject or violation topic. |
letterUrl | string | Canonical FDA.gov letter page URL (unique per letter). |
excerpt | string | null | Short summary shown on the listing when a search term is active. |
Response & Closeout Status
| Field | Type | Description |
|---|---|---|
responseLetterPosted | boolean | Whether a response letter has been posted. |
responseLetterDate | string | null | Response letter date, if posted. |
closeoutLetterPosted | boolean | Whether the letter has been closed out. |
closeoutLetterDate | string | null | Closeout letter date, if posted. |
Full-Text Detail (when includeLetterBody is on)
| Field | Type | Description |
|---|---|---|
letterBody | string | null | Full text of the warning letter. |
referenceNumber | string | null | FDA reference / MARCS-CMS number. |
deliveryMethod | string | null | How the letter was delivered, e.g. VIA UPS or email. |
Provenance
| Field | Type | Description |
|---|---|---|
matchedSearchTerm | string | null | Which input search term produced this record. |
scrapedAt | string | ISO 8601 timestamp when the record was collected. |
Tips for Best Results
- Leave
includeLetterBodyoff for fast, low-cost bulk pulls โ the listing alone gives you 13 fields per letter. Switch it on only when you need the full letter text, since it opens every letter page individually. - Set
maxResultsto0to sweep the entire published archive (~3,600 letters), but pair it with adateFromso the run stops as soon as it reaches your start date instead of walking the whole history. - Filter by issuing office using either the acronym or the full name โ
"CDER"and"Center for Drug Evaluation and Research"both work, and"Human and Animal Food"catches the food and CFSAN letters. - Combine several
searchTermsin one run to cover synonyms like"adulterated","misbranded", and"unapproved"โ results are merged and de-duplicated by each letter's unique URL, so nothing is double-counted. - Use the response-letter and closeout flags to triage: a letter with no closeout letter usually means the matter is still open.
- Dates filter on the posted date (when FDA published the letter), not the internal issue date โ always use
YYYY-MM-DDfordateFromanddateTo. - To follow one company with many letters, add a
companyNamefilter instead of relying on a keyword โ it tightens matches to the recipient name rather than anything mentioned inside the letter body.
Pricing
From $15 per 1,000 results โ a flat pay-per-result rate on a public government dataset, undercutting comparable FDA enforcement extractors. No compute or time-based charges โ you pay per result, plus a small fixed per-run start fee. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.
| Results | No discount | Bronze | Silver | Gold |
|---|---|---|---|---|
| 100 | $1.80 | $1.70 | $1.60 | $1.50 |
| 1,000 | $18.00 | $17.00 | $16.00 | $15.00 |
| 10,000 | $180.00 | $170.00 | $160.00 | $150.00 |
| 100,000 | $1,800.00 | $1,700.00 | $1,600.00 | $1,500.00 |
A "result" is one warning-letter record pushed to your dataset. Apify platform usage fees are additional.
Integrations
Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps:
- Zapier / Make / n8n โ Workflow automation
- Google Sheets โ Direct spreadsheet export
- Slack / Email โ Notifications when new letters are found
- Webhooks โ Trigger your own systems on run completion
- Apify API โ Full programmatic access to runs and datasets
Legal & Ethical Use
FDA Warning Letters are public-record documents published by the U.S. Food and Drug Administration on FDA.gov, and this actor collects only that publicly available information. Use the data responsibly and in line with FDA.gov's terms of use and applicable laws. You are responsible for how you store, process, and act on the results โ particularly any letters naming individuals. This tool is intended for regulatory intelligence, research, compliance, and analytics, not for harassment or misrepresentation of enforcement status.