ParseForge Scrapers

Worldwide Patent Search Scraper

parseforge/worldwide-patent-search-scraper

OtherLead generation

Search patents across Google Patents, USPTO, CNIPA, WIPO, CIPO, and India IPO with one keyword query. Returns title, abstract, inventors, assignee, status, and priority dates as flat rows.

Run this scraper See the API call
Total users
2
Monthly active
1
Total runs
47
Bookmarked
0
Rating
Not rated yet
Last modified
9 days ago

Overview

ParseForge

Worldwide Patent Search Scraper

Search patents across Google Patents, USPTO, CNIPA, WIPO, CIPO, and India IPO with one query. Each result returns the title, inventors, assignee, abstract, status, and priority dates. Export to CSV, JSON, Excel, or XML.

Patent data is scattered across half a dozen national offices, each with its own search syntax and export limits. This Actor queries Google Patents, China's CNIPA, Canada's CIPO, USPTO PAIR, WIPO Patentscope, and India's IPO simultaneously from a single keyword search. It normalizes every match into one flat row so you can compare filings across jurisdictions without switching tools.

Filter by assignee, inventor, legal status, language, or priority date window before the run starts, and only the patents you need land in your dataset.

Who uses it What they scrape Worldwide Patent Offices for
IP attorneys Checking the patent landscape for a client before filing a new application.
R&D teams Monitoring competitor filings to avoid reinventing a protected technology.
Patent analysts Building a dataset of all filings in a narrow technology class for a freedom-to-operate report.
Academic researchers Studying innovation trends across countries by collecting patents by keyword and date range.

What it does

This Actor searches worldwide patent databases by free-text query and returns each patent as a flat row with its bibliographic details and legal status.

  • ๐ŸŒ Multi-source search: query Google Patents, CNIPA, CIPO, USPTO PAIR, WIPO Patentscope, and India IPO in one run.
  • ๐Ÿ” Free-text query with exact phrase support: use double quotes around "solar panel" to match the exact phrase.
  • ๐Ÿข Assignee and inventor filters: narrow results to a specific company or person before the data is collected.
  • ๐Ÿ“… Priority date window: set a from-to range in YYYY-MM-DD format to study filings from a particular period.
  • โš–๏ธ Legal status filter: collect only granted patents, only applications, or both.
  • ๐Ÿ—ฃ๏ธ Language filter: restrict results to English, Chinese, German, French, Japanese, Korean, Spanish, or Russian.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Worldwide Patent Offices data

โš–๏ธ Freedom-to-operate searches.

A patent attorney enters a client's technology keywords, filters by GRANT status and a date range, and reviews active patents that could block a product launch.

๐Ÿญ Competitor portfolio monitoring.

An R&D manager runs a weekly search filtered by a competitor's name in the assignee field to catch new filings as they publish.

๐Ÿ“Š Cross-jurisdiction trend analysis.

A policy researcher collects all Chinese-language solar energy patents from CNIPA and WIPO over five years to compare filing velocity by country.

๐Ÿ”ฌ Prior art searches.

A patent examiner queries an exact phrase with all six sources enabled to find earlier publications that might invalidate a new application.

Why choose this scraper

What you get
One query, six offices Search Google Patents, CNIPA, CIPO, USPTO PAIR, WIPO, and India IPO at once.
Normalized output Every patent, regardless of source, arrives in the same flat schema.
Pre-collection filters Filter by assignee, inventor, status, language, and date range before data is fetched.
Up to a million patents Set maxItems as high as 1,000,000 for large-scale landscape analyses.

How it compares

No other Store actor targets Worldwide Patent Offices the same way, so the honest comparison is with the alternatives teams actually weigh.

Worldwide Patent Search Scraper Build it in-house By hand
Setup Run it now, zero config Days of engineering None, but hours per pull
When Worldwide Patent Offices changes Maintained for you You fix it You re-learn the page
Proxies, retries, anti-bot Built in Your problem Browser only
Output Fixed JSON schema, CSV/Excel export Whatever you build Copy-paste
Cost Pay per result Engineering time Analyst hours

Configure the run

Drive the Actor with a free-text patent search query and optional filters for assignee, inventor, status, language, and priority date range. Filters are applied as each patent is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
 "query": "machine learning",
 "sources": [
 "google-patents",
 "china-cnipa",
 "canada-cipo",
 "uspto-pair",
 "wipo-patentscope",
 "india-ipo"
 ],
 "maxItems": 10,
 "sort": "new"
}

A larger pull:

{
 "query": "machine learning",
 "sources": [
 "google-patents",
 "china-cnipa",
 "canada-cipo",
 "uspto-pair",
 "wipo-patentscope",
 "india-ipo"
 ],
 "maxItems": 200,
 "sort": "new"
}

Pricing

Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $2.10
1,000 results $21.00
10,000 results $210.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Worldwide Patent Search Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Worldwide Patent Offices through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/worldwide-patent-search-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that your query is not too narrow. Remove the assignee, inventor, and status filters temporarily to see if the keyword alone returns matches. Also verify your date range is not excluding all filings.

Why are WIPO results missing assignee and status filters?

The assignee, inventor, status, and language filters are applied only to Google-Patents-backed sources. WIPO Patentscope is queried by keyword and date range only. This is a limitation of the WIPO search interface.

The run stopped before reaching my maxItems limit.

The Actor stops when the patent office returns no more results for your query. Try broadening your keywords, removing filters, or expanding the date range to find more patents.

Some fields are empty in my dataset.

Not every patent office publishes every field. For example, some jurisdictions may not provide an abstract or may list inventors differently. Empty cells mean the source office did not supply that data.

The run is taking a long time.

Searching multiple offices with a high maxItems value will take time because each office must be queried sequentially. Reduce the number of sources or lower maxItems for faster test runs.

FAQ

Question Answer
Which patent offices does this Actor search? It searches Google Patents (which covers over 100 jurisdictions), China's CNIPA, Canada's CIPO, USPTO PAIR, WIPO Patentscope, and India's IPO. You can enable all six or pick a subset in the Sources field.
Can I search by patent number instead of keywords? The query field accepts free-text keywords. To find a specific patent by number, enter the number as your query. For exact matches, wrap it in double quotes.
What data fields does each patent row include? Each row returns the patent title, abstract, inventors, assignee, application number, publication number, priority date, filing date, publication date, legal status, source office, and URL. The exact schema is shown in the sample output on the Actor's page.
Does the assignee filter work on all sources? The assignee, inventor, status, and language filters are applied to Google-Patents-backed sources: Google Patents, CNIPA, CIPO, USPTO, and India IPO. WIPO Patentscope results are collected by keyword and date range only.
How do I search for an exact phrase? Put the phrase in double quotes inside the query field. For example, "lithium ion battery" will match that exact phrase rather than each word separately.
What date format should I use for the priority date filters? Use YYYY-MM-DD format. For example, 2020-01-01 for January 1st, 2020. Both dateFrom and dateTo are optional; leave one empty to search with an open start or end.
Can I export the results? Yes. Apify supports exporting your dataset to CSV, JSON, Excel, XML, and several other formats directly from the run console.
Is there a limit on how many patents I can collect? You set the limit with the maxItems field, up to 1,000,000 patents per run. The Actor stops when it reaches your number or when no more results match your query.
Does this Actor require API keys for the patent offices? No. It reads the public search interfaces of each office. You do not need to register for any patent office API key.
Can I filter by legal status? Yes. The status field lets you choose Granted patents only, Applications only, or Both. This filter applies to Google-Patents-backed sources.

Related actors

  • google-search-scraper: Use this to scrape Google Search results pages, including the Google Patents tab, for broader web-based patent discovery.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by the respective patent offices. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
query string Free-text keywords (e.g. "solar panel"). Use double quotes for exact phrases. machine learning
sources array Patent offices to query. Leave empty for all. ["google-patents","china-cnipa","canada-
maxItems integer How many patents to collect per run. 10
assignee string Filter by patent assignee (company or person) not set
inventor string Filter by inventor name not set
status string (3 options) GRANT, APPLICATION, or empty for both not set
dateFrom string YYYY-MM-DD format not set
dateTo string YYYY-MM-DD format not set
language string (9 options) Filter by language code not set
sort string (3 options) Sort by publication date new

Pricing

from $19.00 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.019 to $0.021

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~worldwide-patent-search-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run Worldwide Patent Search Scraper on Apify All scrapers