onfido-python 2.10.1__py3-none-any.whl → 3.1.0__py3-none-any.whl

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 (326) hide show
  1. onfido/__init__.py +311 -2
  2. onfido/api/__init__.py +5 -0
  3. onfido/api/default_api.py +17207 -0
  4. onfido/api_client.py +770 -0
  5. onfido/api_response.py +21 -0
  6. onfido/configuration.py +460 -0
  7. onfido/exceptions.py +184 -77
  8. onfido/models/__init__.py +291 -0
  9. onfido/models/address.py +169 -0
  10. onfido/models/address_builder.py +169 -0
  11. onfido/models/address_shared.py +169 -0
  12. onfido/models/addresses_list.py +108 -0
  13. onfido/models/applicant.py +162 -0
  14. onfido/models/applicant_builder.py +152 -0
  15. onfido/models/applicant_create.py +117 -0
  16. onfido/models/applicant_request.py +116 -0
  17. onfido/models/applicant_response.py +146 -0
  18. onfido/models/applicant_shared.py +115 -0
  19. onfido/models/applicant_update.py +123 -0
  20. onfido/models/applicant_updater.py +158 -0
  21. onfido/models/applicants_list.py +108 -0
  22. onfido/models/check.py +147 -0
  23. onfido/models/check_builder.py +127 -0
  24. onfido/models/check_request.py +119 -0
  25. onfido/models/check_response.py +137 -0
  26. onfido/models/check_shared.py +108 -0
  27. onfido/models/checks_list.py +108 -0
  28. onfido/models/complete_task_builder.py +104 -0
  29. onfido/models/complete_task_data_builder.py +143 -0
  30. onfido/models/consent_item.py +109 -0
  31. onfido/models/consents_builder.py +98 -0
  32. onfido/models/country_codes.py +285 -0
  33. onfido/models/device_intelligence_breakdown.py +110 -0
  34. onfido/models/device_intelligence_breakdown_breakdown.py +104 -0
  35. onfido/models/device_intelligence_breakdown_breakdown_device.py +104 -0
  36. onfido/models/device_intelligence_breakdown_breakdown_device_breakdown.py +114 -0
  37. onfido/models/device_intelligence_breakdown_properties.py +116 -0
  38. onfido/models/device_intelligence_breakdown_properties_device.py +189 -0
  39. onfido/models/device_intelligence_breakdown_properties_geolocation.py +105 -0
  40. onfido/models/device_intelligence_breakdown_properties_ip.py +106 -0
  41. onfido/models/device_intelligence_report.py +135 -0
  42. onfido/models/document.py +142 -0
  43. onfido/models/document_breakdown.py +152 -0
  44. onfido/models/document_breakdown_age_validation.py +106 -0
  45. onfido/models/document_breakdown_age_validation_breakdown.py +104 -0
  46. onfido/models/document_breakdown_compromised_document.py +106 -0
  47. onfido/models/document_breakdown_compromised_document_breakdown.py +109 -0
  48. onfido/models/document_breakdown_data_comparison.py +106 -0
  49. onfido/models/document_breakdown_data_comparison_breakdown.py +139 -0
  50. onfido/models/document_breakdown_data_comparison_breakdown_issuing_country.py +102 -0
  51. onfido/models/document_breakdown_data_consistency.py +106 -0
  52. onfido/models/document_breakdown_data_consistency_breakdown.py +149 -0
  53. onfido/models/document_breakdown_data_validation.py +106 -0
  54. onfido/models/document_breakdown_data_validation_breakdown.py +136 -0
  55. onfido/models/document_breakdown_data_validation_breakdown_document_expiration.py +102 -0
  56. onfido/models/document_breakdown_data_validation_breakdown_expiry_date.py +102 -0
  57. onfido/models/document_breakdown_image_integrity.py +106 -0
  58. onfido/models/document_breakdown_image_integrity_breakdown.py +122 -0
  59. onfido/models/document_breakdown_image_integrity_breakdown_colour_picture.py +102 -0
  60. onfido/models/document_breakdown_image_integrity_breakdown_conclusive_document_quality.py +106 -0
  61. onfido/models/document_breakdown_image_integrity_breakdown_image_quality.py +106 -0
  62. onfido/models/document_breakdown_image_integrity_breakdown_supported_document.py +102 -0
  63. onfido/models/document_breakdown_issuing_authority.py +106 -0
  64. onfido/models/document_breakdown_issuing_authority_breakdown.py +110 -0
  65. onfido/models/document_breakdown_issuing_authority_breakdown_nfc_active_authentication.py +102 -0
  66. onfido/models/document_breakdown_issuing_authority_breakdown_nfc_passive_authentication.py +102 -0
  67. onfido/models/document_breakdown_police_record.py +100 -0
  68. onfido/models/document_breakdown_visual_authenticity.py +106 -0
  69. onfido/models/document_breakdown_visual_authenticity_breakdown.py +146 -0
  70. onfido/models/document_breakdown_visual_authenticity_breakdown_digital_tampering.py +102 -0
  71. onfido/models/document_breakdown_visual_authenticity_breakdown_face_detection.py +102 -0
  72. onfido/models/document_breakdown_visual_authenticity_breakdown_fonts.py +102 -0
  73. onfido/models/document_breakdown_visual_authenticity_breakdown_original_document_present.py +106 -0
  74. onfido/models/document_breakdown_visual_authenticity_breakdown_other.py +102 -0
  75. onfido/models/document_breakdown_visual_authenticity_breakdown_picture_face_integrity.py +102 -0
  76. onfido/models/document_breakdown_visual_authenticity_breakdown_security_features.py +102 -0
  77. onfido/models/document_breakdown_visual_authenticity_breakdown_template.py +102 -0
  78. onfido/models/document_cdq_reasons.py +114 -0
  79. onfido/models/document_iq_reasons.py +118 -0
  80. onfido/models/document_odp_reasons.py +106 -0
  81. onfido/models/document_properties.py +191 -0
  82. onfido/models/document_properties_address_lines.py +110 -0
  83. onfido/models/document_properties_barcode_inner.py +135 -0
  84. onfido/models/document_properties_document_classification.py +104 -0
  85. onfido/models/document_properties_document_numbers_inner.py +102 -0
  86. onfido/models/document_properties_driving_licence_information.py +107 -0
  87. onfido/models/document_properties_extracted_data.py +141 -0
  88. onfido/models/document_properties_nfc.py +125 -0
  89. onfido/models/document_report.py +141 -0
  90. onfido/models/document_response.py +111 -0
  91. onfido/models/document_shared.py +129 -0
  92. onfido/models/document_types.py +60 -0
  93. onfido/models/document_video_report.py +141 -0
  94. onfido/models/document_video_with_address_information_report.py +141 -0
  95. onfido/models/document_with_address_information_report.py +141 -0
  96. onfido/models/document_with_driver_verification_report.py +141 -0
  97. onfido/models/document_with_driver_verification_report_all_of_properties.py +215 -0
  98. onfido/models/document_with_driver_verification_report_all_of_properties_all_of_passenger_vehicle.py +105 -0
  99. onfido/models/document_with_driver_verification_report_all_of_properties_all_of_vehicle_class_details_inner.py +107 -0
  100. onfido/models/document_with_driving_licence_information_report.py +141 -0
  101. onfido/models/documents_list.py +108 -0
  102. onfido/models/error.py +104 -0
  103. onfido/models/error1.py +106 -0
  104. onfido/models/error_properties.py +104 -0
  105. onfido/models/error_properties1.py +102 -0
  106. onfido/models/extract_request.py +100 -0
  107. onfido/models/extraction.py +112 -0
  108. onfido/models/extraction_document_classification.py +120 -0
  109. onfido/models/extraction_extracted_data.py +176 -0
  110. onfido/models/facial_similarity_motion_breakdown.py +116 -0
  111. onfido/models/facial_similarity_motion_breakdown_face_comparison.py +106 -0
  112. onfido/models/facial_similarity_motion_breakdown_image_integrity.py +106 -0
  113. onfido/models/facial_similarity_motion_breakdown_image_integrity_breakdown.py +110 -0
  114. onfido/models/facial_similarity_motion_breakdown_image_integrity_breakdown_face_detected.py +102 -0
  115. onfido/models/facial_similarity_motion_breakdown_image_integrity_breakdown_source_integrity.py +106 -0
  116. onfido/models/facial_similarity_motion_breakdown_visual_authenticity.py +106 -0
  117. onfido/models/facial_similarity_motion_breakdown_visual_authenticity_breakdown.py +110 -0
  118. onfido/models/facial_similarity_motion_breakdown_visual_authenticity_breakdown_spoofing_detection.py +106 -0
  119. onfido/models/facial_similarity_motion_properties.py +100 -0
  120. onfido/models/facial_similarity_motion_report.py +141 -0
  121. onfido/models/facial_similarity_photo_breakdown.py +116 -0
  122. onfido/models/facial_similarity_photo_breakdown_face_comparison.py +106 -0
  123. onfido/models/facial_similarity_photo_breakdown_face_comparison_breakdown.py +104 -0
  124. onfido/models/facial_similarity_photo_breakdown_face_comparison_breakdown_face_match.py +106 -0
  125. onfido/models/facial_similarity_photo_breakdown_face_comparison_breakdown_face_match_properties.py +102 -0
  126. onfido/models/facial_similarity_photo_breakdown_image_integrity.py +106 -0
  127. onfido/models/facial_similarity_photo_breakdown_image_integrity_breakdown.py +110 -0
  128. onfido/models/facial_similarity_photo_breakdown_image_integrity_breakdown_face_detected.py +102 -0
  129. onfido/models/facial_similarity_photo_breakdown_image_integrity_breakdown_source_integrity.py +106 -0
  130. onfido/models/facial_similarity_photo_breakdown_visual_authenticity.py +106 -0
  131. onfido/models/facial_similarity_photo_breakdown_visual_authenticity_breakdown.py +104 -0
  132. onfido/models/facial_similarity_photo_breakdown_visual_authenticity_breakdown_spoofing_detection.py +106 -0
  133. onfido/models/facial_similarity_photo_breakdown_visual_authenticity_breakdown_spoofing_detection_properties.py +100 -0
  134. onfido/models/facial_similarity_photo_fully_auto_breakdown.py +116 -0
  135. onfido/models/facial_similarity_photo_fully_auto_breakdown_image_integrity.py +106 -0
  136. onfido/models/facial_similarity_photo_fully_auto_breakdown_image_integrity_breakdown.py +110 -0
  137. onfido/models/facial_similarity_photo_fully_auto_breakdown_image_integrity_breakdown_source_integrity.py +106 -0
  138. onfido/models/facial_similarity_photo_fully_auto_properties.py +100 -0
  139. onfido/models/facial_similarity_photo_fully_auto_report.py +141 -0
  140. onfido/models/facial_similarity_photo_properties.py +100 -0
  141. onfido/models/facial_similarity_photo_report.py +141 -0
  142. onfido/models/facial_similarity_video_breakdown.py +116 -0
  143. onfido/models/facial_similarity_video_breakdown_face_comparison.py +106 -0
  144. onfido/models/facial_similarity_video_breakdown_image_integrity.py +106 -0
  145. onfido/models/facial_similarity_video_breakdown_image_integrity_breakdown.py +110 -0
  146. onfido/models/facial_similarity_video_breakdown_image_integrity_breakdown_face_detected.py +102 -0
  147. onfido/models/facial_similarity_video_breakdown_image_integrity_breakdown_source_integrity.py +106 -0
  148. onfido/models/facial_similarity_video_breakdown_visual_authenticity.py +106 -0
  149. onfido/models/facial_similarity_video_breakdown_visual_authenticity_breakdown.py +110 -0
  150. onfido/models/facial_similarity_video_breakdown_visual_authenticity_breakdown_liveness_detected.py +102 -0
  151. onfido/models/facial_similarity_video_breakdown_visual_authenticity_breakdown_spoofing_detection.py +106 -0
  152. onfido/models/facial_similarity_video_properties.py +100 -0
  153. onfido/models/facial_similarity_video_report.py +141 -0
  154. onfido/models/id_number.py +114 -0
  155. onfido/models/id_photo.py +113 -0
  156. onfido/models/id_photo_response.py +113 -0
  157. onfido/models/id_photos_list.py +108 -0
  158. onfido/models/identity_enhanced_breakdown.py +122 -0
  159. onfido/models/identity_enhanced_breakdown_address.py +106 -0
  160. onfido/models/identity_enhanced_breakdown_address_breakdown.py +116 -0
  161. onfido/models/identity_enhanced_breakdown_address_breakdown_credit_agencies.py +106 -0
  162. onfido/models/identity_enhanced_breakdown_address_breakdown_credit_agencies_properties.py +100 -0
  163. onfido/models/identity_enhanced_breakdown_address_breakdown_telephone_database.py +102 -0
  164. onfido/models/identity_enhanced_breakdown_address_breakdown_voting_register.py +102 -0
  165. onfido/models/identity_enhanced_breakdown_date_of_birth.py +106 -0
  166. onfido/models/identity_enhanced_breakdown_date_of_birth_breakdown.py +110 -0
  167. onfido/models/identity_enhanced_breakdown_date_of_birth_breakdown_credit_agencies.py +102 -0
  168. onfido/models/identity_enhanced_breakdown_date_of_birth_breakdown_voting_register.py +102 -0
  169. onfido/models/identity_enhanced_breakdown_mortality.py +100 -0
  170. onfido/models/identity_enhanced_breakdown_sources.py +106 -0
  171. onfido/models/identity_enhanced_breakdown_sources_breakdown.py +104 -0
  172. onfido/models/identity_enhanced_breakdown_sources_breakdown_total_sources.py +106 -0
  173. onfido/models/identity_enhanced_breakdown_sources_breakdown_total_sources_properties.py +100 -0
  174. onfido/models/identity_enhanced_properties.py +110 -0
  175. onfido/models/identity_enhanced_properties_matched_addresses_inner.py +102 -0
  176. onfido/models/identity_enhanced_report.py +141 -0
  177. onfido/models/india_pan_report.py +141 -0
  178. onfido/models/india_pan_report_all_of_breakdown.py +104 -0
  179. onfido/models/india_pan_report_all_of_breakdown_device.py +104 -0
  180. onfido/models/india_pan_report_all_of_breakdown_device_breakdown.py +109 -0
  181. onfido/models/india_pan_report_all_of_breakdown_device_breakdown_pan_valid.py +100 -0
  182. onfido/models/india_pan_report_all_of_properties.py +104 -0
  183. onfido/models/india_pan_report_all_of_properties_device.py +102 -0
  184. onfido/models/known_faces_breakdown.py +110 -0
  185. onfido/models/known_faces_breakdown_image_integrity.py +100 -0
  186. onfido/models/known_faces_breakdown_previously_seen_faces.py +100 -0
  187. onfido/models/known_faces_properties.py +108 -0
  188. onfido/models/known_faces_properties_matches_inner.py +108 -0
  189. onfido/models/known_faces_report.py +141 -0
  190. onfido/models/live_photo.py +113 -0
  191. onfido/models/live_photo_response.py +113 -0
  192. onfido/models/live_photos_list.py +108 -0
  193. onfido/models/live_video.py +115 -0
  194. onfido/models/live_videos_list.py +108 -0
  195. onfido/models/location.py +103 -0
  196. onfido/models/location_builder.py +103 -0
  197. onfido/models/location_shared.py +103 -0
  198. onfido/models/motion_capture.py +113 -0
  199. onfido/models/motion_captures_list.py +108 -0
  200. onfido/models/photo_auto_reasons.py +108 -0
  201. onfido/models/photo_reasons.py +108 -0
  202. onfido/models/proof_of_address_breakdown.py +116 -0
  203. onfido/models/proof_of_address_breakdown_data_comparison.py +106 -0
  204. onfido/models/proof_of_address_breakdown_data_comparison_breakdown.py +114 -0
  205. onfido/models/proof_of_address_breakdown_document_classification.py +106 -0
  206. onfido/models/proof_of_address_breakdown_document_classification_breakdown.py +104 -0
  207. onfido/models/proof_of_address_breakdown_image_integrity.py +106 -0
  208. onfido/models/proof_of_address_breakdown_image_integrity_breakdown.py +104 -0
  209. onfido/models/proof_of_address_properties.py +125 -0
  210. onfido/models/proof_of_address_report.py +141 -0
  211. onfido/models/repeat_attempts_list.py +117 -0
  212. onfido/models/repeat_attempts_list_repeat_attempts_inner.py +143 -0
  213. onfido/models/report.py +621 -0
  214. onfido/models/report_document.py +100 -0
  215. onfido/models/report_name.py +56 -0
  216. onfido/models/report_result.py +38 -0
  217. onfido/models/report_shared.py +129 -0
  218. onfido/models/report_status.py +40 -0
  219. onfido/models/report_sub_result.py +39 -0
  220. onfido/models/reports_list.py +108 -0
  221. onfido/models/results_feedback.py +116 -0
  222. onfido/models/sdk_token.py +100 -0
  223. onfido/models/sdk_token_builder.py +106 -0
  224. onfido/models/sdk_token_request.py +106 -0
  225. onfido/models/sdk_token_response.py +100 -0
  226. onfido/models/task.py +146 -0
  227. onfido/models/task_item.py +128 -0
  228. onfido/models/timeline_file_reference.py +102 -0
  229. onfido/models/us_driving_licence_breakdown.py +116 -0
  230. onfido/models/us_driving_licence_breakdown_address.py +106 -0
  231. onfido/models/us_driving_licence_breakdown_address_breakdown.py +129 -0
  232. onfido/models/us_driving_licence_breakdown_document.py +106 -0
  233. onfido/models/us_driving_licence_breakdown_document_breakdown.py +119 -0
  234. onfido/models/us_driving_licence_breakdown_personal.py +106 -0
  235. onfido/models/us_driving_licence_breakdown_personal_breakdown.py +164 -0
  236. onfido/models/us_driving_licence_builder.py +185 -0
  237. onfido/models/us_driving_licence_report.py +141 -0
  238. onfido/models/us_driving_licence_shared.py +185 -0
  239. onfido/models/video_reasons.py +106 -0
  240. onfido/models/watchlist_aml_breakdown.py +122 -0
  241. onfido/models/watchlist_aml_breakdown_adverse_media.py +100 -0
  242. onfido/models/watchlist_aml_breakdown_legal_and_regulatory_warnings.py +100 -0
  243. onfido/models/watchlist_aml_breakdown_politically_exposed_person.py +100 -0
  244. onfido/models/watchlist_aml_breakdown_sanction.py +100 -0
  245. onfido/models/watchlist_aml_properties.py +100 -0
  246. onfido/models/watchlist_aml_report.py +141 -0
  247. onfido/models/watchlist_enhanced_breakdown.py +122 -0
  248. onfido/models/watchlist_enhanced_properties.py +100 -0
  249. onfido/models/watchlist_enhanced_report.py +141 -0
  250. onfido/models/watchlist_monitor.py +120 -0
  251. onfido/models/watchlist_monitor_builder.py +111 -0
  252. onfido/models/watchlist_monitor_match.py +102 -0
  253. onfido/models/watchlist_monitor_matches_list.py +108 -0
  254. onfido/models/watchlist_monitor_matches_updater.py +102 -0
  255. onfido/models/watchlist_monitor_response.py +107 -0
  256. onfido/models/watchlist_monitor_shared.py +111 -0
  257. onfido/models/watchlist_monitors_list.py +108 -0
  258. onfido/models/watchlist_peps_only_report.py +141 -0
  259. onfido/models/watchlist_sanctions_only_report.py +141 -0
  260. onfido/models/watchlist_standard_breakdown.py +116 -0
  261. onfido/models/watchlist_standard_properties.py +100 -0
  262. onfido/models/watchlist_standard_report.py +141 -0
  263. onfido/models/webhook.py +115 -0
  264. onfido/models/webhook_builder.py +109 -0
  265. onfido/models/webhook_create.py +100 -0
  266. onfido/models/webhook_event.py +104 -0
  267. onfido/models/webhook_event_payload.py +111 -0
  268. onfido/models/webhook_event_payload_object.py +107 -0
  269. onfido/models/webhook_event_type.py +52 -0
  270. onfido/models/webhook_resend.py +108 -0
  271. onfido/models/webhook_response.py +106 -0
  272. onfido/models/webhook_shared.py +107 -0
  273. onfido/models/webhook_update.py +100 -0
  274. onfido/models/webhook_updater.py +109 -0
  275. onfido/models/webhooks_list.py +108 -0
  276. onfido/models/webhooks_resend_item.py +103 -0
  277. onfido/models/workflow_run.py +149 -0
  278. onfido/models/workflow_run_builder.py +123 -0
  279. onfido/models/workflow_run_request.py +100 -0
  280. onfido/models/workflow_run_response.py +126 -0
  281. onfido/models/workflow_run_response_error.py +102 -0
  282. onfido/models/workflow_run_shared.py +121 -0
  283. onfido/models/workflow_run_shared_link.py +119 -0
  284. onfido/py.typed +0 -0
  285. onfido/rest.py +258 -0
  286. onfido/webhook_event_verifier.py +7 -3
  287. {onfido_python-2.10.1.dist-info → onfido_python-3.1.0.dist-info}/LICENSE +1 -1
  288. onfido_python-3.1.0.dist-info/METADATA +18 -0
  289. onfido_python-3.1.0.dist-info/RECORD +291 -0
  290. {onfido_python-2.10.1.dist-info → onfido_python-3.1.0.dist-info}/WHEEL +2 -1
  291. onfido_python-3.1.0.dist-info/top_level.txt +1 -0
  292. onfido/aio_resource.py +0 -131
  293. onfido/mimetype.py +0 -5
  294. onfido/onfido.py +0 -71
  295. onfido/onfido_download.py +0 -11
  296. onfido/regions.py +0 -11
  297. onfido/resource.py +0 -88
  298. onfido/resources/address_picker.py +0 -6
  299. onfido/resources/applicants.py +0 -23
  300. onfido/resources/checks.py +0 -19
  301. onfido/resources/documents.py +0 -16
  302. onfido/resources/extraction.py +0 -6
  303. onfido/resources/live_photos.py +0 -17
  304. onfido/resources/live_videos.py +0 -16
  305. onfido/resources/motion_captures.py +0 -16
  306. onfido/resources/reports.py +0 -16
  307. onfido/resources/sdk_tokens.py +0 -5
  308. onfido/resources/watchlist_monitors.py +0 -16
  309. onfido/resources/webhooks.py +0 -18
  310. onfido/resources/workflow_runs.py +0 -17
  311. onfido/resources_aio/address_picker.py +0 -6
  312. onfido/resources_aio/applicants.py +0 -23
  313. onfido/resources_aio/checks.py +0 -19
  314. onfido/resources_aio/documents.py +0 -16
  315. onfido/resources_aio/extraction.py +0 -6
  316. onfido/resources_aio/live_photos.py +0 -17
  317. onfido/resources_aio/live_videos.py +0 -16
  318. onfido/resources_aio/motion_captures.py +0 -16
  319. onfido/resources_aio/reports.py +0 -16
  320. onfido/resources_aio/sdk_tokens.py +0 -6
  321. onfido/resources_aio/watchlist_monitors.py +0 -16
  322. onfido/resources_aio/webhooks.py +0 -18
  323. onfido/resources_aio/workflow_runs.py +0 -17
  324. onfido/utils.py +0 -22
  325. onfido_python-2.10.1.dist-info/METADATA +0 -181
  326. onfido_python-2.10.1.dist-info/RECORD +0 -40
@@ -0,0 +1,169 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Onfido API v3.6
5
+
6
+ The Onfido API (v3.6)
7
+
8
+ The version of the OpenAPI document: v3.6
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from typing_extensions import Annotated
23
+ from onfido.models.country_codes import CountryCodes
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class Address(BaseModel):
28
+ """
29
+ Address
30
+ """ # noqa: E501
31
+ flat_number: Optional[StrictStr] = Field(default=None, description="The flat number of this address")
32
+ building_number: Optional[StrictStr] = Field(default=None, description="The building number of this address")
33
+ building_name: Optional[StrictStr] = Field(default=None, description="The building name of this address")
34
+ street: Optional[StrictStr] = Field(default=None, description="The street of the applicant's address")
35
+ sub_street: Optional[StrictStr] = Field(default=None, description="The sub-street of the applicant's address")
36
+ town: Optional[StrictStr] = Field(default=None, description="The town of the applicant's address")
37
+ postcode: StrictStr = Field(description="The postcode or ZIP of the applicant's address")
38
+ country: CountryCodes = Field(description="The 3 character ISO country code of this address. For example, GBR is the country code for the United Kingdom")
39
+ state: Optional[StrictStr] = Field(default=None, description="The address state. US states must use the USPS abbreviation (see also ISO 3166-2:US), for example AK, CA, or TX.")
40
+ line1: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 1 of the applicant's address")
41
+ line2: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 2 of the applicant's address")
42
+ line3: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 3 of the applicant's address")
43
+ additional_properties: Dict[str, Any] = {}
44
+ __properties: ClassVar[List[str]] = ["flat_number", "building_number", "building_name", "street", "sub_street", "town", "postcode", "country", "state", "line1", "line2", "line3"]
45
+
46
+ @field_validator('line1')
47
+ def line1_validate_regular_expression(cls, value):
48
+ """Validates the regular expression"""
49
+ if value is None:
50
+ return value
51
+
52
+ if not re.match(r"^[^!$%^*=<>]*$", value):
53
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
54
+ return value
55
+
56
+ @field_validator('line2')
57
+ def line2_validate_regular_expression(cls, value):
58
+ """Validates the regular expression"""
59
+ if value is None:
60
+ return value
61
+
62
+ if not re.match(r"^[^!$%^*=<>]*$", value):
63
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
64
+ return value
65
+
66
+ @field_validator('line3')
67
+ def line3_validate_regular_expression(cls, value):
68
+ """Validates the regular expression"""
69
+ if value is None:
70
+ return value
71
+
72
+ if not re.match(r"^[^!$%^*=<>]*$", value):
73
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
74
+ return value
75
+
76
+ model_config = ConfigDict(
77
+ populate_by_name=True,
78
+ validate_assignment=True,
79
+ protected_namespaces=(),
80
+ )
81
+
82
+
83
+ def to_str(self) -> str:
84
+ """Returns the string representation of the model using alias"""
85
+ return pprint.pformat(self.model_dump(by_alias=True))
86
+
87
+ def to_json(self) -> str:
88
+ """Returns the JSON representation of the model using alias"""
89
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
90
+ return json.dumps(self.to_dict())
91
+
92
+ @classmethod
93
+ def from_json(cls, json_str: str) -> Optional[Self]:
94
+ """Create an instance of Address from a JSON string"""
95
+ return cls.from_dict(json.loads(json_str))
96
+
97
+ def to_dict(self) -> Dict[str, Any]:
98
+ """Return the dictionary representation of the model using alias.
99
+
100
+ This has the following differences from calling pydantic's
101
+ `self.model_dump(by_alias=True)`:
102
+
103
+ * `None` is only added to the output dict for nullable fields that
104
+ were set at model initialization. Other fields with value `None`
105
+ are ignored.
106
+ * Fields in `self.additional_properties` are added to the output dict.
107
+ """
108
+ excluded_fields: Set[str] = set([
109
+ "additional_properties",
110
+ ])
111
+
112
+ _dict = self.model_dump(
113
+ by_alias=True,
114
+ exclude=excluded_fields,
115
+ exclude_none=True,
116
+ )
117
+ # puts key-value pairs in additional_properties in the top level
118
+ if self.additional_properties is not None:
119
+ for _key, _value in self.additional_properties.items():
120
+ _dict[_key] = _value
121
+
122
+ # set to None if line1 (nullable) is None
123
+ # and model_fields_set contains the field
124
+ if self.line1 is None and "line1" in self.model_fields_set:
125
+ _dict['line1'] = None
126
+
127
+ # set to None if line2 (nullable) is None
128
+ # and model_fields_set contains the field
129
+ if self.line2 is None and "line2" in self.model_fields_set:
130
+ _dict['line2'] = None
131
+
132
+ # set to None if line3 (nullable) is None
133
+ # and model_fields_set contains the field
134
+ if self.line3 is None and "line3" in self.model_fields_set:
135
+ _dict['line3'] = None
136
+
137
+ return _dict
138
+
139
+ @classmethod
140
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
141
+ """Create an instance of Address from a dict"""
142
+ if obj is None:
143
+ return None
144
+
145
+ if not isinstance(obj, dict):
146
+ return cls.model_validate(obj)
147
+
148
+ _obj = cls.model_validate({
149
+ "flat_number": obj.get("flat_number"),
150
+ "building_number": obj.get("building_number"),
151
+ "building_name": obj.get("building_name"),
152
+ "street": obj.get("street"),
153
+ "sub_street": obj.get("sub_street"),
154
+ "town": obj.get("town"),
155
+ "postcode": obj.get("postcode"),
156
+ "country": obj.get("country"),
157
+ "state": obj.get("state"),
158
+ "line1": obj.get("line1"),
159
+ "line2": obj.get("line2"),
160
+ "line3": obj.get("line3")
161
+ })
162
+ # store additional fields in additional_properties
163
+ for _key in obj.keys():
164
+ if _key not in cls.__properties:
165
+ _obj.additional_properties[_key] = obj.get(_key)
166
+
167
+ return _obj
168
+
169
+
@@ -0,0 +1,169 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Onfido API v3.6
5
+
6
+ The Onfido API (v3.6)
7
+
8
+ The version of the OpenAPI document: v3.6
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from typing_extensions import Annotated
23
+ from onfido.models.country_codes import CountryCodes
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class AddressBuilder(BaseModel):
28
+ """
29
+ AddressBuilder
30
+ """ # noqa: E501
31
+ flat_number: Optional[StrictStr] = Field(default=None, description="The flat number of this address")
32
+ building_number: Optional[StrictStr] = Field(default=None, description="The building number of this address")
33
+ building_name: Optional[StrictStr] = Field(default=None, description="The building name of this address")
34
+ street: Optional[StrictStr] = Field(default=None, description="The street of the applicant's address")
35
+ sub_street: Optional[StrictStr] = Field(default=None, description="The sub-street of the applicant's address")
36
+ town: Optional[StrictStr] = Field(default=None, description="The town of the applicant's address")
37
+ postcode: StrictStr = Field(description="The postcode or ZIP of the applicant's address")
38
+ country: CountryCodes = Field(description="The 3 character ISO country code of this address. For example, GBR is the country code for the United Kingdom")
39
+ state: Optional[StrictStr] = Field(default=None, description="The address state. US states must use the USPS abbreviation (see also ISO 3166-2:US), for example AK, CA, or TX.")
40
+ line1: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 1 of the applicant's address")
41
+ line2: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 2 of the applicant's address")
42
+ line3: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 3 of the applicant's address")
43
+ additional_properties: Dict[str, Any] = {}
44
+ __properties: ClassVar[List[str]] = ["flat_number", "building_number", "building_name", "street", "sub_street", "town", "postcode", "country", "state", "line1", "line2", "line3"]
45
+
46
+ @field_validator('line1')
47
+ def line1_validate_regular_expression(cls, value):
48
+ """Validates the regular expression"""
49
+ if value is None:
50
+ return value
51
+
52
+ if not re.match(r"^[^!$%^*=<>]*$", value):
53
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
54
+ return value
55
+
56
+ @field_validator('line2')
57
+ def line2_validate_regular_expression(cls, value):
58
+ """Validates the regular expression"""
59
+ if value is None:
60
+ return value
61
+
62
+ if not re.match(r"^[^!$%^*=<>]*$", value):
63
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
64
+ return value
65
+
66
+ @field_validator('line3')
67
+ def line3_validate_regular_expression(cls, value):
68
+ """Validates the regular expression"""
69
+ if value is None:
70
+ return value
71
+
72
+ if not re.match(r"^[^!$%^*=<>]*$", value):
73
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
74
+ return value
75
+
76
+ model_config = ConfigDict(
77
+ populate_by_name=True,
78
+ validate_assignment=True,
79
+ protected_namespaces=(),
80
+ )
81
+
82
+
83
+ def to_str(self) -> str:
84
+ """Returns the string representation of the model using alias"""
85
+ return pprint.pformat(self.model_dump(by_alias=True))
86
+
87
+ def to_json(self) -> str:
88
+ """Returns the JSON representation of the model using alias"""
89
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
90
+ return json.dumps(self.to_dict())
91
+
92
+ @classmethod
93
+ def from_json(cls, json_str: str) -> Optional[Self]:
94
+ """Create an instance of AddressBuilder from a JSON string"""
95
+ return cls.from_dict(json.loads(json_str))
96
+
97
+ def to_dict(self) -> Dict[str, Any]:
98
+ """Return the dictionary representation of the model using alias.
99
+
100
+ This has the following differences from calling pydantic's
101
+ `self.model_dump(by_alias=True)`:
102
+
103
+ * `None` is only added to the output dict for nullable fields that
104
+ were set at model initialization. Other fields with value `None`
105
+ are ignored.
106
+ * Fields in `self.additional_properties` are added to the output dict.
107
+ """
108
+ excluded_fields: Set[str] = set([
109
+ "additional_properties",
110
+ ])
111
+
112
+ _dict = self.model_dump(
113
+ by_alias=True,
114
+ exclude=excluded_fields,
115
+ exclude_none=True,
116
+ )
117
+ # puts key-value pairs in additional_properties in the top level
118
+ if self.additional_properties is not None:
119
+ for _key, _value in self.additional_properties.items():
120
+ _dict[_key] = _value
121
+
122
+ # set to None if line1 (nullable) is None
123
+ # and model_fields_set contains the field
124
+ if self.line1 is None and "line1" in self.model_fields_set:
125
+ _dict['line1'] = None
126
+
127
+ # set to None if line2 (nullable) is None
128
+ # and model_fields_set contains the field
129
+ if self.line2 is None and "line2" in self.model_fields_set:
130
+ _dict['line2'] = None
131
+
132
+ # set to None if line3 (nullable) is None
133
+ # and model_fields_set contains the field
134
+ if self.line3 is None and "line3" in self.model_fields_set:
135
+ _dict['line3'] = None
136
+
137
+ return _dict
138
+
139
+ @classmethod
140
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
141
+ """Create an instance of AddressBuilder from a dict"""
142
+ if obj is None:
143
+ return None
144
+
145
+ if not isinstance(obj, dict):
146
+ return cls.model_validate(obj)
147
+
148
+ _obj = cls.model_validate({
149
+ "flat_number": obj.get("flat_number"),
150
+ "building_number": obj.get("building_number"),
151
+ "building_name": obj.get("building_name"),
152
+ "street": obj.get("street"),
153
+ "sub_street": obj.get("sub_street"),
154
+ "town": obj.get("town"),
155
+ "postcode": obj.get("postcode"),
156
+ "country": obj.get("country"),
157
+ "state": obj.get("state"),
158
+ "line1": obj.get("line1"),
159
+ "line2": obj.get("line2"),
160
+ "line3": obj.get("line3")
161
+ })
162
+ # store additional fields in additional_properties
163
+ for _key in obj.keys():
164
+ if _key not in cls.__properties:
165
+ _obj.additional_properties[_key] = obj.get(_key)
166
+
167
+ return _obj
168
+
169
+
@@ -0,0 +1,169 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Onfido API v3.6
5
+
6
+ The Onfido API (v3.6)
7
+
8
+ The version of the OpenAPI document: v3.6
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from typing_extensions import Annotated
23
+ from onfido.models.country_codes import CountryCodes
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class AddressShared(BaseModel):
28
+ """
29
+ AddressShared
30
+ """ # noqa: E501
31
+ flat_number: Optional[StrictStr] = Field(default=None, description="The flat number of this address")
32
+ building_number: Optional[StrictStr] = Field(default=None, description="The building number of this address")
33
+ building_name: Optional[StrictStr] = Field(default=None, description="The building name of this address")
34
+ street: Optional[StrictStr] = Field(default=None, description="The street of the applicant's address")
35
+ sub_street: Optional[StrictStr] = Field(default=None, description="The sub-street of the applicant's address")
36
+ town: Optional[StrictStr] = Field(default=None, description="The town of the applicant's address")
37
+ postcode: StrictStr = Field(description="The postcode or ZIP of the applicant's address")
38
+ country: CountryCodes = Field(description="The 3 character ISO country code of this address. For example, GBR is the country code for the United Kingdom")
39
+ state: Optional[StrictStr] = Field(default=None, description="The address state. US states must use the USPS abbreviation (see also ISO 3166-2:US), for example AK, CA, or TX.")
40
+ line1: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 1 of the applicant's address")
41
+ line2: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 2 of the applicant's address")
42
+ line3: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="Line 3 of the applicant's address")
43
+ additional_properties: Dict[str, Any] = {}
44
+ __properties: ClassVar[List[str]] = ["flat_number", "building_number", "building_name", "street", "sub_street", "town", "postcode", "country", "state", "line1", "line2", "line3"]
45
+
46
+ @field_validator('line1')
47
+ def line1_validate_regular_expression(cls, value):
48
+ """Validates the regular expression"""
49
+ if value is None:
50
+ return value
51
+
52
+ if not re.match(r"^[^!$%^*=<>]*$", value):
53
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
54
+ return value
55
+
56
+ @field_validator('line2')
57
+ def line2_validate_regular_expression(cls, value):
58
+ """Validates the regular expression"""
59
+ if value is None:
60
+ return value
61
+
62
+ if not re.match(r"^[^!$%^*=<>]*$", value):
63
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
64
+ return value
65
+
66
+ @field_validator('line3')
67
+ def line3_validate_regular_expression(cls, value):
68
+ """Validates the regular expression"""
69
+ if value is None:
70
+ return value
71
+
72
+ if not re.match(r"^[^!$%^*=<>]*$", value):
73
+ raise ValueError(r"must validate the regular expression /^[^!$%^*=<>]*$/")
74
+ return value
75
+
76
+ model_config = ConfigDict(
77
+ populate_by_name=True,
78
+ validate_assignment=True,
79
+ protected_namespaces=(),
80
+ )
81
+
82
+
83
+ def to_str(self) -> str:
84
+ """Returns the string representation of the model using alias"""
85
+ return pprint.pformat(self.model_dump(by_alias=True))
86
+
87
+ def to_json(self) -> str:
88
+ """Returns the JSON representation of the model using alias"""
89
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
90
+ return json.dumps(self.to_dict())
91
+
92
+ @classmethod
93
+ def from_json(cls, json_str: str) -> Optional[Self]:
94
+ """Create an instance of AddressShared from a JSON string"""
95
+ return cls.from_dict(json.loads(json_str))
96
+
97
+ def to_dict(self) -> Dict[str, Any]:
98
+ """Return the dictionary representation of the model using alias.
99
+
100
+ This has the following differences from calling pydantic's
101
+ `self.model_dump(by_alias=True)`:
102
+
103
+ * `None` is only added to the output dict for nullable fields that
104
+ were set at model initialization. Other fields with value `None`
105
+ are ignored.
106
+ * Fields in `self.additional_properties` are added to the output dict.
107
+ """
108
+ excluded_fields: Set[str] = set([
109
+ "additional_properties",
110
+ ])
111
+
112
+ _dict = self.model_dump(
113
+ by_alias=True,
114
+ exclude=excluded_fields,
115
+ exclude_none=True,
116
+ )
117
+ # puts key-value pairs in additional_properties in the top level
118
+ if self.additional_properties is not None:
119
+ for _key, _value in self.additional_properties.items():
120
+ _dict[_key] = _value
121
+
122
+ # set to None if line1 (nullable) is None
123
+ # and model_fields_set contains the field
124
+ if self.line1 is None and "line1" in self.model_fields_set:
125
+ _dict['line1'] = None
126
+
127
+ # set to None if line2 (nullable) is None
128
+ # and model_fields_set contains the field
129
+ if self.line2 is None and "line2" in self.model_fields_set:
130
+ _dict['line2'] = None
131
+
132
+ # set to None if line3 (nullable) is None
133
+ # and model_fields_set contains the field
134
+ if self.line3 is None and "line3" in self.model_fields_set:
135
+ _dict['line3'] = None
136
+
137
+ return _dict
138
+
139
+ @classmethod
140
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
141
+ """Create an instance of AddressShared from a dict"""
142
+ if obj is None:
143
+ return None
144
+
145
+ if not isinstance(obj, dict):
146
+ return cls.model_validate(obj)
147
+
148
+ _obj = cls.model_validate({
149
+ "flat_number": obj.get("flat_number"),
150
+ "building_number": obj.get("building_number"),
151
+ "building_name": obj.get("building_name"),
152
+ "street": obj.get("street"),
153
+ "sub_street": obj.get("sub_street"),
154
+ "town": obj.get("town"),
155
+ "postcode": obj.get("postcode"),
156
+ "country": obj.get("country"),
157
+ "state": obj.get("state"),
158
+ "line1": obj.get("line1"),
159
+ "line2": obj.get("line2"),
160
+ "line3": obj.get("line3")
161
+ })
162
+ # store additional fields in additional_properties
163
+ for _key in obj.keys():
164
+ if _key not in cls.__properties:
165
+ _obj.additional_properties[_key] = obj.get(_key)
166
+
167
+ return _obj
168
+
169
+
@@ -0,0 +1,108 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Onfido API v3.6
5
+
6
+ The Onfido API (v3.6)
7
+
8
+ The version of the OpenAPI document: v3.6
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from onfido.models.address import Address
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class AddressesList(BaseModel):
27
+ """
28
+ AddressesList
29
+ """ # noqa: E501
30
+ addresses: Optional[List[Address]] = None
31
+ additional_properties: Dict[str, Any] = {}
32
+ __properties: ClassVar[List[str]] = ["addresses"]
33
+
34
+ model_config = ConfigDict(
35
+ populate_by_name=True,
36
+ validate_assignment=True,
37
+ protected_namespaces=(),
38
+ )
39
+
40
+
41
+ def to_str(self) -> str:
42
+ """Returns the string representation of the model using alias"""
43
+ return pprint.pformat(self.model_dump(by_alias=True))
44
+
45
+ def to_json(self) -> str:
46
+ """Returns the JSON representation of the model using alias"""
47
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
48
+ return json.dumps(self.to_dict())
49
+
50
+ @classmethod
51
+ def from_json(cls, json_str: str) -> Optional[Self]:
52
+ """Create an instance of AddressesList from a JSON string"""
53
+ return cls.from_dict(json.loads(json_str))
54
+
55
+ def to_dict(self) -> Dict[str, Any]:
56
+ """Return the dictionary representation of the model using alias.
57
+
58
+ This has the following differences from calling pydantic's
59
+ `self.model_dump(by_alias=True)`:
60
+
61
+ * `None` is only added to the output dict for nullable fields that
62
+ were set at model initialization. Other fields with value `None`
63
+ are ignored.
64
+ * Fields in `self.additional_properties` are added to the output dict.
65
+ """
66
+ excluded_fields: Set[str] = set([
67
+ "additional_properties",
68
+ ])
69
+
70
+ _dict = self.model_dump(
71
+ by_alias=True,
72
+ exclude=excluded_fields,
73
+ exclude_none=True,
74
+ )
75
+ # override the default output from pydantic by calling `to_dict()` of each item in addresses (list)
76
+ _items = []
77
+ if self.addresses:
78
+ for _item in self.addresses:
79
+ if _item:
80
+ _items.append(_item.to_dict())
81
+ _dict['addresses'] = _items
82
+ # puts key-value pairs in additional_properties in the top level
83
+ if self.additional_properties is not None:
84
+ for _key, _value in self.additional_properties.items():
85
+ _dict[_key] = _value
86
+
87
+ return _dict
88
+
89
+ @classmethod
90
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
91
+ """Create an instance of AddressesList from a dict"""
92
+ if obj is None:
93
+ return None
94
+
95
+ if not isinstance(obj, dict):
96
+ return cls.model_validate(obj)
97
+
98
+ _obj = cls.model_validate({
99
+ "addresses": [Address.from_dict(_item) for _item in obj["addresses"]] if obj.get("addresses") is not None else None
100
+ })
101
+ # store additional fields in additional_properties
102
+ for _key in obj.keys():
103
+ if _key not in cls.__properties:
104
+ _obj.additional_properties[_key] = obj.get(_key)
105
+
106
+ return _obj
107
+
108
+