odp_search_office_actions
Search examiner-written office actions across USPTO applications by full text, statute (101/102/103/112), art unit, document code, or mail date, and count results via facets.
Instructions
Search office actions across all applications by what the examiner wrote.
USE THIS TOOL WHEN: You need to find office actions across many
applications by their text ("means-plus-function", "Alice",
"inherent anticipation"), by statute (101/102/103/112), by art unit
or by date, or to count them. metadata.facets gives document-code and
rejection-type counts for the whole match set, so limit=1 answers
"how many 101 rejections did art unit 3689 issue in 2026" in one call.
For one application's history, odp_get_documents is cheaper.
IMPORTANT: text_preview holds only the first 500 characters. The API
searches the full text but returns no more. To read a hit, pass its
app_num and document_id to odp_download_document(format="text").
Coverage: office actions mailed from mid-2007 on (19.9M records).
Typed filters are AND-ed; pass a Lucene string in `query` for OR.
Args:
query: Lucene query; bare words search everything, or name a field
such as officeActionText:"printed matter"
app_num: Application number without slashes (e.g. "18402543")
patent_number: Patent number; resolved to its application first
document_code: Comma-separated codes: CTNF (non-final rejection),
CTFR (final rejection), NOA (allowance), CTRS (restriction),
CTAV (advisory), APEA (examiner's answer), PETDEC
rejection_type: Comma-separated statutes, all of which must apply:
101, 102, 103, 112, DoublePatent, Other
art_unit: Group art unit (e.g. "3689")
date_from: Earliest mail (submission) date, YYYY-MM-DD
date_to: Latest mail (submission) date, YYYY-MM-DD
record_id: officeActionRecordIdentifier from an earlier result
sort: "newest" (default) or "oldest" by mail date
offset: Starting position (default: 0)
limit: Max results (default: 25, at most 100)
Returns:
Office actions with record_id, app_num, document_code, description,
submission_date, art_unit, title, rejection_types, document_id and
text_preview, plus metadata.facets.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | newest | |
| limit | No | ||
| query | No | ||
| offset | No | ||
| app_num | No | ||
| date_to | No | ||
| art_unit | No | ||
| date_from | No | ||
| record_id | No | ||
| document_code | No | ||
| patent_number | No | ||
| rejection_type | No |