{
 "endpoint": "/api/v1/patent/",
 "data_version": "20261027.2",
 "as_of": "2026-10-27",
 "routes": [
  "/api/v1/patent/",
  "/api/v1/patent/{pk}/"
 ],
 "aliases": [],
 "response_key": "patents",
 "default_f": [
  "patent_id",
  "patent_title",
  "patent_date"
 ],
 "default_s": [
  {
   "patent_id": "asc"
  }
 ],
 "default_o": {
  "pad_patent_id": false,
  "exclude_withdrawn": true
 },
 "sortable_fields": [
  "patent_id",
  "patent_type",
  "patent_date",
  "patent_year",
  "patent_cpc_current_group_average_patent_processing_days",
  "withdrawn",
  "patent_detail_desc_length",
  "patent_earliest_application_date",
  "patent_num_foreign_documents_cited",
  "patent_num_times_cited_by_us_patents",
  "patent_num_total_documents_cited",
  "patent_num_us_applications_cited",
  "patent_num_us_patents_cited",
  "patent_processing_days",
  "patent_term_extension",
  "patent_uspc_current_mainclass_average_patent_processing_days",
  "wipo_kind"
 ],
 "nested_groups": [
  "applicants",
  "application",
  "assignees",
  "attorneys",
  "botanic",
  "cpc_at_issue",
  "cpc_current",
  "examiners",
  "figures",
  "foreign_priority",
  "gov_interest_contract_award_numbers",
  "gov_interest_organizations",
  "granted_pregrant_crosswalk",
  "inventors",
  "ipcr",
  "pct_data",
  "us_related_documents",
  "us_term_of_grant",
  "uspc_at_issue",
  "wipo"
 ],
 "q_required": true,
 "detail_key": "patent_id",
 "in_this_build": true,
 "fields": [
  {
   "name": "patent_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "patent_title",
   "type": "string",
   "kind": "text"
  },
  {
   "name": "patent_type",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "patent_country",
   "type": "string",
   "kind": "returned, not searchable"
  },
  {
   "name": "patent_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "patent_year",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "patent_abstract",
   "type": "string",
   "kind": "text"
  },
  {
   "name": "patent_cpc_current_group_average_patent_processing_days",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "withdrawn",
   "type": "boolean",
   "kind": "boolean"
  },
  {
   "name": "patent_detail_desc_length",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "patent_earliest_application_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "patent_num_foreign_documents_cited",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "patent_num_times_cited_by_us_patents",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "patent_num_total_documents_cited",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "patent_num_us_applications_cited",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "patent_num_us_patents_cited",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "patent_processing_days",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "patent_term_extension",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "gov_interest_statement",
   "type": "string",
   "kind": "text"
  },
  {
   "name": "patent_uspc_current_mainclass_average_patent_processing_days",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "wipo_kind",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "application",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"application\") for every field of the group, or \"application.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "application.application_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "application.application_type",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "application.filing_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "application.series_code",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "application.rule_47_flag",
   "type": "boolean",
   "kind": "boolean"
  },
  {
   "name": "application.filing_type",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "applicants",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"applicants\") for every field of the group, or \"applicants.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "applicants.applicant_name_first",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "applicants.applicant_name_last",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "applicants.applicant_organization",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "applicants.applicant_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "applicants.applicant_designation",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "applicants.applicant_type",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "applicants.location_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "assignees",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"assignees\") for every field of the group, or \"assignees.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "assignees.assignee",
   "type": "string (URL)",
   "kind": "returned, not searchable",
   "note": "Link to the detail record: https://patentref.io/api/v1/assignee/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: none: the index has no search field for it, so a query on it matches nothing, as upstream; query the id field of the group instead. It comes back beside that id: f naming the id field or the whole group returns both, and f naming this link alone returns nothing."
  },
  {
   "name": "assignees.assignee_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "assignees.assignee_type",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "assignees.assignee_individual_name_first",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "assignees.assignee_individual_name_last",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "assignees.assignee_organization",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "assignees.assignee_location_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "assignees.assignee_city",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "assignees.assignee_state",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "assignees.assignee_country",
   "type": "string",
   "kind": "text with a keyword form",
   "note": "An ISO 3166-1 alpha-2 country code in capitals, as PatentsView gives it: the United Kingdom is \"GB\", and \"UK\" matches nothing."
  },
  {
   "name": "assignees.assignee_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "assignees.disambiguated",
   "type": "boolean",
   "kind": "boolean",
   "note": "PatentRef addition: false on rows of weekly grants that no PatentsView release covers yet (names as printed; the ids and what derives from them, such as the links, location ids and the inventor gender code, null); true on PatentsView rows. Present only when f names it (assignees.disambiguated), then on every row; a whole group carries the upstream fields only, so every row of a group has the same keys."
  },
  {
   "name": "assignees.raw_assignee_individual_name_first",
   "type": "string",
   "kind": "returned when f names it",
   "note": "PatentRef addition: the first name as printed on this patent's grant (PatentsView g_assignee_not_disambiguated, and the USPTO weekly grant full text for the weeks no PatentsView release covers yet), beside the disambiguated name, which is PatentsView's one label for a whole cluster of names. Present only when f names it (assignees.raw_assignee_individual_name_first), then on every row; null where the bulk data has none or the data in service predates it. A whole group carries the upstream fields only. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "assignees.raw_assignee_individual_name_last",
   "type": "string",
   "kind": "returned when f names it",
   "note": "PatentRef addition: the last name as printed on this patent's grant (PatentsView g_assignee_not_disambiguated, and the USPTO weekly grant full text for the weeks no PatentsView release covers yet), beside the disambiguated name, which is PatentsView's one label for a whole cluster of names. Present only when f names it (assignees.raw_assignee_individual_name_last), then on every row; null where the bulk data has none or the data in service predates it. A whole group carries the upstream fields only. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "assignees.raw_assignee_organization",
   "type": "string",
   "kind": "returned when f names it",
   "note": "PatentRef addition: the organization's name as printed on this patent's grant (PatentsView g_assignee_not_disambiguated, and the USPTO weekly grant full text for the weeks no PatentsView release covers yet), beside the disambiguated name, which is PatentsView's one label for a whole cluster of names. Present only when f names it (assignees.raw_assignee_organization), then on every row; null where the bulk data has none or the data in service predates it. A whole group carries the upstream fields only. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "attorneys",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"attorneys\") for every field of the group, or \"attorneys.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "attorneys.attorney_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "attorneys.attorney_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "attorneys.attorney_name_first",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "attorneys.attorney_name_last",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "attorneys.attorney_organization",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "attorneys.disambiguated",
   "type": "boolean",
   "kind": "boolean",
   "note": "PatentRef addition: false on rows of weekly grants that no PatentsView release covers yet (names as printed; the ids and what derives from them, such as the links, location ids and the inventor gender code, null); true on PatentsView rows. Present only when f names it (attorneys.disambiguated), then on every row; a whole group carries the upstream fields only, so every row of a group has the same keys."
  },
  {
   "name": "botanic",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"botanic\") for every field of the group, or \"botanic.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "botanic.latin_name",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "botanic.variety",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "cpc_at_issue",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"cpc_at_issue\") for every field of the group, or \"cpc_at_issue.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "cpc_at_issue.cpc_sequence",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "cpc_at_issue.cpc_section_id",
   "type": "string",
   "kind": "returned, not searchable"
  },
  {
   "name": "cpc_at_issue.cpc_class",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/cpc_class/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "cpc_at_issue.cpc_class_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "cpc_at_issue.cpc_subclass",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/cpc_subclass/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "cpc_at_issue.cpc_subclass_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "cpc_at_issue.cpc_group",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/cpc_group/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "cpc_at_issue.cpc_group_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "cpc_at_issue.patent_number",
   "type": "string",
   "kind": "returned, not searchable"
  },
  {
   "name": "cpc_current",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"cpc_current\") for every field of the group, or \"cpc_current.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "cpc_current.cpc_sequence",
   "type": "number",
   "kind": "number"
  },
  {
   "name": "cpc_current.cpc_section_id",
   "type": "string",
   "kind": "returned, not searchable"
  },
  {
   "name": "cpc_current.cpc_class",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/cpc_class/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "cpc_current.cpc_class_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "cpc_current.cpc_subclass",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/cpc_subclass/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "cpc_current.cpc_subclass_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "cpc_current.cpc_group",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/cpc_group/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "cpc_current.cpc_group_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "cpc_current.patent_number",
   "type": "string",
   "kind": "returned, not searchable"
  },
  {
   "name": "examiners",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"examiners\") for every field of the group, or \"examiners.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "examiners.examiner_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "examiners.examiner_first_name",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "examiners.examiner_last_name",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "examiners.examiner_role",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "examiners.art_group",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "foreign_priority",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"foreign_priority\") for every field of the group, or \"foreign_priority.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "foreign_priority.priority_claim_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "foreign_priority.priority_claim_kind",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "foreign_priority.foreign_application_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "foreign_priority.filing_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "foreign_priority.foreign_country_filed",
   "type": "string",
   "kind": "keyword",
   "note": "The two-letter office code printed on the grant: mostly the WIPO codes (GB, EP for the European Patent Office, WO for international applications), with \"UK\" on some older rows."
  },
  {
   "name": "figures",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"figures\") for every field of the group, or \"figures.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "figures.num_figures",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "figures.num_sheets",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "gov_interest_contract_award_numbers",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"gov_interest_contract_award_numbers\") for every field of the group, or \"gov_interest_contract_award_numbers.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "gov_interest_contract_award_numbers.award_number",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "gov_interest_organizations",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"gov_interest_organizations\") for every field of the group, or \"gov_interest_organizations.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "gov_interest_organizations.fedagency_name",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "gov_interest_organizations.level_one",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "gov_interest_organizations.level_two",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "gov_interest_organizations.level_three",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "granted_pregrant_crosswalk",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"granted_pregrant_crosswalk\") for every field of the group, or \"granted_pregrant_crosswalk.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "granted_pregrant_crosswalk.patent_id",
   "type": "string",
   "kind": "returned, not searchable"
  },
  {
   "name": "granted_pregrant_crosswalk.document_number",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "granted_pregrant_crosswalk.pgpubs_document_number",
   "type": "string",
   "kind": "returned, not searchable"
  },
  {
   "name": "granted_pregrant_crosswalk.application_number",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "inventors",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"inventors\") for every field of the group, or \"inventors.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "inventors.inventor",
   "type": "string (URL)",
   "kind": "returned, not searchable",
   "note": "Link to the detail record: https://patentref.io/api/v1/inventor/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: none: the index has no search field for it, so a query on it matches nothing, as upstream; query the id field of the group instead. It comes back beside that id: f naming the id field or the whole group returns both, and f naming this link alone returns nothing."
  },
  {
   "name": "inventors.inventor_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "inventors.inventor_name_first",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "inventors.inventor_name_last",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "inventors.inventor_gender_code",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "inventors.inventor_location_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "inventors.inventor_city",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "inventors.inventor_state",
   "type": "string",
   "kind": "text with a keyword form"
  },
  {
   "name": "inventors.inventor_country",
   "type": "string",
   "kind": "text with a keyword form",
   "note": "An ISO 3166-1 alpha-2 country code in capitals, as PatentsView gives it: the United Kingdom is \"GB\", and \"UK\" matches nothing."
  },
  {
   "name": "inventors.inventor_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "inventors.disambiguated",
   "type": "boolean",
   "kind": "boolean",
   "note": "PatentRef addition: false on rows of weekly grants that no PatentsView release covers yet (names as printed; the ids and what derives from them, such as the links, location ids and the inventor gender code, null); true on PatentsView rows. Present only when f names it (inventors.disambiguated), then on every row; a whole group carries the upstream fields only, so every row of a group has the same keys."
  },
  {
   "name": "ipcr",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"ipcr\") for every field of the group, or \"ipcr.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "ipcr.ipc_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "ipcr.ipc_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "ipcr.ipc_action_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "ipcr.ipc_section",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "ipcr.ipc_class",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "ipcr.ipc_subclass",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "ipcr.ipc_main_group",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "ipcr.ipc_subgroup",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "ipcr.ipc_symbol_position",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "ipcr.ipc_classification_data_source",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "ipcr.ipc_classification_value",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "pct_data",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"pct_data\") for every field of the group, or \"pct_data.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "pct_data.published_filed_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "pct_data.pct_102_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "pct_data.pct_371_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "pct_data.application_kind",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "pct_data.pct_doc_number",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "pct_data.pct_doc_type",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_related_documents",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"us_related_documents\") for every field of the group, or \"us_related_documents.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "us_related_documents.related_doc_type",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_related_documents.related_doc_kind",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_related_documents.related_doc_number",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_related_documents.published_country",
   "type": "string",
   "kind": "keyword",
   "note": "The two-letter office code printed on the grant: mostly the WIPO codes (GB, EP for the European Patent Office, WO for international applications), with \"UK\" on some older rows."
  },
  {
   "name": "us_related_documents.related_doc_published_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "us_related_documents.related_doc_status",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_related_documents.related_doc_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "us_related_documents.wipo_kind",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_term_of_grant",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"us_term_of_grant\") for every field of the group, or \"us_term_of_grant.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "us_term_of_grant.term_grant",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_term_of_grant.term_extension",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_term_of_grant.term_disclaimer",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "us_term_of_grant.disclaimer_date",
   "type": "string",
   "kind": "date"
  },
  {
   "name": "uspc_at_issue",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"uspc_at_issue\") for every field of the group, or \"uspc_at_issue.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "uspc_at_issue.uspc_mainclass",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/uspc_mainclass/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "uspc_at_issue.uspc_mainclass_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "uspc_at_issue.uspc_subclass",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/uspc_subclass/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "uspc_at_issue.uspc_subclass_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "uspc_at_issue.uspc_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "wipo",
   "type": "group (list of objects)",
   "kind": "",
   "note": "Nested group: name it in f (\"wipo\") for every field of the group, or \"wipo.<field>\" for one; query its fields in q with the same dotted names."
  },
  {
   "name": "wipo.wipo_field",
   "type": "string (URL)",
   "kind": "keyword",
   "note": "Link to the detail record: https://patentref.io/api/v1/wipo/<id>/, with a \"/\" in the id written \":\"; null when the id is null. Kind: keyword: in q this name matches the id behind the link (for example \"H01\" for cpc_current.cpc_class), not the URL."
  },
  {
   "name": "wipo.wipo_field_id",
   "type": "string",
   "kind": "keyword"
  },
  {
   "name": "wipo.wipo_sequence",
   "type": "integer",
   "kind": "number"
  },
  {
   "name": "lapse",
   "type": "group (list of objects)",
   "kind": "",
   "note": "PatentRef addition: expiry and maintenance-fee facts of the patent, one object in a list like every nested group. Returned only when f names it (\"lapse\" or \"lapse.<field>\"); not in the default fields. It cannot be used in q or s (400 ERR_Q: q gives the reason \"the 'lapse' group is returned with f only\", s \"Invalid field: lapse.<field>\"). Record facts with their basis and an as-of date, never a legal conclusion."
  },
  {
   "name": "lapse.expiry_status",
   "type": "string: active, expired_term, expired_fee_nonpayment, withdrawn, unknown",
   "kind": "returned when f names it",
   "note": "Status from the record facts: the term end computed from the dates, and the maintenance-fee events. A maintenance-fee lapse whose 6-month grace period ran out after the computed term end gives expired_term, not expired_fee_nonpayment, and the basis keeps fee_lapse:<YYYY-MM-DD>. Where the USPTO 35 USC 156 list gives an earlier term end than the record's dates and the record shows no terminal disclaimer, the later of the two is the computed term end for this test; if only one of the two has passed, the status is unknown, or expired_fee_nonpayment when the fee record shows an unreinstated lapse whose grace period ran out before the later date. Where the record contradicts the filing date of a parent the term could count from and PatentRef holds no other USPTO record that gives that date, there is no computed term end: the status is the one the record's dates give on the date the row gives, when that date is a possible filing date, and on every filing date the parent's number allows (from 1978-06-01 when the number names no possible year or a serial its office never reached in that year), and unknown when those give different statuses. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.expiry_date_estimated",
   "type": "string",
   "kind": "returned when f names it",
   "note": "End of the statutory term, computed (35 USC 154) from dates in the USPTO record; not a date the record prints. Utility and plant patents: 20 years from the filing date (for a national stage under 35 USC 371, its international filing date, 35 USC 363), or from the earliest filing date of a parent application the record lists (continuation, division or continuation-in-part, including a parent international application the record lists as a related publication; a provisional or foreign priority date does not count), plus the patent term adjustment. A parent's filing date that the record itself contradicts is not used: an international application dated outside the year its number names (PCT/CCYYYY/; PCT/CCYY/ names its year up to 2003, and a later number written that way is read as 20YY when the row's date falls in that year; a number written without one or both slashes, such as PCTGB9300583, is read as PCT/GB93/00583) or before 1978-06-01, or whose number names no possible filing year (including a later PCT/CCYY/ number dated outside 20YY), or a US application dated outside the years in which applications of its serial number's series were filed; PatentRef also does not use a US parent date before 1950. The filing date another USPTO record PatentRef holds gives for the same application counts instead (another row of the same record, the international filing date in the record of its national stage, or the filing date in the record of the patent granted on it); when none does and that parent could be the earliest, this field is null. Filed before 1995-06-08: 17 years from grant when that ends before 1995-06-08 or after the 20-year date, else the 20-year date (basis then names term_17y or term_20y, whichever applied). Design patents: 14 years from grant, 15 when filed on or after 2015-05-13. A dated terminal disclaimer ends the term at its date. A patent or reissue on the USPTO list of patent terms extended under 35 USC 156 takes the list's original expiration date plus the extension the list gives (basis pte_156:<days>); an extension only adds to the original term (35 USC 156(a)), so where the list's date is earlier than the term computed from the record and the record shows no terminal disclaimer, the two disagree, and when only one of the two dates has passed this field is null and the status is unknown, or expired_fee_nonpayment when the fee record shows an unreinstated lapse whose grace period ran out before the later date. Not counted: a terminal disclaimer that ties the term to another patent, an extension the list does not name (an interim extension, or one granted after the list's update date), and any change to the adjustment after grant. Null for a patent withdrawn from issue, for a reissue not on the list, and when the record lacks the dates. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.expiry_basis",
   "type": "array",
   "kind": "returned when f names it",
   "note": "Basis codes: term_20y, term_17y, term_14y, term_15y (the term rule that applied), pta_days:<N> (patent term adjustment), terminal_disclaimer, fee_lapse:<YYYY-MM-DD> (the date of the maintenance-fee record's expiry entry for non-payment), reinstated:<YYYY-MM-DD> (a later reinstatement, EXPX or PMFG in the fee record), pte_156:<N> (the patent is on the USPTO list of patent terms extended under 35 USC 156; N is the extension in days, added to the list's original expiration date). Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.reinstatement_possible",
   "type": ": True, False, unknown",
   "kind": "returned when f names it",
   "note": "37 CFR 1.378: false once the term has ended or nothing lapsed; \"unknown\" for an unreinstated fee lapse. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.fee_status",
   "type": "string",
   "kind": "returned when f names it",
   "note": "\"lapsed\" when the USPTO maintenance-fee record shows an expiry for non-payment with no later reinstatement; null otherwise. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.lapse_date",
   "type": "string",
   "kind": "returned when f names it",
   "note": "Date of the expiry entry (EXP.) in the maintenance-fee record. The patent expired at the end of the fee's 6-month grace period (35 USC 41(b)), which is this date or earlier. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.reinstated_date",
   "type": "string",
   "kind": "returned when f names it",
   "note": "Date of the last reinstatement event (EXPX or PMFG) in the fee record. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.prior",
   "type": "number",
   "kind": "returned when f names it",
   "note": "Lapse history-match score (sum of log2 lifts of the traits that fired); null until the scores are computed on the server. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.prior_pct",
   "type": "number",
   "kind": "returned when f names it",
   "note": "Percentile of prior among the expired patents that are still quiet (0 to 100); null until computed. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.fwd_early",
   "type": "integer",
   "kind": "returned when f names it",
   "note": "Direct forward citations within 10 years of grant: US utility patents citing it, in PatentsView and in the weekly grants added after it. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.fwd_late",
   "type": "integer",
   "kind": "returned when f names it",
   "note": "Direct forward citations 15 or more years after grant, counted as fwd_early is. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.sleeper_flag",
   "type": "boolean",
   "kind": "returned when f names it",
   "note": "Expired, and quiet: at most 5 forward citations and at most 1 recent one. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.as_of",
   "type": "string",
   "kind": "returned when f names it",
   "note": "As-of date of the data the record was computed from (the release date of the build). Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  },
  {
   "name": "lapse.data_version",
   "type": "string",
   "kind": "returned when f names it",
   "note": "data_version of the Lapse catalog the group was read from. Kind: f-only. Returned when f names it; q or s on it answers 400 ERR_Q."
  }
 ],
 "operation_id": "PatentList"
}
