DEV Community

Ava Torres
Ava Torres

Posted on • Originally published at apify.com

How to Search USPTO Patents Programmatically with PatentsView

Patent data is public, but searching it at scale is painful. The USPTO PatentsView API is well-structured and free, but writing queries, handling pagination, and normalizing the output across thousands of patents takes real engineering work. This article covers how to automate USPTO patent searches without building that infrastructure yourself.

Why automate this?

Researchers, IP attorneys, competitive intelligence teams, and product managers all need patent data. Common use cases:

  • Prior art searches before filing a patent application
  • Competitive monitoring -- tracking what a competitor has filed over the past 12 months
  • Inventor lookups -- finding all patents associated with a specific person or organization
  • Technology landscaping -- mapping patent activity across a technical domain

Doing this manually through the USPTO web interface is fine for one-off queries. It breaks down when you need 500 results, want to run the same search weekly, or need the output in a structured format for downstream analysis.

How PatentsView works

PatentsView is a USPTO-maintained API that exposes the full patent grant dataset going back to 1976. It supports field-level filtering, sorting, and pagination. You can query by keyword, inventor name, assignee (company), CPC/USPC classification codes, filing date, grant date, and more.

The API returns structured JSON, but the response schema is verbose. Each patent record can include dozens of nested fields across inventors, assignees, claims, citations, and classification codes.

What data you get

Each record in the output includes:

  • patent_id -- USPTO patent number
  • patent_title -- full title of the patent
  • patent_abstract -- abstract text
  • patent_date -- grant date
  • inventors -- array of inventor names, cities, and countries
  • assignees -- array of assignee (owner) names and types
  • cpc_codes -- Cooperative Patent Classification codes
  • cited_patents -- forward and backward citation counts
  • claims_count -- number of claims

For most research workflows, the title, abstract, assignee, date, and classification codes are sufficient to triage relevance before pulling full claim text.

Running a search

The USPTO Patents PatentsView Search actor on Apify accepts a query string and optional filters for date range, assignee, inventor, and CPC code. It handles pagination automatically and returns normalized JSON.

Example input:

{
  "query": "transformer neural network",
  "dateFrom": "2022-01-01",
  "dateTo": "2023-12-31",
  "maxResults": 200
}
Enter fullscreen mode Exit fullscreen mode

The actor runs in under a minute for most queries and outputs results directly to an Apify dataset, which you can download as JSON, CSV, or XLSX.

Integration options

Once you have the data in a dataset, you can:

  • Export to CSV and open in Excel or Google Sheets
  • Connect via the Apify API to a Python or Node.js script
  • Schedule weekly runs and push results to a webhook or Google Sheets via Apify integrations
  • Use the dataset in a downstream enrichment pipeline

Next steps

If you need patent data at scale -- for competitive intelligence, prior art research, or IP landscaping -- the actor is the fastest path to structured output without standing up your own API client.

Search USPTO patents on Apify

Top comments (0)