# Google Patents Scraper — Claims, Inventors & Citations (`scrapepilot/google-patents-scraper----claims-inventors-citations`) Actor

Scrape complete patent data from Google Patents. Returns full claims text, abstract, inventors, applicants, IPC/CPC classifications, filing dates, legal status and citation counts. Search by patent ID, keyword, assignee or inventor. RESIDENTIAL proxy included.

- **URL**: https://apify.com/scrapepilot/google-patents-scraper----claims-inventors-citations.md
- **Developed by:** [Scrape Pilot](https://apify.com/scrapepilot) (community)
- **Categories:** Developer tools, Automation, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

$8.99/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

---
## 📜 Google Patents Scraper v1 — Full Patent Data & Search

**Extract complete patent data from Google Patents** — titles, abstracts, claims, inventors, applicants, legal status, classifications, citations, and more. No API key required. Supports both single‑patent lookup and bulk search.

---

### 💡 What is Google Patents Scraper?

Google Patents Scraper is a professional‑grade automation tool that extracts **real, publicly available patent data** from `patents.google.com`. Whether you need a single patent’s full specification or want to search by keyword, assignee, inventor, or country, this actor delivers structured JSON output – ready for analytics, dashboards, or IP research.

**No API key, no login, no hidden fees.** Just provide a patent ID or search query, and get back:

- Patent ID, title, abstract, claims, description
- Inventors, applicants, assignee, agent
- Filing, publication, and priority dates
- Legal status (active, pending, expired)
- IPC / CPC classifications
- Cited patents and citations count
- Patent family members
- Country of origin

---

### 📦 What Data Can You Extract?

| 🧩 Data Type             | 📋 Description |
|-------------------------|----------------|
| 🆔 Patent ID             | e.g., `US10000000B2`, `EP1234567A1` |
| 📝 Title                 | Full patent title |
| 📄 Abstract              | Short technical summary |
| ⚖️ Claims                | Full claims text + claim count |
| 📖 Description           | Detailed specification (when available) |
| 👥 Inventors             | List of inventor names |
| 🏢 Applicants / Assignee | Legal applicant(s) and primary assignee |
| 📅 Dates                 | Filing date, publication date, priority date |
| ⚖️ Legal Status          | Active, pending, expired, etc. |
| 🏷️ Classifications       | IPC and CPC codes |
| 🔗 Citations             | Cited patents count and citations count |
| 👨‍💼 Agent                | Patent attorney/agent (if listed) |
| 🌍 Country               | Patent‑issuing country (US, EP, WO, etc.) |
| 👨‍👩‍👧‍👦 Patent Family        | Related patents in the same family |
| 🔗 Source URL            | Direct link to Google Patents page |

All data is returned as clean JSON with consistent field names.

---

### ⚙️ Key Features

- **Two Modes** – Fetch by specific patent ID(s) **OR** search by keyword/assignee/inventor/country.
- **Full‑Text Extraction** – Retrieves claims, abstract, description (up to thousands of characters).
- **Structured Classifications** – IPC and CPC codes as arrays.
- **Citation Metrics** – Count of patents cited by this patent and number of times it has been cited.
- **Patent Family** – List of related patents from the same family.
- **Residential Proxy Required** – Google Patents blocks datacenter IPs. The actor is designed to work with Apify residential proxies.
- **Bulk Support** – Provide a list of patent IDs (one per line or JSON array) and scrape them all.
- **Demo Data in Search** – When search mode is used with `fetch_full_details=true`, the actor automatically fetches the complete detail page for each result.
- **Clean Error Handling** – Failed patents are marked with `Extraction_Status: Failed ❌` without breaking the run.

---

### 📥 Input Parameters

The actor accepts a JSON object with the following fields:

| Parameter            | Type                | Required | Default   | Description |
|----------------------|---------------------|----------|-----------|-------------|
| `patent_ids`         | array or string     | No       | –         | List of patent IDs (e.g., `["US10000000B2", "EP1234567A1"]`). Can be newline‑separated string. |
| `search_query`       | string              | No       | –         | Keyword or phrase (e.g., `"quantum computing"`). |
| `assignee`           | string              | No       | –         | Filter by assignee name (e.g., `"Raytheon"`). |
| `inventor`           | string              | No       | –         | Filter by inventor name. |
| `country`            | string              | No       | –         | Two‑letter country code (e.g., `US`, `EP`, `WO`). |
| `date_from`          | string              | No       | –         | Earliest publication date (YYYY-MM-DD). |
| `max_results`        | integer             | No       | `20`      | Maximum number of patents to return (per mode). |
| `fetch_full_details` | boolean             | No       | `true`    | For search mode, fetch the full detail page of each result. |
| `proxyConfiguration` | object              | No       | –         | Apify proxy configuration. **Residential proxies are required.** |

> **Note:** You must provide either `patent_ids` or at least one search parameter (`search_query`, `assignee`, `inventor`).

#### Example Input (Patent IDs)

```json
{
  "patent_ids": "US10000000B2\nUS9876543B1",
  "fetch_full_details": true,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
  }
}
````

#### Example Input (Search)

```json
{
  "search_query": "machine learning",
  "assignee": "Google",
  "country": "US",
  "max_results": 10,
  "fetch_full_details": true,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
  }
}
```

***

### 📤 Output Format

Each patent is returned as a JSON object. Fields may be omitted if not available on the page.

#### Common Fields (All Patents)

| Field                  | Type           | Description |
|------------------------|----------------|-------------|
| `Patent_ID`            | string         | Normalized patent ID (e.g., `US10000000B2`). |
| `Source_URL`           | string         | Direct link to Google Patents page. |
| `Extraction_Status`    | string         | `"Verified ✅"` or `"Failed ❌"`. |
| `Data_Grade`           | string         | Always `"ENTERPRISE"` for success. |
| `Timestamp`            | string         | ISO 8601 extraction timestamp. |
| `Title`                | string         | Full patent title. |
| `Abstract`             | string         | Abstract text. |
| `Claims`               | string         | Full claims text (may be truncated). |
| `Claims_Count`         | integer        | Number of claims (if parsed). |
| `Description`          | string         | Detailed description (when available). |
| `Publication_Date`     | string         | `YYYY-MM-DD`. |
| `Filing_Date`          | string         | `YYYY-MM-DD`. |
| `Priority_Date`        | string         | `YYYY-MM-DD`. |
| `Inventors`            | array\[string]  | List of inventor names. |
| `Applicants`           | array\[string]  | List of applicants/assignees. |
| `Assignee`             | string         | Primary assignee. |
| `Agent`                | string         | Patent attorney/agent. |
| `Legal_Status`         | string         | e.g., `"Active"`, `"Pending"`. |
| `IPC_Classification`   | array\[string]  | International Patent Classification codes. |
| `CPC_Classification`   | array\[string]  | Cooperative Patent Classification codes. |
| `Cited_Patents_Count`  | integer        | Number of patents cited by this patent. |
| `Cited_By_Count`       | integer        | Number of times this patent has been cited. |
| `Patent_Family`        | array\[string]  | Related patent IDs in the same family. |
| `Patent_Family_Count`  | integer        | Size of the patent family. |
| `Country_Code`         | string         | Two‑letter code (e.g., `US`). |
| `Country`              | string         | Full country name. |

#### Example Output (Successful)

```json
[
  {
    "Patent_ID": "US10000000B2",
    "Source_URL": "https://patents.google.com/patent/US10000000B2",
    "Extraction_Status": "Verified ✅",
    "Data_Grade": "ENTERPRISE",
    "Timestamp": "2026-04-06T14:51:18.480881Z",
    "Title": "US10000000B2 - Coherent LADAR using intra-pixel quadrature detection - Google Patents",
    "Abstract": "A frequency modulated (coherent) laser detection and ranging system includes a read-out integrated circuit...",
    "Claims": "Claims (20) What is claimed is: 1. A laser detection and ranging (LADAR) system...",
    "Claims_Count": null,
    "Publication_Date": "2018-06-19",
    "Filing_Date": "2015-03-10",
    "Priority_Date": "2015-03-10",
    "Inventors": ["Joseph Marron"],
    "Applicants": ["Raytheon Co"],
    "Assignee": "Raytheon Co",
    "Legal_Status": "Active",
    "Cited_Patents_Count": 0,
    "Cited_By_Count": 0,
    "Country_Code": "US",
    "Country": "United States"
  }
]
```

#### Example Output (Failed)

```json
[
  {
    "Patent_ID": "US9876543B1",
    "Extraction_Status": "Failed ❌",
    "Source_URL": "https://patents.google.com/patent/US9876543B1",
    "Timestamp": "2026-04-06T14:51:22.874258Z"
  }
]
```

***

### 🛠 How to Use on Apify

1. **Create a task** with this actor.
2. **Choose mode** – either provide `patent_ids` or fill in search parameters (`search_query`, `assignee`, etc.).
3. **Configure proxies** – **must** enable residential proxies (Google Patents blocks datacenter IPs).
4. **Set max results** – limit the number of patents to fetch.
5. **Run** – the actor will scrape data and push it to the Dataset.
6. **Export** – download results as JSON, CSV, or Excel.

#### Running via API

```bash
curl -X POST "https://api.apify.com/v2/acts/your-username~google-patents-scraper/runs" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{
    "patent_ids": ["US10000000B2", "EP1234567A1"],
    "proxyConfiguration": {
      "useApifyProxy": true,
      "apifyProxyGroups": ["RESIDENTIAL"]
    }
  }'
```

***

### 🎯 Use Cases

- **Patent Attorneys & IP Firms** – Quickly retrieve full patent specifications for prior art searches.
- **R\&D Departments** – Monitor competitors’ patents and identify white spaces.
- **Tech Scouts** – Discover new inventions in emerging fields (AI, biotech, clean energy).
- **Investment Analysts** – Evaluate a company’s patent portfolio strength.
- **Academic Research** – Build datasets for patent citation analysis or innovation studies.
- **Product Development** – Avoid infringement by reviewing existing patents.

***

### ❓ Frequently Asked Questions

#### Q1. Do I need a Google Patents API key?

No. This actor uses the public web interface of `patents.google.com`. No API key or registration required.

#### Q2. Why do I need residential proxies?

Google Patents blocks most datacenter IP addresses (AWS, Google Cloud, etc.). Residential proxies mimic real users and are essential to avoid `403` errors.

#### Q3. How accurate are the extracted claims and descriptions?

The actor extracts exactly what is displayed on the public Google Patents page. Claims are usually complete; descriptions may be truncated if very long (max 3000 characters).

#### Q4. Can I search by CPC or IPC classification?

Yes. You can include classification codes in your `search_query` (e.g., `cpc:G06N20/00`). Google Patents supports advanced search syntax.

#### Q5. What happens if a patent ID is invalid or not found?

The actor returns an object with `Extraction_Status: "Failed ❌"` and continues with the next ID.

#### Q6. How many patents can I scrape in one run?

There is no hard limit, but we recommend keeping `max_results` under 100 to avoid long run times. For bulk scraping, use multiple runs or increase delays.

#### Q7. Does the actor support downloading PDFs?

No. This actor extracts only structured metadata. For PDF download, you can use the `Source_URL` to access the official PDF from Google Patents.

#### Q8. What countries are supported?

Google Patents covers patents from the US (US), Europe (EP), World (WO), China (CN), Japan (JP), Korea (KR), Germany (DE), and many others. The actor returns the `Country_Code` and `Country` fields.

***

***

### 🔍 SEO Keywords

`Google Patents scraper`, `patent data extraction`, `USPTO patent search`, `patent claims extractor`, `IPC classification`, `CPC classification`, `patent citation analysis`, `prior art search`, `intellectual property scraper`, `Apify patent actor`, `patent family`, `patent legal status`

***

### 🔗 Related Actors

You might also find these useful:

- **[Grant & Foundation Opportunities Scraper
  ](https://apify.com/scrapepilot/grant-foundation-opportunities-scraper)** – Direct extraction from official USPTO database.
- **\[GitHub Scraper: Extract Trending Repos, Stars, Forks & Leads(https://apify.com/scrapepilot/github-scraper-extract-trending-repos-stars-forks-leads)** – Build citation networks from patent data.

***

# Actor input Schema

## `patent_ids` (type: `string`):

Patent IDs to scrape. One per line or comma-separated.

Examples:
US10000000B2
US9876543B1
EP1234567A1
WO2023123456A1
CN112345678A

## `search_query` (type: `string`):

Search Google Patents by keyword. E.g: 'machine learning image recognition', 'electric vehicle battery', 'mRNA vaccine'

## `assignee` (type: `string`):

Search patents by company/organization name. E.g: 'Apple', 'Google', 'Samsung', 'Microsoft'

## `inventor` (type: `string`):

Search patents by inventor name. E.g: 'Elon Musk', 'Jeff Dean'

## `country` (type: `string`):

Filter by country code. E.g: US, EP, CN, JP, KR, DE, WO

## `date_from` (type: `string`):

Only return patents published after this date

## `fetch_full_details` (type: `boolean`):

ON → fetch complete patent page (claims, description, classifications). OFF → faster, returns search result data only.

## `max_results` (type: `integer`):

Maximum number of patents to return

## `proxyConfiguration` (type: `object`):

RESIDENTIAL proxy required — Google blocks datacenter IPs.

## Actor input object example

```json
{
  "patent_ids": "US10000000B2\nUS9876543B1",
  "fetch_full_details": true,
  "max_results": 20,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# 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 = {
    "patent_ids": `US10000000B2
US9876543B1`,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapepilot/google-patents-scraper----claims-inventors-citations").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 = {
    "patent_ids": """US10000000B2
US9876543B1""",
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

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

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

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

```

## CLI example

```bash
echo '{
  "patent_ids": "US10000000B2\\nUS9876543B1",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call scrapepilot/google-patents-scraper----claims-inventors-citations --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=scrapepilot/google-patents-scraper----claims-inventors-citations",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Google Patents Scraper — Claims, Inventors & Citations",
        "description": "Scrape complete patent data from Google Patents. Returns full claims text, abstract, inventors, applicants, IPC/CPC classifications, filing dates, legal status and citation counts. Search by patent ID, keyword, assignee or inventor. RESIDENTIAL proxy included.",
        "version": "0.0",
        "x-build-id": "sBcUU140TjHqgbCGh"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapepilot~google-patents-scraper----claims-inventors-citations/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapepilot-google-patents-scraper----claims-inventors-citations",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/scrapepilot~google-patents-scraper----claims-inventors-citations/runs": {
            "post": {
                "operationId": "runs-sync-scrapepilot-google-patents-scraper----claims-inventors-citations",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/scrapepilot~google-patents-scraper----claims-inventors-citations/run-sync": {
            "post": {
                "operationId": "run-sync-scrapepilot-google-patents-scraper----claims-inventors-citations",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "patent_ids": {
                        "title": "Patent IDs",
                        "type": "string",
                        "description": "Patent IDs to scrape. One per line or comma-separated.\n\nExamples:\nUS10000000B2\nUS9876543B1\nEP1234567A1\nWO2023123456A1\nCN112345678A"
                    },
                    "search_query": {
                        "title": "Search Query",
                        "type": "string",
                        "description": "Search Google Patents by keyword. E.g: 'machine learning image recognition', 'electric vehicle battery', 'mRNA vaccine'"
                    },
                    "assignee": {
                        "title": "Assignee / Company Filter",
                        "type": "string",
                        "description": "Search patents by company/organization name. E.g: 'Apple', 'Google', 'Samsung', 'Microsoft'"
                    },
                    "inventor": {
                        "title": "Inventor Name Filter",
                        "type": "string",
                        "description": "Search patents by inventor name. E.g: 'Elon Musk', 'Jeff Dean'"
                    },
                    "country": {
                        "title": "Country Filter",
                        "type": "string",
                        "description": "Filter by country code. E.g: US, EP, CN, JP, KR, DE, WO"
                    },
                    "date_from": {
                        "title": "Date From (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only return patents published after this date"
                    },
                    "fetch_full_details": {
                        "title": "Fetch Full Details",
                        "type": "boolean",
                        "description": "ON → fetch complete patent page (claims, description, classifications). OFF → faster, returns search result data only.",
                        "default": true
                    },
                    "max_results": {
                        "title": "Max Patents",
                        "type": "integer",
                        "description": "Maximum number of patents to return",
                        "default": 20
                    },
                    "proxyConfiguration": {
                        "title": "Proxy (RESIDENTIAL Required)",
                        "type": "object",
                        "description": "RESIDENTIAL proxy required — Google blocks datacenter IPs."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
