USPTO Trademark Search Scraper avatar

USPTO Trademark Search Scraper

Pricing

Pay per event

Go to Apify Store
USPTO Trademark Search Scraper

USPTO Trademark Search Scraper

Search USPTO trademark records by keyword, owner, serial number, registration number, status, and class. Export owners, goods/services, dates, and links.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Search and extract public USPTO trademark records from the official Trademark Search system.

Use this actor to collect word marks, serial numbers, registration numbers, owners, goods and services, Nice classes, live/dead status, filing dates, registration dates, and USPTO detail links for brand research, IP due diligence, and trademark monitoring workflows.

What does USPTO Trademark Search Scraper do?

USPTO Trademark Search Scraper turns USPTO trademark search results into structured dataset rows.

It can search by:

  • 🔎 Trademark keyword or phrase
  • 🏢 Owner, applicant, or registrant name
  • 🔢 USPTO serial number
  • 🧾 USPTO registration number
  • ⚖️ Live or dead status
  • 🧩 International class / Nice class

The actor uses the same public JSON endpoints that power the USPTO Trademark Search web app and can optionally enrich each record with detail data from USPTO TSDR.

Who is it for?

This actor is built for people who need repeatable trademark intelligence without manually copying search results.

  • ⚖️ IP attorneys checking potential conflicts
  • 🏢 In-house legal teams monitoring brand filings
  • 🕵️ Brand-protection analysts watching names and owners
  • 📈 Market researchers tracking competitor marks
  • 🧾 Agencies preparing clearance reports
  • 🤖 Developers feeding trademark data into internal tools

Why use it?

Manual USPTO searches are useful for one-off lookups, but they are slow to repeat and hard to export.

This actor helps you:

  • Export search results as JSON, CSV, Excel, XML, or RSS
  • Run the same monitoring query on a schedule
  • Mix keyword and owner searches with direct serial-number lookups
  • Keep URLs back to USPTO and TSDR for legal review
  • Enrich selected runs with TSDR detail fields
  • Integrate USPTO data into dashboards, CRMs, spreadsheets, and data warehouses

Data extracted

FieldDescription
serialNumberUSPTO serial number
registrationNumberUSPTO registration number when available
wordmarkTrademark word mark / mark text
statusLive or Dead
ownerNamesOwner/applicant names
ownerFullTextUSPTO owner text with entity and address details
goodsAndServicesGoods and services descriptions
internationalClassesNice / international classes
markTypeMark type values from USPTO
filingDateFiling date
registrationDateRegistration date when available
statusDateUSPTO status date when available
attorneyAttorney name when available
designCodeDescriptionDesign code descriptions when present
detailUrlUSPTO Trademark Search detail URL
tsdrUrlTSDR status URL
imageUrlUSPTO mark image URL
caseStatusOptional TSDR case status when detail enrichment is enabled

How much does it cost to scrape USPTO trademark search results?

The actor uses pay-per-event pricing.

You pay a small start fee for each run and a per-record fee for each trademark record saved.

Keep includeDetails disabled for broad monitoring runs when you only need search-result fields. Enable detail enrichment when you need deeper TSDR case status data.

Input options

searchQuery

A word, phrase, brand name, slogan, or product name to search in USPTO trademark records.

Example:

"nike"

ownerName

An owner, applicant, registrant, or company name.

Example:

"NIKE"

serialNumbers

Direct USPTO serial-number lookups.

Example:

["73758651", "97123456"]

registrationNumbers

Direct USPTO registration-number lookups.

Example:

["1558118"]

status

Choose all, live, or dead.

internationalClasses

Filter to one or more Nice classes.

Examples:

["025", "IC 009"]

includeDetails

When true, the actor calls the USPTO TSDR detail endpoint for each result.

This adds fields such as caseStatus, publicationDate, earliestRenewalDate, and related-record counts.

maxItems

Maximum trademark records to save.

Use small limits for testing and larger limits for monitoring or research exports.

Example input

{
"searchQuery": "nike",
"status": "live",
"internationalClasses": ["025"],
"includeDetails": false,
"maxItems": 50
}

Example output

{
"searchQuery": "nike",
"serialNumber": "73758651",
"registrationNumber": "1558118",
"wordmark": "I.E. NIKE",
"status": "Dead",
"alive": false,
"ownerNames": ["NIKE, INC. (CORPORATION; OREGON, USA)"],
"goodsAndServices": ["(CANCELLED) IC 025: [ FOOTWEAR ]."],
"internationalClasses": ["IC 025"],
"filingDate": "1988-10-20",
"registrationDate": "1989-09-26",
"detailUrl": "https://tmsearch.uspto.gov/search/summary?serial=73758651",
"tsdrUrl": "https://tsdr.uspto.gov/#caseNumber=73758651&caseSearchType=US_APPLICATION&caseType=DEFAULT&searchType=statusSearch",
"scrapedAt": "2026-07-10T00:00:00.000Z"
}

How to run

  1. Open the actor on Apify.
  2. Enter a trademark keyword, owner name, serial number, or registration number.
  3. Choose status and class filters if needed.
  4. Set maxItems.
  5. Run the actor.
  6. Download the dataset in your preferred format.

Tips for better results

  • Use exact brand names for clearance-style checks.
  • Use owner search for portfolio monitoring.
  • Use class filters to narrow broad marks.
  • Start without includeDetails for faster broad searches.
  • Enable includeDetails for final review exports.
  • Keep maxItems small while testing a new query.

Common workflows

Trademark clearance research

Search a proposed name and export matching live and dead records for review.

Owner portfolio monitoring

Run a scheduled owner query to detect newly visible filings for a company or competitor.

Class-specific brand monitoring

Combine a keyword with one or more Nice classes to focus on a product category.

Direct record enrichment

Provide serial numbers or registration numbers to normalize known marks into a structured dataset.

Integrations

You can connect the dataset to:

  • Google Sheets
  • Airtable
  • Slack alerts
  • Legal review dashboards
  • Brand monitoring systems
  • Data warehouses
  • Custom APIs through Apify webhooks

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/uspto-trademark-search-scraper').call({
searchQuery: 'nike',
status: 'live',
maxItems: 50,
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('automation-lab/uspto-trademark-search-scraper').call(run_input={
'searchQuery': 'nike',
'status': 'live',
'maxItems': 50,
})
print(run['defaultDatasetId'])

cURL

curl -X POST 'https://api.apify.com/v2/acts/automation-lab~uspto-trademark-search-scraper/runs?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"searchQuery":"nike","status":"live","maxItems":50}'

MCP usage

Use the actor from Claude Desktop, Claude Code, or other MCP-compatible clients with Apify MCP Server.

MCP server URL:

https://mcp.apify.com/?tools=automation-lab/uspto-trademark-search-scraper

Claude Code setup:

$claude mcp add apify-uspto-trademark-search "https://mcp.apify.com/?tools=automation-lab/uspto-trademark-search-scraper"

Claude Desktop JSON config:

{
"mcpServers": {
"apify-uspto-trademark-search": {
"url": "https://mcp.apify.com/?tools=automation-lab/uspto-trademark-search-scraper"
}
}
}

Example prompts:

  • "Search USPTO trademarks for this proposed brand name and summarize live conflicts."
  • "Find live USPTO trademark records owned by this company in class 025."
  • "Export USPTO trademark records for these serial numbers."

Scheduling

Create an Apify schedule to run the same query daily, weekly, or monthly.

Scheduling is useful for:

  • New filings by a competitor
  • New marks containing a monitored word
  • Class-specific brand monitoring
  • Portfolio snapshots

Webhooks

Use Apify webhooks to notify your system when a run finishes.

Common webhook targets include:

  • Slack
  • Make
  • Zapier
  • Internal legal dashboards
  • Data ingestion APIs

Data quality notes

The actor returns data available from USPTO public systems at run time.

USPTO records can contain missing registration numbers, cancelled records, old owner text, or marks without images.

Always review official USPTO/TSDR links before making legal decisions.

Limitations

  • The actor is not legal advice.
  • USPTO may change its public web app or API behavior.
  • Very broad queries can return many records; use maxItems and filters.
  • Detail enrichment adds one extra USPTO detail request per record.

Legality

This actor extracts public data from official USPTO public search systems.

You are responsible for using the data lawfully, respecting Apify terms, USPTO terms, and any professional obligations that apply to your work.

FAQ

Can I search by serial number?

Yes. Add serial numbers to serialNumbers.

Can I search by registration number?

Yes. Add registration numbers to registrationNumbers.

Can I get only live trademarks?

Yes. Set status to live.

Why are some registration numbers empty?

Pending applications and some dead records may not have a registration number.

Why is a mark image missing?

Some marks do not have a usable image URL, especially typed drawings or older records.

Should I enable detail enrichment?

Enable it when you need deeper case-status fields. Leave it off for faster and cheaper broad searches.

Troubleshooting

My query returns too many records

Add a status filter, owner name, international class, or lower maxItems.

My query returns no records

Try a broader keyword, remove class filters, or check the spelling in the official USPTO search interface.

Other automation-lab actors that may fit adjacent IP and legal workflows:

Support

If you need a field that is visible in USPTO but missing from this actor, open an issue with an example serial number and the field you need.

Changelog

See .actor/CHANGELOG.md for release notes.

Ready-to-use examples

Use the task examples in Apify after publication for:

  • Search-intent trademark keyword exports
  • Owner portfolio monitoring
  • Detail-enriched due diligence exports