velopayments 2.17.8 → 2.18.31.beta1

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 (513) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +11 -6
  3. data/README.md +123 -35
  4. data/docs/AcceptedPayment.md +27 -0
  5. data/docs/AccessTokenResponse.md +29 -0
  6. data/docs/AccessTokenValidationRequest.md +17 -0
  7. data/docs/CheckTokenResponse.md +25 -0
  8. data/docs/CountriesApi.md +51 -2
  9. data/docs/CreateFundingAccountRequest.md +23 -0
  10. data/docs/CreatePayorLinkRequest.md +21 -0
  11. data/docs/CurrencyType.md +17 -0
  12. data/docs/DefaultApi.md +62 -0
  13. data/docs/EmailUpdateRequest.md +19 -0
  14. data/docs/FundingAccountResponse.md +27 -0
  15. data/docs/FundingManagerApi.md +197 -21
  16. data/docs/FundingPayorStatusAuditResponse.md +23 -0
  17. data/docs/GenerateOTPRequest.md +17 -0
  18. data/docs/GetPaymentsForPayoutResponseV3Summary.md +2 -0
  19. data/docs/GetPaymentsForPayoutResponseV4Summary.md +15 -13
  20. data/docs/GetPayoutApi.md +5 -5
  21. data/docs/GetPayoutsResponseV3.md +1 -3
  22. data/docs/GetPayoutsResponseV4.md +1 -3
  23. data/docs/InstructPayoutApi.md +5 -5
  24. data/docs/InviteUserRequest.md +35 -0
  25. data/docs/KycState.md +16 -0
  26. data/docs/LinkForResponse.md +19 -0
  27. data/docs/ListFundingAccountsResponse.md +21 -0
  28. data/docs/ListPaymentsResponse.md +1 -3
  29. data/docs/ListPaymentsResponseV4.md +21 -0
  30. data/docs/ListSourceAccountResponseV2.md +1 -1
  31. data/docs/LoginApi.md +212 -0
  32. data/docs/MFADetails.md +19 -0
  33. data/docs/MFAStatus.md +16 -0
  34. data/docs/MFAType.md +16 -0
  35. data/docs/OTPType.md +16 -0
  36. data/docs/PageForResponse.md +25 -0
  37. data/docs/PageResourceFundingPayorStatusAuditResponseFundingPayorStatusAuditResponse.md +21 -0
  38. data/docs/PagedUserResponse.md +21 -0
  39. data/docs/PagedUserResponseLinks.md +19 -0
  40. data/docs/{ListSourceAccountResponseV2Page.md → PagedUserResponsePage.md} +2 -2
  41. data/docs/PasswordRequest.md +17 -0
  42. data/docs/PayeeInvitationStatus.md +1 -1
  43. data/docs/PaymentAuditServiceApi.md +85 -24
  44. data/docs/PaymentRails.md +16 -0
  45. data/docs/PaymentResponseV3.md +30 -24
  46. data/docs/PaymentResponseV4.md +47 -41
  47. data/docs/PaymentResponseV4Payout.md +3 -1
  48. data/docs/PayorAmlTransactionV3.md +71 -0
  49. data/docs/PayorAmlTransactionV4.md +71 -0
  50. data/docs/PayorV1.md +2 -2
  51. data/docs/PayorV2.md +8 -4
  52. data/docs/PayorsApi.md +113 -2
  53. data/docs/PayorsPrivateApi.md +60 -0
  54. data/docs/PayoutHistoryApi.md +5 -5
  55. data/docs/PayoutSummaryAuditV3.md +0 -2
  56. data/docs/PayoutSummaryAuditV4.md +5 -3
  57. data/docs/PayoutSummaryResponse.md +2 -0
  58. data/docs/Region.md +19 -0
  59. data/docs/RegisterMFARequest.md +17 -0
  60. data/docs/RegisterMFAResponse.md +19 -0
  61. data/docs/RegisterSmsRequest.md +17 -0
  62. data/docs/ResendTokenRequest.md +19 -0
  63. data/docs/ResetPasswordRequest.md +17 -0
  64. data/docs/Role.md +17 -0
  65. data/docs/SelfMFATypeUnregisterRequest.md +17 -0
  66. data/docs/SelfUpdatePasswordRequest.md +19 -0
  67. data/docs/SupportedCountriesResponse2.md +17 -0
  68. data/docs/SupportedCountry2.md +21 -0
  69. data/docs/TokenType.md +16 -0
  70. data/docs/TokensApi.md +560 -0
  71. data/docs/TransferRequest.md +21 -0
  72. data/docs/UnregisterMFARequest.md +19 -0
  73. data/docs/UserInfo.md +21 -0
  74. data/docs/UserResponse.md +43 -0
  75. data/docs/UserResponse2.md +45 -0
  76. data/docs/UserResponse2Roles.md +17 -0
  77. data/docs/UserStatus.md +16 -0
  78. data/docs/UserType.md +16 -0
  79. data/docs/UserType2.md +16 -0
  80. data/docs/UsersApi.md +806 -0
  81. data/docs/ValidateMFARequest.md +17 -0
  82. data/docs/ValidateOTPRequest.md +17 -0
  83. data/docs/ValidatePasswordResponse.md +23 -0
  84. data/docs/WithdrawPayoutApi.md +5 -5
  85. data/lib/velopayments/api/countries_api.rb +61 -5
  86. data/lib/velopayments/api/currencies_api.rb +2 -2
  87. data/lib/velopayments/api/{auth_api.rb → default_api.rb} +23 -22
  88. data/lib/velopayments/api/funding_manager_api.rb +237 -22
  89. data/lib/velopayments/api/get_payout_api.rb +8 -8
  90. data/lib/velopayments/api/instruct_payout_api.rb +8 -8
  91. data/lib/velopayments/api/login_api.rb +265 -0
  92. data/lib/velopayments/api/payee_invitation_api.rb +2 -2
  93. data/lib/velopayments/api/payees_api.rb +2 -2
  94. data/lib/velopayments/api/payment_audit_service_api.rb +100 -36
  95. data/lib/velopayments/api/payors_api.rb +152 -2
  96. data/lib/velopayments/api/payors_private_api.rb +86 -0
  97. data/lib/velopayments/api/payout_history_api.rb +7 -7
  98. data/lib/velopayments/api/quote_payout_api.rb +2 -2
  99. data/lib/velopayments/api/submit_payout_api.rb +2 -2
  100. data/lib/velopayments/api/tokens_api.rb +785 -0
  101. data/lib/velopayments/api/users_api.rb +997 -0
  102. data/lib/velopayments/api/withdraw_payout_api.rb +8 -8
  103. data/lib/velopayments/api_client.rb +2 -2
  104. data/lib/velopayments/api_error.rb +2 -2
  105. data/lib/velopayments/configuration.rb +9 -2
  106. data/lib/velopayments/models/accepted_payment.rb +304 -0
  107. data/lib/velopayments/models/access_token_response.rb +270 -0
  108. data/lib/velopayments/models/access_token_validation_request.rb +240 -0
  109. data/lib/velopayments/models/auth_response.rb +13 -3
  110. data/lib/velopayments/models/auto_top_up_config.rb +15 -3
  111. data/lib/velopayments/models/challenge.rb +13 -3
  112. data/lib/velopayments/models/check_token_response.rb +244 -0
  113. data/lib/velopayments/models/company_response.rb +14 -3
  114. data/lib/velopayments/models/company_v1.rb +15 -3
  115. data/lib/velopayments/models/create_funding_account_request.rb +337 -0
  116. data/lib/velopayments/models/create_individual.rb +13 -3
  117. data/lib/velopayments/models/create_individual2.rb +13 -3
  118. data/lib/velopayments/models/create_payee.rb +15 -3
  119. data/lib/velopayments/models/create_payee2.rb +15 -3
  120. data/lib/velopayments/models/create_payee_address.rb +18 -3
  121. data/lib/velopayments/models/create_payee_address2.rb +18 -3
  122. data/lib/velopayments/models/create_payees_csv_request.rb +13 -3
  123. data/lib/velopayments/models/create_payees_csv_request2.rb +13 -3
  124. data/lib/velopayments/models/create_payees_csv_response.rb +13 -3
  125. data/lib/velopayments/models/create_payees_csv_response2.rb +13 -3
  126. data/lib/velopayments/models/create_payees_request.rb +13 -3
  127. data/lib/velopayments/models/create_payees_request2.rb +13 -3
  128. data/lib/velopayments/models/create_payment_channel.rb +13 -3
  129. data/lib/velopayments/models/create_payment_channel2.rb +13 -3
  130. data/lib/velopayments/models/create_payor_link_request.rb +273 -0
  131. data/lib/velopayments/models/create_payout_request.rb +13 -3
  132. data/lib/velopayments/models/{get_payouts_response_v3_summary.rb → currency_type.rb} +55 -48
  133. data/lib/velopayments/models/email_update_request.rb +246 -0
  134. data/lib/velopayments/models/error.rb +13 -3
  135. data/lib/velopayments/models/error_response.rb +15 -3
  136. data/lib/velopayments/models/failed_submission.rb +13 -3
  137. data/lib/velopayments/models/funding_account_response.rb +254 -0
  138. data/lib/velopayments/models/funding_audit.rb +25 -3
  139. data/lib/velopayments/models/funding_event.rb +13 -3
  140. data/lib/velopayments/models/funding_event_type.rb +2 -2
  141. data/lib/velopayments/models/funding_payor_status_audit_response.rb +233 -0
  142. data/lib/velopayments/models/funding_request_v1.rb +13 -3
  143. data/lib/velopayments/models/funding_request_v2.rb +13 -3
  144. data/lib/velopayments/models/fx_summary_v3.rb +13 -3
  145. data/lib/velopayments/models/fx_summary_v4.rb +13 -3
  146. data/lib/velopayments/models/generate_otp_request.rb +211 -0
  147. data/lib/velopayments/models/get_fundings_response.rb +13 -3
  148. data/lib/velopayments/models/get_fundings_response_all_of.rb +13 -3
  149. data/lib/velopayments/models/get_payments_for_payout_response_v3.rb +13 -3
  150. data/lib/velopayments/models/get_payments_for_payout_response_v3_page.rb +13 -3
  151. data/lib/velopayments/models/get_payments_for_payout_response_v3_summary.rb +24 -4
  152. data/lib/velopayments/models/get_payments_for_payout_response_v4.rb +13 -3
  153. data/lib/velopayments/models/get_payments_for_payout_response_v4_summary.rb +83 -64
  154. data/lib/velopayments/models/get_payout_statistics.rb +13 -3
  155. data/lib/velopayments/models/get_payouts_response_v3.rb +14 -13
  156. data/lib/velopayments/models/get_payouts_response_v3_links.rb +13 -3
  157. data/lib/velopayments/models/get_payouts_response_v3_page.rb +13 -3
  158. data/lib/velopayments/models/get_payouts_response_v4.rb +14 -13
  159. data/lib/velopayments/models/individual_response.rb +13 -3
  160. data/lib/velopayments/models/individual_v1.rb +13 -3
  161. data/lib/velopayments/models/individual_v1_name.rb +13 -3
  162. data/lib/velopayments/models/invitation_status.rb +2 -2
  163. data/lib/velopayments/models/invitation_status_response.rb +13 -3
  164. data/lib/velopayments/models/invite_payee_request.rb +13 -3
  165. data/lib/velopayments/models/invite_user_request.rb +490 -0
  166. data/lib/velopayments/models/kyc_state.rb +37 -0
  167. data/lib/velopayments/models/language.rb +2 -2
  168. data/lib/velopayments/models/{funding_delta_response_links.rb → link_for_response.rb} +16 -6
  169. data/lib/velopayments/models/{list_payments_response_summary.rb → list_funding_accounts_response.rb} +40 -43
  170. data/lib/velopayments/models/list_payments_response.rb +14 -13
  171. data/lib/velopayments/models/list_payments_response_page.rb +13 -3
  172. data/lib/velopayments/models/list_payments_response_v4.rb +229 -0
  173. data/lib/velopayments/models/list_source_account_response.rb +13 -3
  174. data/lib/velopayments/models/list_source_account_response_links.rb +13 -3
  175. data/lib/velopayments/models/list_source_account_response_page.rb +13 -3
  176. data/lib/velopayments/models/list_source_account_response_v2.rb +14 -4
  177. data/lib/velopayments/models/marketing_opt_in.rb +13 -3
  178. data/lib/velopayments/models/mfa_details.rb +216 -0
  179. data/lib/velopayments/models/mfa_status.rb +36 -0
  180. data/lib/velopayments/models/mfa_type.rb +37 -0
  181. data/lib/velopayments/models/notifications.rb +13 -3
  182. data/lib/velopayments/models/ofac_status.rb +2 -2
  183. data/lib/velopayments/models/onboarded_status.rb +2 -2
  184. data/lib/velopayments/models/otp_type.rb +35 -0
  185. data/lib/velopayments/models/{list_source_account_response_v2_page.rb → page_for_response.rb} +16 -6
  186. data/lib/velopayments/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response.rb +228 -0
  187. data/lib/velopayments/models/paged_payee_invitation_status_response.rb +13 -3
  188. data/lib/velopayments/models/paged_payee_response.rb +13 -3
  189. data/lib/velopayments/models/paged_payee_response2.rb +13 -3
  190. data/lib/velopayments/models/paged_payee_response2_summary.rb +13 -3
  191. data/lib/velopayments/models/paged_payee_response_links.rb +13 -3
  192. data/lib/velopayments/models/paged_payee_response_page.rb +13 -3
  193. data/lib/velopayments/models/paged_payee_response_summary.rb +13 -3
  194. data/lib/velopayments/models/paged_response.rb +13 -3
  195. data/lib/velopayments/models/paged_response_page.rb +13 -3
  196. data/lib/velopayments/models/{funding_delta_response.rb → paged_user_response.rb} +20 -10
  197. data/lib/velopayments/models/paged_user_response_links.rb +215 -0
  198. data/lib/velopayments/models/paged_user_response_page.rb +242 -0
  199. data/lib/velopayments/models/password_request.rb +240 -0
  200. data/lib/velopayments/models/payee.rb +19 -3
  201. data/lib/velopayments/models/payee_address.rb +18 -3
  202. data/lib/velopayments/models/payee_delta.rb +14 -3
  203. data/lib/velopayments/models/payee_delta_response.rb +13 -3
  204. data/lib/velopayments/models/payee_delta_response_links.rb +13 -3
  205. data/lib/velopayments/models/payee_delta_response_page.rb +13 -3
  206. data/lib/velopayments/models/payee_invitation_status.rb +13 -3
  207. data/lib/velopayments/models/payee_invitation_status_response.rb +13 -3
  208. data/lib/velopayments/models/payee_payment_channel.rb +13 -3
  209. data/lib/velopayments/models/payee_payor_ref.rb +13 -3
  210. data/lib/velopayments/models/payee_payor_ref2.rb +13 -3
  211. data/lib/velopayments/models/payee_response.rb +19 -3
  212. data/lib/velopayments/models/payee_response2.rb +19 -3
  213. data/lib/velopayments/models/payee_type.rb +2 -2
  214. data/lib/velopayments/models/payment_audit_currency_v3.rb +2 -2
  215. data/lib/velopayments/models/payment_audit_currency_v4.rb +2 -2
  216. data/lib/velopayments/models/payment_channel_country.rb +13 -3
  217. data/lib/velopayments/models/payment_channel_rule.rb +13 -3
  218. data/lib/velopayments/models/payment_channel_rules_response.rb +13 -3
  219. data/lib/velopayments/models/payment_delta.rb +19 -3
  220. data/lib/velopayments/models/payment_delta_response.rb +13 -3
  221. data/lib/velopayments/models/payment_event_response_v3.rb +13 -3
  222. data/lib/velopayments/models/payment_event_response_v4.rb +13 -3
  223. data/lib/velopayments/models/payment_instruction.rb +13 -3
  224. data/lib/velopayments/models/payment_rails.rb +36 -0
  225. data/lib/velopayments/models/payment_response_v3.rb +69 -7
  226. data/lib/velopayments/models/payment_response_v4.rb +66 -5
  227. data/lib/velopayments/models/payment_response_v4_payout.rb +23 -4
  228. data/lib/velopayments/models/payment_status.rb +2 -2
  229. data/lib/velopayments/models/payor_address.rb +18 -3
  230. data/lib/velopayments/models/payor_address_v2.rb +18 -3
  231. data/lib/velopayments/models/payor_aml_transaction_v3.rb +454 -0
  232. data/lib/velopayments/models/payor_aml_transaction_v4.rb +454 -0
  233. data/lib/velopayments/models/payor_branding_response.rb +16 -3
  234. data/lib/velopayments/models/payor_create_api_key_request.rb +14 -3
  235. data/lib/velopayments/models/payor_create_api_key_response.rb +13 -3
  236. data/lib/velopayments/models/payor_create_application_request.rb +14 -3
  237. data/lib/velopayments/models/payor_email_opt_out_request.rb +13 -3
  238. data/lib/velopayments/models/payor_links_response.rb +13 -3
  239. data/lib/velopayments/models/payor_links_response_links.rb +13 -3
  240. data/lib/velopayments/models/payor_links_response_payors.rb +13 -3
  241. data/lib/velopayments/models/payor_logo_request.rb +13 -3
  242. data/lib/velopayments/models/payor_v1.rb +14 -17
  243. data/lib/velopayments/models/payor_v2.rb +41 -21
  244. data/lib/velopayments/models/payout_payor_v4.rb +13 -3
  245. data/lib/velopayments/models/payout_principal_v4.rb +13 -3
  246. data/lib/velopayments/models/payout_status_v3.rb +2 -2
  247. data/lib/velopayments/models/payout_status_v4.rb +2 -2
  248. data/lib/velopayments/models/payout_summary_audit_v3.rb +14 -13
  249. data/lib/velopayments/models/payout_summary_audit_v4.rb +31 -13
  250. data/lib/velopayments/models/payout_summary_response.rb +30 -4
  251. data/lib/velopayments/models/payout_type_v4.rb +2 -2
  252. data/lib/velopayments/models/query_batch_response.rb +13 -3
  253. data/lib/velopayments/models/quote_fx_summary.rb +13 -3
  254. data/lib/velopayments/models/quote_response.rb +13 -3
  255. data/lib/velopayments/models/region.rb +215 -0
  256. data/lib/velopayments/models/register_mfa_request.rb +211 -0
  257. data/lib/velopayments/models/register_mfa_response.rb +217 -0
  258. data/lib/velopayments/models/register_sms_request.rb +233 -0
  259. data/lib/velopayments/models/rejected_payment.rb +13 -3
  260. data/lib/velopayments/models/resend_token_request.rb +280 -0
  261. data/lib/velopayments/models/reset_password_request.rb +212 -0
  262. data/lib/velopayments/models/role.rb +212 -0
  263. data/lib/velopayments/models/self_mfa_type_unregister_request.rb +246 -0
  264. data/lib/velopayments/models/self_update_password_request.rb +283 -0
  265. data/lib/velopayments/models/set_notifications_request.rb +13 -3
  266. data/lib/velopayments/models/source_account.rb +13 -3
  267. data/lib/velopayments/models/source_account_response.rb +15 -3
  268. data/lib/velopayments/models/source_account_response_v2.rb +15 -3
  269. data/lib/velopayments/models/source_account_summary_v3.rb +13 -3
  270. data/lib/velopayments/models/source_account_summary_v4.rb +13 -3
  271. data/lib/velopayments/models/supported_countries_response.rb +13 -3
  272. data/lib/velopayments/models/supported_countries_response2.rb +208 -0
  273. data/lib/velopayments/models/supported_country.rb +13 -3
  274. data/lib/velopayments/models/supported_country2.rb +260 -0
  275. data/lib/velopayments/models/supported_currency.rb +13 -3
  276. data/lib/velopayments/models/supported_currency_response.rb +13 -3
  277. data/lib/velopayments/models/token_type.rb +38 -0
  278. data/lib/velopayments/models/{funding_delta.rb → transfer_request.rb} +68 -57
  279. data/lib/velopayments/models/unregister_mfa_request.rb +280 -0
  280. data/lib/velopayments/models/update_remote_id_request.rb +13 -3
  281. data/lib/velopayments/models/user_info.rb +225 -0
  282. data/lib/velopayments/models/user_response.rb +495 -0
  283. data/lib/velopayments/models/user_response2.rb +505 -0
  284. data/lib/velopayments/models/user_response2_roles.rb +206 -0
  285. data/lib/velopayments/models/user_status.rb +37 -0
  286. data/lib/velopayments/models/user_type.rb +37 -0
  287. data/lib/velopayments/models/user_type2.rb +37 -0
  288. data/lib/velopayments/models/validate_mfa_request.rb +240 -0
  289. data/lib/velopayments/models/validate_otp_request.rb +240 -0
  290. data/lib/velopayments/models/validate_password_response.rb +262 -0
  291. data/lib/velopayments/models/watchlist_status.rb +2 -2
  292. data/lib/velopayments/version.rb +3 -3
  293. data/lib/velopayments.rb +60 -10
  294. data/oa3-config.json +1 -1
  295. data/spec/api/countries_api_spec.rb +14 -3
  296. data/spec/api/currencies_api_spec.rb +2 -2
  297. data/spec/api/{auth_api_spec.rb → default_api_spec.rb} +14 -14
  298. data/spec/api/funding_manager_api_spec.rb +54 -11
  299. data/spec/api/get_payout_api_spec.rb +4 -4
  300. data/spec/api/instruct_payout_api_spec.rb +4 -4
  301. data/spec/api/login_api_spec.rb +82 -0
  302. data/spec/api/payee_invitation_api_spec.rb +2 -2
  303. data/spec/api/payees_api_spec.rb +2 -2
  304. data/spec/api/payment_audit_service_api_spec.rb +27 -12
  305. data/spec/api/payors_api_spec.rb +29 -2
  306. data/spec/api/payors_private_api_spec.rb +47 -0
  307. data/spec/api/payout_history_api_spec.rb +4 -4
  308. data/spec/api/quote_payout_api_spec.rb +2 -2
  309. data/spec/api/submit_payout_api_spec.rb +2 -2
  310. data/spec/api/tokens_api_spec.rb +177 -0
  311. data/spec/api/users_api_spec.rb +222 -0
  312. data/spec/api/withdraw_payout_api_spec.rb +4 -4
  313. data/spec/api_client_spec.rb +2 -2
  314. data/spec/configuration_spec.rb +2 -2
  315. data/spec/models/accepted_payment_spec.rb +71 -0
  316. data/spec/models/access_token_response_spec.rb +77 -0
  317. data/spec/models/access_token_validation_request_spec.rb +41 -0
  318. data/spec/models/auth_response_spec.rb +2 -2
  319. data/spec/models/auto_top_up_config_spec.rb +2 -2
  320. data/spec/models/challenge_spec.rb +2 -2
  321. data/spec/models/{list_payments_response_summary_spec.rb → check_token_response_spec.rb} +13 -13
  322. data/spec/models/company_response_spec.rb +2 -2
  323. data/spec/models/company_v1_spec.rb +2 -2
  324. data/spec/models/create_funding_account_request_spec.rb +59 -0
  325. data/spec/models/create_individual2_spec.rb +2 -2
  326. data/spec/models/create_individual_spec.rb +2 -2
  327. data/spec/models/create_payee2_spec.rb +2 -2
  328. data/spec/models/create_payee_address2_spec.rb +2 -2
  329. data/spec/models/create_payee_address_spec.rb +2 -2
  330. data/spec/models/create_payee_spec.rb +2 -2
  331. data/spec/models/create_payees_csv_request2_spec.rb +2 -2
  332. data/spec/models/create_payees_csv_request_spec.rb +2 -2
  333. data/spec/models/create_payees_csv_response2_spec.rb +2 -2
  334. data/spec/models/create_payees_csv_response_spec.rb +2 -2
  335. data/spec/models/create_payees_request2_spec.rb +2 -2
  336. data/spec/models/create_payees_request_spec.rb +2 -2
  337. data/spec/models/create_payment_channel2_spec.rb +2 -2
  338. data/spec/models/create_payment_channel_spec.rb +2 -2
  339. data/spec/models/create_payor_link_request_spec.rb +57 -0
  340. data/spec/models/create_payout_request_spec.rb +2 -2
  341. data/spec/models/currency_type_spec.rb +41 -0
  342. data/spec/models/email_update_request_spec.rb +47 -0
  343. data/spec/models/error_response_spec.rb +2 -2
  344. data/spec/models/error_spec.rb +2 -2
  345. data/spec/models/failed_submission_spec.rb +2 -2
  346. data/spec/models/funding_account_response_spec.rb +71 -0
  347. data/spec/models/funding_audit_spec.rb +6 -2
  348. data/spec/models/funding_event_spec.rb +2 -2
  349. data/spec/models/funding_event_type_spec.rb +2 -2
  350. data/spec/models/{funding_delta_spec.rb → funding_payor_status_audit_response_spec.rb} +12 -12
  351. data/spec/models/funding_request_v1_spec.rb +2 -2
  352. data/spec/models/funding_request_v2_spec.rb +2 -2
  353. data/spec/models/fx_summary_v3_spec.rb +2 -2
  354. data/spec/models/fx_summary_v4_spec.rb +2 -2
  355. data/spec/models/generate_otp_request_spec.rb +41 -0
  356. data/spec/models/get_fundings_response_all_of_spec.rb +2 -2
  357. data/spec/models/get_fundings_response_spec.rb +2 -2
  358. data/spec/models/get_payments_for_payout_response_v3_page_spec.rb +2 -2
  359. data/spec/models/get_payments_for_payout_response_v3_spec.rb +2 -2
  360. data/spec/models/get_payments_for_payout_response_v3_summary_spec.rb +8 -2
  361. data/spec/models/get_payments_for_payout_response_v4_spec.rb +2 -2
  362. data/spec/models/get_payments_for_payout_response_v4_summary_spec.rb +22 -16
  363. data/spec/models/get_payout_statistics_spec.rb +2 -2
  364. data/spec/models/get_payouts_response_v3_links_spec.rb +2 -2
  365. data/spec/models/get_payouts_response_v3_page_spec.rb +2 -2
  366. data/spec/models/get_payouts_response_v3_spec.rb +2 -8
  367. data/spec/models/get_payouts_response_v4_spec.rb +2 -8
  368. data/spec/models/individual_response_spec.rb +2 -2
  369. data/spec/models/individual_v1_name_spec.rb +2 -2
  370. data/spec/models/individual_v1_spec.rb +2 -2
  371. data/spec/models/invitation_status_response_spec.rb +2 -2
  372. data/spec/models/invitation_status_spec.rb +2 -2
  373. data/spec/models/invite_payee_request_spec.rb +2 -2
  374. data/spec/models/invite_user_request_spec.rb +99 -0
  375. data/spec/models/kyc_state_spec.rb +35 -0
  376. data/spec/models/language_spec.rb +2 -2
  377. data/spec/models/{funding_delta_response_links_spec.rb → link_for_response_spec.rb} +8 -8
  378. data/spec/models/list_funding_accounts_response_spec.rb +53 -0
  379. data/spec/models/list_payments_response_page_spec.rb +2 -2
  380. data/spec/models/list_payments_response_spec.rb +2 -8
  381. data/spec/models/list_payments_response_v4_spec.rb +53 -0
  382. data/spec/models/list_source_account_response_links_spec.rb +2 -2
  383. data/spec/models/list_source_account_response_page_spec.rb +2 -2
  384. data/spec/models/list_source_account_response_spec.rb +2 -2
  385. data/spec/models/list_source_account_response_v2_spec.rb +2 -2
  386. data/spec/models/marketing_opt_in_spec.rb +2 -2
  387. data/spec/models/mfa_details_spec.rb +47 -0
  388. data/spec/models/mfa_status_spec.rb +35 -0
  389. data/spec/models/mfa_type_spec.rb +35 -0
  390. data/spec/models/notifications_spec.rb +2 -2
  391. data/spec/models/ofac_status_spec.rb +2 -2
  392. data/spec/models/onboarded_status_spec.rb +2 -2
  393. data/spec/models/otp_type_spec.rb +35 -0
  394. data/spec/models/{list_source_account_response_v2_page_spec.rb → page_for_response_spec.rb} +8 -8
  395. data/spec/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response_spec.rb +53 -0
  396. data/spec/models/paged_payee_invitation_status_response_spec.rb +2 -2
  397. data/spec/models/paged_payee_response2_spec.rb +2 -2
  398. data/spec/models/paged_payee_response2_summary_spec.rb +2 -2
  399. data/spec/models/paged_payee_response_links_spec.rb +2 -2
  400. data/spec/models/paged_payee_response_page_spec.rb +2 -2
  401. data/spec/models/paged_payee_response_spec.rb +2 -2
  402. data/spec/models/paged_payee_response_summary_spec.rb +2 -2
  403. data/spec/models/paged_response_page_spec.rb +2 -2
  404. data/spec/models/paged_response_spec.rb +2 -2
  405. data/spec/models/paged_user_response_links_spec.rb +47 -0
  406. data/spec/models/{get_payouts_response_v3_summary_spec.rb → paged_user_response_page_spec.rb} +13 -13
  407. data/spec/models/{funding_delta_response_spec.rb → paged_user_response_spec.rb} +8 -8
  408. data/spec/models/password_request_spec.rb +41 -0
  409. data/spec/models/payee_address_spec.rb +2 -2
  410. data/spec/models/payee_delta_response_links_spec.rb +2 -2
  411. data/spec/models/payee_delta_response_page_spec.rb +2 -2
  412. data/spec/models/payee_delta_response_spec.rb +2 -2
  413. data/spec/models/payee_delta_spec.rb +2 -2
  414. data/spec/models/payee_invitation_status_response_spec.rb +2 -2
  415. data/spec/models/payee_invitation_status_spec.rb +2 -2
  416. data/spec/models/payee_payment_channel_spec.rb +2 -2
  417. data/spec/models/payee_payor_ref2_spec.rb +2 -2
  418. data/spec/models/payee_payor_ref_spec.rb +2 -2
  419. data/spec/models/payee_response2_spec.rb +2 -2
  420. data/spec/models/payee_response_spec.rb +2 -2
  421. data/spec/models/payee_spec.rb +2 -2
  422. data/spec/models/payee_type_spec.rb +2 -2
  423. data/spec/models/payment_audit_currency_v3_spec.rb +2 -2
  424. data/spec/models/payment_audit_currency_v4_spec.rb +2 -2
  425. data/spec/models/payment_channel_country_spec.rb +2 -2
  426. data/spec/models/payment_channel_rule_spec.rb +2 -2
  427. data/spec/models/payment_channel_rules_response_spec.rb +2 -2
  428. data/spec/models/payment_delta_response_spec.rb +2 -2
  429. data/spec/models/payment_delta_spec.rb +2 -2
  430. data/spec/models/payment_event_response_v3_spec.rb +2 -2
  431. data/spec/models/payment_event_response_v4_spec.rb +2 -2
  432. data/spec/models/payment_instruction_spec.rb +2 -2
  433. data/spec/models/payment_rails_spec.rb +35 -0
  434. data/spec/models/payment_response_v3_spec.rb +20 -2
  435. data/spec/models/payment_response_v4_payout_spec.rb +8 -2
  436. data/spec/models/payment_response_v4_spec.rb +20 -2
  437. data/spec/models/payment_status_spec.rb +2 -2
  438. data/spec/models/payor_address_spec.rb +2 -2
  439. data/spec/models/payor_address_v2_spec.rb +2 -2
  440. data/spec/models/payor_aml_transaction_v3_spec.rb +203 -0
  441. data/spec/models/payor_aml_transaction_v4_spec.rb +203 -0
  442. data/spec/models/payor_branding_response_spec.rb +2 -2
  443. data/spec/models/payor_create_api_key_request_spec.rb +2 -2
  444. data/spec/models/payor_create_api_key_response_spec.rb +2 -2
  445. data/spec/models/payor_create_application_request_spec.rb +2 -2
  446. data/spec/models/payor_email_opt_out_request_spec.rb +2 -2
  447. data/spec/models/payor_links_response_links_spec.rb +2 -2
  448. data/spec/models/payor_links_response_payors_spec.rb +2 -2
  449. data/spec/models/payor_links_response_spec.rb +2 -2
  450. data/spec/models/payor_logo_request_spec.rb +2 -2
  451. data/spec/models/payor_v1_spec.rb +2 -6
  452. data/spec/models/payor_v2_spec.rb +14 -6
  453. data/spec/models/payout_payor_v4_spec.rb +2 -2
  454. data/spec/models/payout_principal_v4_spec.rb +2 -2
  455. data/spec/models/payout_status_v3_spec.rb +2 -2
  456. data/spec/models/payout_status_v4_spec.rb +2 -2
  457. data/spec/models/payout_summary_audit_v3_spec.rb +2 -8
  458. data/spec/models/payout_summary_audit_v4_spec.rb +8 -2
  459. data/spec/models/payout_summary_response_spec.rb +8 -2
  460. data/spec/models/payout_type_v4_spec.rb +2 -2
  461. data/spec/models/query_batch_response_spec.rb +2 -2
  462. data/spec/models/quote_fx_summary_spec.rb +2 -2
  463. data/spec/models/quote_response_spec.rb +2 -2
  464. data/spec/models/region_spec.rb +47 -0
  465. data/spec/models/register_mfa_request_spec.rb +41 -0
  466. data/spec/models/register_mfa_response_spec.rb +47 -0
  467. data/spec/models/register_sms_request_spec.rb +41 -0
  468. data/spec/models/rejected_payment_spec.rb +2 -2
  469. data/spec/models/resend_token_request_spec.rb +51 -0
  470. data/spec/models/reset_password_request_spec.rb +41 -0
  471. data/spec/models/role_spec.rb +41 -0
  472. data/spec/models/self_mfa_type_unregister_request_spec.rb +45 -0
  473. data/spec/models/self_update_password_request_spec.rb +47 -0
  474. data/spec/models/set_notifications_request_spec.rb +2 -2
  475. data/spec/models/source_account_response_spec.rb +2 -2
  476. data/spec/models/source_account_response_v2_spec.rb +2 -2
  477. data/spec/models/source_account_spec.rb +2 -2
  478. data/spec/models/source_account_summary_v3_spec.rb +2 -2
  479. data/spec/models/source_account_summary_v4_spec.rb +2 -2
  480. data/spec/models/supported_countries_response2_spec.rb +41 -0
  481. data/spec/models/supported_countries_response_spec.rb +2 -2
  482. data/spec/models/supported_country2_spec.rb +61 -0
  483. data/spec/models/supported_country_spec.rb +2 -2
  484. data/spec/models/supported_currency_response_spec.rb +2 -2
  485. data/spec/models/supported_currency_spec.rb +2 -2
  486. data/spec/models/token_type_spec.rb +35 -0
  487. data/spec/models/transfer_request_spec.rb +53 -0
  488. data/spec/models/unregister_mfa_request_spec.rb +51 -0
  489. data/spec/models/update_remote_id_request_spec.rb +2 -2
  490. data/spec/models/user_info_spec.rb +53 -0
  491. data/spec/models/user_response2_roles_spec.rb +41 -0
  492. data/spec/models/user_response2_spec.rb +137 -0
  493. data/spec/models/user_response_spec.rb +131 -0
  494. data/spec/models/user_status_spec.rb +35 -0
  495. data/spec/models/user_type2_spec.rb +35 -0
  496. data/spec/models/user_type_spec.rb +35 -0
  497. data/spec/models/validate_mfa_request_spec.rb +41 -0
  498. data/spec/models/validate_otp_request_spec.rb +41 -0
  499. data/spec/models/validate_password_response_spec.rb +59 -0
  500. data/spec/models/watchlist_status_spec.rb +2 -2
  501. data/spec/spec_helper.rb +2 -2
  502. data/velopayments.gemspec +2 -2
  503. metadata +358 -159
  504. data/Jenkinsfile +0 -41
  505. data/docs/AuthApi.md +0 -64
  506. data/docs/FundingDelta.md +0 -23
  507. data/docs/FundingDeltaResponse.md +0 -21
  508. data/docs/FundingDeltaResponseLinks.md +0 -19
  509. data/docs/GetPayoutsResponseV3Summary.md +0 -25
  510. data/docs/ListPaymentsResponseSummary.md +0 -25
  511. data/docs/PayorApplicationsApi.md +0 -119
  512. data/lib/velopayments/api/payor_applications_api.rb +0 -166
  513. data/spec/api/payor_applications_api_spec.rb +0 -62
@@ -0,0 +1,785 @@
1
+ =begin
2
+ #Velo Payments APIs
3
+
4
+ ### Terms and Definitions Throughout this document and the Velo platform the following terms are used: * **Payor.** An entity (typically a corporation) which wishes to pay funds to one or more payees via a payout. * **Payee.** The recipient of funds paid out by a payor. * **Payment.** A single transfer of funds from a payor to a payee. * **Payout.** A batch of Payments, typically used by a payor to logically group payments (e.g. by business day). Technically there need be no relationship between the payments in a payout - a single payout can contain payments to multiple payees and/or multiple payments to a single payee. * **Sandbox.** An integration environment provided by Velo Payments which offers a similar API experience to the production environment, but all funding and payment events are simulated, along with many other services such as OFAC sanctions list checking. ## Overview The Velo Payments API allows a payor to perform a number of operations. The following is a list of the main capabilities in a natural order of execution: * Authenticate with the Velo platform * Maintain a collection of payees * Query the payor’s current balance of funds within the platform and perform additional funding * Issue payments to payees * Query the platform for a history of those payments This document describes the main concepts and APIs required to get up and running with the Velo Payments platform. It is not an exhaustive API reference. For that, please see the separate Velo Payments API Reference. ## API Considerations The Velo Payments API is REST based and uses the JSON format for requests and responses. Most calls are secured using OAuth 2 security and require a valid authentication access token for successful operation. See the Authentication section for details. Where a dynamic value is required in the examples below, the {token} format is used, suggesting that the caller needs to supply the appropriate value of the token in question (without including the { or } characters). Where curl examples are given, the –d @filename.json approach is used, indicating that the request body should be placed into a file named filename.json in the current directory. Each of the curl examples in this document should be considered a single line on the command-line, regardless of how they appear in print. ## Authenticating with the Velo Platform Once Velo backoffice staff have added your organization as a payor within the Velo platform sandbox, they will create you a payor Id, an API key and an API secret and share these with you in a secure manner. You will need to use these values to authenticate with the Velo platform in order to gain access to the APIs. The steps to take are explained in the following: create a string comprising the API key (e.g. 44a9537d-d55d-4b47-8082-14061c2bcdd8) and API secret (e.g. c396b26b-137a-44fd-87f5-34631f8fd529) with a colon between them. E.g. 44a9537d-d55d-4b47-8082-14061c2bcdd8:c396b26b-137a-44fd-87f5-34631f8fd529 base64 encode this string. E.g.: NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ== create an HTTP **Authorization** header with the value set to e.g. Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ== perform the Velo authentication REST call using the HTTP header created above e.g. via curl: ``` curl -X POST \\ -H \"Content-Type: application/json\" \\ -H \"Authorization: Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ==\" \\ 'https://api.sandbox.velopayments.com/v1/authenticate?grant_type=client_credentials' ``` If successful, this call will result in a **200** HTTP status code and a response body such as: ``` { \"access_token\":\"19f6bafd-93fd-4747-b229-00507bbc991f\", \"token_type\":\"bearer\", \"expires_in\":1799, \"scope\":\"...\" } ``` ## API access following authentication Following successful authentication, the value of the access_token field in the response (indicated in green above) should then be presented with all subsequent API calls to allow the Velo platform to validate that the caller is authenticated. This is achieved by setting the HTTP Authorization header with the value set to e.g. Bearer 19f6bafd-93fd-4747-b229-00507bbc991f such as the curl example below: ``` -H \"Authorization: Bearer 19f6bafd-93fd-4747-b229-00507bbc991f \" ``` If you make other Velo API calls which require authorization but the Authorization header is missing or invalid then you will get a **401** HTTP status response.
5
+
6
+ The version of the OpenAPI document: 2.18.31
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.2.3-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module VeloPayments
16
+ class TokensApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Generate an OTP
23
+ # Generate an OTP and send to the MFA type specified in the request body
24
+ # @param token_id [String] The UUID of the Token
25
+ # @param generate_otp_request [GenerateOTPRequest] The MFA type to send the generated OTP to
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [nil]
28
+ def generate_otp(token_id, generate_otp_request, opts = {})
29
+ generate_otp_with_http_info(token_id, generate_otp_request, opts)
30
+ nil
31
+ end
32
+
33
+ # Generate an OTP
34
+ # Generate an OTP and send to the MFA type specified in the request body
35
+ # @param token_id [String] The UUID of the Token
36
+ # @param generate_otp_request [GenerateOTPRequest] The MFA type to send the generated OTP to
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
39
+ def generate_otp_with_http_info(token_id, generate_otp_request, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: TokensApi.generate_otp ...'
42
+ end
43
+ # verify the required parameter 'token_id' is set
44
+ if @api_client.config.client_side_validation && token_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.generate_otp"
46
+ end
47
+ # verify the required parameter 'generate_otp_request' is set
48
+ if @api_client.config.client_side_validation && generate_otp_request.nil?
49
+ fail ArgumentError, "Missing the required parameter 'generate_otp_request' when calling TokensApi.generate_otp"
50
+ end
51
+ # resource path
52
+ local_var_path = '/v1/tokens/{tokenId}/otp'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
53
+
54
+ # query parameters
55
+ query_params = opts[:query_params] || {}
56
+
57
+ # header parameters
58
+ header_params = opts[:header_params] || {}
59
+ # HTTP header 'Accept' (if needed)
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
61
+ # HTTP header 'Content-Type'
62
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
63
+
64
+ # form parameters
65
+ form_params = opts[:form_params] || {}
66
+
67
+ # http body (model)
68
+ post_body = opts[:body] || @api_client.object_to_http_body(generate_otp_request)
69
+
70
+ # return_type
71
+ return_type = opts[:return_type]
72
+
73
+ # auth_names
74
+ auth_names = opts[:auth_names] || []
75
+
76
+ new_options = opts.merge(
77
+ :header_params => header_params,
78
+ :query_params => query_params,
79
+ :form_params => form_params,
80
+ :body => post_body,
81
+ :auth_names => auth_names,
82
+ :return_type => return_type
83
+ )
84
+
85
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
86
+ if @api_client.config.debugging
87
+ @api_client.config.logger.debug "API called: TokensApi#generate_otp\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
88
+ end
89
+ return data, status_code, headers
90
+ end
91
+
92
+ # Send an OTP to SMS Users
93
+ # <p>Generate an OTP and send to the SMS device if the user</p> <p>Only users who have SMS as their registered MFA device will receive an OTP</p> <p>Used in conjuction with endpoints that require the Velo-OTP header</p>
94
+ # @param token_id [String] The UUID of the Token
95
+ # @param [Hash] opts the optional parameters
96
+ # @return [nil]
97
+ def generate_otp_for_sms(token_id, opts = {})
98
+ generate_otp_for_sms_with_http_info(token_id, opts)
99
+ nil
100
+ end
101
+
102
+ # Send an OTP to SMS Users
103
+ # &lt;p&gt;Generate an OTP and send to the SMS device if the user&lt;/p&gt; &lt;p&gt;Only users who have SMS as their registered MFA device will receive an OTP&lt;/p&gt; &lt;p&gt;Used in conjuction with endpoints that require the Velo-OTP header&lt;/p&gt;
104
+ # @param token_id [String] The UUID of the Token
105
+ # @param [Hash] opts the optional parameters
106
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
107
+ def generate_otp_for_sms_with_http_info(token_id, opts = {})
108
+ if @api_client.config.debugging
109
+ @api_client.config.logger.debug 'Calling API: TokensApi.generate_otp_for_sms ...'
110
+ end
111
+ # verify the required parameter 'token_id' is set
112
+ if @api_client.config.client_side_validation && token_id.nil?
113
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.generate_otp_for_sms"
114
+ end
115
+ # resource path
116
+ local_var_path = '/v1/tokens/{tokenId}/otp/generate'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
117
+
118
+ # query parameters
119
+ query_params = opts[:query_params] || {}
120
+
121
+ # header parameters
122
+ header_params = opts[:header_params] || {}
123
+ # HTTP header 'Accept' (if needed)
124
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
125
+
126
+ # form parameters
127
+ form_params = opts[:form_params] || {}
128
+
129
+ # http body (model)
130
+ post_body = opts[:body]
131
+
132
+ # return_type
133
+ return_type = opts[:return_type]
134
+
135
+ # auth_names
136
+ auth_names = opts[:auth_names] || []
137
+
138
+ new_options = opts.merge(
139
+ :header_params => header_params,
140
+ :query_params => query_params,
141
+ :form_params => form_params,
142
+ :body => post_body,
143
+ :auth_names => auth_names,
144
+ :return_type => return_type
145
+ )
146
+
147
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
148
+ if @api_client.config.debugging
149
+ @api_client.config.logger.debug "API called: TokensApi#generate_otp_for_sms\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
150
+ end
151
+ return data, status_code, headers
152
+ end
153
+
154
+ # Get a QR Code image
155
+ # <p>Get a QR Code for an MFA device that supports it </p> <p>The device must have first been registered</p>
156
+ # @param token_id [String] The UUID of the Token
157
+ # @param [Hash] opts the optional parameters
158
+ # @option opts [Integer] :width The width of the image
159
+ # @option opts [Integer] :height The height of the image
160
+ # @return [File]
161
+ def get_qr_code_for_mfa(token_id, opts = {})
162
+ data, _status_code, _headers = get_qr_code_for_mfa_with_http_info(token_id, opts)
163
+ data
164
+ end
165
+
166
+ # Get a QR Code image
167
+ # &lt;p&gt;Get a QR Code for an MFA device that supports it &lt;/p&gt; &lt;p&gt;The device must have first been registered&lt;/p&gt;
168
+ # @param token_id [String] The UUID of the Token
169
+ # @param [Hash] opts the optional parameters
170
+ # @option opts [Integer] :width The width of the image
171
+ # @option opts [Integer] :height The height of the image
172
+ # @return [Array<(File, Integer, Hash)>] File data, response status code and response headers
173
+ def get_qr_code_for_mfa_with_http_info(token_id, opts = {})
174
+ if @api_client.config.debugging
175
+ @api_client.config.logger.debug 'Calling API: TokensApi.get_qr_code_for_mfa ...'
176
+ end
177
+ # verify the required parameter 'token_id' is set
178
+ if @api_client.config.client_side_validation && token_id.nil?
179
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.get_qr_code_for_mfa"
180
+ end
181
+ if @api_client.config.client_side_validation && !opts[:'width'].nil? && opts[:'width'] > 1024
182
+ fail ArgumentError, 'invalid value for "opts[:"width"]" when calling TokensApi.get_qr_code_for_mfa, must be smaller than or equal to 1024.'
183
+ end
184
+
185
+ if @api_client.config.client_side_validation && !opts[:'width'].nil? && opts[:'width'] < 1
186
+ fail ArgumentError, 'invalid value for "opts[:"width"]" when calling TokensApi.get_qr_code_for_mfa, must be greater than or equal to 1.'
187
+ end
188
+
189
+ if @api_client.config.client_side_validation && !opts[:'height'].nil? && opts[:'height'] > 1024
190
+ fail ArgumentError, 'invalid value for "opts[:"height"]" when calling TokensApi.get_qr_code_for_mfa, must be smaller than or equal to 1024.'
191
+ end
192
+
193
+ if @api_client.config.client_side_validation && !opts[:'height'].nil? && opts[:'height'] < 1
194
+ fail ArgumentError, 'invalid value for "opts[:"height"]" when calling TokensApi.get_qr_code_for_mfa, must be greater than or equal to 1.'
195
+ end
196
+
197
+ # resource path
198
+ local_var_path = '/v1/tokens/{tokenId}/mfa/qrcode'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
199
+
200
+ # query parameters
201
+ query_params = opts[:query_params] || {}
202
+ query_params[:'width'] = opts[:'width'] if !opts[:'width'].nil?
203
+ query_params[:'height'] = opts[:'height'] if !opts[:'height'].nil?
204
+
205
+ # header parameters
206
+ header_params = opts[:header_params] || {}
207
+ # HTTP header 'Accept' (if needed)
208
+ header_params['Accept'] = @api_client.select_header_accept(['image/png', 'application/json'])
209
+
210
+ # form parameters
211
+ form_params = opts[:form_params] || {}
212
+
213
+ # http body (model)
214
+ post_body = opts[:body]
215
+
216
+ # return_type
217
+ return_type = opts[:return_type] || 'File'
218
+
219
+ # auth_names
220
+ auth_names = opts[:auth_names] || []
221
+
222
+ new_options = opts.merge(
223
+ :header_params => header_params,
224
+ :query_params => query_params,
225
+ :form_params => form_params,
226
+ :body => post_body,
227
+ :auth_names => auth_names,
228
+ :return_type => return_type
229
+ )
230
+
231
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
232
+ if @api_client.config.debugging
233
+ @api_client.config.logger.debug "API called: TokensApi#get_qr_code_for_mfa\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
234
+ end
235
+ return data, status_code, headers
236
+ end
237
+
238
+ # Get Token
239
+ # Get a Single Verification Token by Id.
240
+ # @param token_id [String] The UUID of the Token
241
+ # @param [Hash] opts the optional parameters
242
+ # @return [CheckTokenResponse]
243
+ def get_verification_token_by_id(token_id, opts = {})
244
+ data, _status_code, _headers = get_verification_token_by_id_with_http_info(token_id, opts)
245
+ data
246
+ end
247
+
248
+ # Get Token
249
+ # Get a Single Verification Token by Id.
250
+ # @param token_id [String] The UUID of the Token
251
+ # @param [Hash] opts the optional parameters
252
+ # @return [Array<(CheckTokenResponse, Integer, Hash)>] CheckTokenResponse data, response status code and response headers
253
+ def get_verification_token_by_id_with_http_info(token_id, opts = {})
254
+ if @api_client.config.debugging
255
+ @api_client.config.logger.debug 'Calling API: TokensApi.get_verification_token_by_id ...'
256
+ end
257
+ # verify the required parameter 'token_id' is set
258
+ if @api_client.config.client_side_validation && token_id.nil?
259
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.get_verification_token_by_id"
260
+ end
261
+ # resource path
262
+ local_var_path = '/v1/tokens/{tokenId}'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
263
+
264
+ # query parameters
265
+ query_params = opts[:query_params] || {}
266
+
267
+ # header parameters
268
+ header_params = opts[:header_params] || {}
269
+ # HTTP header 'Accept' (if needed)
270
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
271
+
272
+ # form parameters
273
+ form_params = opts[:form_params] || {}
274
+
275
+ # http body (model)
276
+ post_body = opts[:body]
277
+
278
+ # return_type
279
+ return_type = opts[:return_type] || 'CheckTokenResponse'
280
+
281
+ # auth_names
282
+ auth_names = opts[:auth_names] || []
283
+
284
+ new_options = opts.merge(
285
+ :header_params => header_params,
286
+ :query_params => query_params,
287
+ :form_params => form_params,
288
+ :body => post_body,
289
+ :auth_names => auth_names,
290
+ :return_type => return_type
291
+ )
292
+
293
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
294
+ if @api_client.config.debugging
295
+ @api_client.config.logger.debug "API called: TokensApi#get_verification_token_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
296
+ end
297
+ return data, status_code, headers
298
+ end
299
+
300
+ # Register an MFA Device
301
+ # <p>Some MFA Devices based on TOTP require a registration step (Authy, Authenticator) </p> <p>Registering the device will create a shared secret that the MFA device uses to generate OTPs</p>
302
+ # @param token_id [String] The UUID of the Token
303
+ # @param register_mfa_request [RegisterMFARequest] The MFA Type to register
304
+ # @param [Hash] opts the optional parameters
305
+ # @return [RegisterMFAResponse]
306
+ def register_mfa(token_id, register_mfa_request, opts = {})
307
+ data, _status_code, _headers = register_mfa_with_http_info(token_id, register_mfa_request, opts)
308
+ data
309
+ end
310
+
311
+ # Register an MFA Device
312
+ # &lt;p&gt;Some MFA Devices based on TOTP require a registration step (Authy, Authenticator) &lt;/p&gt; &lt;p&gt;Registering the device will create a shared secret that the MFA device uses to generate OTPs&lt;/p&gt;
313
+ # @param token_id [String] The UUID of the Token
314
+ # @param register_mfa_request [RegisterMFARequest] The MFA Type to register
315
+ # @param [Hash] opts the optional parameters
316
+ # @return [Array<(RegisterMFAResponse, Integer, Hash)>] RegisterMFAResponse data, response status code and response headers
317
+ def register_mfa_with_http_info(token_id, register_mfa_request, opts = {})
318
+ if @api_client.config.debugging
319
+ @api_client.config.logger.debug 'Calling API: TokensApi.register_mfa ...'
320
+ end
321
+ # verify the required parameter 'token_id' is set
322
+ if @api_client.config.client_side_validation && token_id.nil?
323
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.register_mfa"
324
+ end
325
+ # verify the required parameter 'register_mfa_request' is set
326
+ if @api_client.config.client_side_validation && register_mfa_request.nil?
327
+ fail ArgumentError, "Missing the required parameter 'register_mfa_request' when calling TokensApi.register_mfa"
328
+ end
329
+ # resource path
330
+ local_var_path = '/v1/tokens/{tokenId}/mfa/register'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
331
+
332
+ # query parameters
333
+ query_params = opts[:query_params] || {}
334
+
335
+ # header parameters
336
+ header_params = opts[:header_params] || {}
337
+ # HTTP header 'Accept' (if needed)
338
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
339
+ # HTTP header 'Content-Type'
340
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
341
+
342
+ # form parameters
343
+ form_params = opts[:form_params] || {}
344
+
345
+ # http body (model)
346
+ post_body = opts[:body] || @api_client.object_to_http_body(register_mfa_request)
347
+
348
+ # return_type
349
+ return_type = opts[:return_type] || 'RegisterMFAResponse'
350
+
351
+ # auth_names
352
+ auth_names = opts[:auth_names] || []
353
+
354
+ new_options = opts.merge(
355
+ :header_params => header_params,
356
+ :query_params => query_params,
357
+ :form_params => form_params,
358
+ :body => post_body,
359
+ :auth_names => auth_names,
360
+ :return_type => return_type
361
+ )
362
+
363
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
364
+ if @api_client.config.debugging
365
+ @api_client.config.logger.debug "API called: TokensApi#register_mfa\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
366
+ end
367
+ return data, status_code, headers
368
+ end
369
+
370
+ # Resend a token
371
+ # <p>Resend the specified token </p> <p>The token to resend must already exist for the user </p> <p>It will be revoked and a new one issued</p>
372
+ # @param user_id [String] The UUID of the User.
373
+ # @param resend_token_request [ResendTokenRequest] The type of token to resend
374
+ # @param [Hash] opts the optional parameters
375
+ # @return [nil]
376
+ def resend_token(user_id, resend_token_request, opts = {})
377
+ resend_token_with_http_info(user_id, resend_token_request, opts)
378
+ nil
379
+ end
380
+
381
+ # Resend a token
382
+ # &lt;p&gt;Resend the specified token &lt;/p&gt; &lt;p&gt;The token to resend must already exist for the user &lt;/p&gt; &lt;p&gt;It will be revoked and a new one issued&lt;/p&gt;
383
+ # @param user_id [String] The UUID of the User.
384
+ # @param resend_token_request [ResendTokenRequest] The type of token to resend
385
+ # @param [Hash] opts the optional parameters
386
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
387
+ def resend_token_with_http_info(user_id, resend_token_request, opts = {})
388
+ if @api_client.config.debugging
389
+ @api_client.config.logger.debug 'Calling API: TokensApi.resend_token ...'
390
+ end
391
+ # verify the required parameter 'user_id' is set
392
+ if @api_client.config.client_side_validation && user_id.nil?
393
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling TokensApi.resend_token"
394
+ end
395
+ # verify the required parameter 'resend_token_request' is set
396
+ if @api_client.config.client_side_validation && resend_token_request.nil?
397
+ fail ArgumentError, "Missing the required parameter 'resend_token_request' when calling TokensApi.resend_token"
398
+ end
399
+ # resource path
400
+ local_var_path = '/v2/users/{userId}/tokens'.sub('{' + 'userId' + '}', CGI.escape(user_id.to_s))
401
+
402
+ # query parameters
403
+ query_params = opts[:query_params] || {}
404
+
405
+ # header parameters
406
+ header_params = opts[:header_params] || {}
407
+ # HTTP header 'Accept' (if needed)
408
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
409
+ # HTTP header 'Content-Type'
410
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
411
+
412
+ # form parameters
413
+ form_params = opts[:form_params] || {}
414
+
415
+ # http body (model)
416
+ post_body = opts[:body] || @api_client.object_to_http_body(resend_token_request)
417
+
418
+ # return_type
419
+ return_type = opts[:return_type]
420
+
421
+ # auth_names
422
+ auth_names = opts[:auth_names] || ['OAuth2']
423
+
424
+ new_options = opts.merge(
425
+ :header_params => header_params,
426
+ :query_params => query_params,
427
+ :form_params => form_params,
428
+ :body => post_body,
429
+ :auth_names => auth_names,
430
+ :return_type => return_type
431
+ )
432
+
433
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
434
+ if @api_client.config.debugging
435
+ @api_client.config.logger.debug "API called: TokensApi#resend_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
436
+ end
437
+ return data, status_code, headers
438
+ end
439
+
440
+ # Submit a password
441
+ # Submit a password
442
+ # @param token_id [String] The UUID of the Token
443
+ # @param password_request [PasswordRequest] The password
444
+ # @param [Hash] opts the optional parameters
445
+ # @option opts [String] :velo_otp required when updating password using reset password &lt;P&gt; The OTP is supplied by the users MFA device
446
+ # @return [AccessTokenResponse]
447
+ def submit_password(token_id, password_request, opts = {})
448
+ data, _status_code, _headers = submit_password_with_http_info(token_id, password_request, opts)
449
+ data
450
+ end
451
+
452
+ # Submit a password
453
+ # Submit a password
454
+ # @param token_id [String] The UUID of the Token
455
+ # @param password_request [PasswordRequest] The password
456
+ # @param [Hash] opts the optional parameters
457
+ # @option opts [String] :velo_otp required when updating password using reset password &lt;P&gt; The OTP is supplied by the users MFA device
458
+ # @return [Array<(AccessTokenResponse, Integer, Hash)>] AccessTokenResponse data, response status code and response headers
459
+ def submit_password_with_http_info(token_id, password_request, opts = {})
460
+ if @api_client.config.debugging
461
+ @api_client.config.logger.debug 'Calling API: TokensApi.submit_password ...'
462
+ end
463
+ # verify the required parameter 'token_id' is set
464
+ if @api_client.config.client_side_validation && token_id.nil?
465
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.submit_password"
466
+ end
467
+ # verify the required parameter 'password_request' is set
468
+ if @api_client.config.client_side_validation && password_request.nil?
469
+ fail ArgumentError, "Missing the required parameter 'password_request' when calling TokensApi.submit_password"
470
+ end
471
+ # resource path
472
+ local_var_path = '/v1/tokens/{tokenId}/password'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
473
+
474
+ # query parameters
475
+ query_params = opts[:query_params] || {}
476
+
477
+ # header parameters
478
+ header_params = opts[:header_params] || {}
479
+ # HTTP header 'Accept' (if needed)
480
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
481
+ # HTTP header 'Content-Type'
482
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
483
+ header_params[:'Velo-OTP'] = opts[:'velo_otp'] if !opts[:'velo_otp'].nil?
484
+
485
+ # form parameters
486
+ form_params = opts[:form_params] || {}
487
+
488
+ # http body (model)
489
+ post_body = opts[:body] || @api_client.object_to_http_body(password_request)
490
+
491
+ # return_type
492
+ return_type = opts[:return_type] || 'AccessTokenResponse'
493
+
494
+ # auth_names
495
+ auth_names = opts[:auth_names] || []
496
+
497
+ new_options = opts.merge(
498
+ :header_params => header_params,
499
+ :query_params => query_params,
500
+ :form_params => form_params,
501
+ :body => post_body,
502
+ :auth_names => auth_names,
503
+ :return_type => return_type
504
+ )
505
+
506
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
507
+ if @api_client.config.debugging
508
+ @api_client.config.logger.debug "API called: TokensApi#submit_password\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
509
+ end
510
+ return data, status_code, headers
511
+ end
512
+
513
+ # Unlock the user
514
+ # <p>When a user is locked out of their account due to execeding the limit of login attempts</p> <p>They can use a token to unlock their account </p> <p>Submitting the token will unlock the account associated with the token</p>
515
+ # @param token_id [String] The UUID of the Token
516
+ # @param [Hash] opts the optional parameters
517
+ # @return [nil]
518
+ def unlock_account_with_token(token_id, opts = {})
519
+ unlock_account_with_token_with_http_info(token_id, opts)
520
+ nil
521
+ end
522
+
523
+ # Unlock the user
524
+ # &lt;p&gt;When a user is locked out of their account due to execeding the limit of login attempts&lt;/p&gt; &lt;p&gt;They can use a token to unlock their account &lt;/p&gt; &lt;p&gt;Submitting the token will unlock the account associated with the token&lt;/p&gt;
525
+ # @param token_id [String] The UUID of the Token
526
+ # @param [Hash] opts the optional parameters
527
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
528
+ def unlock_account_with_token_with_http_info(token_id, opts = {})
529
+ if @api_client.config.debugging
530
+ @api_client.config.logger.debug 'Calling API: TokensApi.unlock_account_with_token ...'
531
+ end
532
+ # verify the required parameter 'token_id' is set
533
+ if @api_client.config.client_side_validation && token_id.nil?
534
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.unlock_account_with_token"
535
+ end
536
+ # resource path
537
+ local_var_path = '/v1/tokens/{tokenId}/password/lockout'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
538
+
539
+ # query parameters
540
+ query_params = opts[:query_params] || {}
541
+
542
+ # header parameters
543
+ header_params = opts[:header_params] || {}
544
+ # HTTP header 'Accept' (if needed)
545
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
546
+
547
+ # form parameters
548
+ form_params = opts[:form_params] || {}
549
+
550
+ # http body (model)
551
+ post_body = opts[:body]
552
+
553
+ # return_type
554
+ return_type = opts[:return_type]
555
+
556
+ # auth_names
557
+ auth_names = opts[:auth_names] || []
558
+
559
+ new_options = opts.merge(
560
+ :header_params => header_params,
561
+ :query_params => query_params,
562
+ :form_params => form_params,
563
+ :body => post_body,
564
+ :auth_names => auth_names,
565
+ :return_type => return_type
566
+ )
567
+
568
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
569
+ if @api_client.config.debugging
570
+ @api_client.config.logger.debug "API called: TokensApi#unlock_account_with_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
571
+ end
572
+ return data, status_code, headers
573
+ end
574
+
575
+ # Validate an MFA Device
576
+ # <p>Validate the user's registered MFA device with an OTP </p> <p>The response will be different based on the token type against which the MFA is validated </p> <p>For INVITE_MFA_USER tokens the response will be 200 and an access token will be returned i the response </p> <p>For MFA_REGISTRATION tokens the response will be 204</p>
577
+ # @param token_id [String] The UUID of the Token
578
+ # @param validate_mfa_request [ValidateMFARequest] The OTP generated or received by the device
579
+ # @param [Hash] opts the optional parameters
580
+ # @return [AccessTokenResponse]
581
+ def validate_mfa(token_id, validate_mfa_request, opts = {})
582
+ data, _status_code, _headers = validate_mfa_with_http_info(token_id, validate_mfa_request, opts)
583
+ data
584
+ end
585
+
586
+ # Validate an MFA Device
587
+ # &lt;p&gt;Validate the user&#39;s registered MFA device with an OTP &lt;/p&gt; &lt;p&gt;The response will be different based on the token type against which the MFA is validated &lt;/p&gt; &lt;p&gt;For INVITE_MFA_USER tokens the response will be 200 and an access token will be returned i the response &lt;/p&gt; &lt;p&gt;For MFA_REGISTRATION tokens the response will be 204&lt;/p&gt;
588
+ # @param token_id [String] The UUID of the Token
589
+ # @param validate_mfa_request [ValidateMFARequest] The OTP generated or received by the device
590
+ # @param [Hash] opts the optional parameters
591
+ # @return [Array<(AccessTokenResponse, Integer, Hash)>] AccessTokenResponse data, response status code and response headers
592
+ def validate_mfa_with_http_info(token_id, validate_mfa_request, opts = {})
593
+ if @api_client.config.debugging
594
+ @api_client.config.logger.debug 'Calling API: TokensApi.validate_mfa ...'
595
+ end
596
+ # verify the required parameter 'token_id' is set
597
+ if @api_client.config.client_side_validation && token_id.nil?
598
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.validate_mfa"
599
+ end
600
+ # verify the required parameter 'validate_mfa_request' is set
601
+ if @api_client.config.client_side_validation && validate_mfa_request.nil?
602
+ fail ArgumentError, "Missing the required parameter 'validate_mfa_request' when calling TokensApi.validate_mfa"
603
+ end
604
+ # resource path
605
+ local_var_path = '/v1/tokens/{tokenId}/mfa/validate'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
606
+
607
+ # query parameters
608
+ query_params = opts[:query_params] || {}
609
+
610
+ # header parameters
611
+ header_params = opts[:header_params] || {}
612
+ # HTTP header 'Accept' (if needed)
613
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
614
+ # HTTP header 'Content-Type'
615
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
616
+
617
+ # form parameters
618
+ form_params = opts[:form_params] || {}
619
+
620
+ # http body (model)
621
+ post_body = opts[:body] || @api_client.object_to_http_body(validate_mfa_request)
622
+
623
+ # return_type
624
+ return_type = opts[:return_type] || 'AccessTokenResponse'
625
+
626
+ # auth_names
627
+ auth_names = opts[:auth_names] || []
628
+
629
+ new_options = opts.merge(
630
+ :header_params => header_params,
631
+ :query_params => query_params,
632
+ :form_params => form_params,
633
+ :body => post_body,
634
+ :auth_names => auth_names,
635
+ :return_type => return_type
636
+ )
637
+
638
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
639
+ if @api_client.config.debugging
640
+ @api_client.config.logger.debug "API called: TokensApi#validate_mfa\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
641
+ end
642
+ return data, status_code, headers
643
+ end
644
+
645
+ # Validate an OTP
646
+ # <p>Validate the OTP </p> <p>The token that was used in the request will be revoked and a new token issued </p> <p>The new token link will be returned in a location header</p> <p>If there are too many invalid OTP requests the token may be disabled</p>
647
+ # @param token_id [String] The UUID of the Token
648
+ # @param validate_otp_request [ValidateOTPRequest] The OTP generated and sent to the device
649
+ # @param [Hash] opts the optional parameters
650
+ # @return [nil]
651
+ def validate_otp(token_id, validate_otp_request, opts = {})
652
+ validate_otp_with_http_info(token_id, validate_otp_request, opts)
653
+ nil
654
+ end
655
+
656
+ # Validate an OTP
657
+ # &lt;p&gt;Validate the OTP &lt;/p&gt; &lt;p&gt;The token that was used in the request will be revoked and a new token issued &lt;/p&gt; &lt;p&gt;The new token link will be returned in a location header&lt;/p&gt; &lt;p&gt;If there are too many invalid OTP requests the token may be disabled&lt;/p&gt;
658
+ # @param token_id [String] The UUID of the Token
659
+ # @param validate_otp_request [ValidateOTPRequest] The OTP generated and sent to the device
660
+ # @param [Hash] opts the optional parameters
661
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
662
+ def validate_otp_with_http_info(token_id, validate_otp_request, opts = {})
663
+ if @api_client.config.debugging
664
+ @api_client.config.logger.debug 'Calling API: TokensApi.validate_otp ...'
665
+ end
666
+ # verify the required parameter 'token_id' is set
667
+ if @api_client.config.client_side_validation && token_id.nil?
668
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.validate_otp"
669
+ end
670
+ # verify the required parameter 'validate_otp_request' is set
671
+ if @api_client.config.client_side_validation && validate_otp_request.nil?
672
+ fail ArgumentError, "Missing the required parameter 'validate_otp_request' when calling TokensApi.validate_otp"
673
+ end
674
+ # resource path
675
+ local_var_path = '/v1/tokens/{tokenId}/otp/validate'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
676
+
677
+ # query parameters
678
+ query_params = opts[:query_params] || {}
679
+
680
+ # header parameters
681
+ header_params = opts[:header_params] || {}
682
+ # HTTP header 'Accept' (if needed)
683
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
684
+ # HTTP header 'Content-Type'
685
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
686
+
687
+ # form parameters
688
+ form_params = opts[:form_params] || {}
689
+
690
+ # http body (model)
691
+ post_body = opts[:body] || @api_client.object_to_http_body(validate_otp_request)
692
+
693
+ # return_type
694
+ return_type = opts[:return_type]
695
+
696
+ # auth_names
697
+ auth_names = opts[:auth_names] || []
698
+
699
+ new_options = opts.merge(
700
+ :header_params => header_params,
701
+ :query_params => query_params,
702
+ :form_params => form_params,
703
+ :body => post_body,
704
+ :auth_names => auth_names,
705
+ :return_type => return_type
706
+ )
707
+
708
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
709
+ if @api_client.config.debugging
710
+ @api_client.config.logger.debug "API called: TokensApi#validate_otp\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
711
+ end
712
+ return data, status_code, headers
713
+ end
714
+
715
+ # Validate the proposed password
716
+ # validate the password and return a score
717
+ # @param token_id [String] The UUID of the Token
718
+ # @param password_request [PasswordRequest] The password
719
+ # @param [Hash] opts the optional parameters
720
+ # @return [ValidatePasswordResponse]
721
+ def validate_password(token_id, password_request, opts = {})
722
+ data, _status_code, _headers = validate_password_with_http_info(token_id, password_request, opts)
723
+ data
724
+ end
725
+
726
+ # Validate the proposed password
727
+ # validate the password and return a score
728
+ # @param token_id [String] The UUID of the Token
729
+ # @param password_request [PasswordRequest] The password
730
+ # @param [Hash] opts the optional parameters
731
+ # @return [Array<(ValidatePasswordResponse, Integer, Hash)>] ValidatePasswordResponse data, response status code and response headers
732
+ def validate_password_with_http_info(token_id, password_request, opts = {})
733
+ if @api_client.config.debugging
734
+ @api_client.config.logger.debug 'Calling API: TokensApi.validate_password ...'
735
+ end
736
+ # verify the required parameter 'token_id' is set
737
+ if @api_client.config.client_side_validation && token_id.nil?
738
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling TokensApi.validate_password"
739
+ end
740
+ # verify the required parameter 'password_request' is set
741
+ if @api_client.config.client_side_validation && password_request.nil?
742
+ fail ArgumentError, "Missing the required parameter 'password_request' when calling TokensApi.validate_password"
743
+ end
744
+ # resource path
745
+ local_var_path = '/v1/tokens/{tokenId}/password/validate'.sub('{' + 'tokenId' + '}', CGI.escape(token_id.to_s))
746
+
747
+ # query parameters
748
+ query_params = opts[:query_params] || {}
749
+
750
+ # header parameters
751
+ header_params = opts[:header_params] || {}
752
+ # HTTP header 'Accept' (if needed)
753
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
754
+ # HTTP header 'Content-Type'
755
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
756
+
757
+ # form parameters
758
+ form_params = opts[:form_params] || {}
759
+
760
+ # http body (model)
761
+ post_body = opts[:body] || @api_client.object_to_http_body(password_request)
762
+
763
+ # return_type
764
+ return_type = opts[:return_type] || 'ValidatePasswordResponse'
765
+
766
+ # auth_names
767
+ auth_names = opts[:auth_names] || []
768
+
769
+ new_options = opts.merge(
770
+ :header_params => header_params,
771
+ :query_params => query_params,
772
+ :form_params => form_params,
773
+ :body => post_body,
774
+ :auth_names => auth_names,
775
+ :return_type => return_type
776
+ )
777
+
778
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
779
+ if @api_client.config.debugging
780
+ @api_client.config.logger.debug "API called: TokensApi#validate_password\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
781
+ end
782
+ return data, status_code, headers
783
+ end
784
+ end
785
+ end