odp_search_applications
Search USPTO patent applications by inventor, assignee, application number, patent number, or filing date range using Lucene query syntax.
Instructions
Search patent applications in USPTO Open Data Portal.
USE THIS TOOL WHEN: You need to search applications with filtering
by applicant metadata, dates, or other criteria not available in PPUBS.
PARAMETER MAPPING: Simple parameter names are automatically translated to ODP
Lucene query fields and combined with AND logic:
- inventor_name → applicationMetaData.firstInventorName
- assignee_name → applicationMetaData.firstApplicantName
- patent_number → applicationMetaData.patentNumber
- application_number → applicationNumberText
- filing_date_from/to → applicationMetaData.filingDate:[start TO end]
AUTO-QUOTING & WILDCARDS: Values are automatically quoted for exact phrase
matching. Use wildcards (*) for partial matches:
- "Smith" searches for exact phrase
- "Smit*" searches for anything starting with "Smit"
- "Micro*" matches "Microsoft", "Microsystems", etc.
ADVANCED QUERIES: Pass a Lucene-style string in `query` for OR logic or
raw field names:
- 'applicationMetaData.firstInventorName:Smith OR
applicationMetaData.firstInventorName:Jones' for multiple inventors
- Combine with other filters: query='machine learning' AND assignee_name='IBM'
generates: (machine learning) AND applicationMetaData.firstApplicantName:"IBM"
Args:
query: Free-text or Lucene-style query (e.g., 'neural network',
'applicationMetaData.firstInventorName:Smith OR Jones')
application_number: Filter by application number (exact match)
patent_number: Filter by patent number (exact match)
inventor_name: Filter by inventor name (matches first inventor; auto-quoted)
assignee_name: Filter by applicant/assignee name (matches first applicant; auto-quoted)
filing_date_from: Filing date range start (YYYY-MM-DD)
filing_date_to: Filing date range end (YYYY-MM-DD)
offset: Starting position (default: 0)
limit: Max results (default: 25)
fields: Response projection — list of ODP field names to return (e.g.,
['applicationNumberText', 'applicationMetaData.patentNumber',
'applicationMetaData.filingDate']). Reduces over-fetching of
large nested structures. Omit to return all fields (default).
Returns:
Normalized response with matching applications.Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | ||
| application_number | No | ||
| patent_number | No | ||
| inventor_name | No | ||
| assignee_name | No | ||
| filing_date_from | No | ||
| filing_date_to | No | ||
| offset | No | ||
| limit | No | ||
| fields | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |