What the command does

CLINICAL_TRIALS retrieves current public study records from the ClinicalTrials.gov API. Give it a medical condition to obtain a collection of studies, or give it an exact NCT identifier to retrieve one study directly.

No registration or API key is required. ClinicalTrials.gov provides a public API. RainbowStats handles HTTPS retrieval, pagination, caching, normalized fields, and temporary stale-cache fallback.

Syntax

Search by condition

CLINICAL_TRIALS("condition", maximumRecords)

The record limit is optional. The default is 250; the supported maximum is 10,000.

Retrieve one study

CLINICAL_TRIALS("NCT05407636", 250)

An exact NCT identifier automatically uses the direct single-study endpoint. CLINICAL_TRIAL("NCT05407636") is also supported.

# Search up to 250 studies
trials=CLINICAL_TRIALS("geographic atrophy",250)
slide(trials)

# Retrieve one exact registry record
trial=CLINICAL_TRIALS("NCT05407636",250)
slide(trial)

Extractable outputs

Use EXTRACT to move from registry records to focused tables, audits, or statistical models.

ExtractPurposeTypical use
auditChecks registered fields for review signals.slide(EXTRACT(trials,audit))
data, studies, tableDisplays normalized study records.slide(EXTRACT(trials,data))
cross_sectionBuilds the default study-level cross-section.slide(EXTRACT(trials,cross_section))
LOG_ENROLLMENTUses natural-log enrollment as the outcome.slide(EXTRACT(trials,LOG_ENROLLMENT))
ENROLLMENTUses raw enrollment as the outcome.slide(EXTRACT(trials,ENROLLMENT))
sponsor_effectsCompares sponsor classes with fixed effects and within-group estimates.slide(EXTRACT(trials,sponsor_effects))
phase_effectsCompares registered trial phases.slide(EXTRACT(trials,phase_effects))
status_effectsCompares overall study statuses.slide(EXTRACT(trials,status_effects))

Complete examples

Analyze a field of related studies

trials=CLINICAL_TRIALS("geographic atrophy",250)
slide(trials)
slide(EXTRACT(trials,audit))
slide(EXTRACT(trials,LOG_ENROLLMENT))
slide(EXTRACT(trials,sponsor_effects))
slide(EXTRACT(trials,phase_effects))
slide(EXTRACT(trials,status_effects))

Inspect one Phase 3 study

trial=CLINICAL_TRIALS("NCT05407636",250)
slide(trial)
slide(EXTRACT(trial,audit))
slide(EXTRACT(trial,data))
slide(EXTRACT(trial,LOG_ENROLLMENT))

Verified example: NCT05407636

RainbowStats retrieved the Phase 3 ASCENT study of ABBV-RGX-314 gene therapy for neovascular (wet) AMD: 735 participants, 181 registered locations, active but not recruiting, with no posted results at the time checked.

Clinical distinction: wet AMD and dry AMD/geographic atrophy are different disease processes. This study targets VEGF-driven abnormal blood vessels in wet AMD; it is not a geographic-atrophy treatment.

Cross-section model

The default outcome is Log Enrollment. Trial enrollment is strongly right-skewed; using its natural logarithm prevents exceptionally large registry studies from dominating ordinary least squares.

The default predictors are:

Number of arms Number of sites Number of countries Primary outcomes Results posted Industry sponsor

The sponsor-effects model omits the industry-sponsor indicator because that indicator is collinear with sponsor-class fixed effects. When a phase, sponsor, or status category is too small to estimate separate slopes, RainbowStats reports why the fully interacted model was skipped while retaining estimable fixed-effects and within-group results.

A single study is descriptive, not a regression sample. One-study cross-sections show the audit, observations, and summary only. RainbowStats suppresses correlation and regression panels that cannot be estimated meaningfully.

Registry audit

The audit highlights fields that may deserve review, including termination or withdrawal, missing enrollment, missing primary outcomes, delayed or absent results, missing locations, and incomplete completion dates.

An empty audit is not a quality endorsement. These checks assess selected registry signals. They do not determine whether a study was well designed, correctly conducted, statistically persuasive, or clinically important. Protocols, publications, adverse-event data, and medical context still require expert review.

Study table fields

Identity

NCT identifier and official or brief study title.

Design

Study type, phase, arms, enrollment, and registered outcomes.

Progress

Overall status, study dates, and whether results have been posted.

Reach

Registered locations, countries, and lead-sponsor classification.

Missing registry classifications remain missing rather than being converted to zero. Absence of a registered value must not be interpreted as a negative answer.

Responsible interpretation

  • ClinicalTrials.gov is a registry, not a peer-reviewed journal.
  • “No posted results” means results were not available in the registry record; it does not prove that no publication or conference report exists.
  • Observational and interventional studies can have very different enrollment scales and should not be pooled casually.
  • Search terms can include clinically distinct conditions. Review the returned titles and eligibility criteria before treating studies as peers.
  • Registry fields can change as sponsors update records; preserve the analysis date when publishing results.

Source and attribution

Study records are provided by the U.S. National Library of Medicine through the ClinicalTrials.gov API v2. RainbowStats normalizes the public JSON response for analysis but does not alter the underlying registry submission.

ClinicalTrials.gov API documentation · NCT05407636 registry record