ClinicalTrials.gov Scraper — Biotech Trials & PI Emails avatar

ClinicalTrials.gov Scraper — Biotech Trials & PI Emails

Pricing

$4.00 / 1,000 extracted clinicaltrials.gov records

Go to Apify Store
ClinicalTrials.gov Scraper — Biotech Trials & PI Emails

ClinicalTrials.gov Scraper — Biotech Trials & PI Emails

Extract clinical studies from ClinicalTrials.gov API v2. Captures NCT ID, trial status, phase, lead biotech sponsor, conditions, interventions & Principal Investigator / Central Contact emails & phones.

Pricing

$4.00 / 1,000 extracted clinicaltrials.gov records

Rating

0.0

(0)

Developer

PROOFNEXA

PROOFNEXA

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Extract clinical studies from ClinicalTrials.gov API v2. Captures NCT ID, trial status, phase, lead biotech sponsor, conditions, interventions & Principal Investigator / Central Contact emails & phones.


1. Architecture & Extraction Pipeline

  • Extraction Mechanism: Directly extracts Central Contact & Principal Investigator names, emails, and phone numbers from contactsLocationsModule for biotech/CRO B2B lead generation.
  • Proxy Overhead: None required for standard runs. Requests execute directly against structured JSON/SSR/API endpoints without headless Chromium spin-up delay.
  • Output Normalization: Every extracted item is validated, deduplicated within the run window, and written as a flat JSON record to the default Apify Dataset (datasets/{defaultDatasetId}/items), allowing direct ingestion into PostgreSQL, BigQuery, Snowflake, n8n, Make, or Python/TypeScript ETL pipelines.
  • Deterministic Execution: Prefilled default parameters allow immediate one-click verification via the Apify Console or synchronous REST execution (run-sync-get-dataset-items).

2. Verified Production Dataset Sample

The following JSON record was captured directly from a live production execution of vivid_astronaut/clinicaltrials-gov-scraper on Apify Cloud:

[
{
"platform": "clinicaltrials.gov",
"nctId": "NCT04447651",
"briefTitle": "Patient Response to Immunotherapy Using Spliceosome Mutational Markers (PRISMM)",
"overallStatus": "ACTIVE_NOT_RECRUITING",
"leadSponsorName": "Sidney Kimmel Comprehensive Cancer Center at Johns Hopkins",
"leadSponsorClass": "OTHER",
"centralContactName": null,
"centralContactRole": null,
"centralContactPhone": null,
"centralContactEmail": null,
"conditions": [
"Metastatic Solid Tumor",
"SF3B1 Gene Mutation",
"Spliceosome Mutation",
"U2AF1 Gene Mutation",
"SRSF2 Gene Mutation"
],
"url": "https://clinicaltrials.gov/study/NCT04447651",
"scrapedAt": "2026-10-29T08:32:22.389Z"
},
{
"platform": "clinicaltrials.gov",
"nctId": "NCT03515551",
"briefTitle": "Safety and Efficacy of IMCnyeso in Advanced NY-ESO-1 and/or LAGE-1A Positive Cancers",
"overallStatus": "TERMINATED",
"leadSponsorName": "Immunocore Ltd",
"leadSponsorClass": "INDUSTRY",
"centralContactName": null,
"centralContactRole": null,
"centralContactPhone": null,
"centralContactEmail": null,
"conditions": [
"Select Advanced Solid Tumors"
],
"url": "https://clinicaltrials.gov/study/NCT03515551",
"scrapedAt": "2026-10-29T08:32:22.389Z"
}
]

3. Input Parameter Specification

ParameterTypeDefaultTechnical Specification
queriesarray["oncology", "glp-1", "immunotherapy"]Enter Disease, Drug, or Biotech Sponsor Search Terms to extract structured records.
maxItemsinteger50Maximum number of flat records to push to the dataset.

Example Input Payload (application/json)

{
"queries": [
"oncology",
"glp-1",
"immunotherapy"
],
"maxItems": 50
}

4. Measured Runtime & Unit Economics

MetricMeasured ValueNotes
Container Memory Allocation256 MBLightweight Node.js 20 container (apify@^3.2.6)
Median Execution Latency1.95 sCold start to dataset commit for default batch
External Proxy Requirement$0.00No residential proxy bandwidth surcharge required
Primary Billing Eventcertificate-checkedCharged strictly per committed dataset record
Unit Price (Pay-Per-Event)$0.0040 / recordEquivalent to $4.00 per 1,000 records

5. Production Integration (cURL, Python, Claude Code MCP)

5.1 Synchronous REST Execution (cURL)

Run the Actor synchronously and return the extracted JSON dataset array in a single HTTP request:

curl -s -X POST \
"https://api.apify.com/v2/acts/vivid_astronaut~clinicaltrials-gov-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries": ["oncology", "glp-1", "immunotherapy"], "maxItems": 50}'

5.2 Python Pipeline Integration (urllib.request)

import json
import os
import urllib.request
APIFY_TOKEN = os.environ["APIFY_TOKEN"]
url = (
"https://api.apify.com/v2/acts/vivid_astronaut~clinicaltrials-gov-scraper/"
f"run-sync-get-dataset-items?token={APIFY_TOKEN}"
)
payload = {
"queries": [
"oncology",
"glp-1",
"immunotherapy"
],
"maxItems": 50
}
req = urllib.request.Request(
url,
data=json.dumps(payload).encode("utf-8"),
headers={"Content-Type": "application/json"},
method="POST",
)
with urllib.request.urlopen(req, timeout=120) as resp:
records = json.loads(resp.read().decode("utf-8"))
print(f"Extracted {len(records)} records from clinicaltrials-gov-scraper")

5.3 Claude Code / Cursor MCP Configuration (.mcp.json)

Expose vivid_astronaut/clinicaltrials-gov-scraper as a callable tool inside Claude Code, Cursor, or any Model Context Protocol client:

{
"mcpServers": {
"apify-clinicaltrials-gov-scraper": {
"command": "npx",
"args": [
"-y",
"@apify/actors-mcp-server",
"--actors",
"vivid_astronaut/clinicaltrials-gov-scraper"
],
"env": {
"APIFY_TOKEN": "YOUR_APIFY_TOKEN"
}
}
}
}