onfido 3.4.0 → 4.6.0

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 (317) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +43 -0
  3. data/Gemfile +1 -0
  4. data/MIGRATION.md +30 -0
  5. data/README.md +14 -12
  6. data/lib/onfido/api/default_api.rb +131 -68
  7. data/lib/onfido/api_client.rb +31 -25
  8. data/lib/onfido/api_error.rb +1 -1
  9. data/lib/onfido/configuration.rb +11 -1
  10. data/lib/onfido/models/address.rb +1 -1
  11. data/lib/onfido/models/address_builder.rb +1 -1
  12. data/lib/onfido/models/address_shared.rb +1 -1
  13. data/lib/onfido/models/addresses_list.rb +1 -1
  14. data/lib/onfido/models/applicant.rb +1 -1
  15. data/lib/onfido/models/applicant_builder.rb +6 -3
  16. data/lib/onfido/models/{consent_item.rb → applicant_consent_builder.rb} +5 -18
  17. data/lib/onfido/models/applicant_consent_name.rb +42 -0
  18. data/lib/onfido/models/applicant_create.rb +1 -1
  19. data/lib/onfido/models/applicant_request.rb +6 -3
  20. data/lib/onfido/models/applicant_response.rb +1 -1
  21. data/lib/onfido/models/applicant_shared.rb +1 -1
  22. data/lib/onfido/models/applicant_update.rb +1 -1
  23. data/lib/onfido/models/applicant_updater.rb +6 -3
  24. data/lib/onfido/models/applicants_list.rb +1 -1
  25. data/lib/onfido/models/check.rb +33 -19
  26. data/lib/onfido/models/check_builder.rb +11 -2
  27. data/lib/onfido/models/check_request.rb +1 -1
  28. data/lib/onfido/models/check_response.rb +24 -19
  29. data/lib/onfido/models/check_shared.rb +14 -5
  30. data/lib/onfido/models/check_status.rb +45 -0
  31. data/lib/onfido/models/checks_list.rb +1 -1
  32. data/lib/onfido/models/complete_task_builder.rb +1 -1
  33. data/lib/onfido/models/complete_task_data_builder.rb +1 -1
  34. data/lib/onfido/models/country_codes.rb +1 -1
  35. data/lib/onfido/models/device_intelligence_breakdown.rb +1 -1
  36. data/lib/onfido/models/device_intelligence_breakdown_breakdown.rb +1 -1
  37. data/lib/onfido/models/device_intelligence_breakdown_breakdown_device.rb +1 -1
  38. data/lib/onfido/models/device_intelligence_breakdown_breakdown_device_breakdown.rb +1 -1
  39. data/lib/onfido/models/device_intelligence_breakdown_properties.rb +1 -1
  40. data/lib/onfido/models/device_intelligence_breakdown_properties_device.rb +2 -42
  41. data/lib/onfido/models/device_intelligence_breakdown_properties_geolocation.rb +1 -1
  42. data/lib/onfido/models/device_intelligence_breakdown_properties_ip.rb +5 -35
  43. data/lib/onfido/models/device_intelligence_report.rb +1 -1
  44. data/lib/onfido/models/document.rb +2 -2
  45. data/lib/onfido/models/document_breakdown.rb +1 -1
  46. data/lib/onfido/models/document_breakdown_age_validation.rb +1 -1
  47. data/lib/onfido/models/document_breakdown_age_validation_breakdown.rb +1 -1
  48. data/lib/onfido/models/document_breakdown_compromised_document.rb +1 -1
  49. data/lib/onfido/models/document_breakdown_compromised_document_breakdown.rb +1 -1
  50. data/lib/onfido/models/document_breakdown_data_comparison.rb +1 -1
  51. data/lib/onfido/models/document_breakdown_data_comparison_breakdown.rb +1 -1
  52. data/lib/onfido/models/document_breakdown_data_comparison_breakdown_issuing_country.rb +1 -1
  53. data/lib/onfido/models/document_breakdown_data_consistency.rb +1 -1
  54. data/lib/onfido/models/document_breakdown_data_consistency_breakdown.rb +1 -1
  55. data/lib/onfido/models/document_breakdown_data_validation.rb +1 -1
  56. data/lib/onfido/models/document_breakdown_data_validation_breakdown.rb +1 -1
  57. data/lib/onfido/models/document_breakdown_data_validation_breakdown_document_expiration.rb +1 -1
  58. data/lib/onfido/models/document_breakdown_data_validation_breakdown_expiry_date.rb +1 -1
  59. data/lib/onfido/models/document_breakdown_image_integrity.rb +1 -1
  60. data/lib/onfido/models/document_breakdown_image_integrity_breakdown.rb +1 -1
  61. data/lib/onfido/models/document_breakdown_image_integrity_breakdown_colour_picture.rb +1 -1
  62. data/lib/onfido/models/document_breakdown_image_integrity_breakdown_conclusive_document_quality.rb +1 -1
  63. data/lib/onfido/models/document_breakdown_image_integrity_breakdown_image_quality.rb +1 -1
  64. data/lib/onfido/models/document_breakdown_image_integrity_breakdown_supported_document.rb +1 -1
  65. data/lib/onfido/models/document_breakdown_issuing_authority.rb +1 -1
  66. data/lib/onfido/models/document_breakdown_issuing_authority_breakdown.rb +1 -1
  67. data/lib/onfido/models/document_breakdown_issuing_authority_breakdown_nfc_active_authentication.rb +1 -1
  68. data/lib/onfido/models/document_breakdown_issuing_authority_breakdown_nfc_passive_authentication.rb +1 -1
  69. data/lib/onfido/models/document_breakdown_police_record.rb +1 -1
  70. data/lib/onfido/models/document_breakdown_visual_authenticity.rb +1 -1
  71. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown.rb +1 -1
  72. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown_digital_tampering.rb +1 -1
  73. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown_face_detection.rb +1 -1
  74. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown_fonts.rb +1 -1
  75. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown_original_document_present.rb +1 -1
  76. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown_other.rb +1 -1
  77. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown_picture_face_integrity.rb +1 -1
  78. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown_security_features.rb +1 -1
  79. data/lib/onfido/models/document_breakdown_visual_authenticity_breakdown_template.rb +1 -1
  80. data/lib/onfido/models/document_cdq_reasons.rb +1 -1
  81. data/lib/onfido/models/document_iq_reasons.rb +1 -1
  82. data/lib/onfido/models/document_odp_reasons.rb +1 -1
  83. data/lib/onfido/models/document_properties.rb +1 -1
  84. data/lib/onfido/models/document_properties_address_lines.rb +1 -1
  85. data/lib/onfido/models/document_properties_barcode_inner.rb +1 -1
  86. data/lib/onfido/models/document_properties_document_classification.rb +1 -1
  87. data/lib/onfido/models/document_properties_document_numbers_inner.rb +1 -1
  88. data/lib/onfido/models/document_properties_driving_licence_information.rb +1 -1
  89. data/lib/onfido/models/document_properties_extracted_data.rb +1 -1
  90. data/lib/onfido/models/document_properties_nfc.rb +1 -1
  91. data/lib/onfido/models/document_report.rb +1 -1
  92. data/lib/onfido/models/document_response.rb +1 -1
  93. data/lib/onfido/models/document_shared.rb +2 -2
  94. data/lib/onfido/models/document_types.rb +53 -2
  95. data/lib/onfido/models/document_video_report.rb +1 -1
  96. data/lib/onfido/models/document_video_with_address_information_report.rb +1 -1
  97. data/lib/onfido/models/document_with_address_information_report.rb +1 -1
  98. data/lib/onfido/models/document_with_driver_verification_report.rb +1 -1
  99. data/lib/onfido/models/document_with_driver_verification_report_all_of_properties.rb +1 -1
  100. data/lib/onfido/models/document_with_driver_verification_report_all_of_properties_all_of_passenger_vehicle.rb +1 -1
  101. data/lib/onfido/models/document_with_driver_verification_report_all_of_properties_all_of_vehicle_class_details_inner.rb +1 -1
  102. data/lib/onfido/models/document_with_driving_licence_information_report.rb +1 -1
  103. data/lib/onfido/models/documents_list.rb +1 -1
  104. data/lib/onfido/models/error.rb +1 -1
  105. data/lib/onfido/models/error1.rb +1 -1
  106. data/lib/onfido/models/error_properties.rb +1 -1
  107. data/lib/onfido/models/error_properties1.rb +1 -1
  108. data/lib/onfido/models/extract_request.rb +1 -1
  109. data/lib/onfido/models/extraction.rb +1 -1
  110. data/lib/onfido/models/extraction_document_classification.rb +1 -1
  111. data/lib/onfido/models/extraction_extracted_data.rb +1 -1
  112. data/lib/onfido/models/facial_similarity_motion_breakdown.rb +1 -1
  113. data/lib/onfido/models/facial_similarity_motion_breakdown_face_comparison.rb +1 -1
  114. data/lib/onfido/models/facial_similarity_motion_breakdown_image_integrity.rb +1 -1
  115. data/lib/onfido/models/facial_similarity_motion_breakdown_image_integrity_breakdown.rb +1 -1
  116. data/lib/onfido/models/facial_similarity_motion_breakdown_image_integrity_breakdown_face_detected.rb +1 -1
  117. data/lib/onfido/models/facial_similarity_motion_breakdown_image_integrity_breakdown_source_integrity.rb +1 -1
  118. data/lib/onfido/models/facial_similarity_motion_breakdown_visual_authenticity.rb +1 -1
  119. data/lib/onfido/models/facial_similarity_motion_breakdown_visual_authenticity_breakdown.rb +1 -1
  120. data/lib/onfido/models/facial_similarity_motion_breakdown_visual_authenticity_breakdown_spoofing_detection.rb +1 -1
  121. data/lib/onfido/models/facial_similarity_motion_properties.rb +1 -1
  122. data/lib/onfido/models/facial_similarity_motion_report.rb +51 -2
  123. data/lib/onfido/models/facial_similarity_photo_breakdown.rb +1 -1
  124. data/lib/onfido/models/facial_similarity_photo_breakdown_face_comparison.rb +1 -1
  125. data/lib/onfido/models/facial_similarity_photo_breakdown_face_comparison_breakdown.rb +1 -1
  126. data/lib/onfido/models/facial_similarity_photo_breakdown_face_comparison_breakdown_face_match.rb +1 -1
  127. data/lib/onfido/models/facial_similarity_photo_breakdown_face_comparison_breakdown_face_match_properties.rb +1 -1
  128. data/lib/onfido/models/facial_similarity_photo_breakdown_image_integrity.rb +1 -1
  129. data/lib/onfido/models/facial_similarity_photo_breakdown_image_integrity_breakdown.rb +1 -1
  130. data/lib/onfido/models/facial_similarity_photo_breakdown_image_integrity_breakdown_face_detected.rb +1 -1
  131. data/lib/onfido/models/facial_similarity_photo_breakdown_image_integrity_breakdown_source_integrity.rb +1 -1
  132. data/lib/onfido/models/facial_similarity_photo_breakdown_visual_authenticity.rb +1 -1
  133. data/lib/onfido/models/facial_similarity_photo_breakdown_visual_authenticity_breakdown.rb +1 -1
  134. data/lib/onfido/models/facial_similarity_photo_breakdown_visual_authenticity_breakdown_spoofing_detection.rb +1 -1
  135. data/lib/onfido/models/facial_similarity_photo_breakdown_visual_authenticity_breakdown_spoofing_detection_properties.rb +1 -1
  136. data/lib/onfido/models/facial_similarity_photo_fully_auto_breakdown.rb +1 -1
  137. data/lib/onfido/models/facial_similarity_photo_fully_auto_breakdown_image_integrity.rb +1 -1
  138. data/lib/onfido/models/facial_similarity_photo_fully_auto_breakdown_image_integrity_breakdown.rb +1 -1
  139. data/lib/onfido/models/facial_similarity_photo_fully_auto_breakdown_image_integrity_breakdown_source_integrity.rb +1 -1
  140. data/lib/onfido/models/facial_similarity_photo_fully_auto_properties.rb +1 -1
  141. data/lib/onfido/models/facial_similarity_photo_fully_auto_report.rb +51 -2
  142. data/lib/onfido/models/facial_similarity_photo_properties.rb +1 -1
  143. data/lib/onfido/models/facial_similarity_photo_report.rb +51 -2
  144. data/lib/onfido/models/{consents_builder.rb → facial_similarity_report_media.rb} +23 -6
  145. data/lib/onfido/models/facial_similarity_report_shared.rb +253 -0
  146. data/lib/onfido/models/facial_similarity_video_breakdown.rb +1 -1
  147. data/lib/onfido/models/facial_similarity_video_breakdown_face_comparison.rb +1 -1
  148. data/lib/onfido/models/facial_similarity_video_breakdown_image_integrity.rb +1 -1
  149. data/lib/onfido/models/facial_similarity_video_breakdown_image_integrity_breakdown.rb +1 -1
  150. data/lib/onfido/models/facial_similarity_video_breakdown_image_integrity_breakdown_face_detected.rb +1 -1
  151. data/lib/onfido/models/facial_similarity_video_breakdown_image_integrity_breakdown_source_integrity.rb +1 -1
  152. data/lib/onfido/models/facial_similarity_video_breakdown_visual_authenticity.rb +1 -1
  153. data/lib/onfido/models/facial_similarity_video_breakdown_visual_authenticity_breakdown.rb +1 -1
  154. data/lib/onfido/models/facial_similarity_video_breakdown_visual_authenticity_breakdown_liveness_detected.rb +1 -1
  155. data/lib/onfido/models/facial_similarity_video_breakdown_visual_authenticity_breakdown_spoofing_detection.rb +1 -1
  156. data/lib/onfido/models/facial_similarity_video_properties.rb +1 -1
  157. data/lib/onfido/models/facial_similarity_video_report.rb +51 -2
  158. data/lib/onfido/models/id_number.rb +3 -3
  159. data/lib/onfido/models/id_photo.rb +1 -1
  160. data/lib/onfido/models/id_photo_response.rb +1 -1
  161. data/lib/onfido/models/id_photos_list.rb +1 -1
  162. data/lib/onfido/models/identity_enhanced_breakdown.rb +1 -1
  163. data/lib/onfido/models/identity_enhanced_breakdown_address.rb +1 -1
  164. data/lib/onfido/models/identity_enhanced_breakdown_address_breakdown.rb +1 -1
  165. data/lib/onfido/models/identity_enhanced_breakdown_address_breakdown_credit_agencies.rb +1 -1
  166. data/lib/onfido/models/identity_enhanced_breakdown_address_breakdown_credit_agencies_properties.rb +1 -1
  167. data/lib/onfido/models/identity_enhanced_breakdown_address_breakdown_telephone_database.rb +1 -1
  168. data/lib/onfido/models/identity_enhanced_breakdown_address_breakdown_voting_register.rb +1 -1
  169. data/lib/onfido/models/identity_enhanced_breakdown_date_of_birth.rb +1 -1
  170. data/lib/onfido/models/identity_enhanced_breakdown_date_of_birth_breakdown.rb +1 -1
  171. data/lib/onfido/models/identity_enhanced_breakdown_date_of_birth_breakdown_credit_agencies.rb +1 -1
  172. data/lib/onfido/models/identity_enhanced_breakdown_date_of_birth_breakdown_voting_register.rb +1 -1
  173. data/lib/onfido/models/identity_enhanced_breakdown_mortality.rb +1 -1
  174. data/lib/onfido/models/identity_enhanced_breakdown_sources.rb +1 -1
  175. data/lib/onfido/models/identity_enhanced_breakdown_sources_breakdown.rb +1 -1
  176. data/lib/onfido/models/identity_enhanced_breakdown_sources_breakdown_total_sources.rb +1 -1
  177. data/lib/onfido/models/identity_enhanced_breakdown_sources_breakdown_total_sources_properties.rb +1 -1
  178. data/lib/onfido/models/identity_enhanced_properties.rb +1 -1
  179. data/lib/onfido/models/identity_enhanced_properties_matched_addresses_inner.rb +1 -1
  180. data/lib/onfido/models/identity_enhanced_report.rb +1 -1
  181. data/lib/onfido/models/india_pan_report.rb +1 -1
  182. data/lib/onfido/models/india_pan_report_all_of_breakdown.rb +1 -1
  183. data/lib/onfido/models/india_pan_report_all_of_breakdown_device.rb +1 -1
  184. data/lib/onfido/models/india_pan_report_all_of_breakdown_device_breakdown.rb +1 -1
  185. data/lib/onfido/models/india_pan_report_all_of_breakdown_device_breakdown_pan_valid.rb +1 -1
  186. data/lib/onfido/models/india_pan_report_all_of_properties.rb +1 -1
  187. data/lib/onfido/models/india_pan_report_all_of_properties_device.rb +1 -1
  188. data/lib/onfido/models/known_faces_breakdown.rb +1 -1
  189. data/lib/onfido/models/known_faces_breakdown_image_integrity.rb +1 -1
  190. data/lib/onfido/models/known_faces_breakdown_previously_seen_faces.rb +1 -1
  191. data/lib/onfido/models/known_faces_properties.rb +1 -1
  192. data/lib/onfido/models/known_faces_properties_matches_inner.rb +1 -1
  193. data/lib/onfido/models/known_faces_report.rb +1 -1
  194. data/lib/onfido/models/live_photo.rb +1 -1
  195. data/lib/onfido/models/live_photo_response.rb +1 -1
  196. data/lib/onfido/models/live_photos_list.rb +1 -1
  197. data/lib/onfido/models/live_video.rb +1 -1
  198. data/lib/onfido/models/live_videos_list.rb +1 -1
  199. data/lib/onfido/models/location.rb +1 -1
  200. data/lib/onfido/models/location_builder.rb +1 -1
  201. data/lib/onfido/models/location_shared.rb +1 -1
  202. data/lib/onfido/models/motion_capture.rb +1 -1
  203. data/lib/onfido/models/motion_captures_list.rb +1 -1
  204. data/lib/onfido/models/photo_auto_reasons.rb +1 -1
  205. data/lib/onfido/models/photo_reasons.rb +1 -1
  206. data/lib/onfido/models/proof_of_address_breakdown.rb +1 -1
  207. data/lib/onfido/models/proof_of_address_breakdown_data_comparison.rb +1 -1
  208. data/lib/onfido/models/proof_of_address_breakdown_data_comparison_breakdown.rb +1 -1
  209. data/lib/onfido/models/proof_of_address_breakdown_document_classification.rb +1 -1
  210. data/lib/onfido/models/proof_of_address_breakdown_document_classification_breakdown.rb +1 -1
  211. data/lib/onfido/models/proof_of_address_breakdown_image_integrity.rb +1 -1
  212. data/lib/onfido/models/proof_of_address_breakdown_image_integrity_breakdown.rb +1 -1
  213. data/lib/onfido/models/proof_of_address_properties.rb +1 -1
  214. data/lib/onfido/models/proof_of_address_report.rb +1 -1
  215. data/lib/onfido/models/repeat_attempts_list.rb +1 -1
  216. data/lib/onfido/models/repeat_attempts_list_repeat_attempts_inner.rb +1 -1
  217. data/lib/onfido/models/report.rb +1 -1
  218. data/lib/onfido/models/report_document.rb +1 -1
  219. data/lib/onfido/models/report_name.rb +1 -1
  220. data/lib/onfido/models/report_result.rb +1 -1
  221. data/lib/onfido/models/report_shared.rb +1 -1
  222. data/lib/onfido/models/report_status.rb +1 -1
  223. data/lib/onfido/models/report_sub_result.rb +1 -1
  224. data/lib/onfido/models/reports_list.rb +1 -1
  225. data/lib/onfido/models/results_feedback.rb +1 -1
  226. data/lib/onfido/models/sdk_token.rb +1 -1
  227. data/lib/onfido/models/sdk_token_builder.rb +1 -1
  228. data/lib/onfido/models/sdk_token_request.rb +1 -1
  229. data/lib/onfido/models/sdk_token_response.rb +1 -1
  230. data/lib/onfido/models/task.rb +2 -2
  231. data/lib/onfido/models/task_item.rb +23 -2
  232. data/lib/onfido/models/timeline_file_reference.rb +1 -1
  233. data/lib/onfido/models/us_driving_licence_breakdown.rb +1 -1
  234. data/lib/onfido/models/us_driving_licence_breakdown_address.rb +1 -1
  235. data/lib/onfido/models/us_driving_licence_breakdown_address_breakdown.rb +1 -1
  236. data/lib/onfido/models/us_driving_licence_breakdown_document.rb +1 -1
  237. data/lib/onfido/models/us_driving_licence_breakdown_document_breakdown.rb +1 -1
  238. data/lib/onfido/models/us_driving_licence_breakdown_personal.rb +1 -1
  239. data/lib/onfido/models/us_driving_licence_breakdown_personal_breakdown.rb +1 -1
  240. data/lib/onfido/models/us_driving_licence_builder.rb +1 -1
  241. data/lib/onfido/models/us_driving_licence_report.rb +1 -1
  242. data/lib/onfido/models/us_driving_licence_shared.rb +1 -1
  243. data/lib/onfido/models/video_reasons.rb +1 -1
  244. data/lib/onfido/models/watchlist_aml_breakdown.rb +1 -1
  245. data/lib/onfido/models/watchlist_aml_breakdown_adverse_media.rb +1 -1
  246. data/lib/onfido/models/watchlist_aml_breakdown_legal_and_regulatory_warnings.rb +1 -1
  247. data/lib/onfido/models/watchlist_aml_breakdown_politically_exposed_person.rb +1 -1
  248. data/lib/onfido/models/watchlist_aml_breakdown_sanction.rb +1 -1
  249. data/lib/onfido/models/watchlist_aml_properties.rb +1 -1
  250. data/lib/onfido/models/watchlist_aml_report.rb +1 -1
  251. data/lib/onfido/models/watchlist_enhanced_breakdown.rb +1 -1
  252. data/lib/onfido/models/watchlist_enhanced_properties.rb +1 -1
  253. data/lib/onfido/models/watchlist_enhanced_properties_records_inner.rb +1 -1
  254. data/lib/onfido/models/watchlist_enhanced_properties_records_inner_address_inner.rb +1 -1
  255. data/lib/onfido/models/watchlist_enhanced_properties_records_inner_alias_inner.rb +1 -1
  256. data/lib/onfido/models/watchlist_enhanced_properties_records_inner_associate_inner.rb +1 -1
  257. data/lib/onfido/models/watchlist_enhanced_properties_records_inner_attribute_inner.rb +1 -1
  258. data/lib/onfido/models/watchlist_enhanced_properties_records_inner_event_inner.rb +1 -1
  259. data/lib/onfido/models/watchlist_enhanced_properties_records_inner_event_inner_source.rb +1 -1
  260. data/lib/onfido/models/watchlist_enhanced_properties_records_inner_source_inner.rb +1 -1
  261. data/lib/onfido/models/watchlist_enhanced_report.rb +1 -1
  262. data/lib/onfido/models/watchlist_monitor.rb +1 -1
  263. data/lib/onfido/models/watchlist_monitor_builder.rb +1 -1
  264. data/lib/onfido/models/watchlist_monitor_match.rb +1 -1
  265. data/lib/onfido/models/watchlist_monitor_matches_list.rb +1 -1
  266. data/lib/onfido/models/watchlist_monitor_matches_updater.rb +1 -1
  267. data/lib/onfido/models/watchlist_monitor_response.rb +1 -1
  268. data/lib/onfido/models/watchlist_monitor_shared.rb +1 -1
  269. data/lib/onfido/models/watchlist_monitors_list.rb +1 -1
  270. data/lib/onfido/models/watchlist_peps_only_report.rb +1 -1
  271. data/lib/onfido/models/watchlist_sanctions_only_report.rb +1 -1
  272. data/lib/onfido/models/watchlist_standard_breakdown.rb +1 -1
  273. data/lib/onfido/models/watchlist_standard_properties.rb +1 -1
  274. data/lib/onfido/models/watchlist_standard_report.rb +1 -1
  275. data/lib/onfido/models/webhook.rb +1 -1
  276. data/lib/onfido/models/webhook_builder.rb +1 -1
  277. data/lib/onfido/models/webhook_create.rb +1 -1
  278. data/lib/onfido/models/webhook_event.rb +1 -1
  279. data/lib/onfido/models/webhook_event_object_status.rb +58 -0
  280. data/lib/onfido/models/webhook_event_payload.rb +3 -4
  281. data/lib/onfido/models/webhook_event_payload_object.rb +24 -3
  282. data/lib/onfido/models/webhook_event_payload_resource.rb +409 -0
  283. data/lib/onfido/models/webhook_event_resource_type.rb +47 -0
  284. data/lib/onfido/models/webhook_event_type.rb +3 -2
  285. data/lib/onfido/models/webhook_resend.rb +1 -1
  286. data/lib/onfido/models/webhook_response.rb +1 -1
  287. data/lib/onfido/models/webhook_shared.rb +1 -1
  288. data/lib/onfido/models/webhook_update.rb +1 -1
  289. data/lib/onfido/models/webhook_updater.rb +1 -1
  290. data/lib/onfido/models/webhooks_list.rb +1 -1
  291. data/lib/onfido/models/webhooks_resend_item.rb +1 -1
  292. data/lib/onfido/models/workflow_run.rb +6 -16
  293. data/lib/onfido/models/workflow_run_builder.rb +3 -2
  294. data/lib/onfido/models/{workflow_run_response_error.rb → workflow_run_error.rb} +4 -5
  295. data/lib/onfido/models/{workflow_run_shared_link.rb → workflow_run_link.rb} +8 -5
  296. data/lib/onfido/models/workflow_run_request.rb +1 -1
  297. data/lib/onfido/models/workflow_run_response.rb +4 -15
  298. data/lib/onfido/models/workflow_run_shared.rb +3 -2
  299. data/lib/onfido/models/workflow_run_status.rb +47 -0
  300. data/lib/onfido/version.rb +2 -2
  301. data/lib/onfido.rb +12 -5
  302. data/onfido.gemspec +1 -1
  303. data/spec/{webhook_event_verifier_spec.rb → classic_webhook_event_verifier_spec.rb} +4 -4
  304. data/spec/integrations/applicant_spec.rb +5 -1
  305. data/spec/integrations/check_spec.rb +4 -4
  306. data/spec/integrations/document_spec.rb +1 -1
  307. data/spec/integrations/qualified_electronic_signature_spec.rb +1 -1
  308. data/spec/integrations/report_schema_spec.rb +17 -0
  309. data/spec/integrations/report_spec.rb +4 -2
  310. data/spec/integrations/workflow_run_spec.rb +14 -3
  311. data/spec/media/studio_webhook_event_with_list_in_output.json +31 -0
  312. data/spec/media/studio_webhook_event_with_object_in_output.json +264 -0
  313. data/spec/shared_contexts/with_check.rb +1 -0
  314. data/spec/shared_contexts/with_document.rb +1 -1
  315. data/spec/spec_helper.rb +3 -3
  316. data/spec/studio_webhook_event_verifier_spec.rb +78 -0
  317. metadata +42 -28
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: v3.6
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.6.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -14,8 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Onfido
17
- # Object for the configuration of the Workflow Run link.
18
- class WorkflowRunSharedLink
17
+ class WorkflowRunLink
19
18
  # Link to access the Workflow Run without the need to integrate with Onfido's SDKs.
20
19
  attr_accessor :url
21
20
 
@@ -83,6 +82,10 @@ module Onfido
83
82
  # List of attributes with nullable: true
84
83
  def self.openapi_nullable
85
84
  Set.new([
85
+ :'completed_redirect_url',
86
+ :'expired_redirect_url',
87
+ :'expires_at',
88
+ :'language'
86
89
  ])
87
90
  end
88
91
 
@@ -90,13 +93,13 @@ module Onfido
90
93
  # @param [Hash] attributes Model attributes in the form of hash
91
94
  def initialize(attributes = {})
92
95
  if (!attributes.is_a?(Hash))
93
- fail ArgumentError, "The input argument (attributes) must be a hash in `Onfido::WorkflowRunSharedLink` initialize method"
96
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Onfido::WorkflowRunLink` initialize method"
94
97
  end
95
98
 
96
99
  # check to see if the attribute exists and convert string to symbol for hash key
97
100
  attributes = attributes.each_with_object({}) { |(k, v), h|
98
101
  if (!self.class.attribute_map.key?(k.to_sym))
99
- fail ArgumentError, "`#{k}` is not a valid attribute in `Onfido::WorkflowRunSharedLink`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
102
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Onfido::WorkflowRunLink`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
100
103
  end
101
104
  h[k.to_sym] = v
102
105
  }
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: v3.6
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.6.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: v3.6
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.6.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -33,6 +33,7 @@ module Onfido
33
33
  # The reasons the Workflow Run outcome was reached. Configurable when creating the Workflow version.
34
34
  attr_accessor :reasons
35
35
 
36
+ # Error object. Only set when the Workflow Run status is 'error'.
36
37
  attr_accessor :error
37
38
 
38
39
  # Client token to use when loading this workflow run in the Onfido SDK.
@@ -85,10 +86,10 @@ module Onfido
85
86
  :'id' => :'String',
86
87
  :'workflow_version_id' => :'Integer',
87
88
  :'dashboard_url' => :'String',
88
- :'status' => :'String',
89
+ :'status' => :'WorkflowRunStatus',
89
90
  :'output' => :'Object',
90
91
  :'reasons' => :'Array<String>',
91
- :'error' => :'WorkflowRunResponseError',
92
+ :'error' => :'WorkflowRunError',
92
93
  :'sdk_token' => :'String'
93
94
  }
94
95
  end
@@ -169,21 +170,9 @@ module Onfido
169
170
  def valid?
170
171
  warn '[DEPRECATED] the `valid?` method is obsolete'
171
172
  return false if @id.nil?
172
- status_validator = EnumAttributeValidator.new('String', ["awaiting_input", "processing", "abandoned", "error", "approved", "review", "declined", "unknown_default_open_api"])
173
- return false unless status_validator.valid?(@status)
174
173
  true
175
174
  end
176
175
 
177
- # Custom attribute writer method checking allowed values (enum).
178
- # @param [Object] status Object to be assigned
179
- def status=(status)
180
- validator = EnumAttributeValidator.new('String', ["awaiting_input", "processing", "abandoned", "error", "approved", "review", "declined", "unknown_default_open_api"])
181
- unless validator.valid?(status)
182
- fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
183
- end
184
- @status = status
185
- end
186
-
187
176
  # Checks equality by comparing each attribute.
188
177
  # @param [Object] Object to be compared
189
178
  def ==(o)
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: v3.6
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.6.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -27,6 +27,7 @@ module Onfido
27
27
  # Customer-provided user identifier.
28
28
  attr_accessor :customer_user_id
29
29
 
30
+ # Object for the configuration of the Workflow Run link.
30
31
  attr_accessor :link
31
32
 
32
33
  # The date and time when the Workflow Run was created.
@@ -60,7 +61,7 @@ module Onfido
60
61
  :'workflow_id' => :'String',
61
62
  :'tags' => :'Array<String>',
62
63
  :'customer_user_id' => :'String',
63
- :'link' => :'WorkflowRunSharedLink',
64
+ :'link' => :'WorkflowRunLink',
64
65
  :'created_at' => :'Time',
65
66
  :'updated_at' => :'Time'
66
67
  }
@@ -0,0 +1,47 @@
1
+ =begin
2
+ #Onfido API v3.6
3
+
4
+ #The Onfido API (v3.6)
5
+
6
+ The version of the OpenAPI document: v3.6
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Onfido
17
+ class WorkflowRunStatus
18
+ PROCESSING = "processing".freeze
19
+ AWAITING_INPUT = "awaiting_input".freeze
20
+ AWAITING_CLIENT_INPUT = "awaiting_client_input".freeze
21
+ APPROVED = "approved".freeze
22
+ DECLINED = "declined".freeze
23
+ REVIEW = "review".freeze
24
+ ABANDONED = "abandoned".freeze
25
+ ERROR = "error".freeze
26
+ UNKNOWN_DEFAULT_OPEN_API = "unknown_default_open_api".freeze
27
+
28
+ def self.all_vars
29
+ @all_vars ||= [PROCESSING, AWAITING_INPUT, AWAITING_CLIENT_INPUT, APPROVED, DECLINED, REVIEW, ABANDONED, ERROR, UNKNOWN_DEFAULT_OPEN_API].freeze
30
+ end
31
+
32
+ # Builds the enum from string
33
+ # @param [String] The enum value in the form of the string
34
+ # @return [String] The enum value
35
+ def self.build_from_hash(value)
36
+ new.build_from_hash(value)
37
+ end
38
+
39
+ # Builds the enum from string
40
+ # @param [String] The enum value in the form of the string
41
+ # @return [String] The enum value
42
+ def build_from_hash(value)
43
+ return value if WorkflowRunStatus.all_vars.include?(value)
44
+ raise "Invalid ENUM value #{value} for class #WorkflowRunStatus"
45
+ end
46
+ end
47
+ end
@@ -6,10 +6,10 @@
6
6
  The version of the OpenAPI document: v3.6
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.6.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
13
13
  module Onfido
14
- VERSION = '3.4.0'
14
+ VERSION = '4.6.0'
15
15
  end
data/lib/onfido.rb CHANGED
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: v3.6
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.6.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -23,6 +23,8 @@ require 'onfido/models/address_shared'
23
23
  require 'onfido/models/addresses_list'
24
24
  require 'onfido/models/applicant'
25
25
  require 'onfido/models/applicant_builder'
26
+ require 'onfido/models/applicant_consent_builder'
27
+ require 'onfido/models/applicant_consent_name'
26
28
  require 'onfido/models/applicant_create'
27
29
  require 'onfido/models/applicant_request'
28
30
  require 'onfido/models/applicant_response'
@@ -35,11 +37,10 @@ require 'onfido/models/check_builder'
35
37
  require 'onfido/models/check_request'
36
38
  require 'onfido/models/check_response'
37
39
  require 'onfido/models/check_shared'
40
+ require 'onfido/models/check_status'
38
41
  require 'onfido/models/checks_list'
39
42
  require 'onfido/models/complete_task_builder'
40
43
  require 'onfido/models/complete_task_data_builder'
41
- require 'onfido/models/consent_item'
42
- require 'onfido/models/consents_builder'
43
44
  require 'onfido/models/country_codes'
44
45
  require 'onfido/models/device_intelligence_breakdown'
45
46
  require 'onfido/models/device_intelligence_breakdown_breakdown'
@@ -150,6 +151,8 @@ require 'onfido/models/facial_similarity_photo_fully_auto_properties'
150
151
  require 'onfido/models/facial_similarity_photo_fully_auto_report'
151
152
  require 'onfido/models/facial_similarity_photo_properties'
152
153
  require 'onfido/models/facial_similarity_photo_report'
154
+ require 'onfido/models/facial_similarity_report_media'
155
+ require 'onfido/models/facial_similarity_report_shared'
153
156
  require 'onfido/models/facial_similarity_video_breakdown'
154
157
  require 'onfido/models/facial_similarity_video_breakdown_face_comparison'
155
158
  require 'onfido/models/facial_similarity_video_breakdown_image_integrity'
@@ -283,8 +286,11 @@ require 'onfido/models/webhook'
283
286
  require 'onfido/models/webhook_builder'
284
287
  require 'onfido/models/webhook_create'
285
288
  require 'onfido/models/webhook_event'
289
+ require 'onfido/models/webhook_event_object_status'
286
290
  require 'onfido/models/webhook_event_payload'
287
291
  require 'onfido/models/webhook_event_payload_object'
292
+ require 'onfido/models/webhook_event_payload_resource'
293
+ require 'onfido/models/webhook_event_resource_type'
288
294
  require 'onfido/models/webhook_event_type'
289
295
  require 'onfido/models/webhook_resend'
290
296
  require 'onfido/models/webhook_response'
@@ -295,11 +301,12 @@ require 'onfido/models/webhooks_list'
295
301
  require 'onfido/models/webhooks_resend_item'
296
302
  require 'onfido/models/workflow_run'
297
303
  require 'onfido/models/workflow_run_builder'
304
+ require 'onfido/models/workflow_run_error'
305
+ require 'onfido/models/workflow_run_link'
298
306
  require 'onfido/models/workflow_run_request'
299
307
  require 'onfido/models/workflow_run_response'
300
- require 'onfido/models/workflow_run_response_error'
301
308
  require 'onfido/models/workflow_run_shared'
302
- require 'onfido/models/workflow_run_shared_link'
309
+ require 'onfido/models/workflow_run_status'
303
310
 
304
311
  # APIs
305
312
  require 'onfido/api/default_api'
data/onfido.gemspec CHANGED
@@ -8,7 +8,7 @@
8
8
  The version of the OpenAPI document: v3.6
9
9
 
10
10
  Generated by: https://openapi-generator.tech
11
- Generator version: 7.6.0
11
+ Generator version: 7.9.0
12
12
 
13
13
  =end
14
14
 
@@ -15,13 +15,13 @@ describe Onfido::WebhookEventVerifier do
15
15
  it "returns the decoded event payload" do
16
16
  expected_payload = JSON.parse(event_body)["payload"]
17
17
  expected_webhook_event = Onfido::WebhookEvent.new({ payload: Onfido::WebhookEventPayload.build_from_hash(expected_payload) })
18
-
18
+
19
19
  webhook_event = subject.read_payload(event_body, sig)
20
20
  expect(webhook_event.payload).to eq(expected_webhook_event.payload)
21
- expect(webhook_event.payload.resource_type).to eq('check')
22
- expect(webhook_event.payload.action).to eq('check.completed')
21
+ expect(webhook_event.payload.resource_type).to eq(Onfido::WebhookEventResourceType::CHECK)
22
+ expect(webhook_event.payload.action).to eq(Onfido::WebhookEventType::CHECK_COMPLETED)
23
23
  expect(webhook_event.payload.object.id).to eq('f2302f45-227d-413d-ad61-09ec077a086a')
24
- expect(webhook_event.payload.object.status).to eq('complete')
24
+ expect(webhook_event.payload.object.status).to eq(Onfido::WebhookEventObjectStatus::COMPLETE)
25
25
  expect(webhook_event.payload.object.completed_at_iso8601).to eq(Time.parse('2024-04-04T09:21:21Z'))
26
26
  expect(webhook_event.payload.object.href).to eq('https://api.onfido.com/v3.6/checks/f2302f45-227d-413d-ad61-09ec077a086a')
27
27
  end
@@ -27,7 +27,11 @@ describe Onfido::Applicant do
27
27
  'location' => {
28
28
  'ip_address' => '127.0.0.1',
29
29
  'country_of_residence' => 'GBR'
30
- }
30
+ },
31
+ 'consents' => [{
32
+ 'name' => Onfido::ApplicantConsentName::PRIVACY_NOTICES_READ,
33
+ 'granted' => true
34
+ }]
31
35
  }
32
36
 
33
37
  applicant = onfido_api.create_applicant(params)
@@ -11,7 +11,7 @@ describe Onfido::Check do
11
11
  expect(check).to be_an_instance_of Onfido::Check
12
12
  expect(check.applicant_id).to eq applicant_id
13
13
  expect(check.report_ids.size).to eq 2
14
- expect(check.status).to eq 'in_progress'
14
+ expect(check.status).to eq Onfido::CheckStatus::IN_PROGRESS
15
15
  end
16
16
 
17
17
  context 'consider check' do
@@ -47,7 +47,7 @@ describe Onfido::Check do
47
47
  us_driving_licence: us_driving_licence_builder,
48
48
  })
49
49
  end
50
-
50
+
51
51
  it 'creates a driving licence check' do
52
52
  expect(check).not_to be_nil
53
53
  expect(check).to be_an_instance_of Onfido::Check
@@ -65,9 +65,9 @@ describe Onfido::Check do
65
65
 
66
66
  it 'finds a check' do
67
67
  get_check = onfido_api.find_check(check_id)
68
-
68
+
69
69
  expect(get_check).to be_an_instance_of(Onfido::Check)
70
- expect(get_check.id).to eq check_id
70
+ expect(get_check.id).to eq check_id
71
71
  end
72
72
 
73
73
  it 'restarts a check' do
@@ -35,7 +35,7 @@ describe Onfido::Document do
35
35
 
36
36
  it 'cannot download an inexistent document' do
37
37
  inexistent_document_id = '00000000-0000-0000-0000-000000000000'
38
-
38
+
39
39
  expect {
40
40
  onfido_api.download_document(inexistent_document_id)
41
41
  }.to raise_error(Onfido::ApiError) { |e|
@@ -27,7 +27,7 @@ describe Onfido::WorkflowRun do
27
27
  let!(:workflow_run_id) { workflow_run.id }
28
28
 
29
29
  let(:file_id) do
30
- task = onfido_api.list_tasks(workflow_run_id)[0]
30
+ task = onfido_api.list_tasks(workflow_run_id)[1]
31
31
 
32
32
  output = repeat_request_until_task_output_changes(
33
33
  max_retries = 10,
@@ -41,5 +41,22 @@ describe Onfido::Report do
41
41
 
42
42
  expect(facial_similarity_report).to be_an_instance_of Onfido::FacialSimilarityPhotoReport
43
43
  end
44
+
45
+ it 'schema of Document With Address Information report is valid' do
46
+ report_id = onfido_api.create_check(
47
+ Onfido::CheckBuilder.new(
48
+ applicant_id: applicant_id,
49
+ document_ids: [document_id],
50
+ report_names: [Onfido::ReportName::DOCUMENT_WITH_ADDRESS_INFORMATION],
51
+ )).report_ids[0]
52
+
53
+ report = repeat_request_until_status_changes(
54
+ Onfido::ReportStatus::COMPLETE
55
+ ) { onfido_api.find_report(report_id) }
56
+
57
+ expect(report).to be_an_instance_of Onfido::DocumentWithAddressInformationReport
58
+ expect(report.properties.barcode[0]).to be_an_instance_of Onfido::DocumentPropertiesBarcodeInner
59
+ expect(report.properties.barcode[0].document_type).to eq("driving_licence")
60
+ end
44
61
  end
45
62
  end
@@ -23,13 +23,15 @@ describe Onfido::Report do
23
23
  end
24
24
 
25
25
  it 'finds a report' do
26
- get_document_report = onfido_api.find_report(document_report_id)
26
+ get_document_report = repeat_request_until_status_changes(Onfido::ReportStatus::COMPLETE) {
27
+ onfido_api.find_report(document_report_id)
28
+ }
27
29
  get_identity_report = onfido_api.find_report(identity_report_id)
28
30
 
29
31
  expect(get_document_report).to be_an_instance_of Onfido::DocumentReport
30
32
  expect(get_document_report.id).to eq document_report_id
31
33
  expect(get_document_report.name).to eq Onfido::ReportName::DOCUMENT
32
- expect(get_document_report.status).to eq Onfido::ReportStatus::AWAITING_DATA
34
+ expect(get_document_report.status).to eq Onfido::ReportStatus::COMPLETE
33
35
 
34
36
  expect(get_identity_report).to be_an_instance_of Onfido::IdentityEnhancedReport
35
37
  expect(get_identity_report.id).to eq identity_report_id
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative '../shared_contexts/with_workflow_run'
4
+ require 'zip'
4
5
 
5
6
  describe Onfido::WorkflowRun do
6
7
  describe 'Workflow run' do
@@ -9,7 +10,7 @@ describe Onfido::WorkflowRun do
9
10
  it 'creates a workflow run' do
10
11
  expect(workflow_run).to be_an_instance_of Onfido::WorkflowRun
11
12
  expect(workflow_run.applicant_id).to eq applicant_id
12
- expect(workflow_run.status).to eq 'awaiting_input'
13
+ expect(workflow_run.status).to eq Onfido::WorkflowRunStatus::AWAITING_INPUT
13
14
  end
14
15
 
15
16
  context 'workflow run with custom inputs' do
@@ -24,11 +25,11 @@ describe Onfido::WorkflowRun do
24
25
  }
25
26
  })
26
27
  end
27
-
28
+
28
29
  it 'creates a workflow run with custom inputs' do
29
30
  expect(workflow_run).to be_an_instance_of Onfido::WorkflowRun
30
31
  expect(workflow_run.workflow_id).to eq workflow_id
31
- expect(workflow_run.status).to eq 'approved'
32
+ expect(workflow_run.status).to eq Onfido::WorkflowRunStatus::APPROVED
32
33
  end
33
34
  end
34
35
 
@@ -79,6 +80,16 @@ describe Onfido::WorkflowRun do
79
80
 
80
81
  expect(file.size).to be > 0
81
82
  end
83
+
84
+ it 'downloads an evidence folder' do
85
+ file = repeat_request_unti_http_code_changes do
86
+ onfido_api.download_evidence_folder(workflow_run_id)
87
+ end
88
+
89
+ Zip::File.open(file.path) do |zip|
90
+ expect(zip.entries.size).to be > 0
91
+ end
92
+ end
82
93
  end
83
94
  end
84
95
  end
@@ -0,0 +1,31 @@
1
+ {
2
+ "payload": {
3
+ "resource_type": "workflow_task",
4
+ "action": "workflow_task.completed",
5
+ "object": {
6
+ "id": "document_photo_5c229",
7
+ "task_spec_id": "document_photo_5c229",
8
+ "task_def_id": "upload_document_photo",
9
+ "workflow_run_id": "b48fdff9-66a1-405d-9912-54780799bd68",
10
+ "status": "completed",
11
+ "completed_at_iso8601": "2024-12-18T18:13:10Z",
12
+ "href": "https://api.eu.onfido.com/v3.6/workflow_runs/b48fdff9-66a1-405d-9912-54780799bd68/tasks/document_photo_5c229"
13
+ },
14
+ "resource": {
15
+ "updated_at": "2024-12-18T18:13:10Z",
16
+ "output": [
17
+ {
18
+ "type": "document_photo",
19
+ "id": "7af75a3a-ba34-4aa5-9e3e-096c9f56256b",
20
+ "checksum_sha256": "hiwV2PLmeQZzeySPGGwVL48sxVXcyfpXy9LDl1u3lWU="
21
+ }
22
+ ],
23
+ "created_at": "2024-12-18T18:12:44Z",
24
+ "task_def_id": "upload_document_photo",
25
+ "input": {},
26
+ "workflow_run_id": "b48fdff9-66a1-405d-9912-54780799bd68",
27
+ "task_def_version": null,
28
+ "id": "document_photo_5c229"
29
+ }
30
+ }
31
+ }