# Google Patents Scraper API - Bulk Patent Search (`crustapi/google-patents-scraper`) Actor

Search Google Patents in bulk. Get titles, abstract snippets, assignees, inventors, publication numbers, priority and publication dates (grant date once granted), and PDF links as JSON or CSV. $4 per 1,000 results, no start fee.

- **URL**: https://apify.com/crustapi/google-patents-scraper.md
- **Developed by:** [CrustAPI](https://apify.com/crustapi) (community)
- **Categories:** Developer tools, Automation, AI
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$4.00 / 1,000 patents

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## What is Google Patents Scraper API?

Search Google Patents in bulk. Paste your queries, click Start, and download patents with abstract snippets, assignees, inventors, dates, and PDF links as a clean table.

- 🔬 Any technology, assignee, or publication number, many queries per run
- 🏢 Assignee and inventor on every row
- 📝 Abstract snippet on every row, so you can screen results without opening them
- 📅 Priority and publication dates on every row, grant date once granted
- 📄 Direct PDF link on nearly every patent
- ⚡ Powered by a live API, a few seconds per query
- 📦 Export as JSON, CSV, Excel, HTML, or XML

### What data do I get?

Each query returns up to 10 results. The Coverage column says plainly where a field can come back blank.

| Field | Example | Coverage |
|---|---|---|
| Title | Public transport infrastructure facilitated drone delivery | Every row |
| Abstract snippet | v) communicating, from the machine to the drone via a wired or wireless connection, the drone delivery route ... | Every row |
| Assignee | Ebay Inc. | Every row |
| Inventor | Jonathan Gabbai | Every row |
| Publication number | US12045770B2 | Every row |
| Priority date | 2015-07-08 | Every row |
| Publication date | 2024-07-23 | Every row |
| Filing date | 2023-05-17 | Every row |
| Grant date | 2024-07-23 | Once granted, blank on pending applications |
| Language | en | Every row |
| Link | patents.google.com page | Every row |
| PDF | Direct PDF URL | Nearly every patent |
| Thumbnail | Lead figure image URL | Most patents |
| Figures | Full size and thumbnail image URL per figure | Most patents (about 4 in 5) |
| Query | drone delivery | The query the row came from |

### Pricing

**$4 per 1,000 results** ($0.004 per result). No start fee, no monthly rental. Empty queries and failures are never charged.

| Run | Actor cost |
|---|---|
| 100 results | $0.10 |
| 1,000 results | $1 |
| 10,000 results | $40 |

### How it works

1. Paste search queries, one per line.
2. Set **Page** to reach deeper results. Each page is up to 10 patents, so page 2 gives you results 11 to 20.
3. Set **Max results per query** if you want fewer than 10.
4. Click **Start**, then download JSON, CSV, or Excel.

### Output sample

```json
{
  "title": "Public transport infrastructure facilitated drone delivery",
  "snippet": "v) communicating, from the machine to the drone via a wired or wireless connection, the drone delivery route from the geographic location of the selected terminal to the drop-off destination ...",
  "assignee": "Ebay Inc.",
  "inventor": "Jonathan Gabbai",
  "publicationNumber": "US12045770B2",
  "priorityDate": "2015-07-08",
  "filingDate": "2023-05-17",
  "publicationDate": "2024-07-23",
  "grantDate": "2024-07-23",
  "language": "en",
  "link": "https://patents.google.com/patent/US12045770B2/en",
  "pdfUrl": "https://patentimages.storage.googleapis.com/66/61/95/c513c93fbf2355/US12045770.pdf",
  "thumbnailUrl": "https://patentimages.storage.googleapis.com/54/c3/d0/a9bd519b314227/US12045770-20240723-D00000.png",
  "figures": [
    {
      "imageUrl": "https://patentimages.storage.googleapis.com/e5/a0/e7/c12ed850c0acb2/US12045770-20240723-D00000.png",
      "thumbnailUrl": "https://patentimages.storage.googleapis.com/eb/12/4c/80da5ba0c384c5/US12045770-20240723-D00000.png"
    }
  ],
  "query": "drone delivery"
}
```

IP teams use it for freedom-to-operate sweeps. Competitive intel teams track what rivals file, by assignee. Analysts map technology trends by filing volume over time.

### FAQ

**Is this legal?** The actor only reads publicly visible patent records. Patents are public documents.

**Why is a field blank on some rows?** We return what Google Patents publishes and never guess. A pending application has no grant date, and some records carry no figure images.

**Can I monitor an assignee?** Yes, schedule a weekly run on assignee queries and webhook new filings anywhere.

**Can I use the API?** Yes, runs and results are fully accessible through the Apify API and all Apify integrations (Zapier, Make, Google Sheets, webhooks).

### More from CrustAPI

| Actor | What it does |
|---|---|
| Google Scholar Scraper | Papers with citation counts and PDFs |
| Google Maps Scraper | Every business in any area |
| Google Reviews Scraper | Full review history for any place |
| LinkedIn Company Scraper | Size, industry, HQ, employee count, numeric IDs |

Need higher volume or a direct API? See [crustapi.com](https://crustapi.com).

### Support and feedback

We ship improvements weekly, and user reports drive the roadmap. Something broken or missing?

- Open an issue on this actor's **Issues** tab in Apify Console
- Or email us at <support@crustapi.com>

***

*This actor is an independent tool built by CrustAPI. It is not affiliated with, endorsed by, or sponsored by Google LLC. Google Patents is a trademark of Google LLC, and all other trademarks belong to their owners.*

# Actor input Schema

## `queries` (type: `array`):

One Google Patents search per line, e.g. a technology, an assignee, or a publication number.

## `page` (type: `integer`):

Which page of results to fetch. Each page is up to 10 results, so page 2 gives you results 11 to 20.

## `maxResultsPerQuery` (type: `integer`):

Cap how many results each query returns. Each query returns up to 10.

## Actor input object example

```json
{
  "queries": [
    "battery cooling"
  ],
  "page": 1,
  "maxResultsPerQuery": 10
}
```

# Actor output Schema

## `results` (type: `string`):

One row per patent: title, abstract snippet, assignee, inventor, publication number, filing, priority and grant dates, plus a PDF link.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "queries": [
        "battery cooling"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("crustapi/google-patents-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "queries": ["battery cooling"] }

# Run the Actor and wait for it to finish
run = client.actor("crustapi/google-patents-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "queries": [
    "battery cooling"
  ]
}' |
apify call crustapi/google-patents-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,crustapi/google-patents-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/q5Wc5QFPz1q0kigL8/builds/EN9b3OUYPjLQKmVb8/openapi.json
