ParseForge Scrapers

USPTO Office Actions Scraper

parseforge/uspto-office-actions-scraper

Developer toolsAutomationOther

Scrapes USPTO patent office actions from the public PEDS API. Filter by Lucene query, examiner, art unit, application number, or filing date. Returns each action as a flat row with rejection type, mail date, and examiner details.

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

Overview

ParseForge Banner

โš–๏ธ USPTO Office Actions Scraper

๐Ÿš€ Export USPTO patent office actions in seconds. Search 19M+ examiner correspondence records by patent number, application number, examiner, art unit, filing date, or free-text query - no account required.

The USPTO Office Actions Scraper extracts examiner correspondence records from the United States Patent and Trademark Office public dataset API. Every record captures the full prosecution history document - invention title, filing and grant dates, examiner details, art unit classification, body text snippet, document code, and source system.

The dataset covers all patent office actions filed through the USPTO's OACS and OC systems, spanning utility patents, design patents, and continuation applications across all technology centers from 1700 (Chemical & Materials Engineering) to 3700 (Mechanical Engineering & Manufacturing).

Who uses this data?

Audience Use Case
Patent attorneys Monitor examiner patterns and art unit trends
IP researchers Analyze prosecution history statistics
Technology analysts Track innovation activity by workgroup and tech center
Legal tech companies Build prosecution analytics and examiner profiling tools
Competitive intelligence teams Monitor competitor patent prosecution activity
Academic researchers Study patent examination behavior at scale

๐Ÿ“‹ What the USPTO Office Actions Scraper does

  • Queries the USPTO DS API with full Lucene syntax support for flexible filtering
  • Filters by patent number, application number, examiner employee number, or date range
  • Returns structured records with invention title, classification codes, examination dates, and body text
  • Handles pagination automatically to retrieve up to 1,000,000 records per run
  • Cleans raw API responses - unwraps single-element arrays, strips null placeholder dates
  • Delivers results as CSV, Excel, JSON, or XML via Apify dataset export

๐Ÿ’ก Why it matters: The USPTO receives over 600,000 patent applications per year. Every office action represents a pivotal moment in prosecution. With 19M+ records available, this scraper gives IP professionals and researchers structured access to prosecution history at a scale impossible to achieve manually.

๐Ÿ“Š Data fields

Each record includes: applicationStatusNumber, applicationTypeCategory, bodyTextSnippet, examinerEmployeeNumber, filingDate, grantDate, groupArtUnitNumber, id, inventionTitle, legacyDocumentCodeIdentifier, nationalClass, nationalSubclass, patentApplicationNumber, patentNumber, results, scrapedAt, sourceSystemName, submissionDate, techCenter, workGroup. These field names come straight from the actor's dataset schema, so what you see here is what lands in your dataset.

โš ๏ธ Good to Know: the bodyTextSnippet field returns the first 500 characters of the office-action body. For the full text, follow the prosecution-history link in PAIR using the application number. Lucene field names are case-sensitive (e.g. inventionTitle, not inventiontitle).

๐Ÿš€ How to use

  1. Create a free Apify account - includes $5 free credit
  2. Open the USPTO Office Actions Scraper actor page
  3. Configure your search - set criteria, date filters, or leave defaults for recent records
  4. Set maxItems (10 for a quick preview, higher for bulk extraction)
  5. Click Run and wait for the dataset to populate
  6. Download your results as CSV, Excel, JSON, or XML

๐Ÿ”— Recommended Actors

Actor Description
FINRA BrokerCheck Scraper Extract broker and firm registration data from FINRA's public database
FAA Aircraft Registry Scraper Search the FAA civil aircraft registry by tail number, owner, or aircraft type
OurAirports Global Airport Database Scraper Export worldwide airport data including ICAO/IATA codes, coordinates, and runway details

๐Ÿ’ก Pro Tip: browse the complete ParseForge collection for more public-data scrapers covering government records, legal filings, aviation, maritime, and finance datasets.

Need help? Visit the Apify Discord community or open a support ticket.

Disclaimer: This Actor accesses publicly available data from the USPTO's open dataset API in compliance with its terms of service. Data is provided as-is for informational purposes. Verify all records with the official USPTO Patent Center before relying on them for legal or business decisions.

๐Ÿ†˜ Need Help?

If you hit a bug, have questions about setup, or need a scraper we haven't built yet, open our contact form or write to parseforge@protonmail.com. We also take on paid custom data projects.

For faster answers, join our Discord. It's the best place to get support and suggest new actors.

Input

FieldTypeWhat it doesDefault
maxItems integer How many office actions to collect per run. 10
criteria string Lucene-style query. Examples: '*:*' (all), 'inventionTitle:semiconductor', 'workGroup:1710', 'examinerEmployeeNumber:12345'. Use field:value syntax. Default '*:*' returns everything (newest first). *:*
patentNumber string Filter by granted patent number (e.g. '10000000'). Combines with the main query. not set
applicationNumber string Filter by patent application number (e.g. '14484000'). Combines with the main query. not set
examinerName string Filter by examiner employee number. Combines with the main query. not set
startDate string Earliest filing date in YYYY-MM-DD format. not set
endDate string Latest filing date in YYYY-MM-DD format. not set

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~uspto-office-actions-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 USPTO Office Actions Scraper on Apify All scrapers