Clinical Trials and FDA Data
Pricing
from $10.00 / 1,000 study records
Clinical Trials and FDA Data
Search ClinicalTrials.gov studies and look up FDA drug labels, drug approvals and 510(k) device clearances from official public APIs.
Pricing
from $10.00 / 1,000 study records
Rating
0.0
(0)
Developer
Chris O'Byrne
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Search ClinicalTrials.gov studies and look up FDA drug labels, drug approvals and device 510(k) clearances, all from official public APIs, in one Actor and one output format.
This Actor is information retrieval, not medical advice. It returns public registry and label records as published. It does not interpret them, and it must not be used to make decisions about diagnosis, treatment or care. Always use the current official label and talk to a qualified professional.
What does Clinical Trials and FDA Data do?
It has four modes:
- study-search: find ClinicalTrials.gov studies by condition, intervention, status, phase, sponsor, country and date filters.
- study-detail: get the full record for one or more NCT numbers: title, status, phase, conditions, interventions, sponsor, enrollment, dates, locations (facility and city level), eligibility criteria text and outcome measures.
- label-lookup: get FDA drug label sections (indications, dosage, warnings and more) by drug name, NDC code or set ID, with the label set ID, version and effective date.
- approval-lookup: get Drugs@FDA application records (NDA, ANDA, BLA) and device 510(k) clearances by application number, K number or name.
Who is it for?
Researchers, regulatory affairs and competitive intelligence teams, health-tech developers, journalists and data teams who want clean JSON or spreadsheet-ready data from public registries without writing and maintaining API code.
Data sources and licences
| Source | Used for | Terms |
|---|---|---|
| ClinicalTrials.gov API v2 (U.S. National Library of Medicine) | Studies | Terms and Conditions: free use, attribute the source as ClinicalTrials.gov, show the date the data were processed, state modifications. Some records may carry third-party copyright. |
| openFDA (U.S. Food and Drug Administration) | Drug labels, Drugs@FDA, 510(k) | Terms: content is CC0 except where noted. openFDA data are unvalidated, and openFDA says not to rely on it for medical care decisions. |
| DailyMed (National Library of Medicine) | Label set ID, current version, published date and link | Web services. Used for identifiers and metadata only. |
How the Actor follows these terms:
- Every record carries a
sourcefield and asourceDataTimestamp(the date the source says its data were processed) and amodificationsNotethat states what was changed. - Changes made by the Actor: fields are selected and renamed, dates in compact form are reformatted, label sections are joined into plain text and may be cut at your character limit (marked "[truncated]"). Text is otherwise unchanged.
- Data are fetched live on each run and not cached by the Actor, so results reflect the source at run time. ClinicalTrials.gov refreshes its data on weekdays.
- Requests are spaced (about one per second to ClinicalTrials.gov and DailyMed, about two per second to openFDA) and rate-limit responses are retried with backoff. Nothing is fetched that the public APIs do not offer.
- The device data from openFDA can include GMDN terms, which are under a separate licence. This Actor does not return GMDN fields.
This Actor is not affiliated with or endorsed by ClinicalTrials.gov, the National Library of Medicine, the National Institutes of Health, the U.S. Food and Drug Administration, openFDA or DailyMed.
What data does it exclude?
Public registry and label data only. The Actor deliberately leaves out:
- Names, titles, emails and phone numbers of investigators, study contacts and overall officials.
- When the lead sponsor is an individual investigator, the name is replaced by the investigator's affiliation (or "Individual investigator (name withheld)").
- Postal codes and map coordinates of study sites. Locations are facility, city, state and country only.
- Adverse event reports and any patient-level narratives. (Label text can describe adverse reactions as summarized in the official label; that is label content, not individual reports.)
- The contact person and street address of 510(k) applicants.
Input
Choose a mode and fill only the fields for that mode.
| Field | Used by | Description |
|---|---|---|
| mode | all | study-search, study-detail, label-lookup or approval-lookup |
| maxItems | all | Upper limit on records returned and billed in the run (default 10) |
| condition, intervention, keywords, sponsor, country | study-search | Text filters |
| status, phase | study-search | Multi-select filters |
| startDateFrom, startDateTo, updatedFrom, updatedTo | study-search | Dates as YYYY, YYYY-MM or YYYY-MM-DD |
| fullRecords | study-search | Add eligibility, outcomes and locations to search results |
| nctIds | study-detail | One NCT number per line |
| drugNames, ndcs, setIds | label-lookup | Names, NDC codes (with or without hyphens), set IDs |
| labelSections | label-lookup | Sections to return (default: boxed warning, indications, dosage, contraindications, warnings) |
| labelProductType, maxLabelsPerQuery, maxCharsPerSection | label-lookup | Narrow and size the output |
| approvalQueries, approvalSource, maxApprovalsPerQuery | approval-lookup | NDA/ANDA/BLA numbers, K numbers or names |
| openFdaApiKey | label-lookup, approval-lookup | Optional free key from open.fda.gov, stored as a secret |
Example (this is the default input):
{"mode": "study-search","condition": "asthma","status": ["RECRUITING"],"maxItems": 10}
Output
Every record has the same first columns: recordType, id, title, status, organization, keyDate, url. The dataset has table views for overview, studies, labels and approvals.
Study record (shortened):
{"recordType": "study","id": "NCT07139899","title": "Downstream Effects of Airway Mucus Plugs on 129Xenon MRI in Severe Asthma","status": "RECRUITING","organization": "Duke University","keyDate": "2025-11-17","url": "https://clinicaltrials.gov/study/NCT07139899","studyType": "OBSERVATIONAL","conditions": ["Severe Asthma"],"enrollment": { "count": 5, "type": "ESTIMATED" },"countries": ["United States"],"source": "ClinicalTrials.gov","sourceDataTimestamp": "2026-10-21T09:00:05"}
Queries with no match, invalid input or an upstream error produce a marker record with recordType set to not_found, invalid_input or error and a message. Markers are never billed.
Label-lookup falls back to DailyMed when openFDA has no matching label. Those records contain identifiers and links only, and are not billed.
Pricing
Pay per event. You pay only for records that were saved to the dataset.
| Event | Price | Charged when |
|---|---|---|
| study-record | $0.01 | One ClinicalTrials.gov study is returned |
| label-record | $0.01 | One drug label with at least one requested section is returned |
| approval-record | $0.01 | One Drugs@FDA application or one 510(k) clearance is returned |
There is also a very small Apify start charge per run. Set "Maximum records" or Apify's maximum cost per run to cap spend; the Actor stops when the cap is reached. A record already returned for an earlier query in the same run is not charged twice.
FAQ
Do I need an API key? No. ClinicalTrials.gov and DailyMed need none. openFDA allows 1,000 requests per day per IP address without a key and 120,000 per day with a free key. Apify runs share IP addresses, so for heavy label or approval use, add your own key.
Is the data current? It is fetched live. Each record shows the source's own data date.
Can I look up all labels for a generic drug? Many manufacturers share a generic name. Use "Labels per drug name or NDC" to choose how many to return. Each label returned is billed.
Why is a section missing from a label? Labels differ. Older and over-the-counter labels use different section names. Only sections that exist are returned.
Is this medical advice? No. See the notice at the top.
Limitations
- Study search returns up to 1,000 records per run.
- Label sections come from the openFDA label API, which is unvalidated and can lag the current DailyMed label. The set ID, version and published date from DailyMed are included so you can check.
- 510(k) coverage is clearances only, not PMA approvals.
- Free-text filters follow ClinicalTrials.gov search behavior, which includes synonyms.
Support
Open an issue in the Issues tab of this Actor with the input you used and the run ID.