USPTO TTAB Docket Diff API — Opposition & Cancellation Tracker avatar

USPTO TTAB Docket Diff API — Opposition & Cancellation Tracker

Pricing

Pay per usage

Go to Apify Store
USPTO TTAB Docket Diff API — Opposition & Cancellation Tracker

USPTO TTAB Docket Diff API — Opposition & Cancellation Tracker

Daily diff feed for USPTO TTABVUE. Emits JSONL records for every change to TTAB proceeding status, filings, parties, scheduling-order deadlines, challenged-mark text, or final decision. Replaces $20-200k/yr CompuMark watch tiers at $30-1,000/mo. For TM prosecution counsel, IP litigation, BigLaw.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

ChangeWire

ChangeWire

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

13 hours ago

Last modified

Categories

Share

TTABVUE API Wrapper — Daily USPTO TTAB Docket Diff & Opposition Tracker

Daily diff of every USPTO Trademark Trial and Appeal Board proceeding for trademark prosecution counsel, IP litigation tracking vendors, brand-protection teams, BigLaw competitive- intel desks, and AI legal-research agents. Watches TTABVUE for status flips, new filings, party substitutions, scheduling- order revisions, challenged-mark edits, and final decisions — emits one JSONL change record per detected change.

What this does

  • Tracks every TTAB proceeding across OPP / CAN / EX / CON / INT types with full diff coverage on six dimensions (status / filings / parties / deadlines / challenged mark / decision).
  • Cuts opposition-deadline detection latency from days to one hour so prosecution counsel never miss a 30-day answer deadline or a 60-day priority response window because TTABVUE only updates once a day and CompuMark's email-digest layer adds another 24-hour lag.
  • Replaces $20-200k/yr CompuMark / Markify watch-service tiers with a metered pay-per-result Apify actor at $0.01 per change record (typically $30-1,000/month depending on portfolio size).

Use cases

TTABVUE API wrapper for trademark prosecution counsel

A boutique trademark firm prosecuting ~200 marks to publication filters this actor on proceeding_numbers: [<200 OPP/CAN ids>], runs daily at 07:00 UTC, and wires the JSONL diff stream into the firm's docketing system. Any status_change, filings_added, or deadline_change record routes straight into the prosecution attorney's inbox with the proceeding number + before/after snapshot fields. Cost: roughly 40-100 diff records/day across the portfolio × $0.01 = $12-30/day = $360-900/mo. Replaces a $20-50k/yr CompuMark watch tier with real-time fidelity rather than next-business-day email digests.

USPTO TTAB docket API for IP litigation tracking vendors

An IP litigation tracking vendor (CompuMark / Markify competitor) feeds the actor's daily-changes lookback feed (lookback_days: 7) into its watch-layer ingestion pipeline. Each diff record becomes a structured event the vendor's client-alert engine can route per-mark or per-class to its brand-owner subscribers. The vendor saves the engineering cost of building TTABVUE scraping in-house (~6-month FTE project at $200k+ loaded) and gets per-event semantics (status flip vs filing landing vs decision posted) the vendor doesn't have to derive from raw HTML.

Trademark opposition tracker for brand-protection tooling

A brand-protection vendor (BrandShield / OpSec / MarkMonitor competitor) filters this actor on

marks_watch: [<top-1000 client mark substrings>]
and runs daily. New filings_added records where the docket entry is "Opposition" route into the client's account-manager queue within one hour. The vendor's brand-owner clients get alerted to oppositions filed against their marks the same day rather than next-business-day, and the vendor differentiates on speed-of-alert against the incumbent watch services.

TTAB proceeding monitor for BigLaw competitive intel

A BigLaw IP group's competitive-intel desk filters on filers_watch: [<list of opposing-counsel firms>] and watches opposing counsel's filing cadence + party-substitution patterns + decision outcomes. The structured change_type field lets the desk tag each event by category for litigation-strategy briefings without manual TTABVUE-page re-parsing.

An AI legal-research agent embedded in a trademark-prosecution SaaS consumes the diff stream as a retrieval-augmented fact source. Each decision_landed record is a structured event the agent can reason over ("TTAB just issued final decision in opposition 91306247 in favor of Plaintiff with $X attorney's fees award") rather than an unstructured "TTABVUE updated". The agent uses change records to draft client-facing case-law summaries and prosecution-strategy memos in real time rather than waiting for the next quarterly West Trademark Reporter publication.

Input

See .actor/input_schema.json for the full schema. Key fields:

FieldTypeDefaultDescription
proceeding_numbersarray of strings[]Specific TTAB proceeding numbers (e.g. ["91306247"]). Empty triggers daily-changes feed.
proceeding_typesarray of strings["OPP","CAN"]Subset of {OPP, CAN, EX, CON, INT}. Filter applied after parsing.
filers_watcharray of strings[]Substring match on any party name (case-insensitive).
marks_watcharray of strings[]Substring match on challenged-mark text (case-insensitive).
lookback_daysint7Trailing window for daily-changes feed when no explicit list.
change_typesarray of stringsall sixSubset of {status_change, filings_added, parties_change, deadline_change, mark_change, decision_landed}.
snapshot_keystringttab-snapshot-latestApify Key-Value Store key for previous snapshot.
ttabvue_base_urlstringhttps://ttabvue.uspto.govOverride for offline test mirrors.
rate_limit_rpsint2Polite RPS for TTABVUE GETs. USPTO blocks at >10 rps.

Realistic example input (200-mark prosecution-counsel portfolio):

{
"proceeding_numbers": ["91306247", "91312098", "92085431", "..."],
"change_types": ["status_change", "filings_added", "deadline_change"],
"rate_limit_rps": 2
}

Output

JSONL dataset; one record per detected change:

{
"actor": "actor-5-uspto-ttab-docket-extractor",
"schema_version": "1.0.0",
"extracted_at": "2026-05-22T07:00:00Z",
"proceeding_number": "91306247",
"proceeding_type": "OPP",
"parties_short": "Acme Holdings v. Beta Goods",
"current_status": "Pending, Discovery",
"change_type": "filings_added",
"before": {"filings_count": 12},
"after": {
"filings_count": 13,
"newest_filing": {
"type": "Motion to Compel",
"filer": "Plaintiff",
"filed_date": "2026-05-21"
}
},
"detected_at": "2026-05-22T07:00:00Z",
"source_url": "https://ttabvue.uspto.gov/v?pno=91306247&pty=OPP"
}

Apify Console preview shows a 7-column table view (proceeding / type / parties / status / change type / detected at / source URL) so paralegals + non-engineers can sanity-check runs before piping into a docketing system.

Pricing & limits

  • $0.01 per result (per detected diff record).
  • Free 7-day trial so you can verify diff fidelity against your own portfolio before committing.
  • Recommended schedule: daily at 06:00–08:00 UTC (TTABVUE refreshes overnight; running this window catches the freshest changes).
  • Estimated monthly cost:
    • Boutique trademark firm (~200 marks, daily cadence): $360–900/mo
    • Mid-market IP litigation vendor (~5,000 proceedings watched): $200–500/mo via daily-changes feed
    • Heavy user / brand-protection vendor (~30,000–100,000 records/mo): $300–1,000/mo
    • Replaces CompuMark watch tiers ($20–200k/yr) and Markify portfolio plans ($5–30k/yr) with metered per-event fidelity.

Data source & freshness

  • Source: USPTO TTABVUE public docket interface (https://ttabvue.uspto.gov/v?pno=<n>&pty=<t>) plus the daily-changes feed when no explicit watchlist supplied.
  • Update cadence (source-side): TTABVUE refreshes once per business day, typically overnight Eastern Time. New filings posted today appear on TTABVUE the next morning.
  • Actor cadence (recommended): Daily 07:00 UTC. Running more often than TTABVUE refreshes is harmless but emits zero records.
  • Public-records license: TTABVUE is a public-records interface published under 35 USC §11(a) and 15 USC §1062 disclosure mandates. 17 USC §105 removes copyright on the underlying USPTO records. USPTO's robots.txt allows /v paths and asks for an identifying User-Agent. Actor sets a non-spoofed UA and defaults to 2 rps.

FAQ

What's the difference between TTABVUE and TSDR?

TTABVUE is the docket-level interface for live trial proceedings (oppositions, cancellations, ex parte appeals, etc.) — one URL per proceeding showing parties, status, filings, scheduling order, and decisions. TSDR (Trademark Status & Document Retrieval) is the application-level interface for the underlying mark application — registration status, ownership, classes, prosecution history. This actor consumes TTABVUE; for application-level diffs see a separate actor or use the TSDR XML feed directly.

How does this compare to CompuMark or Markify?

CompuMark / Markify package TTABVUE watching as one feature in a $20–200k/yr enterprise watch service that also includes USPTO database watch, foreign-trademark watch, common-law search, and human-curated weekly reports. This actor does only the TTABVUE diff layer at $0.01 per change record. Pick this if your team already does its own portfolio docketing and just needs a programmatic feed; pick CompuMark if you need bundled global watch + human-curated alerts.

What's a TTAB proceeding number and how do I get a list?

Proceeding numbers are 8-digit integers prefixed by type (91xxxxxx for oppositions, 92xxxxxx for cancellations, 88xxxxxx / 97xxxxxx for ex parte appeals, 94xxxxxx for concurrent-use, 93xxxxxx for interferences). Boutique firms get them from their docketing system; vendors get them from the daily-changes feed. The actor accepts both — pass an explicit proceeding_numbers list for known portfolios or leave it empty to auto-pull the trailing lookback_days window of newly-active proceedings.

What change types does this detect?

Six dimensions: status_change (current_status string moved, e.g. Pending → Suspended → Terminated), filings_added (new docket entries), parties_change (parties added/removed or correspondent swap), deadline_change (any keyed scheduling-order date moved), mark_change (challenged-mark text or class list edited), decision_landed (final decision block populated or its outcome edited).

How does this handle the daily-changes feed?

When proceeding_numbers is empty, the actor pulls the trailing lookback_days window from TTABVUE's daily-changes listing, parses each proceeding page, and diffs against the previous snapshot. Default 7-day lookback catches anything that landed in the last business week even if the cron missed a day. Buyers tracking only specific portfolios should pass explicit proceeding_numbers to skip the listing-page round trip entirely.

Are attorney email addresses redacted?

Yes — TTABVUE filings include attorney email addresses in correspondent fields. The actor redacts these on ingest by default to avoid raising FCRA / GLBA flags for downstream buyers. Set redact_emails: false in the input schema to disable redaction (only do this if you've cleared the buyer- cohort compliance posture yourself).

Can I watch by opposing-counsel firm rather than proceeding?

Yes. filers_watch: ["Smith Anderson LLP"] triggers a substring match against any party-name field. The actor still walks the daily-changes feed but emits diff records only for proceedings where at least one party-name matches. Useful for BigLaw competitive-intel desks tracking specific opposing counsel.

Does this cover ex parte appeals?

Yes — ex parte appeals (88xxxxxx / 97xxxxxx) are included by default. Set proceeding_types: ["EX"] to filter to ex parte only; the default ["OPP","CAN"] excludes ex parte for prosecution-counsel and brand-protection cohorts who don't need them.

Is there a rate-limit risk?

The actor self-limits to 2 rps and respects USPTO's robots.txt (allows /v paths). USPTO blocks at >10 rps in practice; we stay well below. Bulk runs against 1,000+ proceedings take ~10 minutes wall time at 2 rps.

Companion actors in this portfolio

changewire maintains a portfolio of federal-data diff actors. All share the same daily-snapshot + JSONL change-record pattern, watchlist filtering, and per-record change-type semantics. Pick the data domain you need; mix and match across a single Apify account:

Running locally (for contributors)

cd actors/actor-5-uspto-ttab-docket-extractor
apify run --purge # uses .actor/input_schema.json defaults

Watchlist run:

$apify run --input '{"proceeding_numbers": ["91306247", "91312098"]}'

Daily-changes run with filer filter:

$apify run --input '{"filers_watch": ["Acme Holdings"], "lookback_days": 14}'

TTABVUE is a public-records interface published under 35 USC §11(a) and 15 USC §1062 disclosure mandates. 17 USC §105 removes copyright on the underlying USPTO records. USPTO's robots.txt allows /v paths and asks for an identifying User-Agent. Actor sets a non-spoofed UA and defaults to 2 rps (USPTO blocks at >10 rps in practice). Some filings include attorney email addresses; the actor redacts them on ingest by default to avoid raising FCRA / GLBA flags for downstream buyers.