USPTO Trademark Search Scraper avatar

USPTO Trademark Search Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
USPTO Trademark Search Scraper

USPTO Trademark Search Scraper

Search official US trademark registrations from the USPTO Trademark Search system (tmsearch.uspto.gov). Search by wordmark, owner name, goods/services, serial number, or registration number. Filter by live/dead status and Nice international class (1-45).

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Scrape USPTO Trademark Search (tmsearch.uspto.gov) — the official United States Patent and Trademark Office trademark database. Search by wordmark/keyword, owner/applicant name, goods & services description, or look up exact records by serial number or registration number. Filter by live/dead status, Nice international class (1-45, plus certification and collective-membership classes), and mark type. HTTP-only, no login, no API key.

What this actor does

  • Seven modes: search, bySerialNumber, byRegistrationNumber, byOwner, byGoodsServices, byProceedingNumber, byInternationalRegistrationNumber
  • Status filter: live (active) vs. dead (abandoned/cancelled/expired)
  • International class filter: full Nice Classification 1-45, plus certification (A/B) and collective-membership (200) classes
  • Mark type filter: trademark, service mark, collective mark, collective membership mark, certification mark
  • Full record detail: owner(s) incl. entity type/citizenship/city/DBA, filing/registration/first-use/priority/abandonment/cancellation dates, goods & services text, disclaimers, translations/transliterations, filing basis, drawing code + description, design search codes, detailed status description, TTAB proceeding history, Madrid international registration references, and a direct link to the official USPTO TSDR case-status page
  • Empty fields are omitted

Output per trademark

  • serialNumber — USPTO application serial number
  • registrationNumber — USPTO registration number (only present once registered)
  • wordmark — the literal trademark text
  • wordmarkPseudoText[] — normalized/phonetic equivalent text
  • statuslive or dead; statusCode, statusDescription — USPTO's detailed numeric/text status (e.g. REGISTERED AND RENEWED)
  • registered — whether the filing has proceeded to registration
  • markType — primary mark type (e.g. TRADEMARK, SERVICE MARK, CERTIFICATION MARK)
  • markTypes[] — all mark types, when a filing has more than one
  • markDescription[], designCodeDescription[], designCode[] — design-mark descriptions and USPTO design search codes, when applicable
  • internationalClass[] — Nice Classification codes (e.g. 009, 035, 200)
  • usClass[], coordinatedClass — US classification codes
  • ownerName[], ownerFullText[], ownerType, ownerEntity, ownerCitizenship, ownerCity, ownerStateCountryAddress, ownerDBA — owner/registrant information
  • attorney — attorney of record, if any
  • goodsAndServices[] — goods & services description text (capped at 20 entries)
  • disclaimer, translation, transliteration — legal disclaimer, foreign-wording translation, and transliteration text
  • currentBasis[], originalBasis[], registrationType[], standardCharacterClaim, assignmentRecorded — filing basis, registration type, and legal-status flags
  • affidavit[] — Section 8/15 affidavits filed
  • proceedings[] — TTAB opposition/cancellation proceeding numbers, when the mark has any
  • internationalRegistrationRefNumbers[] — Madrid Protocol international registration references, when applicable
  • drawingCode, drawingCodeDescription — USPTO drawing code and its description
  • filedDate, registrationDate, firstUseAnyDate, firstUseCommerceDate, priorityDate, abandonDate, cancelDate, publishForOppositionDate, supplementalRegistrationDate
  • sourceUrl — official USPTO TSDR case-status page for this filing
  • recordType: "trademark", scrapedAt

Input

FieldTypeDefaultDescription
modestringsearchsearch / bySerialNumber / byRegistrationNumber / byOwner / byGoodsServices / byProceedingNumber / byInternationalRegistrationNumber
searchQuerystringappleFree-text wordmark query (mode=search)
serialNumbersarraySerial numbers to look up (mode=bySerialNumber)
registrationNumbersarrayRegistration numbers to look up (mode=byRegistrationNumber)
ownerNamestringOwner/applicant name query (mode=byOwner)
goodsAndServicesQuerystringKeyword to search within goods & services text (mode=byGoodsServices)
proceedingNumbersarrayTTAB proceeding numbers to look up (mode=byProceedingNumber)
internationalRegistrationNumbersarrayMadrid Protocol international registration numbers (mode=byInternationalRegistrationNumber)
statusstringanyany / live / dead
internationalClassstringanyNice class 001-045, A, B, 200, or any
markTypestringanyMark type filter, or any
maxItemsint20Hard cap on emitted records (1-500)
proxyConfigurationobjectAUTOOptional Apify Proxy configuration

Example: search by wordmark, live trademarks only

{
"mode": "search",
"searchQuery": "apple",
"status": "live",
"internationalClass": "009",
"maxItems": 25
}

Example: exact lookup by serial number

{
"mode": "bySerialNumber",
"serialNumbers": ["74683130", "87491047"]
}

Example: search by owner name

{
"mode": "byOwner",
"ownerName": "nike inc",
"status": "live",
"maxItems": 50
}

Example: search by goods & services keyword

{
"mode": "byGoodsServices",
"goodsAndServicesQuery": "coffee",
"internationalClass": "030"
}

Example: lookup by TTAB proceeding number

{
"mode": "byProceedingNumber",
"proceedingNumbers": ["91177505"]
}

Example: lookup by Madrid international registration number

{
"mode": "byInternationalRegistrationNumber",
"internationalRegistrationNumbers": ["0870749"]
}

Data source / limitations

Data comes from the same public search index that powers USPTO's own tmsearch.uspto.gov search UI. Mark description text and design code are exposed as output fields (populated whenever USPTO records them) rather than as separate search modes, since they're most useful as enrichment alongside the other lookup axes. The raw field-tag/search-builder syntax from the USPTO UI is not exposed as a passthrough — all of its practical lookup axes (wordmark, owner, goods/services, serial/registration number, TTAB proceeding number, Madrid international registration number, status, class, mark type) are already covered by the modes and filters above.

Use cases

  • Trademark clearance searches — check whether a mark is already registered before filing
  • Brand protection — monitor filings by a competitor or by your own company across all classes
  • IP due diligence — pull registration status and dates for M&A or licensing review
  • Legal research — bulk-export filings in a given Nice class or goods/services category
  • Portfolio management — track your own trademark portfolio's status and key dates

FAQ

What is the data source? The public USPTO Trademark Search system at tmsearch.uspto.gov, which replaced the legacy TESS system. All data is official USPTO trademark register data.

Is this affiliated with the USPTO? No. This is an independent third-party actor that uses USPTO's own public search system. It is not affiliated with, endorsed by, or sponsored by the USPTO.

What does "live" vs. "dead" mean? Live means the application or registration is still active (pending or registered). Dead means it has been abandoned, cancelled, expired, or otherwise removed from active status.

Why do some records have no registrationNumber? Only applications that proceed to registration receive a registration number. Pending or abandoned applications may only have a serial number.

What is internationalClass? The Nice Classification system groups goods and services into 45 numbered international classes (e.g. class 025 = clothing, class 042 = computer/scientific services), plus special classes for certification marks (A, B) and collective membership marks (200).

Is search full-text or exact match? search, byOwner, and byGoodsServices perform relevance-ranked full-text search (similar to typing into the USPTO's own search box). bySerialNumber and byRegistrationNumber are exact lookups.

How fresh is the data? Data reflects the USPTO's live trademark search index at the time the actor runs.

What is a TTAB proceeding number? The Trademark Trial and Appeal Board (TTAB) hears oppositions and cancellations. A mark with a contested history lists every associated proceeding number in proceedings[]; mode=byProceedingNumber looks up every mark tied to a given proceeding.

What is the Madrid international registration number? Marks registered internationally through the Madrid Protocol carry a WIPO international registration number alongside their US filing. mode=byInternationalRegistrationNumber looks up the US filing(s) tied to a given international registration number.

Are there rate limits? The USPTO search system is public and does not require an API key or login. The actor paginates politely; very large maxItems values on broad queries may take longer to complete.