Models

models.bulk_data - Data models for USPTO bulk data API

This module provides data models for the USPTO Open Data Portal (ODP) Bulk Data API.

class pyUSPTO.models.bulk_data.BulkDataProduct(product_identifier, product_description_text, product_title_text, product_frequency_text, product_label_array_text, product_dataset_array_text, product_dataset_category_array_text, product_from_date, product_to_date, product_total_file_size, product_file_total_quantity, last_modified_date_time, mime_type_identifier_array_text, product_file_bag=None, days_of_week_text=None)[source]

Bases: object

Represents a product in the bulk data API.

days_of_week_text: Optional[str] = None
classmethod from_dict(data)[source]

Create a BulkDataProduct object from a dictionary.

Return type:

BulkDataProduct

last_modified_date_time: str
mime_type_identifier_array_text: List[str]
product_dataset_array_text: List[str]
product_dataset_category_array_text: List[str]
product_description_text: str
product_file_bag: Optional[ProductFileBag] = None
product_file_total_quantity: int
product_frequency_text: str
product_from_date: str
product_identifier: str
product_label_array_text: List[str]
product_title_text: str
product_to_date: str
product_total_file_size: int
class pyUSPTO.models.bulk_data.BulkDataResponse(count, bulk_data_product_bag)[source]

Bases: object

Top-level response from the bulk data API.

bulk_data_product_bag: List[BulkDataProduct]
count: int
classmethod from_dict(data)[source]

Create a BulkDataResponse object from a dictionary.

Return type:

BulkDataResponse

to_dict()[source]

Convert the BulkDataResponse object to a dictionary.

Return type:

Dict[str, Any]

class pyUSPTO.models.bulk_data.FileData(file_name, file_size, file_data_from_date, file_data_to_date, file_type_text, file_release_date, file_download_uri=None, file_date=None, file_last_modified_date_time=None)[source]

Bases: object

Represents a file in the bulk data API.

file_data_from_date: str
file_data_to_date: str
file_date: Optional[str] = None
file_download_uri: Optional[str] = None
file_last_modified_date_time: Optional[str] = None
file_name: str
file_release_date: str
file_size: int
file_type_text: str
classmethod from_dict(data)[source]

Create a FileData object from a dictionary.

Return type:

FileData

class pyUSPTO.models.bulk_data.ProductFileBag(count, file_data_bag)[source]

Bases: object

Container for file data elements.

count: int
file_data_bag: List[FileData]
classmethod from_dict(data)[source]

Create a ProductFileBag object from a dictionary.

Return type:

ProductFileBag

models.patent_data - Data models for USPTO patent data API

This module provides data models for the USPTO Patent Data API.

class pyUSPTO.models.patent_data.Address(name_line_one_text=None, name_line_two_text=None, address_line_one_text=None, address_line_two_text=None, address_line_three_text=None, address_line_four_text=None, geographic_region_name=None, geographic_region_code=None, postal_code=None, city_name=None, country_code=None, country_name=None, postal_address_category=None, correspondent_name_text=None)[source]

Bases: object

Represents an address in the patent data API.

address_line_four_text: Optional[str] = None
address_line_one_text: Optional[str] = None
address_line_three_text: Optional[str] = None
address_line_two_text: Optional[str] = None
city_name: Optional[str] = None
correspondent_name_text: Optional[str] = None
country_code: Optional[str] = None
country_name: Optional[str] = None
classmethod from_dict(data)[source]

Create an Address object from a dictionary.

Return type:

Address

geographic_region_code: Optional[str] = None
geographic_region_name: Optional[str] = None
name_line_one_text: Optional[str] = None
name_line_two_text: Optional[str] = None
postal_address_category: Optional[str] = None
postal_code: Optional[str] = None
class pyUSPTO.models.patent_data.Applicant(first_name=None, middle_name=None, last_name=None, name_prefix=None, name_suffix=None, preferred_name=None, country_code=None, applicant_name_text=None, correspondence_address_bag=<factory>)[source]

Bases: Person

Represents an applicant in the patent data.

applicant_name_text: Optional[str] = None
correspondence_address_bag: List[Address]
classmethod from_dict(data)[source]

Create an Applicant object from a dictionary.

Return type:

Applicant

class pyUSPTO.models.patent_data.ApplicationMetaData(national_stage_indicator=None, entity_status_data=None, publication_date_bag=<factory>, publication_sequence_number_bag=<factory>, publication_category_bag=<factory>, docket_number=None, first_inventor_to_file_indicator=None, first_applicant_name=None, first_inventor_name=None, application_confirmation_number=None, application_status_date=None, application_status_description_text=None, filing_date=None, effective_filing_date=None, grant_date=None, group_art_unit_number=None, application_type_code=None, application_type_label_name=None, application_type_category=None, invention_title=None, patent_number=None, application_status_code=None, earliest_publication_number=None, earliest_publication_date=None, pct_publication_number=None, pct_publication_date=None, international_registration_publication_date=None, international_registration_number=None, examiner_name_text=None, class_field=None, subclass=None, uspc_symbol_text=None, customer_number=None, cpc_classification_bag=<factory>, applicant_bag=<factory>, inventor_bag=<factory>)[source]

Bases: object

Represents application metadata.

applicant_bag: List[Applicant]
application_confirmation_number: Optional[int] = None
application_status_code: Optional[int] = None
application_status_date: Optional[str] = None
application_status_description_text: Optional[str] = None
application_type_category: Optional[str] = None
application_type_code: Optional[str] = None
application_type_label_name: Optional[str] = None
class_field: Optional[str] = None
cpc_classification_bag: List[str]
customer_number: Optional[int] = None
docket_number: Optional[str] = None
earliest_publication_date: Optional[str] = None
earliest_publication_number: Optional[str] = None
effective_filing_date: Optional[str] = None
entity_status_data: Optional[EntityStatus] = None
examiner_name_text: Optional[str] = None
filing_date: Optional[str] = None
first_applicant_name: Optional[str] = None
first_inventor_name: Optional[str] = None
first_inventor_to_file_indicator: Optional[str] = None
classmethod from_dict(data)[source]

Create an ApplicationMetaData object from a dictionary.

Return type:

ApplicationMetaData

grant_date: Optional[str] = None
group_art_unit_number: Optional[str] = None
international_registration_number: Optional[str] = None
international_registration_publication_date: Optional[str] = None
invention_title: Optional[str] = None
inventor_bag: List[Inventor]
national_stage_indicator: Optional[bool] = None
patent_number: Optional[str] = None
pct_publication_date: Optional[str] = None
pct_publication_number: Optional[str] = None
publication_category_bag: List[str]
publication_date_bag: List[str]
publication_sequence_number_bag: List[str]
subclass: Optional[str] = None
uspc_symbol_text: Optional[str] = None
class pyUSPTO.models.patent_data.Assignee(assignee_name_text=None, assignee_address=None)[source]

Bases: object

Represents an assignee in an assignment.

assignee_address: Optional[Address] = None
assignee_name_text: Optional[str] = None
classmethod from_dict(data)[source]

Create an Assignee object from a dictionary.

Return type:

Assignee

class pyUSPTO.models.patent_data.Assignment(reel_number=None, frame_number=None, reel_and_frame_number=None, assignment_document_location_uri=None, assignment_received_date=None, assignment_recorded_date=None, assignment_mailed_date=None, conveyance_text=None, assignor_bag=<factory>, assignee_bag=<factory>, correspondence_address_bag=<factory>)[source]

Bases: object

Represents an assignment in the patent data.

assignee_bag: List[Assignee]
assignment_document_location_uri: Optional[str] = None
assignment_mailed_date: Optional[str] = None
assignment_received_date: Optional[str] = None
assignment_recorded_date: Optional[str] = None
assignor_bag: List[Assignor]
conveyance_text: Optional[str] = None
correspondence_address_bag: List[Address]
frame_number: Optional[int] = None
classmethod from_dict(data)[source]

Create an Assignment object from a dictionary.

Return type:

Assignment

reel_and_frame_number: Optional[str] = None
reel_number: Optional[int] = None
class pyUSPTO.models.patent_data.Assignor(assignor_name=None, execution_date=None)[source]

Bases: object

Represents an assignor in an assignment.

assignor_name: Optional[str] = None
execution_date: Optional[str] = None
classmethod from_dict(data)[source]

Create an Assignor object from a dictionary.

Return type:

Assignor

class pyUSPTO.models.patent_data.Attorney(first_name=None, middle_name=None, last_name=None, name_prefix=None, name_suffix=None, preferred_name=None, country_code=None, registration_number=None, active_indicator=None, registered_practitioner_category=None, attorney_address_bag=<factory>, telecommunication_address_bag=<factory>)[source]

Bases: Person

Represents an attorney in the patent data.

active_indicator: Optional[str] = None
attorney_address_bag: List[Address]
classmethod from_dict(data)[source]

Create an Attorney object from a dictionary.

Return type:

Attorney

registered_practitioner_category: Optional[str] = None
registration_number: Optional[str] = None
telecommunication_address_bag: List[Telecommunication]
class pyUSPTO.models.patent_data.ChildContinuity(first_inventor_to_file_indicator=None, application_number_text=None, filing_date=None, status_code=None, status_description_text=None, patent_number=None, claim_parentage_type_code=None, claim_parentage_type_code_description_text=None, child_application_status_code=None, parent_application_number_text=None, child_application_number_text=None, child_application_status_description_text=None, child_application_filing_date=None, child_patent_number=None)[source]

Bases: Continuity

Represents child continuity information.

child_application_filing_date: Optional[str] = None
child_application_number_text: Optional[str] = None
child_application_status_code: Optional[int] = None
child_application_status_description_text: Optional[str] = None
child_patent_number: Optional[str] = None
classmethod from_dict(data)[source]

Create a ChildContinuity object from a dictionary.

Return type:

ChildContinuity

parent_application_number_text: Optional[str] = None
class pyUSPTO.models.patent_data.Continuity(first_inventor_to_file_indicator=None, application_number_text=None, filing_date=None, status_code=None, status_description_text=None, patent_number=None, claim_parentage_type_code=None, claim_parentage_type_code_description_text=None)[source]

Bases: object

Base class for continuity information.

application_number_text: Optional[str] = None
claim_parentage_type_code: Optional[str] = None
claim_parentage_type_code_description_text: Optional[str] = None
filing_date: Optional[str] = None
first_inventor_to_file_indicator: Optional[bool] = None
patent_number: Optional[str] = None
status_code: Optional[int] = None
status_description_text: Optional[str] = None
class pyUSPTO.models.patent_data.CustomerNumberCorrespondence(patron_identifier=None, organization_standard_name=None, power_of_attorney_address_bag=<factory>, telecommunication_address_bag=<factory>)[source]

Bases: object

Represents customer number correspondence data.

classmethod from_dict(data)[source]

Create a CustomerNumberCorrespondence object from a dictionary.

Return type:

CustomerNumberCorrespondence

organization_standard_name: Optional[str] = None
patron_identifier: Optional[int] = None
power_of_attorney_address_bag: List[Address]
telecommunication_address_bag: List[Telecommunication]
class pyUSPTO.models.patent_data.DocumentMetaData(zip_file_name=None, product_identifier=None, file_location_uri=None, file_create_date_time=None, xml_file_name=None)[source]

Bases: object

Represents document metadata.

file_create_date_time: Optional[str] = None
file_location_uri: Optional[str] = None
classmethod from_dict(data)[source]

Create a DocumentMetaData object from a dictionary.

Return type:

DocumentMetaData

product_identifier: Optional[str] = None
xml_file_name: Optional[str] = None
zip_file_name: Optional[str] = None
class pyUSPTO.models.patent_data.EntityStatus(small_entity_status_indicator=None, business_entity_status_category=None)[source]

Bases: object

Represents entity status data.

business_entity_status_category: Optional[str] = None
classmethod from_dict(data)[source]

Create an EntityStatus object from a dictionary.

Return type:

EntityStatus

small_entity_status_indicator: Optional[bool] = None
class pyUSPTO.models.patent_data.Event(event_code=None, event_description_text=None, event_date=None)[source]

Bases: object

Represents an event in the patent data.

event_code: Optional[str] = None
event_date: Optional[str] = None
event_description_text: Optional[str] = None
classmethod from_dict(data)[source]

Create an Event object from a dictionary.

Return type:

Event

class pyUSPTO.models.patent_data.ForeignPriority(ip_office_name=None, filing_date=None, application_number_text=None)[source]

Bases: object

Represents foreign priority information.

application_number_text: Optional[str] = None
filing_date: Optional[str] = None
classmethod from_dict(data)[source]

Create a ForeignPriority object from a dictionary.

Return type:

ForeignPriority

ip_office_name: Optional[str] = None
class pyUSPTO.models.patent_data.Inventor(first_name=None, middle_name=None, last_name=None, name_prefix=None, name_suffix=None, preferred_name=None, country_code=None, inventor_name_text=None, correspondence_address_bag=<factory>)[source]

Bases: Person

Represents an inventor in the patent data.

correspondence_address_bag: List[Address]
classmethod from_dict(data)[source]

Create an Inventor object from a dictionary.

Return type:

Inventor

inventor_name_text: Optional[str] = None
class pyUSPTO.models.patent_data.ParentContinuity(first_inventor_to_file_indicator=None, application_number_text=None, filing_date=None, status_code=None, status_description_text=None, patent_number=None, claim_parentage_type_code=None, claim_parentage_type_code_description_text=None, parent_application_status_code=None, parent_patent_number=None, parent_application_status_description_text=None, parent_application_filing_date=None, parent_application_number_text=None, child_application_number_text=None)[source]

Bases: Continuity

Represents parent continuity information.

child_application_number_text: Optional[str] = None
classmethod from_dict(data)[source]

Create a ParentContinuity object from a dictionary.

Return type:

ParentContinuity

parent_application_filing_date: Optional[str] = None
parent_application_number_text: Optional[str] = None
parent_application_status_code: Optional[int] = None
parent_application_status_description_text: Optional[str] = None
parent_patent_number: Optional[str] = None
class pyUSPTO.models.patent_data.PatentDataResponse(count, patent_file_wrapper_data_bag)[source]

Bases: object

Top-level response from the patent data API.

count: int
classmethod from_dict(data)[source]

Create a PatentDataResponse object from a dictionary.

Return type:

PatentDataResponse

patent_file_wrapper_data_bag: List[PatentFileWrapper]
to_dict()[source]

Convert the PatentDataResponse object to a dictionary.

Return type:

Dict[str, Any]

class pyUSPTO.models.patent_data.PatentFileWrapper(application_number_text=None, application_meta_data=None, correspondence_address_bag=<factory>, assignment_bag=<factory>, record_attorney=None, foreign_priority_bag=<factory>, parent_continuity_bag=<factory>, child_continuity_bag=<factory>, patent_term_adjustment_data=None, event_data_bag=<factory>, pgpub_document_meta_data=None, grant_document_meta_data=None, last_ingestion_date_time=None)[source]

Bases: object

Represents a patent file wrapper.

application_meta_data: Optional[ApplicationMetaData] = None
application_number_text: Optional[str] = None
assignment_bag: List[Assignment]
child_continuity_bag: List[ChildContinuity]
correspondence_address_bag: List[Address]
event_data_bag: List[Event]
foreign_priority_bag: List[ForeignPriority]
classmethod from_dict(data)[source]

Create a PatentFileWrapper object from a dictionary.

Return type:

PatentFileWrapper

grant_document_meta_data: Optional[DocumentMetaData] = None
last_ingestion_date_time: Optional[str] = None
parent_continuity_bag: List[ParentContinuity]
patent_term_adjustment_data: Optional[PatentTermAdjustmentData] = None
pgpub_document_meta_data: Optional[DocumentMetaData] = None
record_attorney: Optional[RecordAttorney] = None
class pyUSPTO.models.patent_data.PatentTermAdjustmentData(a_delay_quantity=None, adjustment_total_quantity=None, applicant_day_delay_quantity=None, b_delay_quantity=None, c_delay_quantity=None, filing_date=None, grant_date=None, non_overlapping_day_quantity=None, overlapping_day_quantity=None, ip_office_day_delay_quantity=None, patent_term_adjustment_history_data_bag=<factory>)[source]

Bases: object

Represents patent term adjustment data.

a_delay_quantity: Optional[float] = None
adjustment_total_quantity: Optional[float] = None
applicant_day_delay_quantity: Optional[float] = None
b_delay_quantity: Optional[float] = None
c_delay_quantity: Optional[float] = None
filing_date: Optional[str] = None
classmethod from_dict(data)[source]

Create a PatentTermAdjustmentData object from a dictionary.

Return type:

PatentTermAdjustmentData

grant_date: Optional[str] = None
ip_office_day_delay_quantity: Optional[float] = None
non_overlapping_day_quantity: Optional[float] = None
overlapping_day_quantity: Optional[float] = None
patent_term_adjustment_history_data_bag: List[PatentTermAdjustmentHistoryData]
class pyUSPTO.models.patent_data.PatentTermAdjustmentHistoryData(event_date=None, applicant_day_delay_quantity=None, event_description_text=None, event_sequence_number=None, ip_office_day_delay_quantity=None, originating_event_sequence_number=None, pta_pte_code=None)[source]

Bases: object

Represents patent term adjustment history data.

applicant_day_delay_quantity: Optional[float] = None
event_date: Optional[str] = None
event_description_text: Optional[str] = None
event_sequence_number: Optional[float] = None
classmethod from_dict(data)[source]

Create a PatentTermAdjustmentHistoryData object from a dictionary.

Return type:

PatentTermAdjustmentHistoryData

ip_office_day_delay_quantity: Optional[float] = None
originating_event_sequence_number: Optional[float] = None
pta_pte_code: Optional[str] = None
class pyUSPTO.models.patent_data.Person(first_name=None, middle_name=None, last_name=None, name_prefix=None, name_suffix=None, preferred_name=None, country_code=None)[source]

Bases: object

Base class for person-related data.

country_code: Optional[str] = None
first_name: Optional[str] = None
classmethod from_dict(data)[source]

Create a Person object from a dictionary.

Return type:

Person

last_name: Optional[str] = None
middle_name: Optional[str] = None
name_prefix: Optional[str] = None
name_suffix: Optional[str] = None
preferred_name: Optional[str] = None
class pyUSPTO.models.patent_data.RecordAttorney(customer_number_correspondence_data=<factory>, power_of_attorney_bag=<factory>, attorney_bag=<factory>)[source]

Bases: object

Represents record attorney data.

attorney_bag: List[Attorney]
customer_number_correspondence_data: List[CustomerNumberCorrespondence]
classmethod from_dict(data)[source]

Create a RecordAttorney object from a dictionary.

Return type:

RecordAttorney

power_of_attorney_bag: List[Attorney]
class pyUSPTO.models.patent_data.Telecommunication(telecommunication_number=None, extension_number=None, telecom_type_code=None)[source]

Bases: object

Represents telecommunication information.

extension_number: Optional[str] = None
classmethod from_dict(data)[source]

Create a Telecommunication object from a dictionary.

Return type:

Telecommunication

telecom_type_code: Optional[str] = None
telecommunication_number: Optional[str] = None