Google Patent Details Scraper avatar

Google Patent Details Scraper

Pricing

from $1.99 / 1,000 saved patent rows

Go to Apify Store
Google Patent Details Scraper

Google Patent Details Scraper

Extract Google patent details from known publication numbers or URLs. Export metadata, claims, description and same-page family links.

Pricing

from $1.99 / 1,000 saved patent rows

Rating

0.0

(0)

Developer

Cliqto Media

Cliqto Media

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 days ago

Last modified

Share

Fetch Google patent details for publication numbers you already know. Get a title, dates, an abstract and source names. Choose full detail to add claims, description, citations and family links from the same public page.

Start with the patent number in the new Input form. Open the Dataset to check the result. Each run has a $0.0007 start charge at the recommended 512 MB memory. Saved rows cost $1.99 per 1,000, including partial rows. Missing pages and technical failures are explained in RUN_SUMMARY; they do not create paid patent rows.

Google Patent Details Scraper: enter a known publication number to get source-linked metadata, claims and family data

Contents

What it does

This Actor reads public Google Patents detail pages. It saves one row for each unique publication number. It works with known IDs and exact https://patents.google.com/patent/ URLs. US, EP and WO page formats have been checked with real publications.

It is a good fit for a list of known patents, a source-linked patent table, or a claims and description export. It does not find patents by keyword, resolve application numbers, walk citation graphs or fetch every member of a family. Search inputs are rejected. No login or proxy setup is needed. PDF and image files are never downloaded.

Fields can be missing or translated on Google Patents. Legal status and expiration dates are source values, not legal advice or a guarantee that a patent is valid. Verify important facts with the relevant patent office. This independent tool is not affiliated with or endorsed by Google LLC.

Quick start

  1. Open Input. A new form suggests US9014905B1 in publicationNumbers.
  2. Keep this number for a small first run. The form suggestion is not an API default.
  3. Click Start.
  4. Open Dataset and check publicationNumber, title and canonicalUrl.
  5. Open RUN_SUMMARY to check every input outcome.

The example returns the patent Cyclist hand signal detection by an autonomous vehicle, with publication date 2015-04-21. Choose detailLevel: "full" to collect its claims and description too.

Use cases

Your taskInputUseful fieldsNext step
Build a table from a known patent listpublicationNumberstitle, dates, assigneesExport the Dataset
Read claims and descriptiondetailLevel: "full"claims, description, truncationCheck the source page and text limits
Compare source family linksdetailLevel: "full"family, relatedApplicationsOpen each source link yourself

Input

At least one nonempty publicationNumbers or patentUrls list is needed. Each list may contain up to 100 entries; the whole run saves at most 100 unique publications. An empty API input {} is invalid and never adds the demo number for you.

FieldTypeRequiredRuntime default / form prefillValues and effect
publicationNumbersstring[]One of the two listsNo default; prefill ['US9014905B1']Known publication IDs, up to 40 characters each; example EP1000000A1
patentUrlsstring[]One of the two listsNoneExact HTTPS URLs on patents.google.com/patent/, without query or fragment
languagestringNoen; no prefillTwo lowercase letters; used for IDs and URLs without a language suffix
detailLevelstringNometadata; no prefillmetadata or full; full adds bounded text and same-page references
maxItemsintegerNo10; no prefill1–100; stops new unique inputs at this cap
includePdfLinkbooleanNofalse; no prefillReturn the source PDF link, if present; no file download

Publication numbers are uppercased and spaces are removed. Use a publication ID such as US9014905B1, not an application number such as US14/166,502. Unsafe URLs and malformed IDs are reported without fetching them.

When both lists are used, URL entries are processed first. Repeated normalized publication numbers are saved once; the first entry wins, including its language. A language suffix in a URL overrides language. At metadata level, full-detail fields stay null. includePdfLink works at either level.

Full-detail example

{
"publicationNumbers": ["US9014905B1"],
"detailLevel": "full",
"maxItems": 1,
"includePdfLink": true
}

For URLs, use this shape:

{
"patentUrls": ["https://patents.google.com/patent/EP1000000A1/en"],
"detailLevel": "full",
"maxItems": 1
}

Output

The default Dataset contains one JSON object per saved unique publication. All top-level fields below are present. null means unavailable or not requested; an empty list means no entries were extracted. Text is plain source text with whitespace joined; it is not an AI summary. Dates come from page markers, so a grant date can be null even for a granted patent.

FieldTypeMeaning and empty behavior
schemaVersionstring"1", output contract version
statusstringPATENT_SAVED or PARTIAL; partial means missing optional fields or a text/list limit
publicationNumberstringRequired publication identity, also the duplicate key
canonicalUrlstringRequired safe Google Patents detail link
applicationNumberstring/nullSource application number; not a supported lookup key
countryCode, kindCodestring/nullSource office and publication kind
title, abstractstring/nullBounded source text; a missing title prevents a saved row
inventorsstring[]Unique source names; empty when missing
assignees.original, assignees.currentstring[]Unique source names in each list
dates.priority, dates.filing, dates.publication, dates.grantstring/nullEach is YYYY-MM-DD or null
classifications.cpc, classifications.ipcstring[]Source codes; empty when none are extracted
legal.status, legal.expirationDatestring/nullSource status and date; not legal conclusions
legal.eventsobject[]Source events with nullable date, title, type, documentId, assignee, search, description strings
legal.disclaimer, disclaimerstringReminder to verify legal values with a patent office
claimsstring[]/nullFull-detail claim text in page order; null at metadata level, empty if absent
descriptionstring/nullFull-detail text; null when absent or metadata-only
citations.backward, citations.forwardobject[]Full-only patent references; citations is null at metadata level; non-patent literature is omitted
family.simpleFamilyIdstring/nullSame-page simple-family value, never a duplicate key; family may be null
family.membersobject[]Same-page representative publication links, not an exhaustive global family search
relatedApplicationsobject[]/nullFull-only related rows; nullable applicationNumber, publicationNumber, title, priorityDate, filingDate, sourceUrl strings
pdfUrlstring/nullOptional HTTPS source PDF link; never fetched
figureCountinteger/nullCount of recognized figure markers; no image download
detailLevelstringmetadata or full
source.host, source.path, source.languagestringSource location and selected language
source.transport, source.parserVersionstringdirect-http and the parser version
source.retrievedAtstringUTC retrieval time; not a source filing date
truncationobject[]field, reason strings and originalLength, keptLength integers; empty when no cap was hit
searchnullRetained compatibility field; always null

Each citation and family member has publicationNumber (string), plus nullable countryCode, kindCode, title, date and sourceUrl strings. These are links from the fetched page. The Actor does not visit them.

Output example

This trimmed object comes from the same US full-detail input above. It omits long text and source names from this document; the Dataset keeps the full bounded row.

{
"schemaVersion": "1",
"status": "PATENT_SAVED",
"publicationNumber": "US9014905B1",
"canonicalUrl": "https://patents.google.com/patent/US9014905B1/en",
"applicationNumber": "US14/166,502",
"title": "Cyclist hand signal detection by an autonomous vehicle",
"dates": {
"priority": "2014-01-28",
"filing": "2014-01-28",
"publication": "2015-04-21",
"grant": null
},
"family": {
"simpleFamilyId": "52822648",
"members": [{
"publicationNumber": "US9014905B1",
"countryCode": "US",
"kindCode": "B1",
"title": "Cyclist hand signal detection by an autonomous vehicle",
"date": "2014-01-28",
"sourceUrl": "https://patents.google.com/patent/US9014905B1/en"
}]
},
"detailLevel": "full",
"truncation": [],
"search": null
}

Results and run summary

SituationDatasetRUN_SUMMARY and action
Normal publicationOne rowPATENT_SAVED; check its source link
Missing optional data or capped textOne paid rowPARTIAL; inspect the input reason and truncation
Repeated IDNo extra rowDUPLICATE_INPUT; first entry wins
Missing pageNo rowNOT_FOUND; check the publication ID
Unsafe or malformed inputNo rowINVALID_INPUT; fix the value
Access denial or throttlingNo fake rowBLOCKED or RATE_LIMITED; wait, then try a small run
Network failure or changed pageNo fake rowTRANSIENT_ERROR, PARSER_DRIFT or TECHNICAL_ERROR; check summary and contact support
Input cap or deadline reachedCompleted rows remainTRUNCATED_BY_LIMIT or an explicit aborted outcome for remaining inputs

Open Output for Dataset and RUN_SUMMARY links. The summary is a JSON record in the default key-value store. It records each input, saved/partial/duplicate/missing/error counts, request bytes, retries, timing and row charges. Empty Dataset alone does not tell you whether pages were missing or access failed. A platform status of SUCCEEDED can still contain partial outcomes; always read the summary.

Pricing and limits

The applied price is $0.00199 per saved patent row. Both metadata and full detail use the same row event, patent-row-saved. Partial rows are paid rows. There is no additional charge for full detail or the optional PDF link. Platform usage is included; the Actor does not add it to the buyer's bill.

The platform automatically charges apify-actor-start at $0.0007. Up to 1 GB memory, it charges once; above that it charges once per GB (4 GB costs $0.0028 to start). A missing-page run or a run containing only invalid IDs has the start charge, but no row charge. Duplicate and skipped entries have no row charge. In a partially failed run, the start charge still applies and only saved rows produce row events. Keyword filters and unchanged-monitor runs are not supported.

Scenario at 512 MBSaved rowsRow chargeTotal with one start
One known patent1$0.00199$0.00269
Ten known unique patents10$0.01990$0.02060
One hundred unique patents100$0.19900$0.19970
Missing pages only0$0.00000$0.00070

Use the platform Maximum cost per run setting to cap all event charges, including the start. The maxItems input limits unique publications, not total dollars. A low platform cost cap can stop a run before all inputs finish.

Recommended memory is 512 MB (minimum 256 MB). Larger memory increases the number of start events.

Limits: 100 entries per input list, 100 saved rows per run, one source request at a time, 3–6 seconds between publications, up to 3 redirects and 2 retries for temporary failures. Each request, including its body, has a 20-second deadline and a 2 MiB HTML limit. Source work ends within 585 seconds; a shorter platform timeout stops it earlier and leaves time for the summary. A longer platform timeout does not increase these limits.

Text limits are 1,000 title characters, 20,000 abstract characters, 250,000 claim characters and 500,000 description characters. Claims and citation/family/event lists are limited to 500 entries. Caps are shown in truncation. Large or slow batches can finish partially; split them into smaller inputs. Availability and page layout can change.

API and export

Use the Apify run API with the same input JSON. The Actor ID is 20fpS7snbVJNCRK9I; the supported release route is latest. Keep your API token private. Read defaultDatasetId and defaultKeyValueStoreId from the completed run, then open the Dataset items and the RUN_SUMMARY record.

The Dataset can be exported as JSON or CSV through Apify. Use JSON when you need nested claims, citations or family data. The overview table shows key fields; the full JSON keeps all fields. You can configure a schedule in Apify for your own known patent list; every execution fetches the pages again and is billed as a separate run. The Actor has no change-only monitor.

Troubleshooting

No rows appear

Open RUN_SUMMARY. NOT_FOUND means the source returned a missing-page response. INVALID_INPUT means the value or settings were invalid. BLOCKED and RATE_LIMITED are access failures. They do not mean that a patent is absent. Check the same publication link in a browser, then retry a small run after waiting.

Claims or description are missing

Check that detailLevel is full. Some pages omit a section or expose less text in the selected language. Check status, input reasons and truncation. This tool cannot supply text that the source does not expose.

Fewer rows than input entries

Repeated IDs, invalid values, missing pages, maxItems, the platform cost limit or a deadline can reduce the count. The summary accounts for every input. Reduce the batch size if the run is slow. Do not retry repeatedly when the source blocks access.

FAQ

Does it search Google Patents?

No. Add known publication numbers or exact patent detail URLs. Keyword queries, application-number lookup and search filters are not supported.

Do I need Google credentials?

No. Only public detail pages are read. The Actor does not log in or solve access challenges.

Will I get every family member and citation?

Only the recognized entries on the fetched page, within list limits. There is no recursive lookup, family expansion or guarantee of exhaustive coverage. A simple-family ID groups related source records; each publication still has its own identity.

Is full text copied exactly?

The Actor extracts plain page text and joins whitespace. It preserves Unicode and source content within the stated caps. HTML tags are removed; claim arrays keep page order. It does not fetch PDFs, translate text itself or generate a summary.

Treat it as a source field. It is not legal advice, a validity judgment, an expiration guarantee or complete prior-art analysis.

Support

Open an issue on this Actor's Issues tab in Apify Store. Include the run ID, the affected publication number and the relevant RUN_SUMMARY reason. Send only the small public input needed to reproduce the issue. Never send API tokens, cookies, billing details or private documents.