If you own a brand, someone can file a trademark that collides with yours, and you have a limited window to oppose it. Miss the window and your options get expensive fast. The catch: nobody emails you when it happens. You have to be watching.
The official trademark offices publish every application. EUIPO, WIPO and 70+ national offices feed a shared database called TMview. The data is all there, including the one date that actually matters — the opposition deadline. The problem is that watching it by hand across offices, for every variation of your name, is not something anyone keeps up for long.
So I built a feed that does the watching. Here is a real application it surfaced:
{
"name": "ZARA",
"office": "EM",
"type": "Word",
"status": "Filed",
"niceClasses": [9, 42],
"applicants": ["Rocket Software, Inc."],
"applicationDate": "2025-06-26",
"oppositionPeriodStart": "2025-07-23",
"oppositionPeriodEnd": "2025-10-23"
}
Read that as a brand owner and the whole value is obvious. Someone filed "ZARA" as a word mark in software-related classes (9 and 42) at the EU office. If that collides with your brand, the line that matters is oppositionPeriodEnd: 23 October. Before that date, opposing is a form. After it, you are looking at cancellation proceedings.
What the feed watches
- Your terms, across offices. Pass the words you want to protect and the offices to cover (EM for EUIPO, US, WO for WIPO, plus national offices). It returns every matching application.
- Nice classes. Trademarks are scoped to classes of goods and services. A clash only matters if it is in a class near yours, and every result carries its classes so you can filter.
-
The opposition clock.
oppositionPeriodStartandoppositionPeriodEndon every filed mark — the actionable dates, not just the filing date. - Status and applicant. Who filed it and where it is in the process.
Running it
curl -X POST "https://api.apify.com/v2/acts/jdepablos~trademark-watch-tmview/run-sync-get-dataset-items?timeout=300" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "terms": ["your brand", "yourbrand"], "offices": ["EM", "US", "WO"], "statuses": ["Filed"] }'
Schedule it weekly, diff against last week, and you have a standing watch on your brand across the major registries. New filing in a class you care about, inside its opposition window, lands in your inbox while you can still do something about it.
Who this is for
- Founders and brand owners protecting a name without paying a watch service's monthly retainer.
- IP paralegals and small firms monitoring a client portfolio across offices in one query.
- AI agents — it is exposed as an MCP tool, so an agent can answer "any new filings close to our brand this month?" directly.
Cost
Pay per event: $0.02 per term watched that returns results. A weekly watch on a handful of terms is a few cents a month. Empty watches are free.
The feed is here. Runnable examples for it and the rest of my data tools are in the cookbook.
If you run brand protection and there is a filter or office you are missing, tell me in the comments — the feature list on these has been shaped by exactly that kind of request.
Top comments (0)