lithic 0.1.0.pre.alpha.3 → 0.1.0.pre.alpha.5

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 (1037) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +33 -6
  3. data/lib/lithic/client.rb +9 -7
  4. data/lib/lithic/errors.rb +168 -159
  5. data/lib/lithic/internal/cursor_page.rb +82 -0
  6. data/lib/lithic/internal/single_page.rb +76 -0
  7. data/lib/lithic/internal/transport/base_client.rb +473 -0
  8. data/lib/lithic/internal/transport/pooled_net_requester.rb +184 -0
  9. data/lib/lithic/internal/type/array_of.rb +116 -0
  10. data/lib/lithic/internal/type/base_model.rb +369 -0
  11. data/lib/lithic/internal/type/base_page.rb +43 -0
  12. data/lib/lithic/internal/type/boolean_model.rb +54 -0
  13. data/lib/lithic/internal/type/converter.rb +219 -0
  14. data/lib/lithic/internal/type/enum.rb +103 -0
  15. data/lib/lithic/internal/type/hash_of.rb +142 -0
  16. data/lib/lithic/internal/type/request_parameters.rb +40 -0
  17. data/lib/lithic/internal/type/union.rb +198 -0
  18. data/lib/lithic/internal/type/unknown.rb +58 -0
  19. data/lib/lithic/internal/util.rb +717 -0
  20. data/lib/lithic/internal.rb +8 -0
  21. data/lib/lithic/models/account.rb +17 -10
  22. data/lib/lithic/models/account_financial_account_type.rb +1 -1
  23. data/lib/lithic/models/account_holder.rb +41 -27
  24. data/lib/lithic/models/account_holder_create_params.rb +21 -20
  25. data/lib/lithic/models/account_holder_create_response.rb +9 -6
  26. data/lib/lithic/models/account_holder_list_documents_params.rb +5 -4
  27. data/lib/lithic/models/account_holder_list_documents_response.rb +4 -3
  28. data/lib/lithic/models/account_holder_list_params.rb +5 -4
  29. data/lib/lithic/models/account_holder_retrieve_document_params.rb +5 -4
  30. data/lib/lithic/models/account_holder_retrieve_params.rb +5 -4
  31. data/lib/lithic/models/account_holder_simulate_enrollment_document_review_params.rb +8 -7
  32. data/lib/lithic/models/account_holder_simulate_enrollment_review_params.rb +8 -7
  33. data/lib/lithic/models/account_holder_simulate_enrollment_review_response.rb +43 -27
  34. data/lib/lithic/models/account_holder_update_params.rb +19 -18
  35. data/lib/lithic/models/account_holder_update_response.rb +49 -32
  36. data/lib/lithic/models/account_holder_upload_document_params.rb +6 -5
  37. data/lib/lithic/models/account_list_params.rb +5 -4
  38. data/lib/lithic/models/account_retrieve_params.rb +5 -4
  39. data/lib/lithic/models/account_retrieve_spend_limits_params.rb +5 -4
  40. data/lib/lithic/models/account_spend_limits.rb +12 -8
  41. data/lib/lithic/models/account_update_params.rb +8 -7
  42. data/lib/lithic/models/address.rb +2 -2
  43. data/lib/lithic/models/address_update.rb +2 -2
  44. data/lib/lithic/models/aggregate_balance.rb +6 -3
  45. data/lib/lithic/models/aggregate_balance_list_params.rb +6 -5
  46. data/lib/lithic/models/api_status.rb +3 -2
  47. data/lib/lithic/models/auth_rules/auth_rule.rb +12 -10
  48. data/lib/lithic/models/auth_rules/auth_rule_condition.rb +9 -5
  49. data/lib/lithic/models/auth_rules/conditional_attribute.rb +1 -1
  50. data/lib/lithic/models/auth_rules/conditional_block_parameters.rb +3 -3
  51. data/lib/lithic/models/auth_rules/v2/backtest_create_params.rb +5 -4
  52. data/lib/lithic/models/auth_rules/v2/backtest_create_response.rb +3 -2
  53. data/lib/lithic/models/auth_rules/v2/backtest_results.rb +23 -18
  54. data/lib/lithic/models/auth_rules/v2/backtest_retrieve_params.rb +5 -4
  55. data/lib/lithic/models/auth_rules/v2_apply_params.rb +9 -8
  56. data/lib/lithic/models/auth_rules/v2_apply_response.rb +25 -14
  57. data/lib/lithic/models/auth_rules/v2_create_params.rb +11 -10
  58. data/lib/lithic/models/auth_rules/v2_create_response.rb +25 -14
  59. data/lib/lithic/models/auth_rules/v2_delete_params.rb +5 -4
  60. data/lib/lithic/models/auth_rules/v2_draft_params.rb +6 -5
  61. data/lib/lithic/models/auth_rules/v2_draft_response.rb +25 -14
  62. data/lib/lithic/models/auth_rules/v2_list_params.rb +5 -4
  63. data/lib/lithic/models/auth_rules/v2_list_response.rb +25 -14
  64. data/lib/lithic/models/auth_rules/v2_promote_params.rb +5 -4
  65. data/lib/lithic/models/auth_rules/v2_promote_response.rb +25 -14
  66. data/lib/lithic/models/auth_rules/v2_report_params.rb +5 -4
  67. data/lib/lithic/models/auth_rules/v2_report_response.rb +3 -2
  68. data/lib/lithic/models/auth_rules/v2_retrieve_params.rb +5 -4
  69. data/lib/lithic/models/auth_rules/v2_retrieve_response.rb +25 -14
  70. data/lib/lithic/models/auth_rules/v2_update_params.rb +10 -9
  71. data/lib/lithic/models/auth_rules/v2_update_response.rb +25 -14
  72. data/lib/lithic/models/auth_rules/velocity_limit_params.rb +14 -10
  73. data/lib/lithic/models/auth_rules/velocity_limit_params_period_window.rb +1 -1
  74. data/lib/lithic/models/auth_stream_enrollment_retrieve_secret_params.rb +5 -4
  75. data/lib/lithic/models/auth_stream_enrollment_rotate_secret_params.rb +5 -4
  76. data/lib/lithic/models/auth_stream_secret.rb +3 -2
  77. data/lib/lithic/models/balance.rb +6 -3
  78. data/lib/lithic/models/balance_list_params.rb +6 -5
  79. data/lib/lithic/models/book_transfer_create_params.rb +7 -6
  80. data/lib/lithic/models/book_transfer_list_params.rb +8 -7
  81. data/lib/lithic/models/book_transfer_response.rb +21 -12
  82. data/lib/lithic/models/book_transfer_retrieve_params.rb +5 -4
  83. data/lib/lithic/models/book_transfer_reverse_params.rb +5 -4
  84. data/lib/lithic/models/card.rb +23 -11
  85. data/lib/lithic/models/card_convert_physical_params.rb +7 -6
  86. data/lib/lithic/models/card_create_params.rb +9 -8
  87. data/lib/lithic/models/card_embed_params.rb +5 -4
  88. data/lib/lithic/models/card_list_params.rb +6 -5
  89. data/lib/lithic/models/card_program.rb +4 -3
  90. data/lib/lithic/models/card_program_list_params.rb +5 -4
  91. data/lib/lithic/models/card_program_retrieve_params.rb +5 -4
  92. data/lib/lithic/models/card_provision_params.rb +6 -5
  93. data/lib/lithic/models/card_provision_response.rb +3 -2
  94. data/lib/lithic/models/card_reissue_params.rb +7 -6
  95. data/lib/lithic/models/card_renew_params.rb +7 -6
  96. data/lib/lithic/models/card_retrieve_params.rb +5 -4
  97. data/lib/lithic/models/card_retrieve_spend_limits_params.rb +5 -4
  98. data/lib/lithic/models/card_search_by_pan_params.rb +5 -4
  99. data/lib/lithic/models/card_spend_limits.rb +12 -8
  100. data/lib/lithic/models/card_update_params.rb +7 -6
  101. data/lib/lithic/models/cards/aggregate_balance_list_params.rb +5 -4
  102. data/lib/lithic/models/cards/aggregate_balance_list_response.rb +3 -2
  103. data/lib/lithic/models/cards/balance_list_params.rb +5 -4
  104. data/lib/lithic/models/cards/balance_list_response.rb +6 -3
  105. data/lib/lithic/models/cards/financial_transaction_list_params.rb +8 -7
  106. data/lib/lithic/models/cards/financial_transaction_retrieve_params.rb +5 -4
  107. data/lib/lithic/models/carrier.rb +2 -2
  108. data/lib/lithic/models/client_api_status_params.rb +5 -4
  109. data/lib/lithic/models/credit_products/extended_credit.rb +3 -2
  110. data/lib/lithic/models/credit_products/extended_credit_retrieve_params.rb +5 -4
  111. data/lib/lithic/models/credit_products/prime_rate_create_params.rb +5 -4
  112. data/lib/lithic/models/credit_products/prime_rate_retrieve_params.rb +5 -4
  113. data/lib/lithic/models/credit_products/prime_rate_retrieve_response.rb +8 -6
  114. data/lib/lithic/models/digital_card_art.rb +8 -5
  115. data/lib/lithic/models/digital_card_art_list_params.rb +5 -4
  116. data/lib/lithic/models/digital_card_art_retrieve_params.rb +5 -4
  117. data/lib/lithic/models/dispute.rb +13 -6
  118. data/lib/lithic/models/dispute_create_params.rb +6 -5
  119. data/lib/lithic/models/dispute_delete_evidence_params.rb +5 -4
  120. data/lib/lithic/models/dispute_delete_params.rb +5 -4
  121. data/lib/lithic/models/dispute_evidence.rb +6 -3
  122. data/lib/lithic/models/dispute_initiate_evidence_upload_params.rb +5 -4
  123. data/lib/lithic/models/dispute_list_evidences_params.rb +5 -4
  124. data/lib/lithic/models/dispute_list_params.rb +7 -6
  125. data/lib/lithic/models/dispute_retrieve_evidence_params.rb +5 -4
  126. data/lib/lithic/models/dispute_retrieve_params.rb +5 -4
  127. data/lib/lithic/models/dispute_update_params.rb +6 -5
  128. data/lib/lithic/models/document.rb +18 -12
  129. data/lib/lithic/models/event.rb +7 -4
  130. data/lib/lithic/models/event_list_attempts_params.rb +6 -5
  131. data/lib/lithic/models/event_list_params.rb +9 -7
  132. data/lib/lithic/models/event_retrieve_params.rb +5 -4
  133. data/lib/lithic/models/event_subscription.rb +5 -5
  134. data/lib/lithic/models/events/subscription_create_params.rb +8 -7
  135. data/lib/lithic/models/events/subscription_delete_params.rb +5 -4
  136. data/lib/lithic/models/events/subscription_list_attempts_params.rb +6 -5
  137. data/lib/lithic/models/events/subscription_list_params.rb +5 -4
  138. data/lib/lithic/models/events/subscription_recover_params.rb +5 -4
  139. data/lib/lithic/models/events/subscription_replay_missing_params.rb +5 -4
  140. data/lib/lithic/models/events/subscription_retrieve_params.rb +5 -4
  141. data/lib/lithic/models/events/subscription_retrieve_secret_params.rb +5 -4
  142. data/lib/lithic/models/events/subscription_retrieve_secret_response.rb +3 -2
  143. data/lib/lithic/models/events/subscription_rotate_secret_params.rb +5 -4
  144. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +6 -5
  145. data/lib/lithic/models/events/subscription_update_params.rb +8 -7
  146. data/lib/lithic/models/external_bank_account_address.rb +2 -2
  147. data/lib/lithic/models/external_bank_account_create_params.rb +8 -7
  148. data/lib/lithic/models/external_bank_account_create_response.rb +18 -7
  149. data/lib/lithic/models/external_bank_account_list_params.rb +14 -12
  150. data/lib/lithic/models/external_bank_account_list_response.rb +18 -7
  151. data/lib/lithic/models/external_bank_account_retrieve_params.rb +5 -4
  152. data/lib/lithic/models/external_bank_account_retrieve_response.rb +18 -7
  153. data/lib/lithic/models/external_bank_account_retry_micro_deposits_params.rb +5 -4
  154. data/lib/lithic/models/external_bank_account_retry_micro_deposits_response.rb +18 -7
  155. data/lib/lithic/models/external_bank_account_retry_prenote_params.rb +5 -4
  156. data/lib/lithic/models/external_bank_account_retry_prenote_response.rb +12 -5
  157. data/lib/lithic/models/external_bank_account_update_params.rb +6 -5
  158. data/lib/lithic/models/external_bank_account_update_response.rb +18 -7
  159. data/lib/lithic/models/external_bank_accounts/micro_deposit_create_params.rb +6 -5
  160. data/lib/lithic/models/external_bank_accounts/micro_deposit_create_response.rb +18 -7
  161. data/lib/lithic/models/external_payment.rb +20 -13
  162. data/lib/lithic/models/external_payment_cancel_params.rb +5 -4
  163. data/lib/lithic/models/external_payment_create_params.rb +8 -7
  164. data/lib/lithic/models/external_payment_list_params.rb +8 -7
  165. data/lib/lithic/models/external_payment_release_params.rb +5 -4
  166. data/lib/lithic/models/external_payment_retrieve_params.rb +5 -4
  167. data/lib/lithic/models/external_payment_reverse_params.rb +5 -4
  168. data/lib/lithic/models/external_payment_settle_params.rb +6 -5
  169. data/lib/lithic/models/financial_account.rb +22 -11
  170. data/lib/lithic/models/financial_account_create_params.rb +7 -6
  171. data/lib/lithic/models/financial_account_list_params.rb +6 -5
  172. data/lib/lithic/models/financial_account_retrieve_params.rb +5 -4
  173. data/lib/lithic/models/financial_account_update_params.rb +5 -4
  174. data/lib/lithic/models/financial_account_update_status_params.rb +7 -6
  175. data/lib/lithic/models/financial_accounts/balance_list_params.rb +5 -4
  176. data/lib/lithic/models/financial_accounts/balance_list_response.rb +6 -3
  177. data/lib/lithic/models/financial_accounts/credit_configuration_retrieve_params.rb +5 -4
  178. data/lib/lithic/models/financial_accounts/credit_configuration_update_params.rb +5 -4
  179. data/lib/lithic/models/financial_accounts/financial_account_credit_config.rb +10 -5
  180. data/lib/lithic/models/financial_accounts/financial_transaction_list_params.rb +8 -7
  181. data/lib/lithic/models/financial_accounts/financial_transaction_retrieve_params.rb +5 -4
  182. data/lib/lithic/models/financial_accounts/loan_tape.rb +65 -41
  183. data/lib/lithic/models/financial_accounts/loan_tape_list_params.rb +5 -4
  184. data/lib/lithic/models/financial_accounts/loan_tape_retrieve_params.rb +5 -4
  185. data/lib/lithic/models/financial_accounts/statement.rb +43 -26
  186. data/lib/lithic/models/financial_accounts/statement_list_params.rb +6 -5
  187. data/lib/lithic/models/financial_accounts/statement_retrieve_params.rb +5 -4
  188. data/lib/lithic/models/financial_accounts/statements/line_item_list_params.rb +5 -4
  189. data/lib/lithic/models/financial_accounts/statements/statement_line_items.rb +10 -8
  190. data/lib/lithic/models/financial_accounts/statements.rb +4 -4
  191. data/lib/lithic/models/financial_transaction.rb +19 -10
  192. data/lib/lithic/models/instance_financial_account_type.rb +1 -1
  193. data/lib/lithic/models/kyb.rb +20 -15
  194. data/lib/lithic/models/kyb_business_entity.rb +6 -5
  195. data/lib/lithic/models/kyc.rb +8 -5
  196. data/lib/lithic/models/kyc_exempt.rb +8 -4
  197. data/lib/lithic/models/management_operation_create_params.rb +8 -7
  198. data/lib/lithic/models/management_operation_list_params.rb +7 -6
  199. data/lib/lithic/models/management_operation_retrieve_params.rb +5 -4
  200. data/lib/lithic/models/management_operation_reverse_params.rb +5 -4
  201. data/lib/lithic/models/management_operation_transaction.rb +21 -13
  202. data/lib/lithic/models/message_attempt.rb +6 -3
  203. data/lib/lithic/models/owner_type.rb +1 -1
  204. data/lib/lithic/models/payment.rb +36 -19
  205. data/lib/lithic/models/payment_create_params.rb +11 -9
  206. data/lib/lithic/models/payment_create_response.rb +2 -1
  207. data/lib/lithic/models/payment_list_params.rb +8 -7
  208. data/lib/lithic/models/payment_retrieve_params.rb +5 -4
  209. data/lib/lithic/models/payment_retry_params.rb +5 -4
  210. data/lib/lithic/models/payment_retry_response.rb +2 -1
  211. data/lib/lithic/models/payment_simulate_action_params.rb +7 -6
  212. data/lib/lithic/models/payment_simulate_action_response.rb +6 -3
  213. data/lib/lithic/models/payment_simulate_receipt_params.rb +6 -5
  214. data/lib/lithic/models/payment_simulate_receipt_response.rb +6 -3
  215. data/lib/lithic/models/payment_simulate_release_params.rb +5 -4
  216. data/lib/lithic/models/payment_simulate_release_response.rb +6 -3
  217. data/lib/lithic/models/payment_simulate_return_params.rb +5 -4
  218. data/lib/lithic/models/payment_simulate_return_response.rb +6 -3
  219. data/lib/lithic/models/reports/settlement/network_total_list_params.rb +6 -5
  220. data/lib/lithic/models/reports/settlement/network_total_list_response.rb +9 -5
  221. data/lib/lithic/models/reports/settlement/network_total_retrieve_params.rb +5 -4
  222. data/lib/lithic/models/reports/settlement/network_total_retrieve_response.rb +9 -5
  223. data/lib/lithic/models/reports/settlement_list_details_params.rb +5 -4
  224. data/lib/lithic/models/reports/settlement_summary_params.rb +5 -4
  225. data/lib/lithic/models/required_document.rb +4 -4
  226. data/lib/lithic/models/responder_endpoint_check_status_params.rb +6 -5
  227. data/lib/lithic/models/responder_endpoint_create_params.rb +6 -5
  228. data/lib/lithic/models/responder_endpoint_create_response.rb +4 -3
  229. data/lib/lithic/models/responder_endpoint_delete_params.rb +6 -5
  230. data/lib/lithic/models/responder_endpoint_status.rb +4 -3
  231. data/lib/lithic/models/settlement_detail.rb +12 -7
  232. data/lib/lithic/models/settlement_report.rb +4 -4
  233. data/lib/lithic/models/settlement_summary_details.rb +5 -3
  234. data/lib/lithic/models/shipping_address.rb +2 -2
  235. data/lib/lithic/models/spend_limit_duration.rb +1 -1
  236. data/lib/lithic/models/three_ds/authentication_retrieve_params.rb +5 -4
  237. data/lib/lithic/models/three_ds/authentication_retrieve_response.rb +87 -42
  238. data/lib/lithic/models/three_ds/authentication_simulate_otp_entry_params.rb +5 -4
  239. data/lib/lithic/models/three_ds/authentication_simulate_params.rb +10 -9
  240. data/lib/lithic/models/three_ds/authentication_simulate_response.rb +3 -2
  241. data/lib/lithic/models/three_ds/challenge_response.rb +2 -2
  242. data/lib/lithic/models/three_ds/challenge_result.rb +1 -1
  243. data/lib/lithic/models/three_ds/decisioning_challenge_response_params.rb +4 -3
  244. data/lib/lithic/models/three_ds/decisioning_retrieve_secret_params.rb +5 -4
  245. data/lib/lithic/models/three_ds/decisioning_retrieve_secret_response.rb +3 -2
  246. data/lib/lithic/models/three_ds/decisioning_rotate_secret_params.rb +5 -4
  247. data/lib/lithic/models/tokenization.rb +21 -10
  248. data/lib/lithic/models/tokenization_activate_params.rb +5 -4
  249. data/lib/lithic/models/tokenization_deactivate_params.rb +5 -4
  250. data/lib/lithic/models/tokenization_decisioning_retrieve_secret_params.rb +5 -4
  251. data/lib/lithic/models/tokenization_decisioning_rotate_secret_params.rb +5 -4
  252. data/lib/lithic/models/tokenization_decisioning_rotate_secret_response.rb +3 -2
  253. data/lib/lithic/models/tokenization_list_params.rb +6 -5
  254. data/lib/lithic/models/tokenization_pause_params.rb +5 -4
  255. data/lib/lithic/models/tokenization_resend_activation_code_params.rb +6 -5
  256. data/lib/lithic/models/tokenization_retrieve_params.rb +5 -4
  257. data/lib/lithic/models/tokenization_retrieve_response.rb +3 -2
  258. data/lib/lithic/models/tokenization_secret.rb +3 -2
  259. data/lib/lithic/models/tokenization_simulate_params.rb +7 -6
  260. data/lib/lithic/models/tokenization_simulate_response.rb +4 -3
  261. data/lib/lithic/models/tokenization_unpause_params.rb +5 -4
  262. data/lib/lithic/models/tokenization_update_digital_card_art_params.rb +5 -4
  263. data/lib/lithic/models/tokenization_update_digital_card_art_response.rb +3 -2
  264. data/lib/lithic/models/transaction.rb +136 -76
  265. data/lib/lithic/models/transaction_expire_authorization_params.rb +5 -4
  266. data/lib/lithic/models/transaction_list_params.rb +7 -6
  267. data/lib/lithic/models/transaction_retrieve_params.rb +5 -4
  268. data/lib/lithic/models/transaction_simulate_authorization_advice_params.rb +5 -4
  269. data/lib/lithic/models/transaction_simulate_authorization_advice_response.rb +3 -2
  270. data/lib/lithic/models/transaction_simulate_authorization_params.rb +7 -6
  271. data/lib/lithic/models/transaction_simulate_authorization_response.rb +3 -2
  272. data/lib/lithic/models/transaction_simulate_clearing_params.rb +5 -4
  273. data/lib/lithic/models/transaction_simulate_clearing_response.rb +3 -2
  274. data/lib/lithic/models/transaction_simulate_credit_authorization_params.rb +5 -4
  275. data/lib/lithic/models/transaction_simulate_credit_authorization_response.rb +3 -2
  276. data/lib/lithic/models/transaction_simulate_return_params.rb +5 -4
  277. data/lib/lithic/models/transaction_simulate_return_response.rb +3 -2
  278. data/lib/lithic/models/transaction_simulate_return_reversal_params.rb +5 -4
  279. data/lib/lithic/models/transaction_simulate_return_reversal_response.rb +3 -2
  280. data/lib/lithic/models/transaction_simulate_void_params.rb +6 -5
  281. data/lib/lithic/models/transaction_simulate_void_response.rb +3 -2
  282. data/lib/lithic/models/transactions/enhanced_commercial_data_retrieve_params.rb +5 -4
  283. data/lib/lithic/models/transactions/enhanced_commercial_data_retrieve_response.rb +4 -3
  284. data/lib/lithic/models/transactions/events/enhanced_commercial_data_retrieve_params.rb +5 -4
  285. data/lib/lithic/models/transactions/events/enhanced_data.rb +34 -20
  286. data/lib/lithic/models/transfer.rb +22 -12
  287. data/lib/lithic/models/transfer_create_params.rb +5 -4
  288. data/lib/lithic/models/verification_method.rb +1 -1
  289. data/lib/lithic/request_options.rb +4 -4
  290. data/lib/lithic/resources/account_holders.rb +101 -213
  291. data/lib/lithic/resources/accounts.rb +32 -50
  292. data/lib/lithic/resources/aggregate_balances.rb +8 -5
  293. data/lib/lithic/resources/auth_rules/v2/backtests.rb +15 -14
  294. data/lib/lithic/resources/auth_rules/v2.rb +69 -85
  295. data/lib/lithic/resources/auth_rules.rb +2 -0
  296. data/lib/lithic/resources/auth_stream_enrollment.rb +10 -4
  297. data/lib/lithic/resources/balances.rb +11 -12
  298. data/lib/lithic/resources/book_transfers.rb +42 -63
  299. data/lib/lithic/resources/card_programs.rb +15 -15
  300. data/lib/lithic/resources/cards/aggregate_balances.rb +9 -7
  301. data/lib/lithic/resources/cards/balances.rb +10 -11
  302. data/lib/lithic/resources/cards/financial_transactions.rb +23 -31
  303. data/lib/lithic/resources/cards.rb +109 -299
  304. data/lib/lithic/resources/credit_products/extended_credit.rb +7 -4
  305. data/lib/lithic/resources/credit_products/prime_rates.rb +16 -16
  306. data/lib/lithic/resources/credit_products.rb +2 -0
  307. data/lib/lithic/resources/digital_card_art.rb +15 -18
  308. data/lib/lithic/resources/disputes.rb +71 -90
  309. data/lib/lithic/resources/events/subscriptions.rb +79 -98
  310. data/lib/lithic/resources/events.rb +31 -46
  311. data/lib/lithic/resources/external_bank_accounts/micro_deposits.rb +8 -6
  312. data/lib/lithic/resources/external_bank_accounts.rb +70 -105
  313. data/lib/lithic/resources/external_payments.rb +65 -87
  314. data/lib/lithic/resources/financial_accounts/balances.rb +10 -11
  315. data/lib/lithic/resources/financial_accounts/credit_configuration.rb +16 -16
  316. data/lib/lithic/resources/financial_accounts/financial_transactions.rb +21 -29
  317. data/lib/lithic/resources/financial_accounts/loan_tapes.rb +19 -25
  318. data/lib/lithic/resources/financial_accounts/statements/line_items.rb +12 -16
  319. data/lib/lithic/resources/financial_accounts/statements.rb +20 -27
  320. data/lib/lithic/resources/financial_accounts.rb +37 -39
  321. data/lib/lithic/resources/management_operations.rb +43 -61
  322. data/lib/lithic/resources/payments.rb +70 -91
  323. data/lib/lithic/resources/reports/settlement/network_totals.rb +23 -34
  324. data/lib/lithic/resources/reports/settlement.rb +16 -17
  325. data/lib/lithic/resources/reports.rb +2 -0
  326. data/lib/lithic/resources/responder_endpoints.rb +18 -14
  327. data/lib/lithic/resources/three_ds/authentication.rb +21 -22
  328. data/lib/lithic/resources/three_ds/decisioning.rb +16 -13
  329. data/lib/lithic/resources/three_ds.rb +2 -0
  330. data/lib/lithic/resources/tokenization_decisioning.rb +10 -4
  331. data/lib/lithic/resources/tokenizations.rb +64 -80
  332. data/lib/lithic/resources/transactions/enhanced_commercial_data.rb +7 -4
  333. data/lib/lithic/resources/transactions/events/enhanced_commercial_data.rb +7 -4
  334. data/lib/lithic/resources/transactions/events.rb +2 -0
  335. data/lib/lithic/resources/transactions.rb +80 -143
  336. data/lib/lithic/resources/transfers.rb +11 -16
  337. data/lib/lithic/version.rb +1 -1
  338. data/lib/lithic.rb +16 -16
  339. data/rbi/lib/lithic/client.rbi +5 -5
  340. data/rbi/lib/lithic/errors.rbi +123 -121
  341. data/rbi/lib/lithic/internal/cursor_page.rbi +21 -0
  342. data/rbi/lib/lithic/internal/single_page.rbi +21 -0
  343. data/rbi/lib/lithic/internal/transport/base_client.rbi +212 -0
  344. data/rbi/lib/lithic/internal/transport/pooled_net_requester.rbi +66 -0
  345. data/rbi/lib/lithic/internal/type/array_of.rbi +88 -0
  346. data/rbi/lib/lithic/internal/type/base_model.rbi +208 -0
  347. data/rbi/lib/lithic/internal/type/base_page.rbi +41 -0
  348. data/rbi/lib/lithic/internal/type/boolean_model.rbi +43 -0
  349. data/rbi/lib/lithic/internal/type/converter.rbi +108 -0
  350. data/rbi/lib/lithic/internal/type/enum.rbi +60 -0
  351. data/rbi/lib/lithic/internal/type/hash_of.rbi +87 -0
  352. data/rbi/lib/lithic/internal/type/request_parameters.rbi +22 -0
  353. data/rbi/lib/lithic/internal/type/union.rbi +75 -0
  354. data/rbi/lib/lithic/internal/type/unknown.rbi +42 -0
  355. data/rbi/lib/lithic/internal/util.rbi +280 -0
  356. data/rbi/lib/lithic/internal.rbi +12 -0
  357. data/rbi/lib/lithic/models/account.rbi +14 -12
  358. data/rbi/lib/lithic/models/account_financial_account_type.rbi +3 -2
  359. data/rbi/lib/lithic/models/account_holder.rbi +51 -43
  360. data/rbi/lib/lithic/models/account_holder_create_params.rbi +35 -33
  361. data/rbi/lib/lithic/models/account_holder_create_response.rbi +10 -7
  362. data/rbi/lib/lithic/models/account_holder_list_documents_params.rbi +4 -4
  363. data/rbi/lib/lithic/models/account_holder_list_documents_response.rbi +6 -3
  364. data/rbi/lib/lithic/models/account_holder_list_params.rbi +4 -4
  365. data/rbi/lib/lithic/models/account_holder_retrieve_document_params.rbi +4 -4
  366. data/rbi/lib/lithic/models/account_holder_retrieve_params.rbi +4 -4
  367. data/rbi/lib/lithic/models/account_holder_simulate_enrollment_document_review_params.rbi +14 -7
  368. data/rbi/lib/lithic/models/account_holder_simulate_enrollment_review_params.rbi +14 -8
  369. data/rbi/lib/lithic/models/account_holder_simulate_enrollment_review_response.rbi +73 -38
  370. data/rbi/lib/lithic/models/account_holder_update_params.rbi +33 -31
  371. data/rbi/lib/lithic/models/account_holder_update_response.rbi +66 -41
  372. data/rbi/lib/lithic/models/account_holder_upload_document_params.rbi +6 -6
  373. data/rbi/lib/lithic/models/account_list_params.rbi +4 -4
  374. data/rbi/lib/lithic/models/account_retrieve_params.rbi +4 -4
  375. data/rbi/lib/lithic/models/account_retrieve_spend_limits_params.rbi +4 -4
  376. data/rbi/lib/lithic/models/account_spend_limits.rbi +12 -10
  377. data/rbi/lib/lithic/models/account_update_params.rbi +10 -9
  378. data/rbi/lib/lithic/models/address.rbi +1 -1
  379. data/rbi/lib/lithic/models/address_update.rbi +1 -1
  380. data/rbi/lib/lithic/models/aggregate_balance.rbi +3 -3
  381. data/rbi/lib/lithic/models/aggregate_balance_list_params.rbi +6 -6
  382. data/rbi/lib/lithic/models/api_status.rbi +1 -1
  383. data/rbi/lib/lithic/models/auth_rules/auth_rule.rbi +4 -3
  384. data/rbi/lib/lithic/models/auth_rules/auth_rule_condition.rbi +5 -5
  385. data/rbi/lib/lithic/models/auth_rules/conditional_attribute.rbi +3 -2
  386. data/rbi/lib/lithic/models/auth_rules/conditional_block_parameters.rbi +4 -2
  387. data/rbi/lib/lithic/models/auth_rules/v2/backtest_create_params.rbi +7 -4
  388. data/rbi/lib/lithic/models/auth_rules/v2/backtest_create_response.rbi +1 -1
  389. data/rbi/lib/lithic/models/auth_rules/v2/backtest_results.rbi +22 -19
  390. data/rbi/lib/lithic/models/auth_rules/v2/backtest_retrieve_params.rbi +7 -4
  391. data/rbi/lib/lithic/models/auth_rules/v2_apply_params.rbi +4 -4
  392. data/rbi/lib/lithic/models/auth_rules/v2_apply_response.rbi +16 -15
  393. data/rbi/lib/lithic/models/auth_rules/v2_create_params.rbi +10 -9
  394. data/rbi/lib/lithic/models/auth_rules/v2_create_response.rbi +15 -15
  395. data/rbi/lib/lithic/models/auth_rules/v2_delete_params.rbi +4 -4
  396. data/rbi/lib/lithic/models/auth_rules/v2_draft_params.rbi +6 -6
  397. data/rbi/lib/lithic/models/auth_rules/v2_draft_response.rbi +16 -15
  398. data/rbi/lib/lithic/models/auth_rules/v2_list_params.rbi +4 -4
  399. data/rbi/lib/lithic/models/auth_rules/v2_list_response.rbi +17 -15
  400. data/rbi/lib/lithic/models/auth_rules/v2_promote_params.rbi +4 -4
  401. data/rbi/lib/lithic/models/auth_rules/v2_promote_response.rbi +15 -15
  402. data/rbi/lib/lithic/models/auth_rules/v2_report_params.rbi +4 -4
  403. data/rbi/lib/lithic/models/auth_rules/v2_report_response.rbi +1 -1
  404. data/rbi/lib/lithic/models/auth_rules/v2_retrieve_params.rbi +4 -4
  405. data/rbi/lib/lithic/models/auth_rules/v2_retrieve_response.rbi +15 -15
  406. data/rbi/lib/lithic/models/auth_rules/v2_update_params.rbi +7 -6
  407. data/rbi/lib/lithic/models/auth_rules/v2_update_response.rbi +15 -15
  408. data/rbi/lib/lithic/models/auth_rules/velocity_limit_params.rbi +10 -7
  409. data/rbi/lib/lithic/models/auth_rules/velocity_limit_params_period_window.rbi +2 -2
  410. data/rbi/lib/lithic/models/auth_stream_enrollment_retrieve_secret_params.rbi +4 -4
  411. data/rbi/lib/lithic/models/auth_stream_enrollment_rotate_secret_params.rbi +4 -4
  412. data/rbi/lib/lithic/models/auth_stream_secret.rbi +1 -1
  413. data/rbi/lib/lithic/models/balance.rbi +4 -3
  414. data/rbi/lib/lithic/models/balance_list_params.rbi +6 -6
  415. data/rbi/lib/lithic/models/book_transfer_create_params.rbi +9 -8
  416. data/rbi/lib/lithic/models/book_transfer_list_params.rbi +13 -10
  417. data/rbi/lib/lithic/models/book_transfer_response.rbi +16 -13
  418. data/rbi/lib/lithic/models/book_transfer_retrieve_params.rbi +4 -4
  419. data/rbi/lib/lithic/models/book_transfer_reverse_params.rbi +4 -4
  420. data/rbi/lib/lithic/models/card.rbi +14 -14
  421. data/rbi/lib/lithic/models/card_convert_physical_params.rbi +12 -11
  422. data/rbi/lib/lithic/models/card_create_params.rbi +16 -15
  423. data/rbi/lib/lithic/models/card_embed_params.rbi +4 -4
  424. data/rbi/lib/lithic/models/card_list_params.rbi +6 -6
  425. data/rbi/lib/lithic/models/card_program.rbi +1 -1
  426. data/rbi/lib/lithic/models/card_program_list_params.rbi +4 -4
  427. data/rbi/lib/lithic/models/card_program_retrieve_params.rbi +4 -4
  428. data/rbi/lib/lithic/models/card_provision_params.rbi +6 -6
  429. data/rbi/lib/lithic/models/card_provision_response.rbi +1 -1
  430. data/rbi/lib/lithic/models/card_reissue_params.rbi +11 -11
  431. data/rbi/lib/lithic/models/card_renew_params.rbi +12 -11
  432. data/rbi/lib/lithic/models/card_retrieve_params.rbi +4 -4
  433. data/rbi/lib/lithic/models/card_retrieve_spend_limits_params.rbi +4 -4
  434. data/rbi/lib/lithic/models/card_search_by_pan_params.rbi +4 -4
  435. data/rbi/lib/lithic/models/card_spend_limits.rbi +13 -10
  436. data/rbi/lib/lithic/models/card_update_params.rbi +9 -8
  437. data/rbi/lib/lithic/models/cards/aggregate_balance_list_params.rbi +4 -4
  438. data/rbi/lib/lithic/models/cards/aggregate_balance_list_response.rbi +1 -1
  439. data/rbi/lib/lithic/models/cards/balance_list_params.rbi +4 -4
  440. data/rbi/lib/lithic/models/cards/balance_list_response.rbi +4 -3
  441. data/rbi/lib/lithic/models/cards/financial_transaction_list_params.rbi +10 -10
  442. data/rbi/lib/lithic/models/cards/financial_transaction_retrieve_params.rbi +7 -4
  443. data/rbi/lib/lithic/models/carrier.rbi +1 -1
  444. data/rbi/lib/lithic/models/client_api_status_params.rbi +4 -4
  445. data/rbi/lib/lithic/models/credit_products/extended_credit.rbi +1 -1
  446. data/rbi/lib/lithic/models/credit_products/extended_credit_retrieve_params.rbi +4 -4
  447. data/rbi/lib/lithic/models/credit_products/prime_rate_create_params.rbi +4 -4
  448. data/rbi/lib/lithic/models/credit_products/prime_rate_retrieve_params.rbi +4 -4
  449. data/rbi/lib/lithic/models/credit_products/prime_rate_retrieve_response.rbi +3 -3
  450. data/rbi/lib/lithic/models/digital_card_art.rbi +4 -3
  451. data/rbi/lib/lithic/models/digital_card_art_list_params.rbi +4 -4
  452. data/rbi/lib/lithic/models/digital_card_art_retrieve_params.rbi +4 -4
  453. data/rbi/lib/lithic/models/dispute.rbi +8 -7
  454. data/rbi/lib/lithic/models/dispute_create_params.rbi +7 -6
  455. data/rbi/lib/lithic/models/dispute_delete_evidence_params.rbi +7 -4
  456. data/rbi/lib/lithic/models/dispute_delete_params.rbi +4 -4
  457. data/rbi/lib/lithic/models/dispute_evidence.rbi +4 -3
  458. data/rbi/lib/lithic/models/dispute_initiate_evidence_upload_params.rbi +4 -4
  459. data/rbi/lib/lithic/models/dispute_list_evidences_params.rbi +4 -4
  460. data/rbi/lib/lithic/models/dispute_list_params.rbi +7 -6
  461. data/rbi/lib/lithic/models/dispute_retrieve_evidence_params.rbi +7 -4
  462. data/rbi/lib/lithic/models/dispute_retrieve_params.rbi +4 -4
  463. data/rbi/lib/lithic/models/dispute_update_params.rbi +7 -6
  464. data/rbi/lib/lithic/models/document.rbi +11 -11
  465. data/rbi/lib/lithic/models/event.rbi +3 -3
  466. data/rbi/lib/lithic/models/event_list_attempts_params.rbi +7 -6
  467. data/rbi/lib/lithic/models/event_list_params.rbi +7 -6
  468. data/rbi/lib/lithic/models/event_retrieve_params.rbi +4 -4
  469. data/rbi/lib/lithic/models/event_subscription.rbi +4 -3
  470. data/rbi/lib/lithic/models/events/subscription_create_params.rbi +6 -6
  471. data/rbi/lib/lithic/models/events/subscription_delete_params.rbi +4 -4
  472. data/rbi/lib/lithic/models/events/subscription_list_attempts_params.rbi +6 -6
  473. data/rbi/lib/lithic/models/events/subscription_list_params.rbi +4 -4
  474. data/rbi/lib/lithic/models/events/subscription_recover_params.rbi +4 -4
  475. data/rbi/lib/lithic/models/events/subscription_replay_missing_params.rbi +4 -4
  476. data/rbi/lib/lithic/models/events/subscription_retrieve_params.rbi +4 -4
  477. data/rbi/lib/lithic/models/events/subscription_retrieve_secret_params.rbi +4 -4
  478. data/rbi/lib/lithic/models/events/subscription_retrieve_secret_response.rbi +1 -1
  479. data/rbi/lib/lithic/models/events/subscription_rotate_secret_params.rbi +4 -4
  480. data/rbi/lib/lithic/models/events/subscription_send_simulated_example_params.rbi +12 -6
  481. data/rbi/lib/lithic/models/events/subscription_update_params.rbi +6 -6
  482. data/rbi/lib/lithic/models/external_bank_account_address.rbi +1 -1
  483. data/rbi/lib/lithic/models/external_bank_account_create_params.rbi +10 -10
  484. data/rbi/lib/lithic/models/external_bank_account_create_response.rbi +13 -13
  485. data/rbi/lib/lithic/models/external_bank_account_list_params.rbi +10 -10
  486. data/rbi/lib/lithic/models/external_bank_account_list_response.rbi +13 -13
  487. data/rbi/lib/lithic/models/external_bank_account_retrieve_params.rbi +4 -4
  488. data/rbi/lib/lithic/models/external_bank_account_retrieve_response.rbi +25 -13
  489. data/rbi/lib/lithic/models/external_bank_account_retry_micro_deposits_params.rbi +4 -4
  490. data/rbi/lib/lithic/models/external_bank_account_retry_micro_deposits_response.rbi +19 -11
  491. data/rbi/lib/lithic/models/external_bank_account_retry_prenote_params.rbi +4 -4
  492. data/rbi/lib/lithic/models/external_bank_account_retry_prenote_response.rbi +15 -9
  493. data/rbi/lib/lithic/models/external_bank_account_update_params.rbi +8 -8
  494. data/rbi/lib/lithic/models/external_bank_account_update_response.rbi +13 -13
  495. data/rbi/lib/lithic/models/external_bank_accounts/micro_deposit_create_params.rbi +4 -4
  496. data/rbi/lib/lithic/models/external_bank_accounts/micro_deposit_create_response.rbi +31 -11
  497. data/rbi/lib/lithic/models/external_payment.rbi +21 -17
  498. data/rbi/lib/lithic/models/external_payment_cancel_params.rbi +4 -4
  499. data/rbi/lib/lithic/models/external_payment_create_params.rbi +10 -10
  500. data/rbi/lib/lithic/models/external_payment_list_params.rbi +10 -10
  501. data/rbi/lib/lithic/models/external_payment_release_params.rbi +4 -4
  502. data/rbi/lib/lithic/models/external_payment_retrieve_params.rbi +4 -4
  503. data/rbi/lib/lithic/models/external_payment_reverse_params.rbi +4 -4
  504. data/rbi/lib/lithic/models/external_payment_settle_params.rbi +6 -6
  505. data/rbi/lib/lithic/models/financial_account.rbi +26 -14
  506. data/rbi/lib/lithic/models/financial_account_create_params.rbi +6 -6
  507. data/rbi/lib/lithic/models/financial_account_list_params.rbi +7 -6
  508. data/rbi/lib/lithic/models/financial_account_retrieve_params.rbi +4 -4
  509. data/rbi/lib/lithic/models/financial_account_update_params.rbi +4 -4
  510. data/rbi/lib/lithic/models/financial_account_update_status_params.rbi +14 -8
  511. data/rbi/lib/lithic/models/financial_accounts/balance_list_params.rbi +4 -4
  512. data/rbi/lib/lithic/models/financial_accounts/balance_list_response.rbi +3 -3
  513. data/rbi/lib/lithic/models/financial_accounts/credit_configuration_retrieve_params.rbi +4 -4
  514. data/rbi/lib/lithic/models/financial_accounts/credit_configuration_update_params.rbi +4 -4
  515. data/rbi/lib/lithic/models/financial_accounts/financial_account_credit_config.rbi +5 -3
  516. data/rbi/lib/lithic/models/financial_accounts/financial_transaction_list_params.rbi +28 -10
  517. data/rbi/lib/lithic/models/financial_accounts/financial_transaction_retrieve_params.rbi +4 -4
  518. data/rbi/lib/lithic/models/financial_accounts/loan_tape.rbi +82 -57
  519. data/rbi/lib/lithic/models/financial_accounts/loan_tape_list_params.rbi +4 -4
  520. data/rbi/lib/lithic/models/financial_accounts/loan_tape_retrieve_params.rbi +4 -4
  521. data/rbi/lib/lithic/models/financial_accounts/statement.rbi +54 -35
  522. data/rbi/lib/lithic/models/financial_accounts/statement_list_params.rbi +4 -4
  523. data/rbi/lib/lithic/models/financial_accounts/statement_retrieve_params.rbi +4 -4
  524. data/rbi/lib/lithic/models/financial_accounts/statements/line_item_list_params.rbi +4 -4
  525. data/rbi/lib/lithic/models/financial_accounts/statements/statement_line_items.rbi +7 -5
  526. data/rbi/lib/lithic/models/financial_accounts/statements.rbi +2 -2
  527. data/rbi/lib/lithic/models/financial_transaction.rbi +16 -13
  528. data/rbi/lib/lithic/models/instance_financial_account_type.rbi +3 -2
  529. data/rbi/lib/lithic/models/kyb.rbi +21 -21
  530. data/rbi/lib/lithic/models/kyb_business_entity.rbi +4 -4
  531. data/rbi/lib/lithic/models/kyc.rbi +8 -8
  532. data/rbi/lib/lithic/models/kyc_exempt.rbi +8 -7
  533. data/rbi/lib/lithic/models/management_operation_create_params.rbi +10 -10
  534. data/rbi/lib/lithic/models/management_operation_list_params.rbi +8 -8
  535. data/rbi/lib/lithic/models/management_operation_retrieve_params.rbi +4 -4
  536. data/rbi/lib/lithic/models/management_operation_reverse_params.rbi +4 -4
  537. data/rbi/lib/lithic/models/management_operation_transaction.rbi +17 -17
  538. data/rbi/lib/lithic/models/message_attempt.rbi +3 -3
  539. data/rbi/lib/lithic/models/owner_type.rbi +2 -2
  540. data/rbi/lib/lithic/models/payment.rbi +27 -26
  541. data/rbi/lib/lithic/models/payment_create_params.rbi +15 -13
  542. data/rbi/lib/lithic/models/payment_create_response.rbi +2 -2
  543. data/rbi/lib/lithic/models/payment_list_params.rbi +13 -10
  544. data/rbi/lib/lithic/models/payment_retrieve_params.rbi +4 -4
  545. data/rbi/lib/lithic/models/payment_retry_params.rbi +4 -4
  546. data/rbi/lib/lithic/models/payment_retry_response.rbi +2 -2
  547. data/rbi/lib/lithic/models/payment_simulate_action_params.rbi +8 -8
  548. data/rbi/lib/lithic/models/payment_simulate_action_response.rbi +3 -3
  549. data/rbi/lib/lithic/models/payment_simulate_receipt_params.rbi +6 -6
  550. data/rbi/lib/lithic/models/payment_simulate_receipt_response.rbi +3 -3
  551. data/rbi/lib/lithic/models/payment_simulate_release_params.rbi +7 -4
  552. data/rbi/lib/lithic/models/payment_simulate_release_response.rbi +3 -3
  553. data/rbi/lib/lithic/models/payment_simulate_return_params.rbi +4 -4
  554. data/rbi/lib/lithic/models/payment_simulate_return_response.rbi +3 -3
  555. data/rbi/lib/lithic/models/reports/settlement/network_total_list_params.rbi +6 -6
  556. data/rbi/lib/lithic/models/reports/settlement/network_total_list_response.rbi +12 -6
  557. data/rbi/lib/lithic/models/reports/settlement/network_total_retrieve_params.rbi +4 -4
  558. data/rbi/lib/lithic/models/reports/settlement/network_total_retrieve_response.rbi +18 -6
  559. data/rbi/lib/lithic/models/reports/settlement_list_details_params.rbi +4 -4
  560. data/rbi/lib/lithic/models/reports/settlement_summary_params.rbi +4 -4
  561. data/rbi/lib/lithic/models/required_document.rbi +1 -1
  562. data/rbi/lib/lithic/models/responder_endpoint_check_status_params.rbi +6 -6
  563. data/rbi/lib/lithic/models/responder_endpoint_create_params.rbi +6 -6
  564. data/rbi/lib/lithic/models/responder_endpoint_create_response.rbi +1 -1
  565. data/rbi/lib/lithic/models/responder_endpoint_delete_params.rbi +6 -6
  566. data/rbi/lib/lithic/models/responder_endpoint_status.rbi +1 -1
  567. data/rbi/lib/lithic/models/settlement_detail.rbi +9 -8
  568. data/rbi/lib/lithic/models/settlement_report.rbi +2 -2
  569. data/rbi/lib/lithic/models/settlement_summary_details.rbi +3 -3
  570. data/rbi/lib/lithic/models/shipping_address.rbi +1 -1
  571. data/rbi/lib/lithic/models/spend_limit_duration.rbi +2 -2
  572. data/rbi/lib/lithic/models/three_ds/authentication_retrieve_params.rbi +4 -4
  573. data/rbi/lib/lithic/models/three_ds/authentication_retrieve_response.rbi +109 -56
  574. data/rbi/lib/lithic/models/three_ds/authentication_simulate_otp_entry_params.rbi +4 -4
  575. data/rbi/lib/lithic/models/three_ds/authentication_simulate_params.rbi +18 -12
  576. data/rbi/lib/lithic/models/three_ds/authentication_simulate_response.rbi +1 -1
  577. data/rbi/lib/lithic/models/three_ds/challenge_response.rbi +1 -1
  578. data/rbi/lib/lithic/models/three_ds/challenge_result.rbi +2 -2
  579. data/rbi/lib/lithic/models/three_ds/decisioning_challenge_response_params.rbi +3 -3
  580. data/rbi/lib/lithic/models/three_ds/decisioning_retrieve_secret_params.rbi +4 -4
  581. data/rbi/lib/lithic/models/three_ds/decisioning_retrieve_secret_response.rbi +1 -1
  582. data/rbi/lib/lithic/models/three_ds/decisioning_rotate_secret_params.rbi +4 -4
  583. data/rbi/lib/lithic/models/tokenization.rbi +17 -14
  584. data/rbi/lib/lithic/models/tokenization_activate_params.rbi +4 -4
  585. data/rbi/lib/lithic/models/tokenization_deactivate_params.rbi +4 -4
  586. data/rbi/lib/lithic/models/tokenization_decisioning_retrieve_secret_params.rbi +4 -4
  587. data/rbi/lib/lithic/models/tokenization_decisioning_rotate_secret_params.rbi +4 -4
  588. data/rbi/lib/lithic/models/tokenization_decisioning_rotate_secret_response.rbi +1 -1
  589. data/rbi/lib/lithic/models/tokenization_list_params.rbi +6 -6
  590. data/rbi/lib/lithic/models/tokenization_pause_params.rbi +4 -4
  591. data/rbi/lib/lithic/models/tokenization_resend_activation_code_params.rbi +12 -6
  592. data/rbi/lib/lithic/models/tokenization_retrieve_params.rbi +4 -4
  593. data/rbi/lib/lithic/models/tokenization_retrieve_response.rbi +3 -3
  594. data/rbi/lib/lithic/models/tokenization_secret.rbi +1 -1
  595. data/rbi/lib/lithic/models/tokenization_simulate_params.rbi +8 -8
  596. data/rbi/lib/lithic/models/tokenization_simulate_response.rbi +3 -3
  597. data/rbi/lib/lithic/models/tokenization_unpause_params.rbi +4 -4
  598. data/rbi/lib/lithic/models/tokenization_update_digital_card_art_params.rbi +4 -4
  599. data/rbi/lib/lithic/models/tokenization_update_digital_card_art_response.rbi +3 -3
  600. data/rbi/lib/lithic/models/transaction.rbi +144 -109
  601. data/rbi/lib/lithic/models/transaction_expire_authorization_params.rbi +4 -4
  602. data/rbi/lib/lithic/models/transaction_list_params.rbi +10 -8
  603. data/rbi/lib/lithic/models/transaction_retrieve_params.rbi +4 -4
  604. data/rbi/lib/lithic/models/transaction_simulate_authorization_advice_params.rbi +4 -4
  605. data/rbi/lib/lithic/models/transaction_simulate_authorization_advice_response.rbi +1 -1
  606. data/rbi/lib/lithic/models/transaction_simulate_authorization_params.rbi +6 -6
  607. data/rbi/lib/lithic/models/transaction_simulate_authorization_response.rbi +1 -1
  608. data/rbi/lib/lithic/models/transaction_simulate_clearing_params.rbi +4 -4
  609. data/rbi/lib/lithic/models/transaction_simulate_clearing_response.rbi +1 -1
  610. data/rbi/lib/lithic/models/transaction_simulate_credit_authorization_params.rbi +4 -4
  611. data/rbi/lib/lithic/models/transaction_simulate_credit_authorization_response.rbi +1 -1
  612. data/rbi/lib/lithic/models/transaction_simulate_return_params.rbi +4 -4
  613. data/rbi/lib/lithic/models/transaction_simulate_return_response.rbi +1 -1
  614. data/rbi/lib/lithic/models/transaction_simulate_return_reversal_params.rbi +4 -4
  615. data/rbi/lib/lithic/models/transaction_simulate_return_reversal_response.rbi +1 -1
  616. data/rbi/lib/lithic/models/transaction_simulate_void_params.rbi +6 -6
  617. data/rbi/lib/lithic/models/transaction_simulate_void_response.rbi +1 -1
  618. data/rbi/lib/lithic/models/transactions/enhanced_commercial_data_retrieve_params.rbi +4 -4
  619. data/rbi/lib/lithic/models/transactions/enhanced_commercial_data_retrieve_response.rbi +4 -2
  620. data/rbi/lib/lithic/models/transactions/events/enhanced_commercial_data_retrieve_params.rbi +4 -4
  621. data/rbi/lib/lithic/models/transactions/events/enhanced_data.rbi +41 -24
  622. data/rbi/lib/lithic/models/transfer.rbi +18 -18
  623. data/rbi/lib/lithic/models/transfer_create_params.rbi +4 -4
  624. data/rbi/lib/lithic/models/verification_method.rbi +2 -2
  625. data/rbi/lib/lithic/request_options.rbi +2 -2
  626. data/rbi/lib/lithic/resources/account_holders.rbi +23 -22
  627. data/rbi/lib/lithic/resources/accounts.rbi +7 -6
  628. data/rbi/lib/lithic/resources/aggregate_balances.rbi +3 -2
  629. data/rbi/lib/lithic/resources/auth_rules/v2/backtests.rbi +3 -2
  630. data/rbi/lib/lithic/resources/auth_rules/v2.rbi +13 -12
  631. data/rbi/lib/lithic/resources/auth_rules.rbi +1 -0
  632. data/rbi/lib/lithic/resources/auth_stream_enrollment.rbi +5 -2
  633. data/rbi/lib/lithic/resources/balances.rbi +3 -2
  634. data/rbi/lib/lithic/resources/book_transfers.rbi +6 -5
  635. data/rbi/lib/lithic/resources/card_programs.rbi +4 -3
  636. data/rbi/lib/lithic/resources/cards/aggregate_balances.rbi +3 -2
  637. data/rbi/lib/lithic/resources/cards/balances.rbi +3 -2
  638. data/rbi/lib/lithic/resources/cards/financial_transactions.rbi +4 -3
  639. data/rbi/lib/lithic/resources/cards.rbi +29 -20
  640. data/rbi/lib/lithic/resources/credit_products/extended_credit.rbi +2 -1
  641. data/rbi/lib/lithic/resources/credit_products/prime_rates.rbi +3 -2
  642. data/rbi/lib/lithic/resources/credit_products.rbi +1 -0
  643. data/rbi/lib/lithic/resources/digital_card_art.rbi +4 -3
  644. data/rbi/lib/lithic/resources/disputes.rbi +12 -11
  645. data/rbi/lib/lithic/resources/events/subscriptions.rbi +14 -13
  646. data/rbi/lib/lithic/resources/events.rbi +6 -5
  647. data/rbi/lib/lithic/resources/external_bank_accounts/micro_deposits.rbi +2 -1
  648. data/rbi/lib/lithic/resources/external_bank_accounts.rbi +10 -9
  649. data/rbi/lib/lithic/resources/external_payments.rbi +9 -8
  650. data/rbi/lib/lithic/resources/financial_accounts/balances.rbi +3 -2
  651. data/rbi/lib/lithic/resources/financial_accounts/credit_configuration.rbi +3 -2
  652. data/rbi/lib/lithic/resources/financial_accounts/financial_transactions.rbi +4 -3
  653. data/rbi/lib/lithic/resources/financial_accounts/loan_tapes.rbi +4 -3
  654. data/rbi/lib/lithic/resources/financial_accounts/statements/line_items.rbi +5 -2
  655. data/rbi/lib/lithic/resources/financial_accounts/statements.rbi +4 -3
  656. data/rbi/lib/lithic/resources/financial_accounts.rbi +7 -6
  657. data/rbi/lib/lithic/resources/management_operations.rbi +6 -5
  658. data/rbi/lib/lithic/resources/payments.rbi +11 -10
  659. data/rbi/lib/lithic/resources/reports/settlement/network_totals.rbi +4 -8
  660. data/rbi/lib/lithic/resources/reports/settlement.rbi +4 -3
  661. data/rbi/lib/lithic/resources/reports.rbi +1 -0
  662. data/rbi/lib/lithic/resources/responder_endpoints.rbi +4 -3
  663. data/rbi/lib/lithic/resources/three_ds/authentication.rbi +6 -5
  664. data/rbi/lib/lithic/resources/three_ds/decisioning.rbi +6 -3
  665. data/rbi/lib/lithic/resources/three_ds.rbi +1 -0
  666. data/rbi/lib/lithic/resources/tokenization_decisioning.rbi +3 -2
  667. data/rbi/lib/lithic/resources/tokenizations.rbi +11 -10
  668. data/rbi/lib/lithic/resources/transactions/enhanced_commercial_data.rbi +2 -1
  669. data/rbi/lib/lithic/resources/transactions/events/enhanced_commercial_data.rbi +2 -1
  670. data/rbi/lib/lithic/resources/transactions/events.rbi +1 -0
  671. data/rbi/lib/lithic/resources/transactions.rbi +12 -16
  672. data/rbi/lib/lithic/resources/transfers.rbi +2 -1
  673. data/rbi/lib/lithic/version.rbi +1 -1
  674. data/sig/lithic/client.rbs +2 -2
  675. data/sig/lithic/errors.rbs +98 -96
  676. data/sig/lithic/internal/cursor_page.rbs +13 -0
  677. data/sig/lithic/internal/single_page.rbs +13 -0
  678. data/sig/lithic/internal/transport/base_client.rbs +110 -0
  679. data/sig/lithic/internal/transport/pooled_net_requester.rbs +41 -0
  680. data/sig/lithic/internal/type/array_of.rbs +38 -0
  681. data/sig/lithic/internal/type/base_model.rbs +79 -0
  682. data/sig/lithic/internal/type/base_page.rbs +24 -0
  683. data/sig/lithic/internal/type/boolean_model.rbs +20 -0
  684. data/sig/lithic/internal/type/converter.rbs +44 -0
  685. data/sig/lithic/internal/type/enum.rbs +24 -0
  686. data/sig/lithic/internal/type/hash_of.rbs +38 -0
  687. data/sig/lithic/internal/type/request_parameters.rbs +15 -0
  688. data/sig/lithic/internal/type/union.rbs +42 -0
  689. data/sig/lithic/internal/type/unknown.rbs +20 -0
  690. data/sig/lithic/internal/util.rbs +139 -0
  691. data/sig/lithic/internal.rbs +5 -0
  692. data/sig/lithic/models/account.rbs +5 -5
  693. data/sig/lithic/models/account_financial_account_type.rbs +1 -1
  694. data/sig/lithic/models/account_holder.rbs +13 -13
  695. data/sig/lithic/models/account_holder_create_params.rbs +11 -11
  696. data/sig/lithic/models/account_holder_create_response.rbs +3 -3
  697. data/sig/lithic/models/account_holder_list_documents_params.rbs +4 -4
  698. data/sig/lithic/models/account_holder_list_documents_response.rbs +1 -1
  699. data/sig/lithic/models/account_holder_list_params.rbs +4 -4
  700. data/sig/lithic/models/account_holder_retrieve_document_params.rbs +5 -4
  701. data/sig/lithic/models/account_holder_retrieve_params.rbs +5 -4
  702. data/sig/lithic/models/account_holder_simulate_enrollment_document_review_params.rbs +6 -6
  703. data/sig/lithic/models/account_holder_simulate_enrollment_review_params.rbs +6 -6
  704. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +14 -14
  705. data/sig/lithic/models/account_holder_update_params.rbs +9 -9
  706. data/sig/lithic/models/account_holder_update_response.rbs +17 -17
  707. data/sig/lithic/models/account_holder_upload_document_params.rbs +5 -5
  708. data/sig/lithic/models/account_list_params.rbs +4 -4
  709. data/sig/lithic/models/account_retrieve_params.rbs +5 -4
  710. data/sig/lithic/models/account_retrieve_spend_limits_params.rbs +4 -4
  711. data/sig/lithic/models/account_spend_limits.rbs +4 -4
  712. data/sig/lithic/models/account_update_params.rbs +6 -6
  713. data/sig/lithic/models/address.rbs +1 -1
  714. data/sig/lithic/models/address_update.rbs +1 -1
  715. data/sig/lithic/models/aggregate_balance.rbs +2 -2
  716. data/sig/lithic/models/aggregate_balance_list_params.rbs +5 -5
  717. data/sig/lithic/models/api_status.rbs +1 -1
  718. data/sig/lithic/models/auth_rules/auth_rule.rbs +2 -2
  719. data/sig/lithic/models/auth_rules/auth_rule_condition.rbs +3 -3
  720. data/sig/lithic/models/auth_rules/conditional_attribute.rbs +1 -1
  721. data/sig/lithic/models/auth_rules/conditional_block_parameters.rbs +1 -1
  722. data/sig/lithic/models/auth_rules/v2/backtest_create_params.rbs +5 -4
  723. data/sig/lithic/models/auth_rules/v2/backtest_create_response.rbs +1 -1
  724. data/sig/lithic/models/auth_rules/v2/backtest_results.rbs +7 -7
  725. data/sig/lithic/models/auth_rules/v2/backtest_retrieve_params.rbs +5 -4
  726. data/sig/lithic/models/auth_rules/v2_apply_params.rbs +4 -4
  727. data/sig/lithic/models/auth_rules/v2_apply_response.rbs +7 -7
  728. data/sig/lithic/models/auth_rules/v2_create_params.rbs +6 -6
  729. data/sig/lithic/models/auth_rules/v2_create_response.rbs +7 -7
  730. data/sig/lithic/models/auth_rules/v2_delete_params.rbs +4 -4
  731. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +5 -5
  732. data/sig/lithic/models/auth_rules/v2_draft_response.rbs +7 -7
  733. data/sig/lithic/models/auth_rules/v2_list_params.rbs +4 -4
  734. data/sig/lithic/models/auth_rules/v2_list_response.rbs +7 -7
  735. data/sig/lithic/models/auth_rules/v2_promote_params.rbs +4 -4
  736. data/sig/lithic/models/auth_rules/v2_promote_response.rbs +7 -7
  737. data/sig/lithic/models/auth_rules/v2_report_params.rbs +4 -4
  738. data/sig/lithic/models/auth_rules/v2_report_response.rbs +1 -1
  739. data/sig/lithic/models/auth_rules/v2_retrieve_params.rbs +5 -4
  740. data/sig/lithic/models/auth_rules/v2_retrieve_response.rbs +7 -7
  741. data/sig/lithic/models/auth_rules/v2_update_params.rbs +5 -5
  742. data/sig/lithic/models/auth_rules/v2_update_response.rbs +7 -7
  743. data/sig/lithic/models/auth_rules/velocity_limit_params.rbs +4 -4
  744. data/sig/lithic/models/auth_rules/velocity_limit_params_period_window.rbs +1 -1
  745. data/sig/lithic/models/auth_stream_enrollment_retrieve_secret_params.rbs +4 -4
  746. data/sig/lithic/models/auth_stream_enrollment_rotate_secret_params.rbs +4 -4
  747. data/sig/lithic/models/auth_stream_secret.rbs +1 -1
  748. data/sig/lithic/models/balance.rbs +2 -2
  749. data/sig/lithic/models/balance_list_params.rbs +5 -5
  750. data/sig/lithic/models/book_transfer_create_params.rbs +6 -6
  751. data/sig/lithic/models/book_transfer_list_params.rbs +7 -7
  752. data/sig/lithic/models/book_transfer_response.rbs +7 -7
  753. data/sig/lithic/models/book_transfer_retrieve_params.rbs +5 -4
  754. data/sig/lithic/models/book_transfer_reverse_params.rbs +4 -4
  755. data/sig/lithic/models/card.rbs +7 -7
  756. data/sig/lithic/models/card_convert_physical_params.rbs +6 -6
  757. data/sig/lithic/models/card_create_params.rbs +8 -8
  758. data/sig/lithic/models/card_embed_params.rbs +5 -4
  759. data/sig/lithic/models/card_list_params.rbs +5 -5
  760. data/sig/lithic/models/card_program.rbs +1 -1
  761. data/sig/lithic/models/card_program_list_params.rbs +4 -4
  762. data/sig/lithic/models/card_program_retrieve_params.rbs +5 -4
  763. data/sig/lithic/models/card_provision_params.rbs +5 -5
  764. data/sig/lithic/models/card_provision_response.rbs +1 -1
  765. data/sig/lithic/models/card_reissue_params.rbs +6 -6
  766. data/sig/lithic/models/card_renew_params.rbs +6 -6
  767. data/sig/lithic/models/card_retrieve_params.rbs +5 -4
  768. data/sig/lithic/models/card_retrieve_spend_limits_params.rbs +5 -4
  769. data/sig/lithic/models/card_search_by_pan_params.rbs +4 -4
  770. data/sig/lithic/models/card_spend_limits.rbs +4 -4
  771. data/sig/lithic/models/card_update_params.rbs +6 -6
  772. data/sig/lithic/models/cards/aggregate_balance_list_params.rbs +4 -4
  773. data/sig/lithic/models/cards/aggregate_balance_list_response.rbs +1 -1
  774. data/sig/lithic/models/cards/balance_list_params.rbs +4 -4
  775. data/sig/lithic/models/cards/balance_list_response.rbs +2 -2
  776. data/sig/lithic/models/cards/financial_transaction_list_params.rbs +7 -7
  777. data/sig/lithic/models/cards/financial_transaction_retrieve_params.rbs +4 -4
  778. data/sig/lithic/models/carrier.rbs +1 -1
  779. data/sig/lithic/models/client_api_status_params.rbs +5 -4
  780. data/sig/lithic/models/credit_products/extended_credit.rbs +1 -1
  781. data/sig/lithic/models/credit_products/extended_credit_retrieve_params.rbs +5 -4
  782. data/sig/lithic/models/credit_products/prime_rate_create_params.rbs +5 -4
  783. data/sig/lithic/models/credit_products/prime_rate_retrieve_params.rbs +4 -4
  784. data/sig/lithic/models/credit_products/prime_rate_retrieve_response.rbs +2 -2
  785. data/sig/lithic/models/digital_card_art.rbs +2 -2
  786. data/sig/lithic/models/digital_card_art_list_params.rbs +4 -4
  787. data/sig/lithic/models/digital_card_art_retrieve_params.rbs +5 -4
  788. data/sig/lithic/models/dispute.rbs +4 -4
  789. data/sig/lithic/models/dispute_create_params.rbs +5 -5
  790. data/sig/lithic/models/dispute_delete_evidence_params.rbs +4 -4
  791. data/sig/lithic/models/dispute_delete_params.rbs +5 -4
  792. data/sig/lithic/models/dispute_evidence.rbs +2 -2
  793. data/sig/lithic/models/dispute_initiate_evidence_upload_params.rbs +4 -4
  794. data/sig/lithic/models/dispute_list_evidences_params.rbs +4 -4
  795. data/sig/lithic/models/dispute_list_params.rbs +5 -5
  796. data/sig/lithic/models/dispute_retrieve_evidence_params.rbs +4 -4
  797. data/sig/lithic/models/dispute_retrieve_params.rbs +5 -4
  798. data/sig/lithic/models/dispute_update_params.rbs +5 -5
  799. data/sig/lithic/models/document.rbs +6 -6
  800. data/sig/lithic/models/event.rbs +2 -2
  801. data/sig/lithic/models/event_list_attempts_params.rbs +5 -5
  802. data/sig/lithic/models/event_list_params.rbs +5 -5
  803. data/sig/lithic/models/event_retrieve_params.rbs +5 -4
  804. data/sig/lithic/models/event_subscription.rbs +2 -2
  805. data/sig/lithic/models/events/subscription_create_params.rbs +5 -5
  806. data/sig/lithic/models/events/subscription_delete_params.rbs +5 -4
  807. data/sig/lithic/models/events/subscription_list_attempts_params.rbs +5 -5
  808. data/sig/lithic/models/events/subscription_list_params.rbs +4 -4
  809. data/sig/lithic/models/events/subscription_recover_params.rbs +5 -4
  810. data/sig/lithic/models/events/subscription_replay_missing_params.rbs +5 -4
  811. data/sig/lithic/models/events/subscription_retrieve_params.rbs +5 -4
  812. data/sig/lithic/models/events/subscription_retrieve_secret_params.rbs +4 -4
  813. data/sig/lithic/models/events/subscription_retrieve_secret_response.rbs +1 -1
  814. data/sig/lithic/models/events/subscription_rotate_secret_params.rbs +5 -4
  815. data/sig/lithic/models/events/subscription_send_simulated_example_params.rbs +5 -5
  816. data/sig/lithic/models/events/subscription_update_params.rbs +5 -5
  817. data/sig/lithic/models/external_bank_account_address.rbs +1 -1
  818. data/sig/lithic/models/external_bank_account_create_params.rbs +6 -6
  819. data/sig/lithic/models/external_bank_account_create_response.rbs +6 -6
  820. data/sig/lithic/models/external_bank_account_list_params.rbs +7 -7
  821. data/sig/lithic/models/external_bank_account_list_response.rbs +6 -6
  822. data/sig/lithic/models/external_bank_account_retrieve_params.rbs +4 -4
  823. data/sig/lithic/models/external_bank_account_retrieve_response.rbs +6 -6
  824. data/sig/lithic/models/external_bank_account_retry_micro_deposits_params.rbs +5 -4
  825. data/sig/lithic/models/external_bank_account_retry_micro_deposits_response.rbs +6 -6
  826. data/sig/lithic/models/external_bank_account_retry_prenote_params.rbs +5 -4
  827. data/sig/lithic/models/external_bank_account_retry_prenote_response.rbs +4 -4
  828. data/sig/lithic/models/external_bank_account_update_params.rbs +5 -5
  829. data/sig/lithic/models/external_bank_account_update_response.rbs +6 -6
  830. data/sig/lithic/models/external_bank_accounts/micro_deposit_create_params.rbs +5 -4
  831. data/sig/lithic/models/external_bank_accounts/micro_deposit_create_response.rbs +6 -6
  832. data/sig/lithic/models/external_payment.rbs +9 -9
  833. data/sig/lithic/models/external_payment_cancel_params.rbs +5 -4
  834. data/sig/lithic/models/external_payment_create_params.rbs +7 -7
  835. data/sig/lithic/models/external_payment_list_params.rbs +7 -7
  836. data/sig/lithic/models/external_payment_release_params.rbs +5 -4
  837. data/sig/lithic/models/external_payment_retrieve_params.rbs +5 -4
  838. data/sig/lithic/models/external_payment_reverse_params.rbs +5 -4
  839. data/sig/lithic/models/external_payment_settle_params.rbs +5 -5
  840. data/sig/lithic/models/financial_account.rbs +7 -7
  841. data/sig/lithic/models/financial_account_create_params.rbs +5 -5
  842. data/sig/lithic/models/financial_account_list_params.rbs +5 -5
  843. data/sig/lithic/models/financial_account_retrieve_params.rbs +5 -4
  844. data/sig/lithic/models/financial_account_update_params.rbs +4 -4
  845. data/sig/lithic/models/financial_account_update_status_params.rbs +6 -6
  846. data/sig/lithic/models/financial_accounts/balance_list_params.rbs +4 -4
  847. data/sig/lithic/models/financial_accounts/balance_list_response.rbs +2 -2
  848. data/sig/lithic/models/financial_accounts/credit_configuration_retrieve_params.rbs +4 -4
  849. data/sig/lithic/models/financial_accounts/credit_configuration_update_params.rbs +4 -4
  850. data/sig/lithic/models/financial_accounts/financial_account_credit_config.rbs +3 -3
  851. data/sig/lithic/models/financial_accounts/financial_transaction_list_params.rbs +7 -7
  852. data/sig/lithic/models/financial_accounts/financial_transaction_retrieve_params.rbs +5 -4
  853. data/sig/lithic/models/financial_accounts/loan_tape.rbs +22 -22
  854. data/sig/lithic/models/financial_accounts/loan_tape_list_params.rbs +4 -4
  855. data/sig/lithic/models/financial_accounts/loan_tape_retrieve_params.rbs +5 -4
  856. data/sig/lithic/models/financial_accounts/statement.rbs +15 -15
  857. data/sig/lithic/models/financial_accounts/statement_list_params.rbs +4 -4
  858. data/sig/lithic/models/financial_accounts/statement_retrieve_params.rbs +5 -4
  859. data/sig/lithic/models/financial_accounts/statements/line_item_list_params.rbs +4 -4
  860. data/sig/lithic/models/financial_accounts/statements/statement_line_items.rbs +4 -4
  861. data/sig/lithic/models/financial_accounts/statements.rbs +1 -1
  862. data/sig/lithic/models/financial_transaction.rbs +7 -7
  863. data/sig/lithic/models/instance_financial_account_type.rbs +1 -1
  864. data/sig/lithic/models/kyb.rbs +6 -6
  865. data/sig/lithic/models/kyb_business_entity.rbs +2 -2
  866. data/sig/lithic/models/kyc.rbs +3 -3
  867. data/sig/lithic/models/kyc_exempt.rbs +3 -3
  868. data/sig/lithic/models/management_operation_create_params.rbs +7 -7
  869. data/sig/lithic/models/management_operation_list_params.rbs +6 -6
  870. data/sig/lithic/models/management_operation_retrieve_params.rbs +4 -4
  871. data/sig/lithic/models/management_operation_reverse_params.rbs +5 -4
  872. data/sig/lithic/models/management_operation_transaction.rbs +9 -9
  873. data/sig/lithic/models/message_attempt.rbs +2 -2
  874. data/sig/lithic/models/owner_type.rbs +1 -1
  875. data/sig/lithic/models/payment.rbs +13 -13
  876. data/sig/lithic/models/payment_create_params.rbs +8 -8
  877. data/sig/lithic/models/payment_list_params.rbs +7 -7
  878. data/sig/lithic/models/payment_retrieve_params.rbs +5 -4
  879. data/sig/lithic/models/payment_retry_params.rbs +5 -4
  880. data/sig/lithic/models/payment_simulate_action_params.rbs +6 -6
  881. data/sig/lithic/models/payment_simulate_action_response.rbs +2 -2
  882. data/sig/lithic/models/payment_simulate_receipt_params.rbs +5 -5
  883. data/sig/lithic/models/payment_simulate_receipt_response.rbs +2 -2
  884. data/sig/lithic/models/payment_simulate_release_params.rbs +4 -4
  885. data/sig/lithic/models/payment_simulate_release_response.rbs +2 -2
  886. data/sig/lithic/models/payment_simulate_return_params.rbs +4 -4
  887. data/sig/lithic/models/payment_simulate_return_response.rbs +2 -2
  888. data/sig/lithic/models/reports/settlement/network_total_list_params.rbs +5 -5
  889. data/sig/lithic/models/reports/settlement/network_total_list_response.rbs +3 -3
  890. data/sig/lithic/models/reports/settlement/network_total_retrieve_params.rbs +5 -4
  891. data/sig/lithic/models/reports/settlement/network_total_retrieve_response.rbs +3 -3
  892. data/sig/lithic/models/reports/settlement_list_details_params.rbs +4 -4
  893. data/sig/lithic/models/reports/settlement_summary_params.rbs +5 -4
  894. data/sig/lithic/models/required_document.rbs +1 -1
  895. data/sig/lithic/models/responder_endpoint_check_status_params.rbs +5 -5
  896. data/sig/lithic/models/responder_endpoint_create_params.rbs +5 -5
  897. data/sig/lithic/models/responder_endpoint_create_response.rbs +1 -1
  898. data/sig/lithic/models/responder_endpoint_delete_params.rbs +5 -5
  899. data/sig/lithic/models/responder_endpoint_status.rbs +1 -1
  900. data/sig/lithic/models/settlement_detail.rbs +4 -4
  901. data/sig/lithic/models/settlement_report.rbs +1 -1
  902. data/sig/lithic/models/settlement_summary_details.rbs +2 -2
  903. data/sig/lithic/models/shipping_address.rbs +1 -1
  904. data/sig/lithic/models/spend_limit_duration.rbs +1 -1
  905. data/sig/lithic/models/three_ds/authentication_retrieve_params.rbs +5 -4
  906. data/sig/lithic/models/three_ds/authentication_retrieve_response.rbs +28 -28
  907. data/sig/lithic/models/three_ds/authentication_simulate_otp_entry_params.rbs +5 -4
  908. data/sig/lithic/models/three_ds/authentication_simulate_params.rbs +7 -7
  909. data/sig/lithic/models/three_ds/authentication_simulate_response.rbs +1 -1
  910. data/sig/lithic/models/three_ds/challenge_response.rbs +1 -1
  911. data/sig/lithic/models/three_ds/challenge_result.rbs +1 -1
  912. data/sig/lithic/models/three_ds/decisioning_challenge_response_params.rbs +3 -3
  913. data/sig/lithic/models/three_ds/decisioning_retrieve_secret_params.rbs +4 -4
  914. data/sig/lithic/models/three_ds/decisioning_retrieve_secret_response.rbs +1 -1
  915. data/sig/lithic/models/three_ds/decisioning_rotate_secret_params.rbs +5 -4
  916. data/sig/lithic/models/tokenization.rbs +7 -7
  917. data/sig/lithic/models/tokenization_activate_params.rbs +5 -4
  918. data/sig/lithic/models/tokenization_deactivate_params.rbs +5 -4
  919. data/sig/lithic/models/tokenization_decisioning_retrieve_secret_params.rbs +4 -4
  920. data/sig/lithic/models/tokenization_decisioning_rotate_secret_params.rbs +4 -4
  921. data/sig/lithic/models/tokenization_decisioning_rotate_secret_response.rbs +1 -1
  922. data/sig/lithic/models/tokenization_list_params.rbs +5 -5
  923. data/sig/lithic/models/tokenization_pause_params.rbs +5 -4
  924. data/sig/lithic/models/tokenization_resend_activation_code_params.rbs +5 -5
  925. data/sig/lithic/models/tokenization_retrieve_params.rbs +5 -4
  926. data/sig/lithic/models/tokenization_retrieve_response.rbs +1 -1
  927. data/sig/lithic/models/tokenization_secret.rbs +1 -1
  928. data/sig/lithic/models/tokenization_simulate_params.rbs +6 -6
  929. data/sig/lithic/models/tokenization_simulate_response.rbs +1 -1
  930. data/sig/lithic/models/tokenization_unpause_params.rbs +5 -4
  931. data/sig/lithic/models/tokenization_update_digital_card_art_params.rbs +5 -4
  932. data/sig/lithic/models/tokenization_update_digital_card_art_response.rbs +1 -1
  933. data/sig/lithic/models/transaction.rbs +45 -45
  934. data/sig/lithic/models/transaction_expire_authorization_params.rbs +4 -4
  935. data/sig/lithic/models/transaction_list_params.rbs +6 -6
  936. data/sig/lithic/models/transaction_retrieve_params.rbs +5 -4
  937. data/sig/lithic/models/transaction_simulate_authorization_advice_params.rbs +5 -4
  938. data/sig/lithic/models/transaction_simulate_authorization_advice_response.rbs +1 -1
  939. data/sig/lithic/models/transaction_simulate_authorization_params.rbs +5 -5
  940. data/sig/lithic/models/transaction_simulate_authorization_response.rbs +1 -1
  941. data/sig/lithic/models/transaction_simulate_clearing_params.rbs +5 -4
  942. data/sig/lithic/models/transaction_simulate_clearing_response.rbs +1 -1
  943. data/sig/lithic/models/transaction_simulate_credit_authorization_params.rbs +4 -4
  944. data/sig/lithic/models/transaction_simulate_credit_authorization_response.rbs +1 -1
  945. data/sig/lithic/models/transaction_simulate_return_params.rbs +4 -4
  946. data/sig/lithic/models/transaction_simulate_return_response.rbs +1 -1
  947. data/sig/lithic/models/transaction_simulate_return_reversal_params.rbs +4 -4
  948. data/sig/lithic/models/transaction_simulate_return_reversal_response.rbs +1 -1
  949. data/sig/lithic/models/transaction_simulate_void_params.rbs +5 -5
  950. data/sig/lithic/models/transaction_simulate_void_response.rbs +1 -1
  951. data/sig/lithic/models/transactions/enhanced_commercial_data_retrieve_params.rbs +4 -4
  952. data/sig/lithic/models/transactions/enhanced_commercial_data_retrieve_response.rbs +1 -1
  953. data/sig/lithic/models/transactions/events/enhanced_commercial_data_retrieve_params.rbs +4 -4
  954. data/sig/lithic/models/transactions/events/enhanced_data.rbs +11 -11
  955. data/sig/lithic/models/transfer.rbs +7 -7
  956. data/sig/lithic/models/transfer_create_params.rbs +4 -4
  957. data/sig/lithic/models/verification_method.rbs +1 -1
  958. data/sig/lithic/request_options.rbs +1 -1
  959. data/sig/lithic/resources/account_holders.rbs +1 -1
  960. data/sig/lithic/resources/accounts.rbs +1 -1
  961. data/sig/lithic/resources/aggregate_balances.rbs +1 -1
  962. data/sig/lithic/resources/auth_rules/v2.rbs +1 -1
  963. data/sig/lithic/resources/balances.rbs +1 -1
  964. data/sig/lithic/resources/book_transfers.rbs +1 -1
  965. data/sig/lithic/resources/card_programs.rbs +1 -1
  966. data/sig/lithic/resources/cards/aggregate_balances.rbs +1 -1
  967. data/sig/lithic/resources/cards/balances.rbs +1 -1
  968. data/sig/lithic/resources/cards/financial_transactions.rbs +1 -1
  969. data/sig/lithic/resources/cards.rbs +1 -1
  970. data/sig/lithic/resources/digital_card_art.rbs +1 -1
  971. data/sig/lithic/resources/disputes.rbs +2 -2
  972. data/sig/lithic/resources/events/subscriptions.rbs +2 -2
  973. data/sig/lithic/resources/events.rbs +2 -2
  974. data/sig/lithic/resources/external_bank_accounts.rbs +1 -1
  975. data/sig/lithic/resources/external_payments.rbs +1 -1
  976. data/sig/lithic/resources/financial_accounts/balances.rbs +1 -1
  977. data/sig/lithic/resources/financial_accounts/financial_transactions.rbs +1 -1
  978. data/sig/lithic/resources/financial_accounts/loan_tapes.rbs +1 -1
  979. data/sig/lithic/resources/financial_accounts/statements/line_items.rbs +1 -1
  980. data/sig/lithic/resources/financial_accounts/statements.rbs +1 -1
  981. data/sig/lithic/resources/financial_accounts.rbs +1 -1
  982. data/sig/lithic/resources/management_operations.rbs +1 -1
  983. data/sig/lithic/resources/payments.rbs +1 -1
  984. data/sig/lithic/resources/reports/settlement/network_totals.rbs +1 -1
  985. data/sig/lithic/resources/reports/settlement.rbs +1 -1
  986. data/sig/lithic/resources/tokenizations.rbs +1 -1
  987. data/sig/lithic/resources/transactions.rbs +1 -1
  988. data/sig/lithic/version.rbs +1 -1
  989. metadata +50 -50
  990. data/lib/lithic/cursor_page.rb +0 -92
  991. data/lib/lithic/single_page.rb +0 -86
  992. data/lib/lithic/transport/base_client.rb +0 -459
  993. data/lib/lithic/transport/pooled_net_requester.rb +0 -182
  994. data/lib/lithic/type/array_of.rb +0 -112
  995. data/lib/lithic/type/base_model.rb +0 -357
  996. data/lib/lithic/type/base_page.rb +0 -61
  997. data/lib/lithic/type/boolean_model.rb +0 -52
  998. data/lib/lithic/type/converter.rb +0 -217
  999. data/lib/lithic/type/enum.rb +0 -101
  1000. data/lib/lithic/type/hash_of.rb +0 -132
  1001. data/lib/lithic/type/request_parameters.rb +0 -38
  1002. data/lib/lithic/type/union.rb +0 -196
  1003. data/lib/lithic/type/unknown.rb +0 -56
  1004. data/lib/lithic/type.rb +0 -23
  1005. data/lib/lithic/util.rb +0 -726
  1006. data/rbi/lib/lithic/cursor_page.rbi +0 -19
  1007. data/rbi/lib/lithic/single_page.rbi +0 -19
  1008. data/rbi/lib/lithic/transport/base_client.rbi +0 -204
  1009. data/rbi/lib/lithic/transport/pooled_net_requester.rbi +0 -64
  1010. data/rbi/lib/lithic/type/array_of.rbi +0 -82
  1011. data/rbi/lib/lithic/type/base_model.rbi +0 -189
  1012. data/rbi/lib/lithic/type/base_page.rbi +0 -38
  1013. data/rbi/lib/lithic/type/boolean_model.rbi +0 -41
  1014. data/rbi/lib/lithic/type/converter.rbi +0 -99
  1015. data/rbi/lib/lithic/type/enum.rbi +0 -58
  1016. data/rbi/lib/lithic/type/hash_of.rbi +0 -86
  1017. data/rbi/lib/lithic/type/request_parameters.rbi +0 -20
  1018. data/rbi/lib/lithic/type/union.rbi +0 -66
  1019. data/rbi/lib/lithic/type/unknown.rbi +0 -37
  1020. data/rbi/lib/lithic/type.rbi +0 -23
  1021. data/rbi/lib/lithic/util.rbi +0 -280
  1022. data/sig/lithic/cursor_page.rbs +0 -11
  1023. data/sig/lithic/single_page.rbs +0 -11
  1024. data/sig/lithic/transport/base_client.rbs +0 -110
  1025. data/sig/lithic/transport/pooled_net_requester.rbs +0 -39
  1026. data/sig/lithic/type/array_of.rbs +0 -36
  1027. data/sig/lithic/type/base_model.rbs +0 -73
  1028. data/sig/lithic/type/base_page.rbs +0 -22
  1029. data/sig/lithic/type/boolean_model.rbs +0 -18
  1030. data/sig/lithic/type/converter.rbs +0 -36
  1031. data/sig/lithic/type/enum.rbs +0 -22
  1032. data/sig/lithic/type/hash_of.rbs +0 -36
  1033. data/sig/lithic/type/request_parameters.rbs +0 -13
  1034. data/sig/lithic/type/union.rbs +0 -37
  1035. data/sig/lithic/type/unknown.rbs +0 -15
  1036. data/sig/lithic/type.rbs +0 -22
  1037. data/sig/lithic/util.rbs +0 -132
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: febba602b14ac4bf3aa9463771562e22cf994cb9d6dceea77a605999b16b98d9
4
- data.tar.gz: 1f336fd1d3754875d979d622bce1a91315b924ad2d89fec39df0766a3eb4850e
3
+ metadata.gz: c878a0ee5f6aba02f1f1ccd5ea1afeb092e3b5b71495a3ebf590154ad80b4d88
4
+ data.tar.gz: d849bdf0caf2255bddaaa86f9ed6c3af7a1b4e277015cdae0adaba2861f48e3e
5
5
  SHA512:
6
- metadata.gz: ab90c3f56d7c0a438195aaa7b3b78c103ebd3f855f8a9ba1292a622ab4298d823dd49566646adefd7a2adc5d477fb34ef5f625523a12564d53cfe09779e82314
7
- data.tar.gz: 46640e59b8a10b3d9e8612a55141cd0c0850e2a846c2c658eebc9d151172096a44859af3fb5cbc3a40b2c6773393e59acd8e827e77f315460dad752b805bae8e
6
+ metadata.gz: 7be928a465d075049a036380e5c195b634095d0a417bc1c4ca451db1a6aa0a87661ac51e528c5fcdb3cff69ce6281675063927becb88abb11ff066b8cae65c50
7
+ data.tar.gz: b9711354f43f14e04e7fbe2aa47f0d6faa580271e67c76981f3074ce17e02bb5ef1318773424ac6272c068b6f67d1ade506bec1c57896fe9f95856dd1a0b232f
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Lithic Ruby API library
2
2
 
3
- The Lithic Ruby library provides convenient access to the Lithic REST API from any Ruby 3.0.0+ application.
3
+ The Lithic Ruby library provides convenient access to the Lithic REST API from any Ruby 3.1.0+ application.
4
4
 
5
5
  ## Documentation
6
6
 
@@ -13,7 +13,7 @@ The underlying REST API documentation can be found on [docs.lithic.com](https://
13
13
  To use this gem, install via Bundler by adding the following to your application's `Gemfile`:
14
14
 
15
15
  ```ruby
16
- gem "lithic", "~> 0.1.0.pre.alpha.2"
16
+ gem "lithic", "~> 0.1.0.pre.alpha.4"
17
17
  ```
18
18
 
19
19
  To fetch an initial copy of the gem:
@@ -64,7 +64,7 @@ When the library is unable to connect to the API, or if the API returns a non-su
64
64
  ```ruby
65
65
  begin
66
66
  card = lithic.cards.create(type: "an_incorrect_type")
67
- rescue Lithic::Error => e
67
+ rescue Lithic::Errors::APIError => e
68
68
  puts(e.status) # 400
69
69
  end
70
70
  ```
@@ -80,7 +80,7 @@ Error codes are as followed:
80
80
  | HTTP 409 | `ConflictError` |
81
81
  | HTTP 422 | `UnprocessableEntityError` |
82
82
  | HTTP 429 | `RateLimitError` |
83
- | HTTP >=500 | `InternalServerError` |
83
+ | HTTP >= 500 | `InternalServerError` |
84
84
  | Other HTTP error | `APIStatusError` |
85
85
  | Timeout | `APITimeoutError` |
86
86
  | Network error | `APIConnectionError` |
@@ -121,7 +121,9 @@ lithic = Lithic::Client.new(
121
121
  lithic.cards.list(page_size: 10, request_options: {timeout: 5})
122
122
  ```
123
123
 
124
- ## Sorbet Support
124
+ ## LSP Support
125
+
126
+ ### Sorbet
125
127
 
126
128
  **This library emits an intentional warning under the [`tapioca` toolchain](https://github.com/Shopify/tapioca)**. This is normal, and does not impact functionality.
127
129
 
@@ -141,6 +143,31 @@ lithic.cards.create(**model)
141
143
 
142
144
  ## Advanced
143
145
 
146
+ ### Making custom/undocumented requests
147
+
148
+ This library is typed for convenient access to the documented API.
149
+
150
+ If you need to access undocumented endpoints, params, or response properties, the library can still be used.
151
+
152
+ #### Undocumented request params
153
+
154
+ If you want to explicitly send an extra param, you can do so with the `extra_query`, `extra_body`, and `extra_headers` under the `request_options:` parameter when making a requests as seen in examples above.
155
+
156
+ #### Undocumented endpoints
157
+
158
+ To make requests to undocumented endpoints, you can make requests using `client.request`. Options on the client will be respected (such as retries) when making this request.
159
+
160
+ ```ruby
161
+ response =
162
+ client.request(
163
+ method: :post,
164
+ path: '/undocumented/endpoint',
165
+ query: {"dog": "woof"},
166
+ headers: {"useful-header": "interesting-value"},
167
+ body: {"he": "llo"},
168
+ )
169
+ ```
170
+
144
171
  ### Concurrency & Connection Pooling
145
172
 
146
173
  The `Lithic::Client` instances are thread-safe, and should be re-used across multiple threads. By default, each `Client` have their own HTTP connection pool, with a maximum number of connections equal to thread count.
@@ -159,4 +186,4 @@ This package considers improvements to the (non-runtime) `*.rbi` and `*.rbs` typ
159
186
 
160
187
  ## Requirements
161
188
 
162
- Ruby 3.0.0 or higher.
189
+ Ruby 3.1.0 or higher.
data/lib/lithic/client.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lithic
4
- class Client < Lithic::Transport::BaseClient
4
+ class Client < Lithic::Internal::Transport::BaseClient
5
5
  # Default max number of retries to attempt after a failed retryable request.
6
6
  DEFAULT_MAX_RETRIES = 2
7
7
 
@@ -100,11 +100,13 @@ module Lithic
100
100
 
101
101
  # Status of api
102
102
  #
103
- # @param params [Lithic::Models::ClientAPIStatusParams, Hash{Symbol=>Object}] .
103
+ # @overload api_status(request_options: {})
104
104
  #
105
- # @option params [Lithic::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
105
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
106
106
  #
107
107
  # @return [Lithic::Models::APIStatus]
108
+ #
109
+ # @see Lithic::Models::ClientAPIStatusParams
108
110
  def api_status(params = {})
109
111
  request(
110
112
  method: :get,
@@ -123,6 +125,8 @@ module Lithic
123
125
 
124
126
  # Creates and returns a new client for interacting with the API.
125
127
  #
128
+ # @param api_key [String, nil] Defaults to `ENV["LITHIC_API_KEY"]`
129
+ #
126
130
  # @param environment [:production, :sandbox, nil] Specifies the environment to use for the API.
127
131
  #
128
132
  # Each environment maps to a different base URL:
@@ -132,8 +136,6 @@ module Lithic
132
136
  #
133
137
  # @param base_url [String, nil] Override the default base URL for the API, e.g., `"https://api.example.com/v2/"`
134
138
  #
135
- # @param api_key [String, nil] Defaults to `ENV["LITHIC_API_KEY"]`
136
- #
137
139
  # @param max_retries [Integer] Max number of retries to attempt after a failed retryable request.
138
140
  #
139
141
  # @param timeout [Float]
@@ -142,9 +144,9 @@ module Lithic
142
144
  #
143
145
  # @param max_retry_delay [Float]
144
146
  def initialize(
147
+ api_key: ENV["LITHIC_API_KEY"],
145
148
  environment: nil,
146
149
  base_url: nil,
147
- api_key: ENV["LITHIC_API_KEY"],
148
150
  max_retries: DEFAULT_MAX_RETRIES,
149
151
  timeout: DEFAULT_TIMEOUT_IN_SECONDS,
150
152
  initial_retry_delay: DEFAULT_INITIAL_RETRY_DELAY,
@@ -162,7 +164,7 @@ module Lithic
162
164
  end
163
165
 
164
166
  if api_key.nil?
165
- raise ArgumentError.new("api_key is required")
167
+ raise ArgumentError.new("api_key is required, and can be set via environ: \"LITHIC_API_KEY\"")
166
168
  end
167
169
 
168
170
  headers = {
data/lib/lithic/errors.rb CHANGED
@@ -1,183 +1,192 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lithic
4
- class Error < StandardError
5
- # @!parse
6
- # # @return [StandardError, nil]
7
- # attr_accessor :cause
8
- end
9
-
10
- class ConversionError < Lithic::Error
11
- end
12
-
13
- class APIError < Lithic::Error
14
- # @return [URI::Generic]
15
- attr_accessor :url
16
-
17
- # @return [Integer, nil]
18
- attr_accessor :status
19
-
20
- # @return [Object, nil]
21
- attr_accessor :body
22
-
23
- # @api private
24
- #
25
- # @param url [URI::Generic]
26
- # @param status [Integer, nil]
27
- # @param body [Object, nil]
28
- # @param request [nil]
29
- # @param response [nil]
30
- # @param message [String, nil]
31
- def initialize(url:, status: nil, body: nil, request: nil, response: nil, message: nil)
32
- @url = url
33
- @status = status
34
- @body = body
35
- @request = request
36
- @response = response
37
- super(message)
4
+ module Errors
5
+ class Error < StandardError
6
+ # @!parse
7
+ # # @return [StandardError, nil]
8
+ # attr_accessor :cause
38
9
  end
39
- end
40
10
 
41
- class APIConnectionError < Lithic::APIError
42
- # @!parse
43
- # # @return [nil]
44
- # attr_accessor :status
45
-
46
- # @!parse
47
- # # @return [nil]
48
- # attr_accessor :body
49
-
50
- # @api private
51
- #
52
- # @param url [URI::Generic]
53
- # @param status [nil]
54
- # @param body [nil]
55
- # @param request [nil]
56
- # @param response [nil]
57
- # @param message [String, nil]
58
- def initialize(
59
- url:,
60
- status: nil,
61
- body: nil,
62
- request: nil,
63
- response: nil,
64
- message: "Connection error."
65
- )
66
- super
11
+ class ConversionError < Lithic::Errors::Error
67
12
  end
68
- end
69
13
 
70
- class APITimeoutError < Lithic::APIConnectionError
71
- # @api private
72
- #
73
- # @param url [URI::Generic]
74
- # @param status [nil]
75
- # @param body [nil]
76
- # @param request [nil]
77
- # @param response [nil]
78
- # @param message [String, nil]
79
- def initialize(
80
- url:,
81
- status: nil,
82
- body: nil,
83
- request: nil,
84
- response: nil,
85
- message: "Request timed out."
86
- )
87
- super
14
+ class APIError < Lithic::Errors::Error
15
+ # @return [URI::Generic]
16
+ attr_accessor :url
17
+
18
+ # @return [Integer, nil]
19
+ attr_accessor :status
20
+
21
+ # @return [Object, nil]
22
+ attr_accessor :body
23
+
24
+ # @api private
25
+ #
26
+ # @param url [URI::Generic]
27
+ # @param status [Integer, nil]
28
+ # @param body [Object, nil]
29
+ # @param request [nil]
30
+ # @param response [nil]
31
+ # @param message [String, nil]
32
+ def initialize(url:, status: nil, body: nil, request: nil, response: nil, message: nil)
33
+ @url = url
34
+ @status = status
35
+ @body = body
36
+ @request = request
37
+ @response = response
38
+ super(message)
39
+ end
88
40
  end
89
- end
90
41
 
91
- class APIStatusError < Lithic::APIError
92
- # @api private
93
- #
94
- # @param url [URI::Generic]
95
- # @param status [Integer]
96
- # @param body [Object, nil]
97
- # @param request [nil]
98
- # @param response [nil]
99
- # @param message [String, nil]
100
- #
101
- # @return [Lithic::APIStatusError]
102
- def self.for(url:, status:, body:, request:, response:, message: nil)
103
- kwargs = {url: url, status: status, body: body, request: request, response: response, message: message}
104
-
105
- case status
106
- in 400
107
- Lithic::BadRequestError.new(**kwargs)
108
- in 401
109
- Lithic::AuthenticationError.new(**kwargs)
110
- in 403
111
- Lithic::PermissionDeniedError.new(**kwargs)
112
- in 404
113
- Lithic::NotFoundError.new(**kwargs)
114
- in 409
115
- Lithic::ConflictError.new(**kwargs)
116
- in 422
117
- Lithic::UnprocessableEntityError.new(**kwargs)
118
- in 429
119
- Lithic::RateLimitError.new(**kwargs)
120
- in (500..)
121
- Lithic::InternalServerError.new(**kwargs)
122
- else
123
- Lithic::APIStatusError.new(**kwargs)
42
+ class APIConnectionError < Lithic::Errors::APIError
43
+ # @!parse
44
+ # # @return [nil]
45
+ # attr_accessor :status
46
+
47
+ # @!parse
48
+ # # @return [nil]
49
+ # attr_accessor :body
50
+
51
+ # @api private
52
+ #
53
+ # @param url [URI::Generic]
54
+ # @param status [nil]
55
+ # @param body [nil]
56
+ # @param request [nil]
57
+ # @param response [nil]
58
+ # @param message [String, nil]
59
+ def initialize(
60
+ url:,
61
+ status: nil,
62
+ body: nil,
63
+ request: nil,
64
+ response: nil,
65
+ message: "Connection error."
66
+ )
67
+ super
124
68
  end
125
69
  end
126
70
 
127
- # @!parse
128
- # # @return [Integer]
129
- # attr_accessor :status
130
-
131
- # @api private
132
- #
133
- # @param url [URI::Generic]
134
- # @param status [Integer]
135
- # @param body [Object, nil]
136
- # @param request [nil]
137
- # @param response [nil]
138
- # @param message [String, nil]
139
- def initialize(url:, status:, body:, request:, response:, message: nil)
140
- message ||= {url: url.to_s, status: status, body: body}
141
- super(
142
- url: url,
143
- status: status,
144
- body: body,
145
- request: request,
146
- response: response,
147
- message: message&.to_s
71
+ class APITimeoutError < Lithic::Errors::APIConnectionError
72
+ # @api private
73
+ #
74
+ # @param url [URI::Generic]
75
+ # @param status [nil]
76
+ # @param body [nil]
77
+ # @param request [nil]
78
+ # @param response [nil]
79
+ # @param message [String, nil]
80
+ def initialize(
81
+ url:,
82
+ status: nil,
83
+ body: nil,
84
+ request: nil,
85
+ response: nil,
86
+ message: "Request timed out."
148
87
  )
88
+ super
89
+ end
149
90
  end
150
- end
151
91
 
152
- class BadRequestError < Lithic::APIStatusError
153
- HTTP_STATUS = 400
154
- end
92
+ class APIStatusError < Lithic::Errors::APIError
93
+ # @api private
94
+ #
95
+ # @param url [URI::Generic]
96
+ # @param status [Integer]
97
+ # @param body [Object, nil]
98
+ # @param request [nil]
99
+ # @param response [nil]
100
+ # @param message [String, nil]
101
+ #
102
+ # @return [Lithic::Errors::APIStatusError]
103
+ def self.for(url:, status:, body:, request:, response:, message: nil)
104
+ kwargs = {
105
+ url: url,
106
+ status: status,
107
+ body: body,
108
+ request: request,
109
+ response: response,
110
+ message: message
111
+ }
112
+
113
+ case status
114
+ in 400
115
+ Lithic::Errors::BadRequestError.new(**kwargs)
116
+ in 401
117
+ Lithic::Errors::AuthenticationError.new(**kwargs)
118
+ in 403
119
+ Lithic::Errors::PermissionDeniedError.new(**kwargs)
120
+ in 404
121
+ Lithic::Errors::NotFoundError.new(**kwargs)
122
+ in 409
123
+ Lithic::Errors::ConflictError.new(**kwargs)
124
+ in 422
125
+ Lithic::Errors::UnprocessableEntityError.new(**kwargs)
126
+ in 429
127
+ Lithic::Errors::RateLimitError.new(**kwargs)
128
+ in (500..)
129
+ Lithic::Errors::InternalServerError.new(**kwargs)
130
+ else
131
+ Lithic::Errors::APIStatusError.new(**kwargs)
132
+ end
133
+ end
155
134
 
156
- class AuthenticationError < Lithic::APIStatusError
157
- HTTP_STATUS = 401
158
- end
135
+ # @!parse
136
+ # # @return [Integer]
137
+ # attr_accessor :status
138
+
139
+ # @api private
140
+ #
141
+ # @param url [URI::Generic]
142
+ # @param status [Integer]
143
+ # @param body [Object, nil]
144
+ # @param request [nil]
145
+ # @param response [nil]
146
+ # @param message [String, nil]
147
+ def initialize(url:, status:, body:, request:, response:, message: nil)
148
+ message ||= {url: url.to_s, status: status, body: body}
149
+ super(
150
+ url: url,
151
+ status: status,
152
+ body: body,
153
+ request: request,
154
+ response: response,
155
+ message: message&.to_s
156
+ )
157
+ end
158
+ end
159
159
 
160
- class PermissionDeniedError < Lithic::APIStatusError
161
- HTTP_STATUS = 403
162
- end
160
+ class BadRequestError < Lithic::Errors::APIStatusError
161
+ HTTP_STATUS = 400
162
+ end
163
163
 
164
- class NotFoundError < Lithic::APIStatusError
165
- HTTP_STATUS = 404
166
- end
164
+ class AuthenticationError < Lithic::Errors::APIStatusError
165
+ HTTP_STATUS = 401
166
+ end
167
167
 
168
- class ConflictError < Lithic::APIStatusError
169
- HTTP_STATUS = 409
170
- end
168
+ class PermissionDeniedError < Lithic::Errors::APIStatusError
169
+ HTTP_STATUS = 403
170
+ end
171
171
 
172
- class UnprocessableEntityError < Lithic::APIStatusError
173
- HTTP_STATUS = 422
174
- end
172
+ class NotFoundError < Lithic::Errors::APIStatusError
173
+ HTTP_STATUS = 404
174
+ end
175
175
 
176
- class RateLimitError < Lithic::APIStatusError
177
- HTTP_STATUS = 429
178
- end
176
+ class ConflictError < Lithic::Errors::APIStatusError
177
+ HTTP_STATUS = 409
178
+ end
179
+
180
+ class UnprocessableEntityError < Lithic::Errors::APIStatusError
181
+ HTTP_STATUS = 422
182
+ end
179
183
 
180
- class InternalServerError < Lithic::APIStatusError
181
- HTTP_STATUS = (500..)
184
+ class RateLimitError < Lithic::Errors::APIStatusError
185
+ HTTP_STATUS = 429
186
+ end
187
+
188
+ class InternalServerError < Lithic::Errors::APIStatusError
189
+ HTTP_STATUS = (500..)
190
+ end
182
191
  end
183
192
  end
@@ -0,0 +1,82 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Internal
5
+ # @example
6
+ # if cursor_page.has_next?
7
+ # cursor_page = cursor_page.next_page
8
+ # end
9
+ #
10
+ # @example
11
+ # cursor_page.auto_paging_each do |account|
12
+ # puts(account)
13
+ # end
14
+ class CursorPage
15
+ include Lithic::Internal::Type::BasePage
16
+
17
+ # @return [Array<Object>, nil]
18
+ attr_accessor :data
19
+
20
+ # @return [Boolean]
21
+ attr_accessor :has_more
22
+
23
+ # @api private
24
+ #
25
+ # @param client [Lithic::Internal::Transport::BaseClient]
26
+ # @param req [Hash{Symbol=>Object}]
27
+ # @param headers [Hash{String=>String}, Net::HTTPHeader]
28
+ # @param page_data [Hash{Symbol=>Object}]
29
+ def initialize(client:, req:, headers:, page_data:)
30
+ super
31
+ model = req.fetch(:model)
32
+
33
+ case page_data
34
+ in {data: Array | nil => data}
35
+ @data = data&.map { Lithic::Internal::Type::Converter.coerce(model, _1) }
36
+ else
37
+ end
38
+
39
+ case page_data
40
+ in {has_more: true | false => has_more}
41
+ @has_more = has_more
42
+ else
43
+ end
44
+ end
45
+
46
+ # @return [Boolean]
47
+ def next_page?
48
+ has_more
49
+ end
50
+
51
+ # @raise [Lithic::HTTP::Error]
52
+ # @return [Lithic::Internal::CursorPage]
53
+ def next_page
54
+ unless next_page?
55
+ message = "No more pages available. Please check #next_page? before calling ##{__method__}"
56
+ raise RuntimeError.new(message)
57
+ end
58
+
59
+ req = Lithic::Internal::Util.deep_merge(@req, {query: {starting_after: data&.last&.token}})
60
+ @client.request(req)
61
+ end
62
+
63
+ # @param blk [Proc]
64
+ def auto_paging_each(&blk)
65
+ unless block_given?
66
+ raise ArgumentError.new("A block must be given to ##{__method__}")
67
+ end
68
+ page = self
69
+ loop do
70
+ page.data&.each { blk.call(_1) }
71
+ break unless page.next_page?
72
+ page = page.next_page
73
+ end
74
+ end
75
+
76
+ # @return [String]
77
+ def inspect
78
+ "#<#{self.class}:0x#{object_id.to_s(16)} data=#{data.inspect} has_more=#{has_more.inspect}>"
79
+ end
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Internal
5
+ # @example
6
+ # if single_page.has_next?
7
+ # single_page = single_page.next_page
8
+ # end
9
+ #
10
+ # @example
11
+ # single_page.auto_paging_each do |account_holder|
12
+ # puts(account_holder)
13
+ # end
14
+ class SinglePage
15
+ include Lithic::Internal::Type::BasePage
16
+
17
+ # @return [Array<Object>, nil]
18
+ attr_accessor :data
19
+
20
+ # @return [Boolean]
21
+ attr_accessor :has_more
22
+
23
+ # @api private
24
+ #
25
+ # @param client [Lithic::Internal::Transport::BaseClient]
26
+ # @param req [Hash{Symbol=>Object}]
27
+ # @param headers [Hash{String=>String}, Net::HTTPHeader]
28
+ # @param page_data [Array<Object>]
29
+ def initialize(client:, req:, headers:, page_data:)
30
+ super
31
+ model = req.fetch(:model)
32
+
33
+ case page_data
34
+ in {data: Array | nil => data}
35
+ @data = data&.map { Lithic::Internal::Type::Converter.coerce(model, _1) }
36
+ else
37
+ end
38
+
39
+ case page_data
40
+ in {has_more: true | false => has_more}
41
+ @has_more = has_more
42
+ else
43
+ end
44
+ end
45
+
46
+ # @return [Boolean]
47
+ def next_page?
48
+ has_more
49
+ end
50
+
51
+ # @raise [Lithic::HTTP::Error]
52
+ # @return [Lithic::Internal::SinglePage]
53
+ def next_page
54
+ RuntimeError.new("No more pages available.")
55
+ end
56
+
57
+ # @param blk [Proc]
58
+ def auto_paging_each(&blk)
59
+ unless block_given?
60
+ raise ArgumentError.new("A block must be given to ##{__method__}")
61
+ end
62
+ page = self
63
+ loop do
64
+ page.data&.each { blk.call(_1) }
65
+ break unless page.next_page?
66
+ page = page.next_page
67
+ end
68
+ end
69
+
70
+ # @return [String]
71
+ def inspect
72
+ "#<#{self.class}:0x#{object_id.to_s(16)} data=#{data.inspect} has_more=#{has_more.inspect}>"
73
+ end
74
+ end
75
+ end
76
+ end