ClinicalTrials.gov + FDA Orange Book - Trial Delta API avatar

ClinicalTrials.gov + FDA Orange Book - Trial Delta API

Pricing

from $2.00 / 1,000 new or changed trial/patent records

Go to Apify Store
ClinicalTrials.gov + FDA Orange Book - Trial Delta API

ClinicalTrials.gov + FDA Orange Book - Trial Delta API

Delta-tracks ClinicalTrials.gov trial status changes (RECRUITING, COMPLETED, TERMINATED) and FDA Orange Book patent/exclusivity data against verified live public APIs. Fingerprint-based diffing delivers only new or changed records per run, with full-jitter retry and strict ISO 8601 timestamps.

Pricing

from $2.00 / 1,000 new or changed trial/patent records

Rating

0.0

(0)

Developer

Stefano Seggio

Stefano Seggio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 hours ago

Last modified

Categories

Share

Clinical Trial Data Extractor - ClinicalTrials.gov & FDA Orange Book Delta Monitor (Global Pharma Intelligence)

Executive Value Proposition

Knowing that a trial's overallStatus just moved from RECRUITING to TERMINATED, or that an FDA Orange Book patent/exclusivity entry just changed, normally means manually re-opening the same ClinicalTrials.gov or Orange Book record over and over on a recurring basis - tedious enough that most sponsor-tracking, competitive-intelligence, and clinical-operations teams either skip it or only check sporadically. This actor automates that comparison against two verified-live, free, public government APIs: it fingerprints the fields that actually matter (overallStatus, lastUpdatePostDate, statusVerifiedDate for trials; patent/exclusivity data per applNo/productNo for Orange Book entries) against a persisted cross-run snapshot, and in delta mode delivers only records that are new or genuinely changed - not a full re-crawl you have to diff yourself every run.

Use Cases

  • Sponsor and competitive-intelligence tracking. Watch a competitor's pipeline for trial-status inflection points - a PHASE3 study moving from RECRUITING to COMPLETED or TERMINATED is a real signal for BD, market-access, and competitive-intelligence teams, delivered as a STATUS_CHANGE event instead of something you'd only notice by re-reading the same trial page.
  • Clinical-operations self-monitoring. Run this actor against your own organization's trials (via the condition filter or a saved query) to get an automated cross-run check that overall_status and status_verified_date are moving the way your team expects, without a person manually reloading each NCT record on a schedule.
  • Loss-of-exclusivity and generic-entry timing. Track the FDA Orange Book source for a watchlisted ingredient or application number to see PATENT_EXCLUSIVITY_CHANGE and NEW_LISTING events as they happen - useful groundwork for generics-entry timing and patent-cliff monitoring.

Input

{
"sources": ["clinicaltrials"],
"condition": "non-small cell lung cancer",
"maxPages": 5,
"onlyChanged": true
}
FieldTypeDefaultDescription
sourcesarray (clinicaltrials, orangebook)["clinicaltrials"]Which source(s) to run this call. clinicaltrials hits the ClinicalTrials.gov API v2; orangebook hits the openFDA Orange Book endpoint.
conditionstring-Passed to ClinicalTrials.gov's query.cond filter, e.g. "diabetes".
orangeBookQuerystring-Ingredient name or application number filter for the Orange Book source.
maxPagesinteger20Hard cap on the number of 100-record ClinicalTrials.gov API pages walked per run.
onlyChangedbooleanfalse (prefilled true in the Console)Delta mode - only new or changed records are delivered. State persists in a named key-value store unique to this actor across scheduled runs.
maxRetriesinteger5Max retry attempts (full-jitter exponential backoff) per page/request before that fetch is dead-lettered.
fdaApiKeystring (secret)-Optional openFDA API key for a higher Orange Book rate limit (1,000/day without a key vs. 120,000/day with one, both capped at 240/min). Not used by the ClinicalTrials.gov source.

sources is the only required field.

Output

One dataset item per delta event, carrying a shared envelope (record_id, event_type, scraped_at, is_new, source_url, data_source) plus source-specific fields. This is a real record from this actor's own smoke test:

{
"record_id": "NCT05823948",
"event_type": "NEW_TRIAL",
"scraped_at": "2026-09-08T19:15:01.188Z",
"is_new": true,
"source_url": "https://clinicaltrials.gov/study/NCT05823948",
"data_source": "clinicaltrials-gov",
"nct_id": "NCT05823948",
"brief_title": "A Study Using Flash Glucose Measurements for a New Once-weekly Insulin (Insulin Icodec) in People With Type 2 Diabetes Who Have Not Used Insulin Before (ONWARDS 9)",
"overall_status": "COMPLETED",
"previous_status": null,
"last_update_post_date": "2026-04-30",
"status_verified_date": "2026-04",
"lead_sponsor": "Novo Nordisk A/S",
"conditions": ["Diabetes Mellitus, Type 2"],
"phases": ["PHASE3"]
}

overall_status uses ClinicalTrials.gov's own controlled vocabulary verbatim (RECRUITING, ACTIVE_NOT_RECRUITING, COMPLETED, TERMINATED, WITHDRAWN, etc.) rather than a remapped generic enum, so no information is lost. event_type is NEW_TRIAL or STATUS_CHANGE for ClinicalTrials.gov records, NEW_LISTING or PATENT_EXCLUSIVITY_CHANGE for Orange Book records, or SNAPSHOT_NO_DIFF (only delivered when onlyChanged is off). On a STATUS_CHANGE event, previous_status carries the value seen on the prior run. An Orange Book record instead carries application_number, product_number, trade_name, ingredient, te_code, and the source's own patent_data object, left unflattened since patent entries vary in count per product. Download results as JSON, CSV, or Excel directly from the Apify platform.

Reliability

  • Fingerprint-based delta engine. Each trial's tracked fields (overallStatus, lastUpdatePostDate, statusVerifiedDate) and each Orange Book product's patent/exclusivity data are fingerprinted and persisted in a named, cross-run key-value store, so STATUS_CHANGE and PATENT_EXCLUSIVITY_CHANGE events reflect a real prior-run comparison, not a guess.
  • Global exception handler. installGlobalErrorHandlers captures full stack trace, memory, and duration telemetry on any unhandled rejection or exception before the process exits, instead of failing silently.
  • Full-jitter backoff with a dead-letter queue. Retryable fetches use full-jitter exponential backoff up to maxRetries attempts; a page or request that still fails is dead-lettered rather than silently dropped or left to crash the run.
  • Strict ISO 8601 timestamps. Every timestamp field in the dataset schema enforces format: date-time plus an explicit regex pattern, so downstream consumers get consistent, parseable UTC timestamps on every record.
  • Verified-live sources. ClinicalTrials.gov API v2 (apiVersion: 2.0.5) and the openFDA Orange Book endpoint were both confirmed live via direct API calls during this actor's development, not assumed from documentation alone.

Pricing

Pay-per-event: $0.002 per new or changed record (result), plus $0.00005 per run start (apify-actor-start). An unchanged record in delta mode is never delivered and never billed - not a discounted tier, simply never an event. Check the Apify Store page for the current live pricing before running at volume.

Support & Enterprise SLA

This is an independently developed and maintained actor, not a vendor product backed by a contractual SLA. Bug reports and feature requests go through the Apify Store's built-in issue tracker for this actor and are typically triaged within about 48 hours.

What this actor does not do: it does not track FDA Complete Response Letters. That data exists only as a static, infrequently-updated table/PDF archive with no queryable API, and the underlying disclosure policy has itself been paused and resumed at least once. Scraping a fragile, policy-unstable source for a low volume of records (hundreds of letters) isn't a good fit for this actor's delta-engine model - a genuine limitation, stated here rather than glossed over.