EUIPO Trademark Scraper - EU & TMview Marks, Owners, Classes avatar

EUIPO Trademark Scraper - EU & TMview Marks, Owners, Classes

Pricing

$1.80 / 1,000 trade marks

Go to Apify Store
EUIPO Trademark Scraper - EU & TMview Marks, Owners, Classes

EUIPO Trademark Scraper - EU & TMview Marks, Owners, Classes

Scrape EU trade marks from EUIPO and 70+ offices via TMview: search by mark, owner, number, Nice class, status, type or filing date. Get status, dates, goods & services, owner and representative with address, image, oppositions. Past the 10,000-result cap. No login, no API key.

Pricing

$1.80 / 1,000 trade marks

Rating

0.0

(0)

Developer

Scrapers Delight

Scrapers Delight

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

What does EUIPO Trademark Scraper do?

EUIPO Trademark Scraper exports trade marks from TMview, the search the EUIPO runs over the EU trade mark register and 70+ national and regional offices (WIPO Madrid, Benelux, Germany, France, Spain, Italy, the UK, the US, China and more). One row is one trade mark with its status, dates, Nice classes, goods & services wording, owner and representative with address, image and proceedings. Brand owners, IP firms, clearance and watch services and B2B researchers use it to search, monitor and export marks without copying pages by hand.

Also searched as: EUIPO trademark search, EUTM search, TMview scraper, EU trademark API, trademark watch.

  • πŸ”Ž Search by mark, owner or number - mark text with five match modes, owner/applicant names, application or registration numbers, TMview ids.
  • 🎯 TMview's own filters - office, protected-in country, Nice class, status, mark type, Vienna code, filing and registration dates, open-to-opposition-now.
  • πŸ“„ Full record on every row - goods & services text, owner and representative with address (and e-mail/phone where the office publishes them), oppositions, renewals, seniority, priority, publications.
  • πŸ“š Past the 10,000-result cap - one TMview search lists at most 10,000 marks; the actor splits the filing-date range and keeps going.
  • βš–οΈ Clearance score - give your own mark and classes; every row gets a similarity score, phonetic match, class overlap and a conflict band.
  • πŸ” Monitor mode - only new marks and marks whose status or dates changed since the last run, plus an optional webhook.
  • 🚫 No login, no API key, no browser.

What data can you get from EUIPO and TMview?

πŸ†” TMview id (ST13), office🏷️ Mark name, type, kind🚦 Status + the office's own status wording
πŸ”’ Application and registration numbersπŸ“… Filing, registration, expiry dates⏳ Opposition period, open now, days left
πŸ—‚οΈ Nice classesπŸ“ Goods & services text (pick the language)🌍 Countries where the mark is protected
🏒 Owner name, legal form, address, countryπŸ‘” Representative name, address, countryβœ‰οΈ Representative e-mail, phone, website
πŸ–ΌοΈ Mark image + thumbnail🎨 Vienna codes with descriptions🌈 Colours claimed, mark description
βš”οΈ Oppositions (opponent, earlier marks, grounds)❌ Cancellations, appealsπŸ”„ Renewals, renewal-due flag
πŸ“° Bulletin publicationsπŸ₯‡ Seniority and priority claimsπŸ”— TMview and office record links

How to scrape EU trade marks with EUIPO Trademark Scraper

  1. Create a free Apify account - the free plan includes monthly credit.
  2. Open EUIPO Trademark Scraper and type one or more mark texts (or owner names, or numbers).
  3. Keep Offices on EM for EU trade marks, add other offices, or empty it for all of TMview.
  4. Add any filters: Nice classes, status, mark type, dates, open to opposition.
  5. Click Start and wait for the run to finish.
  6. Download the marks as JSON, CSV, Excel or HTML, or read them through the API.

⬇️ Input

ParameterTypeDescription
πŸ” What to search
searchQueriesarrayMark text, one search each, e.g. "nike". Prefilled.
matchModeselectcontains (default), exact, beginsWith, word, fuzzy.
applicantNamesarrayOwner names. Alone: each owner's portfolio. With mark text: only marks of these owners.
applicationNumbers, registrationNumbersarrayLook marks up by number, in the offices you chose.
st13IdsarrayTMview ids or TMview detail URLs, e.g. EM500000008871915.
🎯 Filters (applied by TMview)
officesarrayOffice codes. Default ["EM"] (EU trade marks); empty = all offices.
territoriesarrayProtected in these countries, whichever office granted the mark.
niceClassesarrayClasses 1-45.
statusesarrayRegistered, Filed, Expired, Ended.
markTypesarrayWord, Figurative, 3-D, Sound, Colour, Position, Pattern, Motion, ...
viennaCodesarrayImage codes, e.g. 27.05.01.
applicationDateFrom, applicationDateTo, filedInLastDaysstring / integerFiling-date window; filedInLastDays moves with each scheduled run.
registrationDateFrom, registrationDateTostringRegistration-date window.
currentlyOpposablebooleanOnly marks whose opposition period runs today.
sortByselectrelevance (default), newest, oldest, name.
βž• Extra data
includeDetailsbooleanFull record per mark. Default on, same price.
goodsServicesLanguagestringLanguage of the goods & services text. Default en.
includeEuipoRecordbooleanEU marks: renewal status, basis, fast track and filing method from EUIPO's own record.
referenceMark, referenceNiceClassesstring / arrayYour mark and classes for the clearance score.
πŸ” Monitoring
monitorMode, monitorKeyboolean / stringOnly new or changed marks since the last run of this search.
notifyWebhookUrlstringPOSTs the new marks (JSON with a text line for Slack/Discord) at the end of the run.
πŸ“¦ Output
maxResultsintegerMarks per run. Default 100, prefill 10; 0 = no limit.
maxResultsPerSearchintegerCap per mark text or owner. 0 = none.
compactbooleanFlat core fields only, for spreadsheets and AI tools.
βš™οΈ Advanced
maxConcurrencyintegerFull records read at once (1-10, default 6).
proxyConfigurationobjectNot needed. Your own proxy URLs are tried first if you add them.

Input JSON

{
"searchQueries": ["nike"],
"offices": ["EM"],
"niceClasses": ["25"],
"statuses": ["Registered", "Filed"],
"maxResults": 100
}

Pick the match mode before anything else

contains finds the text anywhere in a mark (252 EU marks for "nike", including SYMPHONIKER). word keeps whole words (84), beginsWith the start of the mark (105), exact the whole mark (37). fuzzy adds near spellings (2,558) and suits clearance searches together with referenceMark.

Watch new filings with a schedule

Leave the mark text empty, set offices to ["EM"], filedInLastDays to 7, sortBy to newest, add Nice classes, and switch on monitorMode. Each scheduled run delivers only marks it has not delivered before (and marks whose status, registration or expiry date changed).

Use owner names for portfolios

applicantNames: ["Nike Innovate"] with offices: ["EM"] returns the owner's 425 EU marks. TMview matches owner names loosely, so check applicantName on the rows when two companies share a word.

⬆️ Output

One item per trade mark. A real row from a test run (EU mark, excerpt):

{
"st13": "EM500000014688791",
"markName": "APPLE PENCIL",
"office": "EM",
"markType": "Word",
"status": "Registered",
"applicationNumber": "014688791",
"applicationDate": "2015-10-19",
"registrationDate": "2016-02-26",
"expiryDate": "2035-10-19",
"niceClasses": [9],
"goodsServicesText": "9: Input devices for computers and handheld mobile digital electronic devices.",
"applicantName": "Apple Inc.",
"applicantCountry": "US",
"applicantAddress": "One Apple Park Way",
"applicantCity": "Cupertino",
"representativeName": "Shoosmiths Europe LLP",
"representativeCountry": "BE",
"representativeEmail": "brusselstm@shoosmiths.com",
"representativePhone": "+32478191990",
"oppositionCount": 0,
"lifecycleStage": "registered",
"daysUntilExpiry": 3289,
"tmviewUrl": "https://www.tmdn.org/tmview/#/tmview/detail/EM500000014688791"
}

The full row also carries applicants[] and representatives[] (every party with address, legal form and contacts), goodsAndServices[] per class, oppositions[], cancellations[], appeals[], renewals[], publications[], seniorities[], priorities[], viennaCodes[], protectionTerritories[], imageUrl, thumbnailUrl and officeRecordUrl.

Fields and measured fill

Measured on our own test runs on 2026-10-16/17: A = 100 EU marks for "apple"; B = 100 marks for "apple" across 10 offices (EM, WO, BX, DE, FR, ES, IT, GB, US, CN); C = 915 EU marks filed 1-10 September 2026 with their full record (from a 1,000-mark run; almost all still pending).

FieldMeaningABC
markName, status, applicationNumber, applicationDate, niceClassesCore identity100%99-100%97-100%
statusDetailThe office's own status wording100%81%100%
registrationNumber / registrationDate / expiryDateRegistration data (not yet on pending marks)94% / 86% / 86%91% / 86% / 73%0% (pending)
oppositionPeriodEndEnd of the opposition window96%13%72%
goodsServicesTextGoods & services wording100%99%100%
applicantName / applicantAddress / applicantCountryOwner100% / 83% / 83%100% / 81% / 37%100% / 100% / 100%
representativeName / representativeAddressRepresentative90% / 90%71% / 16%80% / 80%
representativeEmail / representativePhone / representativeWebsiteRepresentative contacts, as published45% / 44% / 39%2% / 2% / 2%26% / 25% / 6%
imageUrlMark image (figurative marks)27%73%41%
publications / oppositions / renewalsProceedings98% / 26% / 58%64% / 1% / 11%72% / 0% / 0%
protectionTerritoriesWhere the mark is protected100%100%100%

Owner e-mail and phone are rare: TMview carries them for a few offices only (3 of 283 records across 27 offices in our test set, from India and Mexico; none of them EU marks). Mark descriptions, colours claimed, disclaimers, seniority and priority claims appear where the office records them.

Use cases

  • βš–οΈ Trade mark clearance - search a proposed name with fuzzy, your classes and referenceMark, then review the high and medium conflict bands first.
  • πŸ‘€ Watch services - a weekly monitor on new EU filings in your client's classes, with currentlyOpposable to catch marks you can still oppose.
  • 🏒 Portfolio audits - an owner's marks with expiry dates and renewalDueSoon for renewal planning.
  • πŸ§‘β€πŸ’Ό IP firm business development - new filings with the owner and their representative (or the lack of one).
  • πŸ“ˆ Market research - filing volumes by class, owner country or office over a date range.
  • 🀝 Due diligence - a target company's marks, oppositions and cancellations before a deal.

How much does it cost to scrape EUIPO trade marks?

Pay per result, no start fee: $0.0018 per trade mark ($1.80 per 1,000), full record included. You pay only for marks saved to your dataset; an empty search costs nothing.

RunMarksCost
Demo (prefill)10$0.018
Typical search100$0.18
Deep pull1,000$1.80
Every EU filing of one quarter~37,000~$67

Apify's free plan monthly credit ($5) covers about 2,700 marks.

Integrations, API, scheduling & MCP

  • Schedules - run a search daily or weekly from the Schedules tab; pair it with monitor mode and filedInLastDays.
  • Webhooks - Apify's run webhooks, or notifyWebhookUrl for a Slack/Discord-ready list of the new marks.
  • Make, Zapier, n8n, Google Sheets, Slack - through Apify's integrations.
  • API - start runs and read results with the Python or JavaScript client.
  • MCP - add the actor to Claude, Cursor or another MCP client from the actor's MCP tab.

More register and company scrapers

See all our scrapers.

Limits & empty runs

  • One TMview search lists up to 10,000 marks. Above that the actor reads filing-date windows of under 10,000 each (37,317 EU marks filed in Q1 2025 = 5 windows; a 10,500-mark test returned 10,500 unique marks). Marks with no filing date cannot be reached that way; RUN_SUMMARY counts them.
  • Some offices publish no detail record in TMview (Italy's answered an error on every mark in our test): those rows keep the search fields and say detailsFetched: false.
  • If TMview refuses the direct connection, the run moves to a proxy on its own. On the residential proxy each full record is read up to its recordals block (detailsPartial: true: renewals, cancellations, appeals are then null, and goods & services come in the filing language).
  • An empty search (TMview lists 0 marks) ends with a clear message and costs nothing. RUN_SUMMARY keeps marks not found, records without detail and unreachable requests apart.

❓ FAQ

How much does EUIPO Trademark Scraper cost?

$0.0018 per trade mark with the full record, no start fee. 1,000 marks cost $1.80.

How many trade marks can EUIPO Trademark Scraper return?

As many as TMview lists for the search. Past TMview's 10,000-result cap the actor splits the filing-date range, so a whole quarter of EU filings is one run.

Does EUIPO Trademark Scraper cover national offices, not only EU trade marks?

Yes. Empty the offices list for all 70+ TMview offices, or list the codes you want (WO, BX, DE, FR, ES, IT, GB, US, CN...). territories finds marks protected in a country whichever office granted them.

Can EUIPO Trademark Scraper watch for new trade mark filings?

Yes. Schedule it with filedInLastDays and monitorMode; each run delivers only new marks and marks whose status or dates changed, and notifyWebhookUrl can post them to Slack or Discord.

How does the clearance score in EUIPO Trademark Scraper work?

Give referenceMark (and optionally referenceNiceClasses). Each row gets similarityScore (letters, words, sound and containment), phoneticMatch, classOverlap and a conflictBand. It is a screening aid to sort a result list, not an examiner's opinion.

Does EUIPO Trademark Scraper give the owner's contact details?

It gives what the office publishes: owner name, legal form and address on most records, and the representative's address, e-mail, phone and website where listed (44-45% of EU marks in our "apple" test had a representative e-mail and phone).

Do I need an EUIPO account or API key for EUIPO Trademark Scraper?

No. It reads TMview's public search with no login and no key.

Can I use EUIPO Trademark Scraper with the Apify API or an MCP server?

Yes - start runs through the API clients, schedules or integrations, or connect the actor to an MCP client from its MCP tab.

Why did my EUIPO Trademark Scraper run return no results?

TMview lists no marks for that search and filters (check offices: the default is EU trade marks only). The status message and RUN_SUMMARY say so, and nothing is charged.

Your feedback

Found a bug or missing a field? Open an issue on the Issues tab and we will look at it.