Primary purpose
primaryPurpose
Optional
TREATMENT, PREVENTION, DIAGNOSTIC, SUPPORTIVE_CARE, SCREENING, HEALTH_SERVICES_RESEARCH, BASIC_SCIENCE, DEVICE_FEASIBILITY, ECT or OTHER.
Clinical Trials & FDA API — ClinicalTrials.gov + openFDA
Pricing
from $0.30 / 1,000 trial returneds
Query ClinicalTrials.gov v2 and openFDA from one Actor. Search 600,000+ registered studies by condition, drug, sponsor, phase, status or location, and get FDA drug and device recalls, labels, NDC entries, approvals, 510(k) clearances and adverse-event reports for the same drug. No API key.
OK
ok
Optional
True on a trial, FDA record, aggregate or summary row. False on a diagnostic row, which explains what could not be read or which filter could not be applied. Diagnostic rows are never charged.
Row type
rowType
Optional
trial one registered study. fda-record one openFDA record. aggregate one free count= facet term. summary one free per-source roll-up. diagnostic one free explanation of a failure or an empty result.
Input entry
input
Optional
The entry this row came from — the NCT id you looked up, or the drug name that matched. Null on rows from a general search you did not name individually.
Error
error
Optional
What went wrong, in a sentence a person can act on. Null on every row that worked.
Error type
errorType
Optional
One of no-results, not-found, invalid-input, unsupported-filter, api-key-required, rate-limit, forbidden, blocked, timeout, budget-exhausted, upstream-shape, network, http, parse. Every one of them is free.
Read at
scrapedAt
Optional
When this row was written, in UTC.
Source
source
Optional
clinicaltrials.gov or openfda.
Source URL
sourceUrl
Optional
Where a person can see this record: the study page for a trial, the API query for an FDA record.
NCT ID
nctId
Optional
The ClinicalTrials.gov registry identifier.
Sponsor study ID
orgStudyId
Optional
The sponsor's own protocol number.
Secondary IDs
secondaryIds
Optional
Other registries and grant numbers this study is filed under, each {id, type, domain?} — EudraCT, EUDAMED, NIH grant numbers.
Registering organization
organization
Optional
The organization that holds the registry record.
Organization class
organizationClass
Optional
INDUSTRY, NIH, FED, OTHER_GOV, INDIV, NETWORK, AMBIG, OTHER or UNKNOWN.
Title
title
Optional
The brief title on a trial row; the product, device or brand name on an FDA record.
Official title
officialTitle
Optional
The full protocol title.
Acronym
acronym
Optional
The study's short name, when the sponsor registered one.
Overall status
status
Optional
What the sponsor last told the registry: RECRUITING, COMPLETED, TERMINATED and so on. Check statusVerifiedDate — a study can sit at RECRUITING long after it stopped.
Status verified
statusVerifiedDate
Optional
The month the sponsor last confirmed the status, as YYYY-MM. The registry does not record a day.
Last known status
lastKnownStatus
Optional
For a study whose status is UNKNOWN, the last status the sponsor did confirm.
Why stopped
whyStopped
Optional
The sponsor's stated reason for suspending, terminating or withdrawing.
Has expanded access
hasExpandedAccess
Optional
Whether the sponsor also offers the intervention outside the trial.
Phases
phases
Optional
A list, not a single value: a study can be registered as PHASE2 and PHASE3 at once.
Study type
studyType
Optional
INTERVENTIONAL, OBSERVATIONAL or EXPANDED_ACCESS.
FDA-regulated drug
isFdaRegulatedDrug
Optional
Whether the sponsor declared the study involves an FDA-regulated drug.
FDA-regulated device
isFdaRegulatedDevice
Optional
Whether the sponsor declared the study involves an FDA-regulated device.
Has data monitoring committee
hasDmc
Optional
Whether the study has a data monitoring committee.
Conditions
conditions
Optional
The diseases or conditions studied, as the sponsor wrote them.
Keywords
keywords
Optional
The sponsor's own keywords.
MeSH conditions
meshConditions
Optional
The registry's derived MeSH terms for the conditions — a normalized vocabulary, useful for grouping across sponsors who name the same disease differently.
MeSH interventions
meshInterventions
Optional
The registry's derived MeSH terms for the interventions.
Interventions
interventions
Optional
Each {type, name} — DRUG, DEVICE, BIOLOGICAL, BEHAVIORAL, PROCEDURE and the rest.
Arm groups
armGroupCount
Optional
How many arms or groups the study has.
Lead sponsor
leadSponsor
Optional
The organization responsible for the study.
Sponsor class
sponsorClass
Optional
INDUSTRY, NIH, FED, OTHER_GOV, INDIV, NETWORK, AMBIG, OTHER or UNKNOWN.
Collaborators
collaborators
Optional
Each {name, class}.
Responsible party
responsiblePartyType
Optional
SPONSOR, PRINCIPAL_INVESTIGATOR or SPONSOR_INVESTIGATOR.
Enrollment
enrollment
Optional
Participants enrolled, or expected to be. Read enrollmentType before comparing two studies.
Enrollment type
enrollmentType
Optional
ACTUAL or ESTIMATED. An estimated enrolment is a plan, not a count.
Allocation
allocation
Optional
RANDOMIZED, NON_RANDOMIZED or NA.
Intervention model
interventionModel
Optional
PARALLEL, CROSSOVER, FACTORIAL, SEQUENTIAL or SINGLE_GROUP.
Masking
masking
Optional
NONE, SINGLE, DOUBLE, TRIPLE or QUADRUPLE.
Who is masked
whoMasked
Optional
PARTICIPANT, CARE_PROVIDER, INVESTIGATOR, OUTCOMES_ASSESSOR.
Primary purpose
primaryPurpose
Optional
TREATMENT, PREVENTION, DIAGNOSTIC, SUPPORTIVE_CARE, SCREENING, HEALTH_SERVICES_RESEARCH, BASIC_SCIENCE, DEVICE_FEASIBILITY, ECT or OTHER.
Observational model
observationalModel
Optional
On an observational study: COHORT, CASE_CONTROL, CASE_ONLY, ECOLOGIC_OR_COMMUNITY, FAMILY_BASED, DEFINED_POPULATION, NATURAL_HISTORY or OTHER.
Time perspective
timePerspective
Optional
On an observational study: RETROSPECTIVE, PROSPECTIVE, CROSS_SECTIONAL or OTHER.
Start date
startDate
Optional
ISO date. Partial dates stay partial — a registry that said 2026-08 has not told us the day.
Start date type
startDateType
Optional
ACTUAL or ESTIMATED.
Primary completion date
primaryCompletionDate
Optional
When the last participant was, or will be, measured for the primary outcome.
Primary completion date type
primaryCompletionDateType
Optional
ACTUAL or ESTIMATED.
Completion date
completionDate
Optional
When the study finished, or is expected to.
Completion date type
completionDateType
Optional
ACTUAL or ESTIMATED.
First submitted
firstSubmittedAt
Optional
When the sponsor first submitted the record.
First posted
firstPostedAt
Optional
When the registry first published it.
Last updated
lastUpdatedAt
Optional
When the registry last published an update. This is what updatedSince filters on.
Results posted
resultsPostedAt
Optional
When posted results first appeared. Null when none have been.
Has posted results
hasResults
Optional
Whether the study has results posted on the registry. This is what decides whether includeResults spends a request on it.
Eligible sex
sex
Optional
ALL, FEMALE or MALE.
Minimum age
minAge
Optional
As the sponsor wrote it — 12 Years, 6 Months. Not normalized, because the registry's own units carry meaning.
Maximum age
maxAge
Optional
As the sponsor wrote it. Null when there is no upper limit.
Standard age groups
stdAges
Optional
CHILD, ADULT, OLDER_ADULT.
Accepts healthy volunteers
healthyVolunteers
Optional
Whether the study accepts healthy volunteers.
Sampling method
samplingMethod
Optional
On an observational study: PROBABILITY_SAMPLE or NON_PROBABILITY_SAMPLE.
Study population
studyPopulation
Optional
On an observational study: how the population was defined.
Eligibility criteria
eligibilityCriteria
Optional
The inclusion and exclusion criteria as written, trimmed to 2,000 characters. eligibilityTruncated says whether anything was cut.
Eligibility truncated
eligibilityTruncated
Optional
True when the criteria text was longer than 2,000 characters.
Locations
locationsCount
Optional
How many study sites the registry lists — the real number, before the maxLocationsPerTrial cap.
Locations
locations
Optional
Up to maxLocationsPerTrial sites, each with facility, city, state, zip, country, per-site recruitment status, geo point and the contacts the registry publishes.
Countries
countries
Optional
Every country with a site, deduplicated.
Central contacts
centralContacts
Optional
The study's public contact points, reproduced exactly as the registry publishes them — including the masked placeholder addresses some sponsors submit.
Overall officials
overallOfficials
Optional
Study chairs, directors and principal investigators as the registry lists them.
Primary outcomes
primaryOutcomes
Optional
Up to ten, each {measure, timeFrame}. primaryOutcomesCount reports the real number.
Primary outcomes count
primaryOutcomesCount
Optional
How many primary outcome measures the study registered.
Secondary outcomes count
secondaryOutcomesCount
Optional
How many secondary outcome measures the study registered.
Other outcomes count
otherOutcomesCount
Optional
How many other pre-specified outcome measures the study registered.
Brief summary
briefSummary
Optional
The sponsor's plain-language summary of the study.
Detailed description
detailedDescription
Optional
The longer description, when the sponsor registered one.
References
referencesCount
Optional
How many publications the registry links to this study.
PubMed IDs
pmids
Optional
Up to 25 PubMed identifiers for the linked publications.
IPD sharing
ipdSharing
Optional
Whether the sponsor plans to share individual participant data: YES, NO or UNDECIDED.
Unposted-results events
unpostedEvents
Optional
The registry's own record that results are late: each {type, date} for a release or reset of the results deadline. Present on very few studies, and there is nowhere else to read it.
Serious adverse events (posted)
resultsSeriousEventCount
Optional
How many distinct serious adverse-event terms the posted results list. Only filled when includeResults is on.
Other adverse events (posted)
resultsOtherEventCount
Optional
How many distinct other adverse-event terms the posted results list.
Deaths (posted)
resultsDeathCount
Optional
Deaths across every event group in the posted results. A count of reported deaths, not a rate and not a finding.
Participants started (posted)
resultsParticipantsEnrolled
Optional
Participants who started the first reported period of the posted results.
Result documents
resultsDocuments
Optional
Study protocol, statistical analysis plan and consent documents the sponsor uploaded, each {label, date, size, filename}.
openFDA endpoint
endpoint
Optional
Which of the fourteen datasets this record came from.
Record ID
recordId
Optional
The record's natural identifier on its endpoint.
Record ID type
recordIdType
Optional
Which field recordId is — recall_number, set_id, safetyreportid, k_number and so on. Different endpoints identify records differently and this column says how.
Document ID
recordDocId
Optional
The per-version document id where the endpoint has one distinct from recordId — an SPL id, an NDC product_id, a veterinary report_id.
Record version
recordVersion
Optional
The version of this record: an SPL revision, or a FAERS safetyreportversion.
Marked duplicate
recordDuplicate
Optional
On a FAERS report, whether the FDA flagged it as a duplicate of another report. Duplicate reports are real and common.
Record date
recordDate
Optional
The endpoint's own primary date, always as ISO YYYY-MM-DD — eleven endpoints store it as YYYYMMDD and three as YYYY-MM-DD, and this column normalizes both.
Record date field
recordDateField
Optional
Which upstream field recordDate came from, so you can tell a receipt date from a decision date.
Other dates
reportedDates
Optional
Every other date on the record, normalized to ISO and named after its upstream field — recall initiation, classification, termination, event onset and so on.
Endpoint last updated
endpointLastUpdated
Optional
openFDA's own meta.last_updated for this dataset. It varies a lot: the enforcement and device endpoints are current within a week, while FAERS, CAERS and the veterinary file run six weeks to a quarter behind.
Product type
productType
Optional
HUMAN PRESCRIPTION DRUG, HUMAN OTC DRUG, Drugs, Devices, Food and so on.
Brand names
brandNames
Optional
Every brand name on the record. On a FAERS report this is every drug on the report, not just the one you searched for.
Generic names
genericNames
Optional
Every generic name on the record.
Substance names
substanceNames
Optional
Active substance names.
Active ingredients
activeIngredients
Optional
Each {name, strength}.
UNII codes
uniis
Optional
FDA's Unique Ingredient Identifiers.
RxCUI codes
rxcuis
Optional
RxNorm concept identifiers, up to 20.
Product NDCs
productNdcs
Optional
National Drug Codes, up to 20.
Application numbers
applicationNumbers
Optional
NDA, ANDA or BLA numbers.
Pharmacologic classes
pharmClasses
Optional
Established pharmacologic class, mechanism of action and chemical structure classes.
Routes
routes
Optional
Routes of administration.
Dosage form
dosageForm
Optional
Tablet, injection, solution and so on.
Marketing category
marketingCategory
Optional
NDA, ANDA, OTC monograph and so on.
Marketing status
marketingStatus
Optional
Prescription, over-the-counter, discontinued.
Manufacturer
manufacturerName
Optional
The manufacturer or labeler named on the record.
Applicant
applicantName
Optional
The company that applied, on a 510(k) or PMA.
Sponsor
sponsorName
Optional
The application sponsor, on a Drugs@FDA record.
Contact
contactName
Optional
The named contact on a 510(k), as the FDA publishes it.
Firm city
firmCity
Optional
City of the recalling firm, applicant or labeler.
Firm state
firmState
Optional
State or province.
Firm country
firmCountry
Optional
Country, as a name or a two-letter code depending on the endpoint.
Product description
productDescription
Optional
What was recalled or classified, trimmed to 2,000 characters.
Products
productCount
Optional
How many products the application covers.
Package configurations
packagingCount
Optional
How many package configurations the NDC entry lists.
Submissions
submissionCount
Optional
How many submissions the application has.
Latest submission
latestSubmission
Optional
The most recent submission by status date — {type, number, status, statusDate, classCode}. Picked by sorting, because submissions[] is not in date order.
Document URLs
documentUrls
Optional
Up to ten FDA-hosted label and letter PDFs from the application.
Device name
deviceName
Optional
The trade or brand name of the device.
Generic device name
genericName
Optional
The device's generic name.
Product code
productCode
Optional
FDA's three-letter device product code.
Device class
deviceClass
Optional
1, 2 or 3 — the regulatory risk class.
Regulation number
regulationNumber
Optional
The 21 CFR section that classifies the device.
Medical specialty
medicalSpecialty
Optional
The FDA advisory panel specialty.
Advisory committee
advisoryCommittee
Optional
The FDA advisory committee or review panel.
510(k) number
kNumber
Optional
The 510(k) clearance number.
PMA number
pmaNumber
Optional
The premarket approval number.
Supplement number
supplementNumber
Optional
The PMA supplement number. recordId combines the two as P080020/S056.
Clearance type
clearanceType
Optional
Traditional, Special or Abbreviated.
Decision code
decisionCode
Optional
FDA's decision code — SESE (substantially equivalent) on a 510(k), APPR on a PMA.
Decision
decisionDescription
Optional
The decision in words.
Expedited review
expeditedReview
Optional
Whether the submission had expedited review.
Third-party review
thirdPartyReview
Optional
Whether a third party reviewed the submission.
Life-sustaining
lifeSustaining
Optional
Whether the device class is life-sustaining or life-supporting.
Implantable
implantable
Optional
Whether the device class is implantable.
GMP exempt
gmpExempt
Optional
Whether the device class is exempt from good manufacturing practice requirements.
Definition
definition
Optional
The regulatory definition of the device class, trimmed to 2,000 characters.
Recall number
recallNumber
Optional
FDA's recall number.
Recall class
recallClassification
Optional
Class I a reasonable probability of serious harm or death; Class II temporary or reversible harm; Class III unlikely to cause harm. It is a hazard classification, not a severity of wrongdoing.
Recall status
recallStatus
Optional
Ongoing, Completed, Terminated or, on device recalls, Open, Classified.
Reason for recall
recallReason
Optional
Why the product was recalled, trimmed to 2,000 characters.
Recalling firm
recallingFirm
Optional
The company that initiated the recall.
Root cause
rootCause
Optional
FDA's root-cause category, on a device recall.
Recall action
recallAction
Optional
What the firm did, trimmed to 2,000 characters.
Lot and code information
codeInfo
Optional
The lot, serial and expiry codes affected, trimmed to 2,000 characters always. One real device recall carries 5.2 MB of lot numbers in this single field.
Distribution pattern
distributionPattern
Optional
Where the product went, trimmed to 1,000 characters.
Quantity
productQuantity
Optional
How much was recalled, as the firm reported it.
Voluntary or mandated
voluntaryMandated
Optional
Whether the firm initiated the recall or the FDA required it.
Initial notification
initialFirmNotification
Optional
How the firm first told its customers.
Event ID
eventId
Optional
FDA's recall event number, or the manufacturer's report number on a MAUDE report.
Event type
eventType
Optional
On a device adverse-event report: Malfunction, Injury, Death or Other.
Seriousness
seriousness
Optional
On a FAERS report 1 means serious; on a veterinary report the flag is true/false. Serious means the report met a regulatory criterion, not that the product caused anything.
Seriousness criteria
seriousnessFlags
Optional
Which criteria were met: hospitalization, death, life-threatening, disabling, congenital-anomaly, other.
Reactions
reactions
Optional
Reported reaction terms, up to 50. MedDRA on FAERS, VedDRA on veterinary reports, free text on CAERS.
Outcomes
outcomes
Optional
Reported outcomes.
Product problems
productProblems
Optional
On a device report: what went wrong with the device.
Patient problems
patientProblems
Optional
On a device report: what happened to the patient.
Patient age
patientAge
Optional
Age as reported. Read patientAgeUnit — FAERS uses coded units.
Patient age unit
patientAgeUnit
Optional
The unit the age is in. On FAERS this is a code: 801 years, 802 months, 803 weeks, 804 days, 805 hours.
Patient sex
patientSex
Optional
Normalized to male or female where the source coded it.
Reporter qualification
reporterQualification
Optional
Who reported it, as a FAERS code: 1 physician, 2 pharmacist, 3 other health professional, 4 lawyer, 5 consumer or non-health professional.
Reporting country
reportCountry
Optional
Where the report came from.
Event country
eventCountry
Optional
Where the event happened.
Company report number
companyNumber
Optional
The manufacturer's own case number.
Report type
reportType
Optional
The type of report, as the endpoint codes it.
Drug names on the report
drugNames
Optional
Every drug named on the report, up to 25 — not just the one you searched for. openFDA matches any drug on a report, so the drug you asked about may be the tenth entry.
Product names
productNames
Optional
On a CAERS report: the food or cosmetic products named.
Product roles
productRoles
Optional
SUSPECT or CONCOMITANT.
Industry categories
industryNames
Optional
FDA's food industry categories for the products named.
Animal species
animalSpecies
Optional
On a veterinary report.
Animal breed
animalBreed
Optional
On a veterinary report.
Animal sex
animalSex
Optional
On a veterinary report.
Animals affected
animalsAffected
Optional
How many animals the report covers.
Animals treated
animalsTreated
Optional
How many animals were treated.
Narrative
narrative
Optional
The manufacturer or FDA narrative on a device report, trimmed to 5,000 characters. Free-text patient detail is stripped from drug adverse-event reports before they are written.
Narratives
narrativeCount
Optional
How many narrative blocks the report carries.
Remedial action
remedialAction
Optional
What the manufacturer did about a device event.
Devices on the report
deviceCount
Optional
How many devices the report names.
Patients on the report
patientCount
Optional
How many patients the report covers.
Label sections
labelSections
Optional
Every section present on a drug label, including the ones the trim dropped, so you can see what a full-text run would add.
Approval order statement
aoStatement
Optional
FDA's approval statement on a PMA supplement, trimmed to 2,000 characters.
Boxed warning
boxedWarning
Optional
The label's boxed warning, trimmed to 5,000 characters unless full text is on.
Indications and usage
indications
Optional
Trimmed to 5,000 characters unless full text is on.
Warnings and precautions
warningsAndCautions
Optional
Trimmed to 5,000 characters unless full text is on.
Adverse reactions
adverseReactions
Optional
Trimmed to 5,000 characters unless full text is on.
Contraindications
contraindications
Optional
Trimmed to 5,000 characters unless full text is on.
Drug interactions
drugInteractions
Optional
Trimmed to 5,000 characters unless full text is on.
Dosage and administration
dosageAndAdministration
Optional
Trimmed to 5,000 characters unless full text is on.
Description
description
Optional
The label description section, trimmed to 5,000 characters unless full text is on.
Mechanism of action
mechanismOfAction
Optional
Trimmed to 5,000 characters unless full text is on.
Recent major changes
recentMajorChanges
Optional
Which label sections changed recently, and when.
Aggregate field
aggregateField
Optional
Which openFDA field was counted.
Aggregate term
aggregateTerm
Optional
One value of that field.
Aggregate count
aggregateCount
Optional
How many records carry that value. A count of reports, which is not an incidence rate and cannot be used as one.
Aggregate rank
aggregateRank
Optional
Position in the facet, 1 being the most common.
Aggregate total
aggregateTotal
Optional
The sum of the counts returned in this facet.
Total matching
totalCount
Optional
How many records matched upstream, before your cap. On a trials summary this is the registry’s totalCount; on an FDA summary it is the sum of the endpoints’ meta.results.total.
Trials returned
trialsReturned
Optional
How many trial rows this run wrote.
By status
byStatus
Optional
Count of the returned trials per overall status.
By phase
byPhase
Optional
Count of the returned trials per phase. A two-phase study counts once in each.
By study type
byStudyType
Optional
Count of the returned trials per study type.
By sponsor class
bySponsorClass
Optional
Count of the returned trials per sponsor class.
Top sponsors
topSponsors
Optional
The ten most frequent lead sponsors among the returned trials, each {term, count}.
Top conditions
topConditions
Optional
The ten most frequent conditions among the returned trials.
Top countries
topCountries
Optional
The ten countries with the most returned trials running a site.
Top intervention types
topInterventionTypes
Optional
The ten most frequent intervention types.
Recruiting
recruitingCount
Optional
How many of the returned trials are recruiting.
With posted results
withResultsCount
Optional
How many of the returned trials have results posted.
Median enrollment
medianEnrollment
Optional
The middle enrolment figure among the returned trials.
Endpoint totals
endpointTotals
Optional
Per openFDA endpoint, how many records matched upstream.
Registry API version
apiVersion
Optional
The ClinicalTrials.gov API version this run talked to.
Registry data timestamp
dataTimestamp
Optional
The registry's own statement of how fresh its data is, read live at the start of the run.
Raw record
raw
Optional
The source document: protocolSection plus derivedSection on a trial row when trialFields is full, and the trimmed openFDA record on an FDA row unless fdaRaw is off. Posted results are never put here.
Raw dropped
rawDropped
Optional
True when the row was over 500 KB and raw was dropped to keep it under the platform ceiling. Every flattened column is still there.
Text truncated
textTruncated
Optional
True when any text on this row was cut by a trim.
Query URL
queryUrl
Optional
The API request this row came from, with any API key removed.
Page index
pageIndex
Optional
Which page of the result set this row came from, counting from zero.
Truncated fields
truncatedFields
Optional
Which fields lost characters to a trim — the difference between "this label has no boxed warning" and "its boxed warning did not fit".