USPTO Open Data Portal - File Wrapper#

Original API URL: https://beta-data.uspto.gov/home

Warning

The USPTO’s Open Data Portal is still considered a beta product. It should work well, but there may be errors in the data.

Also, please note that the ODP only covers applications filed on or after Jan 1, 2001.

Patent Client provides an interface to the USPTO’s Open Data Portal, which currently provides information on pending applications, similar to PEDS. The USPTO expects to retire PEDS in late 2024, after which it will be fully replaced by the Open Data Portal.

The Open Data Portal currently only supports accessing US Application information, not patents or published applications. Nonetheless, it provides a wealth of information about applications, including bibliographic information, file history documents, related assignments, and more.

Setup#

The Open Data Portal requires a USPTO-issued API key. This key can be obtained at My Api Key, and should be set as an environment variable PATENT_CLIENT_ODP_API_KEY. If this variable is not set, none of the API’s will work

Basic Retrieval#

Because ODP will eventually replace PEDS, the current ODP implementations of USApplication can be found by prefixing the USApplicationManager with “odp”. Here is an example of how to access the Open Data Portal:

from patent_client.odp import USApplicationBiblio

app = USApplicationBiblio.objects.get("16123456") # The application itself
app.biblio # The basic bibliographic information
app.assignments # The related assignments
app.documents # The related documents
app.term_adjustments # The related term adjustments
app.foreign_priority # The related foreign priority data
app.customer_number # Information about the customer number that
app.transactions # The related transaction data

There are two main objects that represent an Application, the USApplicationBiblio and the USApplication. The USApplicationBiblio object contains the basic bibliographic information, while the USApplication object contains the full application data, including all of the subfields except documents. To reduce the burden on the USPTO website, I recommend using the USApplicationBiblio object for most of your queries, and then use the related attributes to access the data you actually need.

Document Downloads#

To download file history information about an application, use the related .documents attribute. Each Document object has a download method, which can be used to download the document. For example:

>>> from patent_client.odp import USApplicationBiblio

>>> app = USApplicationBiblio.objects.get("16123456")
>>> app.documents[0].download() 

This will download the first document in the application’s file history, and save it to the current working directory with the naming format: {application_id} - {mail_date} - {document_code} - {document_code_description}.{type}.