FDA Orange Book Patent & Exclusivity Change Report
Pricing
from $5.00 / 1,000 orange book product records
FDA Orange Book Patent & Exclusivity Change Report
Track FDA Orange Book changes. No API key / no login. One row per product record with brand, applicant, listed patents with expiry dates and exclusivity codes. Pressing Start with defaults saves a free baseline and charges nothing; paste the README JSON (emit_backfill) to get rows on the first run.
Pricing
from $5.00 / 1,000 orange book product records
Rating
0.0
(0)
Developer
naoki anzai
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Security
Limited permissionsShare
What you get: one row per matching Orange Book product record with brand, applicant, active ingredient, approval date, every listed patent with its expiration date, and exclusivity codes with their expiration dates.
Sample output from a real run of the JSON below (2026-10-18, 1 record row; 3 of its 10 patent entries shown):
| brandName (application) | activeIngredient | patentNumber | patent expirationDate |
|---|---|---|---|
| KYPROLIS (N 202714-002) | CARFILZOMIB 30MG/VIAL | 7417042 | 2026-07-20 |
| KYPROLIS (N 202714-002) | CARFILZOMIB 30MG/VIAL | 7737112 | 2027-12-07 |
| KYPROLIS (N 202714-002) | CARFILZOMIB 30MG/VIAL | RE47954 | 2029-10-21 |
The same row also lists the exclusivities M-14 (until 2028-05-22) and PED (until 2028-11-22).
Console defaults vs. the JSON below: if you leave the prefilled Console input and press Start, the first run uses initialRunMode: "emit_backfill": it returns the current matching records for the sample watch as paid rows (the cliff report and alerts are delivered when they fit your "Max cost per run" and maxChargeUsd). Choose baseline_only instead to save a free baseline first (one non-billable baseline_summary row, nothing charged); later runs with the same monitorKey and watch id return only changed records. The low-cost JSON below (maxChargeUsd: 0.1) returned 1 orange-book-record-row (USD 0.005) in our run and a cap_summary row listing the report and alert rows that did not fit.
Keep reports, exports, and movement options bounded for the first run. Open Console Input (deep link above) and run this JSON.
{"watches": [{"id": "near-term-patent-watch-wave-n","applicationTypes": ["N"],"patentExpirationFrom": "2026-01-01","patentExpirationTo": "2028-12-31","exclusivityExpirationFrom": "2026-01-01","exclusivityExpirationTo": "2028-12-31"}],"monitorKey": "orange-book-wave-n","initialRunMode": "emit_backfill","generateReport": true,"generateCliffReport": true,"emitRawRows": true,"emitExport": false,"maxRecordsPerWatch": 1,"maxRequests": 1,"maxChargeUsd": 0.1,"dryRun": false}
Paste patent watch and Start.
Pharma product, regulatory-operations, and lifecycle teams provide bounded Orange Book filters and receive a source-linked comparison of FDA product, patent, exclusivity, and therapeutic-equivalence records. The input is a stable watch with application, product, patent, exclusivity, or TE-code filters; the output is a change alert, date-window report, and optional JSON evidence export. The Actor uses the official openFDA Orange Book endpoint with no API key, login, browser automation, or private data.
Store Quickstart
{"watches": [{"id": "near-term-dates","applicationTypes": ["N"],"patentExpirationFrom": "2026-01-01","patentExpirationTo": "2028-12-31","exclusivityExpirationFrom": "2026-01-01","exclusivityExpirationTo": "2028-12-31"}],"monitorKey": "lifecycle-dates","initialRunMode": "baseline_only","generateReport": true,"emitUnchanged": false}
- Run the first watch with
initialRunMode: "baseline_only"to save the current public snapshot with zero rows and zero charge. - Run the same watch later with the same
monitorKeyand stable watch id to receive only changed records. - For an intentional first report, use
initialRunMode: "emit_backfill",generateCliffReport: true, andemitExport: true.
Use with Apify MCP
Exact actor: taroyamada/fda-orange-book-patent-exclusivity-change-report
Sample input JSON:
{"watches": [{"id": "near-term-patent-and-exclusivity-watch","applicationTypes": ["N"],"patentExpirationFrom": "2026-01-01","patentExpirationTo": "2028-12-31","exclusivityExpirationFrom": "2026-01-01","exclusivityExpirationTo": "2028-12-31"}],"maxRecordsPerWatch": 3,"maxRequests": 3,"maxChargeUsd": 3}
Run the next report
Use the report output for product-lifecycle review, then compare related public supply records with FDA Drug Shortage Supply Change Report.
Example 1: near-term patent and exclusivity dates
{"watches": [{"id": "near-term-dates","applicationTypes": ["N"],"patentExpirationFrom": "2026-01-01","patentExpirationTo": "2028-12-31","exclusivityExpirationFrom": "2026-01-01","exclusivityExpirationTo": "2028-12-31"}],"monitorKey": "lifecycle-dates","initialRunMode": "baseline_only","generateReport": true,"emitUnchanged": false}
Example 2: one application and TE code
{"watches": [{"id": "nda-205776","applicationNumbers": ["205776"],"therapeuticEquivalenceCodes": ["AB", "AP"]}],"monitorKey": "nda-205776-review","initialRunMode": "emit_backfill","generateReport": true,"generateCliffReport": true,"emitExport": true,"maxChargeUsd": 75}
Example 3: patent-use and exclusivity watch
{"watches": [{"id": "selected-patents","patentNumbers": ["8664231", "9999999"],"exclusivityCodes": ["NCE", "ODE"]}],"monitorKey": "selected-patent-portfolio","initialRunMode": "baseline_only","generateReport": true,"emitExport": true,"cliffWindowDays": 1095}
Outputs and pricing
The report and evidence events are the primary product. Raw product rows are optional and lower priced.
| Event | Price | Output |
|---|---|---|
orange-book-record-row | $0.005 | One normalized product record joined with patent, exclusivity, and TE-code fields |
orange-book-patent-change-alert | $0.35 | One source-linked public patent-field change alert |
orange-book-exclusivity-change-alert | $0.50 | One source-linked public exclusivity-field change alert |
orange-book-patent-cliff-report | $18 | A descriptive date-window and change report |
orange-book-export | $10 | A compact JSON evidence export |
The first baseline_only run and later unchanged runs emit zero rows and zero charge. Delivery fails closed if an event is unknown, the planned charge exceeds maxChargeUsd, charge proof is missing, or state cannot be saved after successful delivery.
What changes mean
record_added: a matching public record was not in the previous snapshot.patent_changed: one or more public patent fields changed.exclusivity_changed: one or more public exclusivity fields changed.patent_and_exclusivity_changed: both joined sections changed.therapeutic_equivalence_changed: the public TE-code set changed.record_changed: another joined product field changed.
The word “cliff” describes a configurable date window in the report. It is not a statement about patent validity, enforceability, approval, launch timing, market entry, or commercial availability.
Compliance guardrails
- Official source only:
https://api.fda.gov/drug/orangebook.jsonand the FDA Orange Book pages linked indocs/source-compliance.md. - No API key or login is required. The Actor does not use browser automation, private FDA systems, or access-bypass behavior.
- Product, patent, exclusivity, and TE-code values are reproduced as public source data and linked to the retrieval query.
- No legal, patent-validity, infringement, medical, investment, market-access, pricing, launch, or procurement advice.
- Do not treat a listed patent or date as a guarantee. Verify the FDA source and consult qualified professionals for decisions outside descriptive analysis.
Integration
See docs/integration-guide.md for recurring state-safe monitoring and docs/sample-output.json for the report/alert/export contract.
See also
- FDA Drug Shortage Supply Change Report for a separate public supply-record change workflow.
This Actor is limited to Orange Book product, patent, exclusivity, and TE-code observations. It does not infer supply, approval, validity, or launch outcomes.