ClinicalTrials.gov + FDA Orange Book - Trial Delta API
Pricing
from $2.00 / 1,000 new or changed trial/patent records
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
Maintained by CommunityActor 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
PHASE3study moving fromRECRUITINGtoCOMPLETEDorTERMINATEDis a real signal for BD, market-access, and competitive-intelligence teams, delivered as aSTATUS_CHANGEevent 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
conditionfilter or a saved query) to get an automated cross-run check thatoverall_statusandstatus_verified_dateare moving the way your team expects, without a person manually reloading eachNCTrecord 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_CHANGEandNEW_LISTINGevents 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}
| Field | Type | Default | Description |
|---|---|---|---|
sources | array (clinicaltrials, orangebook) | ["clinicaltrials"] | Which source(s) to run this call. clinicaltrials hits the ClinicalTrials.gov API v2; orangebook hits the openFDA Orange Book endpoint. |
condition | string | - | Passed to ClinicalTrials.gov's query.cond filter, e.g. "diabetes". |
orangeBookQuery | string | - | Ingredient name or application number filter for the Orange Book source. |
maxPages | integer | 20 | Hard cap on the number of 100-record ClinicalTrials.gov API pages walked per run. |
onlyChanged | boolean | false (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. |
maxRetries | integer | 5 | Max retry attempts (full-jitter exponential backoff) per page/request before that fetch is dead-lettered. |
fdaApiKey | string (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, soSTATUS_CHANGEandPATENT_EXCLUSIVITY_CHANGEevents reflect a real prior-run comparison, not a guess. - Global exception handler.
installGlobalErrorHandlerscaptures 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
maxRetriesattempts; 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-timeplus 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.