FDA Drug Approvals Scraper
Pricing
from $1.60 / 1,000 fda approval actions
FDA Drug Approvals Scraper
Extract FDA drug approval actions, products, ingredients, sponsors, dates, review priorities, and public documents from Drugs@FDA.
Pricing
from $1.60 / 1,000 fda approval actions
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Free-plan limit: Apify free-plan runs can return at most 5 dataset records per run from this Actor, even if you request more.
Extract structured FDA drug approval actions from the official Drugs@FDA dataset. The Actor is designed for pharmaceutical research, regulatory intelligence, competitive monitoring, and data pipelines that need application-level approval history without parsing FDA pages manually.
The Actor uses the public openFDA Drugs@FDA endpoint, which is sourced from Drugs@FDA and updated on FDA business days. One dataset item represents one approved original or supplement submission—not one product package. This distinction keeps dates, review priority, submission class, and public approval documents attached to the regulatory action they describe.
What it extracts
| Field | Description |
|---|---|
applicationNumber, applicationType | NDA, ANDA, or BLA identifier and type |
approvalDate, approvalStatus | FDA submission status date and AP/TA status |
submissionType, submissionNumber | Original or supplement action and its number |
reviewPriority | Standard or priority review when FDA supplies it |
submissionClassCode | FDA submission classification and description |
sponsorName | Application sponsor |
products | Brand, ingredient/strength, dosage form, route, marketing status, RLD/RS flags, and TE code |
brandNames, genericNames, substanceNames | Harmonized openFDA names |
manufacturerNames, productNdcs, rxcuis | Harmonized identifiers |
applicationDocuments | Public labels, letters, reviews, and other submission documents when available |
applicationUrl, apiUrl | Official FDA and openFDA source links |
sourceLastUpdated, fetchedAt | Source freshness and extraction timestamp |
When to use it
Use this Actor to monitor approvals by date, build a sponsor or drug approval history, retrieve exact applications, analyze original versus supplement actions, or feed FDA regulatory data into a spreadsheet, database, or AI agent.
Do not use it for medical advice, adverse-event analysis, recalls, drug labels as full text, patents/exclusivity, or a complete list of CBER-regulated vaccines, blood products, and cell or gene therapies. Drugs@FDA coverage and harmonized fields vary by product and year.
Input
| Input | Default | Purpose |
|---|---|---|
query | Ozempic | Search brand names, ingredients, sponsors, and application numbers |
applicationNumbers | [] | Retrieve exact NDA, ANDA, or BLA applications |
brandName | empty | Match an FDA product brand name |
activeIngredient | empty | Match an FDA active ingredient |
sponsorName | empty | Match an application sponsor |
applicationType | all | Limit to NDA, ANDA, or BLA |
approvalType | original | Return originals, supplements, or both |
approvalDateFrom, approvalDateTo | empty | Bound approval status dates in YYYY-MM-DD |
includeTentativeApprovals | false | Include TA records alongside AP approvals |
sortBy | newest | Sort approval actions by date |
maxResults | 25 | Cap records and result-event charges (1–5,000) |
maxRequestRetries | 2 | Retry bounded 429, 5xx, timeout, and network errors |
apiKey | empty | Optional openFDA key for higher official API limits |
At least one search criterion is required. Clear the default query when you want only exact filters to apply.
Recent original approvals
{"query": "","approvalDateFrom": "2026-01-01","approvalDateTo": "2026-12-31","approvalType": "original","sortBy": "newest","maxResults": 100}
Exact applications with supplement history
{"query": "","applicationNumbers": ["NDA209637", "NDA213051"],"approvalType": "all","maxResults": 250}
API call
curl -X POST "https://api.apify.com/v2/acts/USERNAME~fda-drug-approvals-scraper/runs?token=APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"query":"semaglutide","approvalType":"original","maxResults":10}'
With Apify's MCP server, call the Actor with the same JSON input, wait for completion, then read results from the default dataset or summary from the output links.
Output example
{"approvalId": "NDA209637:ORIG:1:2017-12-05","applicationNumber": "NDA209637","applicationType": "NDA","sponsorName": "NOVO","submissionType": "ORIG","submissionNumber": "1","approvalStatus": "AP","approvalStatusLabel": "Approved","approvalDate": "2017-12-05","reviewPriority": "STANDARD","submissionClassCode": "TYPE 1","submissionClassDescription": "Type 1 - New Molecular Entity","brandNames": ["OZEMPIC"],"genericNames": [],"applicationUrl": "https://www.accessdata.fda.gov/scripts/cder/daf/index.cfm?event=overview.process&ApplNo=209637","sourceLastUpdated": "2026-08-28","fetchedAt": "2026-08-31T12:00:00.000Z"}
The full record also contains products, ingredients and strengths, harmonized identifiers, routes, manufacturers, and public documents. Optional FDA fields are represented as null or empty arrays rather than invented values.
Pricing
This Actor uses pay-per-event pricing. These are the current Apify Store event prices:
| Event | Price (USD) | When it is charged |
|---|---|---|
apify-actor-start | $0.0005 | Actor Start — Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). — Charged once per run. |
fda-approval-action | $0.001 | FDA approval action — One schema-valid FDA drug approval action written to the default dataset. |
Apify platform usage for this Actor run is included alongside the event prices above; no separate per-run platform-usage fee is passed to users.
This covers Apify platform usage for this Actor run. Other Apify products or usage outside this Actor run may still follow your account plan.
Reliability and limits
- The source is the official public openFDA Drugs@FDA endpoint; no third-party provider is used.
- Requests use bounded timeouts, retry 429 and transient 5xx/network failures, and honor
Retry-Afterwhen supplied. - openFDA accepts at most 99 application records per request and restricts deep paging. The Actor paginates automatically and reports a warning if the source's 25,000-record deep-page boundary is reached. Narrow filters for larger studies.
- openFDA returns whole application records when a nested submission matches. The Actor re-filters every nested submission locally so unrelated dates or action types are not emitted.
- Drug-name text filters must use printable ASCII because openFDA rejects some Unicode search syntax; exact FDA application numbers remain available as a language-neutral lookup.
- A valid search with no approval actions returns an empty dataset plus a truthful
SUMMARY. Invalid input is rejected before billable result work. - Public API limits are stricter without an openFDA API key. Supply your own optional key for frequent or large runs.
Data responsibility
The data is public U.S. government regulatory information. Respect the openFDA terms and license, use reasonable request volumes, and retain source links when redistributing records. FDA and openFDA warn that the data should not be used alone for medical-care decisions. Verify material regulatory conclusions against the linked FDA documents and application page.
For support, open an issue from the Actor's Apify Console page and include the run ID, redacted input, expected outcome, and the SUMMARY record. Never include API keys or tokens.