openparser-sdk 1.0.0__tar.gz → 1.0.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (286) hide show
  1. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/PKG-INFO +32 -2
  2. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/README.md +30 -0
  3. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/pyproject.toml +1 -1
  4. openparser_sdk-1.0.2/src/openparser/_generated/api/jobs/complete_extraction_review.py +258 -0
  5. openparser_sdk-1.0.2/src/openparser/_generated/api/jobs/get_extraction_review.py +223 -0
  6. openparser_sdk-1.0.2/src/openparser/_generated/api/jobs/reopen_extraction_review.py +266 -0
  7. openparser_sdk-1.0.2/src/openparser/_generated/api/jobs/update_extraction_review.py +321 -0
  8. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/__init__.py +132 -0
  9. openparser_sdk-1.0.2/src/openparser/_generated/models/complete_extraction_review_request.py +79 -0
  10. openparser_sdk-1.0.2/src/openparser/_generated/models/complete_extraction_review_request_status.py +8 -0
  11. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_attempt.py +1 -2
  12. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_grounding_field.py +160 -0
  13. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_grounding_field_transform_claim.py +110 -0
  14. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_grounding_field_transform_claim_confidence.py +9 -0
  15. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_grounding_field_transform_claim_operation.py +14 -0
  16. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_grounding_field_transform_claim_parameters.py +78 -0
  17. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_pipeline.py +1 -2
  18. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review.py +311 -0
  19. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review_confirmation.py +76 -0
  20. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review_event_type_0.py +125 -0
  21. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review_event_type_1.py +98 -0
  22. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review_event_type_2.py +101 -0
  23. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review_event_type_2_type.py +8 -0
  24. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review_event_type_3.py +90 -0
  25. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review_retraction.py +59 -0
  26. openparser_sdk-1.0.2/src/openparser/_generated/models/extraction_review_status.py +9 -0
  27. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_terminal_result.py +24 -2
  28. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job.py +49 -0
  29. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_summary.py +21 -0
  30. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_activity.py +227 -0
  31. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_activity_attributes.py +65 -0
  32. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_activity_parameters.py +65 -0
  33. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_activity_status.py +11 -0
  34. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_agent.py +92 -0
  35. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_agent_attributes.py +65 -0
  36. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_association.py +91 -0
  37. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_association_attributes.py +65 -0
  38. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_attribution.py +91 -0
  39. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_attribution_attributes.py +65 -0
  40. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_confidence_assertion.py +182 -0
  41. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_confidence_assertion_attributes.py +65 -0
  42. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_confidence_assertion_kind.py +9 -0
  43. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_confidence_assertion_sources_item.py +69 -0
  44. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_confidence_assertion_sources_item_type.py +9 -0
  45. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_confidence_scale.py +65 -0
  46. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_derivation.py +170 -0
  47. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_derivation_attributes.py +65 -0
  48. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_derivation_input.py +127 -0
  49. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_derivation_input_attributes.py +65 -0
  50. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_derivation_input_effect.py +8 -0
  51. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_digest.py +65 -0
  52. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_document.py +211 -0
  53. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_document_activities.py +84 -0
  54. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_document_agents.py +81 -0
  55. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_document_attributes.py +65 -0
  56. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_document_entities.py +88 -0
  57. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_entity.py +290 -0
  58. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_entity_approvals_item.py +104 -0
  59. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_entity_approvals_item_attributes.py +65 -0
  60. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_entity_attributes.py +65 -0
  61. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_entity_kind.py +11 -0
  62. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_entity_schema.py +65 -0
  63. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_implementation.py +110 -0
  64. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_implementation_attributes.py +65 -0
  65. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_locator.py +113 -0
  66. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_locator_attributes.py +65 -0
  67. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_relation.py +102 -0
  68. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_relation_attributes.py +65 -0
  69. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_relation_type.py +9 -0
  70. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_selector.py +90 -0
  71. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_selector_attributes.py +65 -0
  72. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_transformation.py +110 -0
  73. openparser_sdk-1.0.2/src/openparser/_generated/models/lineage_transformation_attributes.py +65 -0
  74. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_llm_model_catalog_entry.py +3 -2
  75. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_provider.py +24 -0
  76. openparser_sdk-1.0.2/src/openparser/_generated/models/ocr_model_catalog_entry_provider_logo_data.py +91 -0
  77. openparser_sdk-1.0.2/src/openparser/_generated/models/ocr_model_catalog_entry_provider_logo_data_paths_item.py +88 -0
  78. openparser_sdk-1.0.2/src/openparser/_generated/models/ocr_model_catalog_entry_provider_logo_data_paths_item_clip_rule.py +8 -0
  79. openparser_sdk-1.0.2/src/openparser/_generated/models/reopen_extraction_review_request.py +57 -0
  80. openparser_sdk-1.0.2/src/openparser/_generated/models/update_extraction_review_request.py +123 -0
  81. openparser_sdk-1.0.2/src/openparser/_generated/models/update_extraction_review_request_confirmations_item.py +75 -0
  82. openparser_sdk-1.0.2/src/openparser/_generated/models/update_extraction_review_request_retractions_item.py +57 -0
  83. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_telemetry.py +1 -1
  84. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/client.py +26 -0
  85. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/hosted_models.py +7 -7
  86. openparser_sdk-1.0.0/src/openparser/_generated/models/extraction_grounding_field.py +0 -102
  87. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/.gitignore +0 -0
  88. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/LICENSE +0 -0
  89. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/__init__.py +0 -0
  90. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_files.py +0 -0
  91. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/__init__.py +0 -0
  92. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/__init__.py +0 -0
  93. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/extract/__init__.py +0 -0
  94. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/extract/extract_async.py +0 -0
  95. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/extract/extract_batch.py +0 -0
  96. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/extract/extract_sync.py +0 -0
  97. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/extract/suggest_schema.py +0 -0
  98. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/files/__init__.py +0 -0
  99. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/files/create_file.py +0 -0
  100. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/files/delete_file.py +0 -0
  101. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/files/get_file.py +0 -0
  102. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/files/get_file_content.py +0 -0
  103. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/jobs/__init__.py +0 -0
  104. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/jobs/get_job.py +0 -0
  105. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/jobs/get_job_result.py +0 -0
  106. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/jobs/get_job_source.py +0 -0
  107. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/jobs/list_jobs.py +0 -0
  108. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/models/__init__.py +0 -0
  109. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/models/list_llm_models.py +0 -0
  110. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/models/list_ocr_models.py +0 -0
  111. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/parse/__init__.py +0 -0
  112. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/parse/parse_async.py +0 -0
  113. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/parse/parse_batch.py +0 -0
  114. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/parse/parse_sync.py +0 -0
  115. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/pipelines/__init__.py +0 -0
  116. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/pipelines/create_extraction_pipeline.py +0 -0
  117. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/pipelines/delete_extraction_pipeline.py +0 -0
  118. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/pipelines/get_extraction_pipeline.py +0 -0
  119. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/pipelines/list_extraction_pipelines.py +0 -0
  120. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/api/pipelines/update_extraction_pipeline.py +0 -0
  121. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/client.py +0 -0
  122. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/errors.py +0 -0
  123. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/asset_kind.py +0 -0
  124. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/barcode_element.py +0 -0
  125. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/batch_child_page.py +0 -0
  126. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/batch_child_summary.py +0 -0
  127. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/batch_job_accepted.py +0 -0
  128. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/batch_job_accepted_operation.py +0 -0
  129. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/batch_summary_counts.py +0 -0
  130. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/bounding_box.py +0 -0
  131. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/confidence.py +0 -0
  132. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/confidence_scope.py +0 -0
  133. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/confidence_source_scale.py +0 -0
  134. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/coordinate_unit.py +0 -0
  135. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/create_extraction_pipeline_request.py +0 -0
  136. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/create_extraction_pipeline_request_grounding.py +0 -0
  137. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/create_extraction_pipeline_request_llm_options.py +0 -0
  138. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/create_extraction_pipeline_request_llm_options_reasoning_effort_type_1.py +0 -0
  139. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/create_extraction_pipeline_request_ocr_options.py +0 -0
  140. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/create_extraction_pipeline_request_schema.py +0 -0
  141. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/create_file_body.py +0 -0
  142. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/delete_extraction_pipeline_response.py +0 -0
  143. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/delete_file_response.py +0 -0
  144. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/document_asset.py +0 -0
  145. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/document_element_kind.py +0 -0
  146. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/document_page.py +0 -0
  147. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/document_page_quality.py +0 -0
  148. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/document_page_quality_defects_item.py +0 -0
  149. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/document_page_quality_metrics_item.py +0 -0
  150. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/document_provenance.py +0 -0
  151. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/document_relation.py +0 -0
  152. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/error_body.py +0 -0
  153. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/error_body_details.py +0 -0
  154. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/error_response.py +0 -0
  155. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_async_body.py +0 -0
  156. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_body.py +0 -0
  157. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_item.py +0 -0
  158. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_item_grounding.py +0 -0
  159. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_item_llm_options.py +0 -0
  160. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_item_llm_options_reasoning_effort_type_1.py +0 -0
  161. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_item_ocr_options.py +0 -0
  162. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_item_schema.py +0 -0
  163. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_request.py +0 -0
  164. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_request_items_item.py +0 -0
  165. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_request_items_item_grounding.py +0 -0
  166. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_request_items_item_llm_options.py +0 -0
  167. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_request_items_item_llm_options_reasoning_effort_type_1.py +0 -0
  168. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_request_items_item_ocr_options.py +0 -0
  169. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_request_items_item_schema.py +0 -0
  170. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_batch_request_output_format.py +0 -0
  171. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_request.py +0 -0
  172. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_request_grounding.py +0 -0
  173. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_request_llm_options.py +0 -0
  174. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_request_llm_options_reasoning_effort_type_1.py +0 -0
  175. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_request_ocr_options.py +0 -0
  176. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_request_output_format.py +0 -0
  177. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_request_schema.py +0 -0
  178. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extract_sync_body.py +0 -0
  179. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_attempt_kind.py +0 -0
  180. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_attempt_status.py +0 -0
  181. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_citation.py +0 -0
  182. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_citation_granularity.py +0 -0
  183. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_grounding_mode.py +0 -0
  184. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_grounding_result.py +0 -0
  185. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_pipeline_list_response.py +0 -0
  186. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_pipeline_llm_options.py +0 -0
  187. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_pipeline_llm_options_reasoning_effort_type_0_type_1.py +0 -0
  188. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_pipeline_ocr_options.py +0 -0
  189. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_pipeline_schema.py +0 -0
  190. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_terminal_result_reasoning_effort_type_0.py +0 -0
  191. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/extraction_usage_totals.py +0 -0
  192. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/figure_element.py +0 -0
  193. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/formula_element.py +0 -0
  194. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/formula_format.py +0 -0
  195. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/geometry.py +0 -0
  196. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_accepted.py +0 -0
  197. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_accepted_operation.py +0 -0
  198. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_extraction_schema.py +0 -0
  199. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_failure.py +0 -0
  200. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_failure_details.py +0 -0
  201. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_list_response.py +0 -0
  202. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_operation.py +0 -0
  203. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_progress.py +0 -0
  204. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_related_extractions_item.py +0 -0
  205. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/job_status.py +0 -0
  206. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/json_schema_object.py +0 -0
  207. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/key_value_element.py +0 -0
  208. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/language.py +0 -0
  209. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/link_element.py +0 -0
  210. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/list_llm_models_mode.py +0 -0
  211. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_llm_model_catalog_entry_pricing.py +0 -0
  212. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_llm_model_catalog_entry_reasoning_type_0.py +0 -0
  213. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_llm_model_catalog_entry_reasoning_type_0_default_effort_type_0.py +0 -0
  214. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_llm_model_catalog_entry_reasoning_type_0_supported_efforts_type_0_item.py +0 -0
  215. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_llm_model_catalog_entry_recommendation.py +0 -0
  216. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_llm_models_response.py +0 -0
  217. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_llm_models_response_mode.py +0 -0
  218. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry.py +0 -0
  219. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_availability.py +0 -0
  220. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_benchmark_type_0.py +0 -0
  221. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_capabilities.py +0 -0
  222. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_capabilities_options.py +0 -0
  223. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_guidance.py +0 -0
  224. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_option_controls_item.py +0 -0
  225. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_option_controls_item_choices_item.py +0 -0
  226. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_option_controls_item_kind.py +0 -0
  227. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_option_defaults.py +0 -0
  228. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_pricing.py +0 -0
  229. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_pricing_configurations_item.py +0 -0
  230. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_model_catalog_entry_pricing_configurations_item_options.py +0 -0
  231. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_models_response.py +0 -0
  232. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/ocr_output_format.py +0 -0
  233. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/other_element.py +0 -0
  234. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_async_body.py +0 -0
  235. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_batch_body.py +0 -0
  236. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_batch_item.py +0 -0
  237. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_batch_item_ocr_options.py +0 -0
  238. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_batch_request.py +0 -0
  239. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_batch_request_items_item.py +0 -0
  240. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_batch_request_items_item_ocr_options.py +0 -0
  241. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_batch_request_output_format.py +0 -0
  242. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_request.py +0 -0
  243. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_request_ocr_options.py +0 -0
  244. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_request_output_format.py +0 -0
  245. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parse_sync_body.py +0 -0
  246. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/parsed_document.py +0 -0
  247. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/point.py +0 -0
  248. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/public_file.py +0 -0
  249. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/query_answer_element.py +0 -0
  250. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/raw_parse_result.py +0 -0
  251. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/raw_parse_result_profile.py +0 -0
  252. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/raw_parse_result_profile_options.py +0 -0
  253. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/raw_parse_result_result.py +0 -0
  254. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/relation_type.py +0 -0
  255. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/section_element.py +0 -0
  256. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/section_role.py +0 -0
  257. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/selection_mark_element.py +0 -0
  258. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/selection_mark_type.py +0 -0
  259. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/selection_state.py +0 -0
  260. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/signature_element.py +0 -0
  261. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/source_provenance.py +0 -0
  262. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/stamp_element.py +0 -0
  263. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/structured_value.py +0 -0
  264. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/suggest_schema_request.py +0 -0
  265. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/suggest_schema_response.py +0 -0
  266. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/suggest_schema_response_schema.py +0 -0
  267. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/table_cell.py +0 -0
  268. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/table_cell_role.py +0 -0
  269. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/table_element.py +0 -0
  270. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/text_annotation.py +0 -0
  271. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/text_break.py +0 -0
  272. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/text_element.py +0 -0
  273. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/text_role.py +0 -0
  274. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/text_span.py +0 -0
  275. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/text_style.py +0 -0
  276. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/text_style_font_size_unit.py +0 -0
  277. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/update_extraction_pipeline_request.py +0 -0
  278. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/update_extraction_pipeline_request_grounding.py +0 -0
  279. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/update_extraction_pipeline_request_llm_options_type_0.py +0 -0
  280. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/update_extraction_pipeline_request_llm_options_type_0_reasoning_effort_type_1.py +0 -0
  281. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/update_extraction_pipeline_request_ocr_options_type_0.py +0 -0
  282. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/models/update_extraction_pipeline_request_schema.py +0 -0
  283. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/py.typed +0 -0
  284. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/_generated/types.py +0 -0
  285. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/errors.py +0 -0
  286. {openparser_sdk-1.0.0 → openparser_sdk-1.0.2}/src/openparser/py.typed +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: openparser-sdk
3
- Version: 1.0.0
3
+ Version: 1.0.2
4
4
  Summary: Parse documents and extract structured data with Python
5
5
  Project-URL: Homepage, https://openparser.dev
6
6
  Project-URL: Documentation, https://docs.openparser.dev
@@ -121,6 +121,36 @@ suggested = client.extract.suggest_schema(
121
121
  )
122
122
  ```
123
123
 
124
+ ### Grounding and lineage
125
+
126
+ Set `"grounding": "field"` to receive verified citations and a `lineage@1`
127
+ derivation DAG:
128
+
129
+ ```python
130
+ extracted = client.extract.sync(
131
+ {
132
+ "ocr_model": "mistral-ocr-4",
133
+ "llm_model": "openai/gpt-5.6-terra",
134
+ "grounding": "field",
135
+ "schema": {
136
+ "type": "object",
137
+ "properties": {"total": {"type": "number"}},
138
+ },
139
+ },
140
+ file=Path("invoice.pdf"),
141
+ )
142
+
143
+ lineage = extracted.to_dict().get("lineage")
144
+ if lineage is not None:
145
+ print(lineage["outputs"])
146
+ ```
147
+
148
+ The graph connects each output value to its source evidence and the operations
149
+ that produced it. Evidence carries the closest recognition confidence supplied
150
+ by the selected OCR model. Applications can append normalization, calculation,
151
+ inference, and human-review activities without replacing the original machine
152
+ result.
153
+
124
154
  `OpenParserClient` is synchronous. Methods named `async_` submit durable jobs
125
155
  without waiting for processing to finish.
126
156
 
@@ -86,6 +86,36 @@ suggested = client.extract.suggest_schema(
86
86
  )
87
87
  ```
88
88
 
89
+ ### Grounding and lineage
90
+
91
+ Set `"grounding": "field"` to receive verified citations and a `lineage@1`
92
+ derivation DAG:
93
+
94
+ ```python
95
+ extracted = client.extract.sync(
96
+ {
97
+ "ocr_model": "mistral-ocr-4",
98
+ "llm_model": "openai/gpt-5.6-terra",
99
+ "grounding": "field",
100
+ "schema": {
101
+ "type": "object",
102
+ "properties": {"total": {"type": "number"}},
103
+ },
104
+ },
105
+ file=Path("invoice.pdf"),
106
+ )
107
+
108
+ lineage = extracted.to_dict().get("lineage")
109
+ if lineage is not None:
110
+ print(lineage["outputs"])
111
+ ```
112
+
113
+ The graph connects each output value to its source evidence and the operations
114
+ that produced it. Evidence carries the closest recognition confidence supplied
115
+ by the selected OCR model. Applications can append normalization, calculation,
116
+ inference, and human-review activities without replacing the original machine
117
+ result.
118
+
89
119
  `OpenParserClient` is synchronous. Methods named `async_` submit durable jobs
90
120
  without waiting for processing to finish.
91
121
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "openparser-sdk"
3
- version = "1.0.0"
3
+ version = "1.0.2"
4
4
  description = "Parse documents and extract structured data with Python"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -0,0 +1,258 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, cast
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...types import Response, UNSET
9
+ from ... import errors
10
+
11
+ from ...models.complete_extraction_review_request import CompleteExtractionReviewRequest
12
+ from ...models.error_response import ErrorResponse
13
+ from ...models.extraction_review import ExtractionReview
14
+ from typing import cast
15
+
16
+
17
+
18
+ def _get_kwargs(
19
+ id: str,
20
+ *,
21
+ body: CompleteExtractionReviewRequest,
22
+
23
+ ) -> dict[str, Any]:
24
+ headers: dict[str, Any] = {}
25
+
26
+
27
+
28
+
29
+
30
+
31
+ _kwargs: dict[str, Any] = {
32
+ "method": "post",
33
+ "url": "/jobs/{id}/review/complete".format(id=quote(str(id), safe=""),),
34
+ }
35
+
36
+ _kwargs["json"] = body.to_dict()
37
+
38
+
39
+ headers["Content-Type"] = "application/json"
40
+
41
+ _kwargs["headers"] = headers
42
+ return _kwargs
43
+
44
+
45
+
46
+ def _parse_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> ErrorResponse | ExtractionReview | None:
47
+ if response.status_code == 200:
48
+ response_200 = ExtractionReview.from_dict(response.json())
49
+
50
+
51
+
52
+ return response_200
53
+
54
+ if response.status_code == 400:
55
+ response_400 = ErrorResponse.from_dict(response.json())
56
+
57
+
58
+
59
+ return response_400
60
+
61
+ if response.status_code == 401:
62
+ response_401 = ErrorResponse.from_dict(response.json())
63
+
64
+
65
+
66
+ return response_401
67
+
68
+ if response.status_code == 403:
69
+ response_403 = ErrorResponse.from_dict(response.json())
70
+
71
+
72
+
73
+ return response_403
74
+
75
+ if response.status_code == 404:
76
+ response_404 = ErrorResponse.from_dict(response.json())
77
+
78
+
79
+
80
+ return response_404
81
+
82
+ if response.status_code == 409:
83
+ response_409 = ErrorResponse.from_dict(response.json())
84
+
85
+
86
+
87
+ return response_409
88
+
89
+ if response.status_code == 413:
90
+ response_413 = ErrorResponse.from_dict(response.json())
91
+
92
+
93
+
94
+ return response_413
95
+
96
+ if response.status_code == 429:
97
+ response_429 = ErrorResponse.from_dict(response.json())
98
+
99
+
100
+
101
+ return response_429
102
+
103
+ if client.raise_on_unexpected_status:
104
+ raise errors.UnexpectedStatus(response.status_code, response.content)
105
+ else:
106
+ return None
107
+
108
+
109
+ def _build_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> Response[ErrorResponse | ExtractionReview]:
110
+ return Response(
111
+ status_code=HTTPStatus(response.status_code),
112
+ content=response.content,
113
+ headers=response.headers,
114
+ parsed=_parse_response(client=client, response=response),
115
+ )
116
+
117
+
118
+ def sync_detailed(
119
+ id: str,
120
+ *,
121
+ client: AuthenticatedClient | Client,
122
+ body: CompleteExtractionReviewRequest,
123
+
124
+ ) -> Response[ErrorResponse | ExtractionReview]:
125
+ """ Approve or reject an extraction review
126
+
127
+ Finalize a pending review as approved or rejected. A completed review is frozen: field
128
+ confirmations are rejected until it is reopened. Uses the same optimistic version check as
129
+ field confirmations.
130
+
131
+ Args:
132
+ id (str): Prefixed public id for an OCR job (`opj_…`). Example: opj_V1StGXR8_Z5jdHi6B-myT.
133
+ body (CompleteExtractionReviewRequest):
134
+
135
+ Raises:
136
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
137
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
138
+
139
+ Returns:
140
+ Response[ErrorResponse | ExtractionReview]
141
+ """
142
+
143
+
144
+ kwargs = _get_kwargs(
145
+ id=id,
146
+ body=body,
147
+
148
+ )
149
+
150
+ response = client.get_httpx_client().request(
151
+ **kwargs,
152
+ )
153
+
154
+ return _build_response(client=client, response=response)
155
+
156
+ def sync(
157
+ id: str,
158
+ *,
159
+ client: AuthenticatedClient | Client,
160
+ body: CompleteExtractionReviewRequest,
161
+
162
+ ) -> ErrorResponse | ExtractionReview | None:
163
+ """ Approve or reject an extraction review
164
+
165
+ Finalize a pending review as approved or rejected. A completed review is frozen: field
166
+ confirmations are rejected until it is reopened. Uses the same optimistic version check as
167
+ field confirmations.
168
+
169
+ Args:
170
+ id (str): Prefixed public id for an OCR job (`opj_…`). Example: opj_V1StGXR8_Z5jdHi6B-myT.
171
+ body (CompleteExtractionReviewRequest):
172
+
173
+ Raises:
174
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
175
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
176
+
177
+ Returns:
178
+ ErrorResponse | ExtractionReview
179
+ """
180
+
181
+
182
+ return sync_detailed(
183
+ id=id,
184
+ client=client,
185
+ body=body,
186
+
187
+ ).parsed
188
+
189
+ async def asyncio_detailed(
190
+ id: str,
191
+ *,
192
+ client: AuthenticatedClient | Client,
193
+ body: CompleteExtractionReviewRequest,
194
+
195
+ ) -> Response[ErrorResponse | ExtractionReview]:
196
+ """ Approve or reject an extraction review
197
+
198
+ Finalize a pending review as approved or rejected. A completed review is frozen: field
199
+ confirmations are rejected until it is reopened. Uses the same optimistic version check as
200
+ field confirmations.
201
+
202
+ Args:
203
+ id (str): Prefixed public id for an OCR job (`opj_…`). Example: opj_V1StGXR8_Z5jdHi6B-myT.
204
+ body (CompleteExtractionReviewRequest):
205
+
206
+ Raises:
207
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
208
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
209
+
210
+ Returns:
211
+ Response[ErrorResponse | ExtractionReview]
212
+ """
213
+
214
+
215
+ kwargs = _get_kwargs(
216
+ id=id,
217
+ body=body,
218
+
219
+ )
220
+
221
+ response = await client.get_async_httpx_client().request(
222
+ **kwargs
223
+ )
224
+
225
+ return _build_response(client=client, response=response)
226
+
227
+ async def asyncio(
228
+ id: str,
229
+ *,
230
+ client: AuthenticatedClient | Client,
231
+ body: CompleteExtractionReviewRequest,
232
+
233
+ ) -> ErrorResponse | ExtractionReview | None:
234
+ """ Approve or reject an extraction review
235
+
236
+ Finalize a pending review as approved or rejected. A completed review is frozen: field
237
+ confirmations are rejected until it is reopened. Uses the same optimistic version check as
238
+ field confirmations.
239
+
240
+ Args:
241
+ id (str): Prefixed public id for an OCR job (`opj_…`). Example: opj_V1StGXR8_Z5jdHi6B-myT.
242
+ body (CompleteExtractionReviewRequest):
243
+
244
+ Raises:
245
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
246
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
247
+
248
+ Returns:
249
+ ErrorResponse | ExtractionReview
250
+ """
251
+
252
+
253
+ return (await asyncio_detailed(
254
+ id=id,
255
+ client=client,
256
+ body=body,
257
+
258
+ )).parsed
@@ -0,0 +1,223 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, cast
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...types import Response, UNSET
9
+ from ... import errors
10
+
11
+ from ...models.error_response import ErrorResponse
12
+ from ...models.extraction_review import ExtractionReview
13
+ from typing import cast
14
+
15
+
16
+
17
+ def _get_kwargs(
18
+ id: str,
19
+
20
+ ) -> dict[str, Any]:
21
+
22
+
23
+
24
+
25
+
26
+
27
+ _kwargs: dict[str, Any] = {
28
+ "method": "get",
29
+ "url": "/jobs/{id}/review".format(id=quote(str(id), safe=""),),
30
+ }
31
+
32
+
33
+ return _kwargs
34
+
35
+
36
+
37
+ def _parse_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> ErrorResponse | ExtractionReview | None:
38
+ if response.status_code == 200:
39
+ response_200 = ExtractionReview.from_dict(response.json())
40
+
41
+
42
+
43
+ return response_200
44
+
45
+ if response.status_code == 401:
46
+ response_401 = ErrorResponse.from_dict(response.json())
47
+
48
+
49
+
50
+ return response_401
51
+
52
+ if response.status_code == 403:
53
+ response_403 = ErrorResponse.from_dict(response.json())
54
+
55
+
56
+
57
+ return response_403
58
+
59
+ if response.status_code == 404:
60
+ response_404 = ErrorResponse.from_dict(response.json())
61
+
62
+
63
+
64
+ return response_404
65
+
66
+ if response.status_code == 409:
67
+ response_409 = ErrorResponse.from_dict(response.json())
68
+
69
+
70
+
71
+ return response_409
72
+
73
+ if response.status_code == 429:
74
+ response_429 = ErrorResponse.from_dict(response.json())
75
+
76
+
77
+
78
+ return response_429
79
+
80
+ if client.raise_on_unexpected_status:
81
+ raise errors.UnexpectedStatus(response.status_code, response.content)
82
+ else:
83
+ return None
84
+
85
+
86
+ def _build_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> Response[ErrorResponse | ExtractionReview]:
87
+ return Response(
88
+ status_code=HTTPStatus(response.status_code),
89
+ content=response.content,
90
+ headers=response.headers,
91
+ parsed=_parse_response(client=client, response=response),
92
+ )
93
+
94
+
95
+ def sync_detailed(
96
+ id: str,
97
+ *,
98
+ client: AuthenticatedClient | Client,
99
+
100
+ ) -> Response[ErrorResponse | ExtractionReview]:
101
+ """ Get an extraction review
102
+
103
+ Return the immutable machine output beside the current corrected output and append-only
104
+ review events. A succeeded extraction with no confirmations returns a synthesized pending review
105
+ at version 0. Cross-tenant and unknown jobs return `404`.
106
+
107
+ Args:
108
+ id (str): Prefixed public id for an OCR job (`opj_…`). Example: opj_V1StGXR8_Z5jdHi6B-myT.
109
+
110
+ Raises:
111
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
112
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
113
+
114
+ Returns:
115
+ Response[ErrorResponse | ExtractionReview]
116
+ """
117
+
118
+
119
+ kwargs = _get_kwargs(
120
+ id=id,
121
+
122
+ )
123
+
124
+ response = client.get_httpx_client().request(
125
+ **kwargs,
126
+ )
127
+
128
+ return _build_response(client=client, response=response)
129
+
130
+ def sync(
131
+ id: str,
132
+ *,
133
+ client: AuthenticatedClient | Client,
134
+
135
+ ) -> ErrorResponse | ExtractionReview | None:
136
+ """ Get an extraction review
137
+
138
+ Return the immutable machine output beside the current corrected output and append-only
139
+ review events. A succeeded extraction with no confirmations returns a synthesized pending review
140
+ at version 0. Cross-tenant and unknown jobs return `404`.
141
+
142
+ Args:
143
+ id (str): Prefixed public id for an OCR job (`opj_…`). Example: opj_V1StGXR8_Z5jdHi6B-myT.
144
+
145
+ Raises:
146
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
147
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
148
+
149
+ Returns:
150
+ ErrorResponse | ExtractionReview
151
+ """
152
+
153
+
154
+ return sync_detailed(
155
+ id=id,
156
+ client=client,
157
+
158
+ ).parsed
159
+
160
+ async def asyncio_detailed(
161
+ id: str,
162
+ *,
163
+ client: AuthenticatedClient | Client,
164
+
165
+ ) -> Response[ErrorResponse | ExtractionReview]:
166
+ """ Get an extraction review
167
+
168
+ Return the immutable machine output beside the current corrected output and append-only
169
+ review events. A succeeded extraction with no confirmations returns a synthesized pending review
170
+ at version 0. Cross-tenant and unknown jobs return `404`.
171
+
172
+ Args:
173
+ id (str): Prefixed public id for an OCR job (`opj_…`). Example: opj_V1StGXR8_Z5jdHi6B-myT.
174
+
175
+ Raises:
176
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
177
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
178
+
179
+ Returns:
180
+ Response[ErrorResponse | ExtractionReview]
181
+ """
182
+
183
+
184
+ kwargs = _get_kwargs(
185
+ id=id,
186
+
187
+ )
188
+
189
+ response = await client.get_async_httpx_client().request(
190
+ **kwargs
191
+ )
192
+
193
+ return _build_response(client=client, response=response)
194
+
195
+ async def asyncio(
196
+ id: str,
197
+ *,
198
+ client: AuthenticatedClient | Client,
199
+
200
+ ) -> ErrorResponse | ExtractionReview | None:
201
+ """ Get an extraction review
202
+
203
+ Return the immutable machine output beside the current corrected output and append-only
204
+ review events. A succeeded extraction with no confirmations returns a synthesized pending review
205
+ at version 0. Cross-tenant and unknown jobs return `404`.
206
+
207
+ Args:
208
+ id (str): Prefixed public id for an OCR job (`opj_…`). Example: opj_V1StGXR8_Z5jdHi6B-myT.
209
+
210
+ Raises:
211
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
212
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
213
+
214
+ Returns:
215
+ ErrorResponse | ExtractionReview
216
+ """
217
+
218
+
219
+ return (await asyncio_detailed(
220
+ id=id,
221
+ client=client,
222
+
223
+ )).parsed