straddle 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +74 -0
  3. data/README.md +10 -1
  4. data/lib/straddle/client.rb +34 -0
  5. data/lib/straddle/internal/transport/pooled_net_requester.rb +13 -11
  6. data/lib/straddle/internal/util.rb +39 -3
  7. data/lib/straddle/models/bridge/link_create_paykey_response.rb +8 -0
  8. data/lib/straddle/models/bridge/link_create_tan_response.rb +8 -0
  9. data/lib/straddle/models/charge_cancel_params.rb +8 -1
  10. data/lib/straddle/models/charge_create_params.rb +20 -4
  11. data/lib/straddle/models/charge_get_params.rb +7 -1
  12. data/lib/straddle/models/charge_hold_params.rb +8 -1
  13. data/lib/straddle/models/charge_release_params.rb +8 -1
  14. data/lib/straddle/models/charge_unmask_params.rb +7 -1
  15. data/lib/straddle/models/charge_unmask_response.rb +59 -5
  16. data/lib/straddle/models/charge_update_params.rb +11 -4
  17. data/lib/straddle/models/charge_v1.rb +59 -5
  18. data/lib/straddle/models/customer_delete_params.rb +7 -1
  19. data/lib/straddle/models/customer_get_params.rb +7 -1
  20. data/lib/straddle/models/customer_unmasked_params.rb +7 -1
  21. data/lib/straddle/models/customer_update_params.rb +8 -1
  22. data/lib/straddle/models/customers/review_decision_params.rb +8 -1
  23. data/lib/straddle/models/customers/review_get_params.rb +7 -1
  24. data/lib/straddle/models/customers/review_refresh_review_params.rb +7 -1
  25. data/lib/straddle/models/embed/account_get_params.rb +11 -1
  26. data/lib/straddle/models/embed/account_onboard_params.rb +7 -1
  27. data/lib/straddle/models/embed/account_paged_v1.rb +4 -0
  28. data/lib/straddle/models/embed/account_simulate_params.rb +7 -1
  29. data/lib/straddle/models/embed/account_update_params.rb +8 -1
  30. data/lib/straddle/models/embed/account_v1.rb +4 -0
  31. data/lib/straddle/models/embed/accounts/capability_request_create_params.rb +8 -1
  32. data/lib/straddle/models/embed/accounts/capability_request_list_params.rb +8 -1
  33. data/lib/straddle/models/embed/accounts/capability_request_paged_v1.rb +9 -1
  34. data/lib/straddle/models/embed/address_v1.rb +14 -38
  35. data/lib/straddle/models/embed/linked_bank_account_cancel_params.rb +7 -1
  36. data/lib/straddle/models/embed/linked_bank_account_get_params.rb +7 -1
  37. data/lib/straddle/models/embed/linked_bank_account_unmask_params.rb +7 -1
  38. data/lib/straddle/models/embed/linked_bank_account_update_params.rb +8 -1
  39. data/lib/straddle/models/embed/organization_get_params.rb +7 -1
  40. data/lib/straddle/models/embed/representative_get_params.rb +7 -1
  41. data/lib/straddle/models/embed/representative_unmask_params.rb +7 -1
  42. data/lib/straddle/models/embed/representative_update_params.rb +8 -1
  43. data/lib/straddle/models/funding_event_get_params.rb +7 -1
  44. data/lib/straddle/models/funding_event_list_params.rb +105 -1
  45. data/lib/straddle/models/funding_event_summary_item_v1.rb +128 -1
  46. data/lib/straddle/models/funding_event_summary_paged_v1.rb +128 -1
  47. data/lib/straddle/models/paykey_cancel_params.rb +7 -1
  48. data/lib/straddle/models/paykey_get_params.rb +7 -1
  49. data/lib/straddle/models/paykey_list_params.rb +24 -1
  50. data/lib/straddle/models/paykey_reveal_params.rb +7 -1
  51. data/lib/straddle/models/paykey_reveal_response.rb +8 -0
  52. data/lib/straddle/models/paykey_summary_paged_v1.rb +19 -1
  53. data/lib/straddle/models/paykey_unmasked_params.rb +7 -1
  54. data/lib/straddle/models/paykey_unmasked_v1.rb +8 -0
  55. data/lib/straddle/models/paykey_update_balance_params.rb +7 -1
  56. data/lib/straddle/models/paykey_v1.rb +19 -1
  57. data/lib/straddle/models/paykeys/review_decision_params.rb +7 -1
  58. data/lib/straddle/models/paykeys/review_get_params.rb +7 -1
  59. data/lib/straddle/models/paykeys/review_get_response.rb +19 -4
  60. data/lib/straddle/models/paykeys/review_refresh_review_params.rb +7 -1
  61. data/lib/straddle/models/payment_list_params.rb +17 -1
  62. data/lib/straddle/models/payment_summary_paged_v1.rb +13 -4
  63. data/lib/straddle/models/payout_cancel_params.rb +8 -1
  64. data/lib/straddle/models/payout_create_params.rb +20 -4
  65. data/lib/straddle/models/payout_get_params.rb +7 -1
  66. data/lib/straddle/models/payout_hold_params.rb +8 -1
  67. data/lib/straddle/models/payout_release_params.rb +8 -1
  68. data/lib/straddle/models/payout_unmask_params.rb +7 -1
  69. data/lib/straddle/models/payout_unmask_response.rb +59 -5
  70. data/lib/straddle/models/payout_update_params.rb +11 -4
  71. data/lib/straddle/models/payout_v1.rb +59 -5
  72. data/lib/straddle/models/status_details_v1.rb +7 -0
  73. data/lib/straddle/resources/bridge/link.rb +12 -6
  74. data/lib/straddle/resources/bridge.rb +13 -1
  75. data/lib/straddle/resources/charges.rb +13 -8
  76. data/lib/straddle/resources/customers/review.rb +7 -1
  77. data/lib/straddle/resources/customers.rb +23 -10
  78. data/lib/straddle/resources/embed/accounts/capability_requests.rb +9 -4
  79. data/lib/straddle/resources/embed/accounts.rb +25 -14
  80. data/lib/straddle/resources/embed/linked_bank_accounts.rb +11 -6
  81. data/lib/straddle/resources/embed/organizations.rb +7 -2
  82. data/lib/straddle/resources/embed/representatives.rb +15 -8
  83. data/lib/straddle/resources/embed.rb +19 -0
  84. data/lib/straddle/resources/funding_events.rb +22 -3
  85. data/lib/straddle/resources/paykeys/review.rb +7 -2
  86. data/lib/straddle/resources/paykeys.rb +36 -11
  87. data/lib/straddle/resources/payments.rb +12 -6
  88. data/lib/straddle/resources/payouts.rb +11 -7
  89. data/lib/straddle/version.rb +1 -1
  90. data/lib/straddle.rb +1 -0
  91. data/manifest.yaml +1 -0
  92. data/rbi/straddle/client.rbi +34 -0
  93. data/rbi/straddle/internal/util.rbi +21 -1
  94. data/rbi/straddle/models/bridge/link_create_paykey_response.rbi +40 -0
  95. data/rbi/straddle/models/bridge/link_create_tan_response.rbi +40 -0
  96. data/rbi/straddle/models/charge_cancel_params.rbi +6 -0
  97. data/rbi/straddle/models/charge_create_params.rbi +19 -3
  98. data/rbi/straddle/models/charge_get_params.rbi +6 -0
  99. data/rbi/straddle/models/charge_hold_params.rbi +6 -0
  100. data/rbi/straddle/models/charge_release_params.rbi +6 -0
  101. data/rbi/straddle/models/charge_unmask_params.rbi +6 -0
  102. data/rbi/straddle/models/charge_unmask_response.rbi +143 -6
  103. data/rbi/straddle/models/charge_update_params.rbi +9 -3
  104. data/rbi/straddle/models/charge_v1.rbi +135 -6
  105. data/rbi/straddle/models/customer_delete_params.rbi +6 -0
  106. data/rbi/straddle/models/customer_get_params.rbi +6 -0
  107. data/rbi/straddle/models/customer_unmasked_params.rbi +6 -0
  108. data/rbi/straddle/models/customer_update_params.rbi +6 -0
  109. data/rbi/straddle/models/customers/review_decision_params.rbi +6 -0
  110. data/rbi/straddle/models/customers/review_get_params.rbi +6 -0
  111. data/rbi/straddle/models/customers/review_refresh_review_params.rbi +6 -0
  112. data/rbi/straddle/models/embed/account_get_params.rbi +13 -1
  113. data/rbi/straddle/models/embed/account_onboard_params.rbi +6 -0
  114. data/rbi/straddle/models/embed/account_paged_v1.rbi +20 -0
  115. data/rbi/straddle/models/embed/account_simulate_params.rbi +6 -0
  116. data/rbi/straddle/models/embed/account_update_params.rbi +6 -0
  117. data/rbi/straddle/models/embed/account_v1.rbi +20 -0
  118. data/rbi/straddle/models/embed/accounts/capability_request_create_params.rbi +6 -0
  119. data/rbi/straddle/models/embed/accounts/capability_request_list_params.rbi +6 -0
  120. data/rbi/straddle/models/embed/accounts/capability_request_paged_v1.rbi +8 -0
  121. data/rbi/straddle/models/embed/address_v1.rbi +18 -42
  122. data/rbi/straddle/models/embed/linked_bank_account_cancel_params.rbi +6 -0
  123. data/rbi/straddle/models/embed/linked_bank_account_get_params.rbi +11 -1
  124. data/rbi/straddle/models/embed/linked_bank_account_unmask_params.rbi +11 -1
  125. data/rbi/straddle/models/embed/linked_bank_account_update_params.rbi +6 -0
  126. data/rbi/straddle/models/embed/organization_get_params.rbi +11 -1
  127. data/rbi/straddle/models/embed/representative_get_params.rbi +11 -1
  128. data/rbi/straddle/models/embed/representative_unmask_params.rbi +11 -1
  129. data/rbi/straddle/models/embed/representative_update_params.rbi +6 -0
  130. data/rbi/straddle/models/funding_event_get_params.rbi +6 -0
  131. data/rbi/straddle/models/funding_event_list_params.rbi +333 -0
  132. data/rbi/straddle/models/funding_event_summary_item_v1.rbi +392 -0
  133. data/rbi/straddle/models/funding_event_summary_paged_v1.rbi +393 -0
  134. data/rbi/straddle/models/paykey_cancel_params.rbi +6 -0
  135. data/rbi/straddle/models/paykey_get_params.rbi +6 -0
  136. data/rbi/straddle/models/paykey_list_params.rbi +30 -0
  137. data/rbi/straddle/models/paykey_reveal_params.rbi +6 -0
  138. data/rbi/straddle/models/paykey_reveal_response.rbi +40 -0
  139. data/rbi/straddle/models/paykey_summary_paged_v1.rbi +55 -3
  140. data/rbi/straddle/models/paykey_unmasked_params.rbi +6 -0
  141. data/rbi/straddle/models/paykey_unmasked_v1.rbi +40 -0
  142. data/rbi/straddle/models/paykey_update_balance_params.rbi +6 -0
  143. data/rbi/straddle/models/paykey_v1.rbi +52 -3
  144. data/rbi/straddle/models/paykeys/review_decision_params.rbi +6 -0
  145. data/rbi/straddle/models/paykeys/review_get_params.rbi +6 -0
  146. data/rbi/straddle/models/paykeys/review_get_response.rbi +55 -18
  147. data/rbi/straddle/models/paykeys/review_refresh_review_params.rbi +6 -0
  148. data/rbi/straddle/models/payment_list_params.rbi +51 -0
  149. data/rbi/straddle/models/payment_summary_paged_v1.rbi +16 -3
  150. data/rbi/straddle/models/payout_cancel_params.rbi +6 -0
  151. data/rbi/straddle/models/payout_create_params.rbi +19 -3
  152. data/rbi/straddle/models/payout_get_params.rbi +6 -0
  153. data/rbi/straddle/models/payout_hold_params.rbi +6 -0
  154. data/rbi/straddle/models/payout_release_params.rbi +6 -0
  155. data/rbi/straddle/models/payout_unmask_params.rbi +6 -0
  156. data/rbi/straddle/models/payout_unmask_response.rbi +140 -3
  157. data/rbi/straddle/models/payout_update_params.rbi +9 -3
  158. data/rbi/straddle/models/payout_v1.rbi +132 -3
  159. data/rbi/straddle/models/status_details_v1.rbi +29 -0
  160. data/rbi/straddle/resources/bridge/link.rbi +12 -6
  161. data/rbi/straddle/resources/bridge.rbi +13 -1
  162. data/rbi/straddle/resources/charges.rbi +13 -8
  163. data/rbi/straddle/resources/customers/review.rbi +7 -1
  164. data/rbi/straddle/resources/customers.rbi +20 -8
  165. data/rbi/straddle/resources/embed/accounts/capability_requests.rbi +6 -2
  166. data/rbi/straddle/resources/embed/accounts.rbi +19 -10
  167. data/rbi/straddle/resources/embed/linked_bank_accounts.rbi +8 -4
  168. data/rbi/straddle/resources/embed/organizations.rbi +4 -0
  169. data/rbi/straddle/resources/embed/representatives.rbi +12 -6
  170. data/rbi/straddle/resources/embed.rbi +19 -0
  171. data/rbi/straddle/resources/funding_events.rbi +27 -0
  172. data/rbi/straddle/resources/paykeys/review.rbi +7 -2
  173. data/rbi/straddle/resources/paykeys.rbi +26 -8
  174. data/rbi/straddle/resources/payments.rbi +8 -3
  175. data/rbi/straddle/resources/payouts.rbi +11 -7
  176. data/sig/straddle/internal/util.rbs +10 -0
  177. data/sig/straddle/models/bridge/link_create_paykey_response.rbs +17 -1
  178. data/sig/straddle/models/bridge/link_create_tan_response.rbs +17 -1
  179. data/sig/straddle/models/charge_cancel_params.rbs +5 -0
  180. data/sig/straddle/models/charge_create_params.rbs +14 -4
  181. data/sig/straddle/models/charge_get_params.rbs +5 -0
  182. data/sig/straddle/models/charge_hold_params.rbs +5 -0
  183. data/sig/straddle/models/charge_release_params.rbs +5 -0
  184. data/sig/straddle/models/charge_unmask_params.rbs +5 -0
  185. data/sig/straddle/models/charge_unmask_response.rbs +57 -7
  186. data/sig/straddle/models/charge_update_params.rbs +9 -4
  187. data/sig/straddle/models/charge_v1.rbs +57 -7
  188. data/sig/straddle/models/customer_delete_params.rbs +5 -0
  189. data/sig/straddle/models/customer_get_params.rbs +5 -0
  190. data/sig/straddle/models/customer_unmasked_params.rbs +5 -0
  191. data/sig/straddle/models/customer_update_params.rbs +5 -0
  192. data/sig/straddle/models/customers/review_decision_params.rbs +5 -0
  193. data/sig/straddle/models/customers/review_get_params.rbs +5 -0
  194. data/sig/straddle/models/customers/review_refresh_review_params.rbs +5 -0
  195. data/sig/straddle/models/embed/account_get_params.rbs +5 -1
  196. data/sig/straddle/models/embed/account_onboard_params.rbs +5 -0
  197. data/sig/straddle/models/embed/account_paged_v1.rbs +18 -2
  198. data/sig/straddle/models/embed/account_simulate_params.rbs +5 -0
  199. data/sig/straddle/models/embed/account_update_params.rbs +5 -0
  200. data/sig/straddle/models/embed/account_v1.rbs +18 -2
  201. data/sig/straddle/models/embed/accounts/capability_request_create_params.rbs +5 -0
  202. data/sig/straddle/models/embed/accounts/capability_request_list_params.rbs +5 -0
  203. data/sig/straddle/models/embed/accounts/capability_request_paged_v1.rbs +5 -0
  204. data/sig/straddle/models/embed/address_v1.rbs +12 -27
  205. data/sig/straddle/models/embed/linked_bank_account_cancel_params.rbs +10 -1
  206. data/sig/straddle/models/embed/linked_bank_account_get_params.rbs +9 -1
  207. data/sig/straddle/models/embed/linked_bank_account_unmask_params.rbs +9 -1
  208. data/sig/straddle/models/embed/linked_bank_account_update_params.rbs +5 -0
  209. data/sig/straddle/models/embed/organization_get_params.rbs +5 -1
  210. data/sig/straddle/models/embed/representative_get_params.rbs +9 -1
  211. data/sig/straddle/models/embed/representative_unmask_params.rbs +9 -1
  212. data/sig/straddle/models/embed/representative_update_params.rbs +5 -0
  213. data/sig/straddle/models/funding_event_get_params.rbs +5 -0
  214. data/sig/straddle/models/funding_event_list_params.rbs +125 -0
  215. data/sig/straddle/models/funding_event_summary_item_v1.rbs +164 -0
  216. data/sig/straddle/models/funding_event_summary_paged_v1.rbs +164 -0
  217. data/sig/straddle/models/paykey_cancel_params.rbs +5 -0
  218. data/sig/straddle/models/paykey_get_params.rbs +5 -0
  219. data/sig/straddle/models/paykey_list_params.rbs +17 -1
  220. data/sig/straddle/models/paykey_reveal_params.rbs +5 -0
  221. data/sig/straddle/models/paykey_reveal_response.rbs +17 -1
  222. data/sig/straddle/models/paykey_summary_paged_v1.rbs +25 -4
  223. data/sig/straddle/models/paykey_unmasked_params.rbs +5 -0
  224. data/sig/straddle/models/paykey_unmasked_v1.rbs +17 -1
  225. data/sig/straddle/models/paykey_update_balance_params.rbs +5 -0
  226. data/sig/straddle/models/paykey_v1.rbs +25 -4
  227. data/sig/straddle/models/paykeys/review_decision_params.rbs +5 -0
  228. data/sig/straddle/models/paykeys/review_get_params.rbs +5 -0
  229. data/sig/straddle/models/paykeys/review_get_response.rbs +28 -10
  230. data/sig/straddle/models/paykeys/review_refresh_review_params.rbs +5 -0
  231. data/sig/straddle/models/payment_list_params.rbs +23 -0
  232. data/sig/straddle/models/payment_summary_paged_v1.rbs +11 -4
  233. data/sig/straddle/models/payout_cancel_params.rbs +5 -0
  234. data/sig/straddle/models/payout_create_params.rbs +14 -4
  235. data/sig/straddle/models/payout_get_params.rbs +5 -0
  236. data/sig/straddle/models/payout_hold_params.rbs +5 -0
  237. data/sig/straddle/models/payout_release_params.rbs +5 -0
  238. data/sig/straddle/models/payout_unmask_params.rbs +5 -0
  239. data/sig/straddle/models/payout_unmask_response.rbs +54 -4
  240. data/sig/straddle/models/payout_update_params.rbs +9 -4
  241. data/sig/straddle/models/payout_v1.rbs +54 -4
  242. data/sig/straddle/models/status_details_v1.rbs +14 -0
  243. data/sig/straddle/resources/charges.rbs +2 -2
  244. data/sig/straddle/resources/funding_events.rbs +4 -0
  245. data/sig/straddle/resources/paykeys.rbs +2 -0
  246. data/sig/straddle/resources/payments.rbs +1 -0
  247. data/sig/straddle/resources/payouts.rbs +2 -2
  248. metadata +16 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3e5e80a1c1b53b3a5f149984bc7e7fbb1ae782caee1a4c9683ffcb96559733a7
4
- data.tar.gz: 376d8c6d7ee586b2d7e61dad2947fae516565306f9ad6d4754273c38568bfa8d
3
+ metadata.gz: 6434af7d317097aa21f1993bcbfffc0df3661c98722719304c4a375a02bfeffc
4
+ data.tar.gz: b5a7f9eec6c595ab6b5406d9140f0c3b803ea93d7ed34c7ffe84a450e4fc0ce8
5
5
  SHA512:
6
- metadata.gz: 57024a8ac2cbc21595f1d7eb0896f367273cda63b109d206fe0ef5168f8eb9c91bf47550c509c5b74bac8ff745366678acd1a433566d67278cc780c4698f1a24
7
- data.tar.gz: 7128242298fe0136fdbaa3b3e87ead934ba990d6bf99aed938229b034cd90e903a8fb51989dd8cd89c1eb53ae9d70411547aad962c7812898e966fde32292bc3
6
+ metadata.gz: 4c109c641b80e7e87fc6f7002e06a61ca536eb674798c73afdc99ed21cc83d0015000078e88c93e39620f004ff289a4b06725301d1f0ed481a422c9d4a344e10
7
+ data.tar.gz: ce0ef51d8928bd78ce2a2dbafdf99cef9f22d2bd1be75095ece27a58fb125554ae3e41255215fa77cbfb9de64b1b43b75e9fc3e44e9554290f6d50230aac1389
data/CHANGELOG.md CHANGED
@@ -1,5 +1,79 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.0 (2026-03-25)
4
+
5
+ Full Changelog: [v0.3.0...v0.4.0](https://github.com/straddleio/straddle-ruby/compare/v0.3.0...v0.4.0)
6
+
7
+ ### Features
8
+
9
+ * **docs:** Preliminary update to SDK Spec ([a994089](https://github.com/straddleio/straddle-ruby/commit/a99408935f4845971d9651ad7fee5d717236cc4b))
10
+ * **docs:** Preliminary update to SDK Spec ([e0c673c](https://github.com/straddleio/straddle-ruby/commit/e0c673c0b019a12538459577ea1ace160157be9f))
11
+ * **docs:** Preliminary update to SDK Spec ([ab49d6a](https://github.com/straddleio/straddle-ruby/commit/ab49d6aa46cb99d6730e1f5948bbcfb5415ce78c))
12
+ * **docs:** Preliminary update to SDK Spec ([2bb0ce7](https://github.com/straddleio/straddle-ruby/commit/2bb0ce7d9596b697ddf32df5ef277ca55d4b95cb))
13
+ * **docs:** Preliminary update to SDK Spec ([759a24a](https://github.com/straddleio/straddle-ruby/commit/759a24a18fc47e03f99ea25c72e6b5e648803de6))
14
+ * **docs:** Preliminary update to SDK Spec ([2f15e87](https://github.com/straddleio/straddle-ruby/commit/2f15e87de5dbb4dab8160231011b4caf010baeb6))
15
+ * **docs:** Preliminary update to SDK Spec ([65fe483](https://github.com/straddleio/straddle-ruby/commit/65fe483c98ad3d3c4a901f10c9bfc1b5ef96d257))
16
+ * **docs:** Preliminary update to SDK Spec ([35942d0](https://github.com/straddleio/straddle-ruby/commit/35942d0627af65b581371c283021844fd8a0bf81))
17
+ * **docs:** Preliminary update to SDK Spec ([b287450](https://github.com/straddleio/straddle-ruby/commit/b287450f5ab5ee21243ba0b0c1458beb72f92832))
18
+ * **docs:** Preliminary update to SDK Spec ([caa3e6e](https://github.com/straddleio/straddle-ruby/commit/caa3e6eaedca057efac14a95278655388a870ffb))
19
+ * **docs:** Preliminary update to SDK Spec ([da1a4e5](https://github.com/straddleio/straddle-ruby/commit/da1a4e5c2d0ad6b62c2971b2eaa20146965e178d))
20
+ * **docs:** Preliminary update to SDK Spec ([12c8533](https://github.com/straddleio/straddle-ruby/commit/12c853310303cb4b4342b5c278cb7941f480f103))
21
+ * **docs:** Preliminary update to SDK Spec ([2bb2562](https://github.com/straddleio/straddle-ruby/commit/2bb2562e097739663f25b260d1007041b9109f0f))
22
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([abb8de9](https://github.com/straddleio/straddle-ruby/commit/abb8de9e06161d6ce2ae94b798b4387df8d1a24c))
23
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([6e446e6](https://github.com/straddleio/straddle-ruby/commit/6e446e60dc383c9d3c6184811af093d28b6e1cd8))
24
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([d908ee6](https://github.com/straddleio/straddle-ruby/commit/d908ee634a5ae9ac456e569a3295da27cc4c990e))
25
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([898c39b](https://github.com/straddleio/straddle-ruby/commit/898c39bec0902f40eb06355d6804b497b6cffe2b))
26
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([cc470c8](https://github.com/straddleio/straddle-ruby/commit/cc470c8ad0504432f4b808b37127aa79efff9833))
27
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([99ed5a2](https://github.com/straddleio/straddle-ruby/commit/99ed5a21f9e79a9390bf092c2d51138ea0d84b2d))
28
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([d2ead91](https://github.com/straddleio/straddle-ruby/commit/d2ead91f78dec78cac9d524abf5428c1fa22a720))
29
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([46a0ab3](https://github.com/straddleio/straddle-ruby/commit/46a0ab30f644faa810fa509bd8f104847b88c978))
30
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([ef7fd5f](https://github.com/straddleio/straddle-ruby/commit/ef7fd5f87a68ce095c9b367c8a7f2edca5fe23be))
31
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([454257f](https://github.com/straddleio/straddle-ruby/commit/454257f19eb94916cea2e2f62d4855a540e6f36f))
32
+ * **docs:** Release Updates to SDK based on Open API Spec (Final) ([327f383](https://github.com/straddleio/straddle-ruby/commit/327f38385cacf75acf5cffc2c3fd9e49d6d6b858))
33
+
34
+
35
+ ### Bug Fixes
36
+
37
+ * calling `break` out of streams should be instantaneous ([65a7035](https://github.com/straddleio/straddle-ruby/commit/65a70353f1184a41f6d49e25eef0bdbc7072159a))
38
+ * **client:** always add content-length to post body, even when empty ([30dd077](https://github.com/straddleio/straddle-ruby/commit/30dd077007ef4d18699681aaeb38c3ce96e6f71a))
39
+ * **client:** loosen json header parsing ([89a2422](https://github.com/straddleio/straddle-ruby/commit/89a24221918e69c4d1d416c8112e8e5d60462197))
40
+ * **docs:** fix mcp installation instructions for remote servers ([4e9f0b8](https://github.com/straddleio/straddle-ruby/commit/4e9f0b845fdd847d19237ec4fca8f271eafa110e))
41
+ * issue where json.parse errors when receiving HTTP 204 with nobody ([50718b8](https://github.com/straddleio/straddle-ruby/commit/50718b8169bbda3a2ebc1c0b5bc5424ad8080391))
42
+ * properly mock time in ruby ci tests ([c17150a](https://github.com/straddleio/straddle-ruby/commit/c17150a4ea48337ef433acb3d789c4b71192272f))
43
+
44
+
45
+ ### Chores
46
+
47
+ * **ci:** add build step ([b284348](https://github.com/straddleio/straddle-ruby/commit/b284348c52ff380e366b3605688904e4b54a48ee))
48
+ * **ci:** skip lint on metadata-only changes ([2d5b557](https://github.com/straddleio/straddle-ruby/commit/2d5b557ca8ee74326d4acfe1d1a4aa0669d486d2))
49
+ * **ci:** skip uploading artifacts on stainless-internal branches ([58dafed](https://github.com/straddleio/straddle-ruby/commit/58dafed680488b92024a9eff72374720d421fd6f))
50
+ * **docs:** remove www prefix ([27edb53](https://github.com/straddleio/straddle-ruby/commit/27edb5337b03002d5eb1738b5d92ed1c01463c1d))
51
+ * explicitly require "base64" gem ([f100e97](https://github.com/straddleio/straddle-ruby/commit/f100e97c7e621d0b1ab88ad0c89ee76a0fe45396))
52
+ * fix typo in descriptions ([a2523b7](https://github.com/straddleio/straddle-ruby/commit/a2523b75912086c1843324095984a19b650ff704))
53
+ * **internal:** codegen related update ([8e7cf9a](https://github.com/straddleio/straddle-ruby/commit/8e7cf9acaf4489577db186a2d22e77a955b4906e))
54
+ * **internal:** codegen related update ([8e5e7ea](https://github.com/straddleio/straddle-ruby/commit/8e5e7ea45e9ff012fb2205e6fe9a1e6a0d7dd1e8))
55
+ * **internal:** codegen related update ([1a5e921](https://github.com/straddleio/straddle-ruby/commit/1a5e92121000780f6decf5e835a5546d013d4143))
56
+ * **internal:** tweak CI branches ([3ae860c](https://github.com/straddleio/straddle-ruby/commit/3ae860c3fd991bdb8f23e9810dfd3e602429182b))
57
+ * **internal:** update `actions/checkout` version ([cc750a5](https://github.com/straddleio/straddle-ruby/commit/cc750a510782578f720e3df4fe7f0ad8f1ac7cc5))
58
+ * **internal:** update gitignore ([a710798](https://github.com/straddleio/straddle-ruby/commit/a710798ef83f1345cfdaf96796907539d91c6700))
59
+ * move `cgi` into dependencies for ruby 4 ([bb397c4](https://github.com/straddleio/straddle-ruby/commit/bb397c497907aa40e381dab916a0e2643329476a))
60
+ * **test:** do not count install time for mock server timeout ([e00275d](https://github.com/straddleio/straddle-ruby/commit/e00275d5c3bc65beecc0b3e8d84937f850823d32))
61
+ * **tests:** bump steady to v0.19.4 ([d71d7c1](https://github.com/straddleio/straddle-ruby/commit/d71d7c1efd4d9aff7794dfe094c4a78362302e35))
62
+ * **tests:** bump steady to v0.19.5 ([c6cdca9](https://github.com/straddleio/straddle-ruby/commit/c6cdca9d1ea9be5d8957236da28d805b9f9703c1))
63
+ * **tests:** bump steady to v0.19.6 ([c6117b1](https://github.com/straddleio/straddle-ruby/commit/c6117b1ccca3bf562a2342f69ed9d1ad5f1f3c70))
64
+ * **tests:** bump steady to v0.19.7 ([a15b004](https://github.com/straddleio/straddle-ruby/commit/a15b00439585eaac4d5973dcc58e9651ef1b7e80))
65
+ * update mock server docs ([62f9869](https://github.com/straddleio/straddle-ruby/commit/62f98690bfdb9297542060f54d13159d3b37059f))
66
+
67
+
68
+ ### Documentation
69
+
70
+ * prominently feature MCP server setup in root SDK readmes ([91ed678](https://github.com/straddleio/straddle-ruby/commit/91ed678dc60cdd67aee12901542a3e956410fcd0))
71
+
72
+
73
+ ### Refactors
74
+
75
+ * **tests:** switch from prism to steady ([3a1546c](https://github.com/straddleio/straddle-ruby/commit/3a1546c87187ebda73423d2397295e37ba1fac40))
76
+
3
77
  ## 0.3.0 (2025-11-16)
4
78
 
5
79
  Full Changelog: [v0.2.0...v0.3.0](https://github.com/straddleio/straddle-ruby/compare/v0.2.0...v0.3.0)
data/README.md CHANGED
@@ -4,6 +4,15 @@ The Straddle Ruby library provides convenient access to the Straddle REST API fr
4
4
 
5
5
  It is generated with [Stainless](https://www.stainless.com/).
6
6
 
7
+ ## MCP Server
8
+
9
+ Use the Straddle MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.
10
+
11
+ [![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=%40straddlecom%2Fstraddle-mcp&config=eyJuYW1lIjoiQHN0cmFkZGxlY29tL3N0cmFkZGxlLW1jcCIsInRyYW5zcG9ydCI6Imh0dHAiLCJ1cmwiOiJodHRwczovL3N0cmFkZGxlLnN0bG1jcC5jb20iLCJoZWFkZXJzIjp7Ingtc3RyYWRkbGUtYXBpLWtleSI6Ik15IEFQSSBLZXkifX0)
12
+ [![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22%40straddlecom%2Fstraddle-mcp%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fstraddle.stlmcp.com%22%2C%22headers%22%3A%7B%22x-straddle-api-key%22%3A%22My%20API%20Key%22%7D%7D)
13
+
14
+ > Note: You may need to set environment variables in your MCP client.
15
+
7
16
  ## Documentation
8
17
 
9
18
  Documentation for releases of this gem can be found [on RubyDoc](https://gemdocs.org/gems/straddle).
@@ -17,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
17
26
  <!-- x-release-please-start-version -->
18
27
 
19
28
  ```ruby
20
- gem "straddle", "~> 0.3.0"
29
+ gem "straddle", "~> 0.4.0"
21
30
  ```
22
31
 
23
32
  <!-- x-release-please-end -->
@@ -28,24 +28,58 @@ module Straddle
28
28
  # @return [Straddle::Resources::Embed]
29
29
  attr_reader :embed
30
30
 
31
+ # Bridge provides a comprehensive suite of tools for connecting customer bank
32
+ # accounts. Use it to generate secure widget sessions for instant account
33
+ # verification, accept tokens from major providers like Plaid and Finicity, or
34
+ # verify accounts directly via our API. Bridge handles all sensitive banking
35
+ # credentials and ensures secure, compliant connections with support for 90% of US
36
+ # bank accounts.
31
37
  # @return [Straddle::Resources::Bridge]
32
38
  attr_reader :bridge
33
39
 
40
+ # Customers represent the end users who send or receive payments through your
41
+ # integration. Each customer undergoes automatic identity verification and fraud
42
+ # screening upon creation. Use customers to track payment history, manage bank
43
+ # account connections, and maintain a secure record of all transactions associated
44
+ # with a user. Customers can be either individuals or businesses with appropriate
45
+ # compliance checks for each type.
34
46
  # @return [Straddle::Resources::Customers]
35
47
  attr_reader :customers
36
48
 
49
+ # Paykeys are secure tokens that link verified customer identities to their bank
50
+ # accounts. Each Paykey includes built-in balance checking, fraud detection
51
+ # through LSTM machine learning models, and can be reused for subscriptions and
52
+ # recurring payments without storing sensitive data. Paykeys eliminate fraud by
53
+ # ensuring the person initiating payment owns the funding account.
37
54
  # @return [Straddle::Resources::Paykeys]
38
55
  attr_reader :paykeys
39
56
 
57
+ # Charges represent attempts to debit money from a customer's bank account using a
58
+ # Paykey. Each charge includes automatic balance verification, real-time fraud
59
+ # screening, and multi-rail optimization and detailed status tracking throughout
60
+ # the payment lifecycle. Use charges to accept bank payments with confidence
61
+ # knowing every transaction is protected.
40
62
  # @return [Straddle::Resources::Charges]
41
63
  attr_reader :charges
42
64
 
65
+ # Funding events represent all money movement between Straddle and an Account's
66
+ # external bank accounts. They are automatically generated when charges settle or
67
+ # payouts are initiated. Each event provides detailed tracking of settlement
68
+ # status, fee breakdowns, and reconciliation data across both incoming and
69
+ # outgoing transfers. Use funding events to monitor your platform's entire money
70
+ # movement lifecycle.
43
71
  # @return [Straddle::Resources::FundingEvents]
44
72
  attr_reader :funding_events
45
73
 
74
+ # Payments provide endpoints to filter both Charges and Payouts with multiple
75
+ # different parameters.
46
76
  # @return [Straddle::Resources::Payments]
47
77
  attr_reader :payments
48
78
 
79
+ # Payouts represent transfers from Straddle to customer bank accounts. Create
80
+ # payouts to handle disbursements, process refunds, or manage marketplace
81
+ # settlements. Use payouts to send money quickly and securely with the most
82
+ # cost-effective rail automatically selected.
49
83
  # @return [Straddle::Resources::Payouts]
50
84
  attr_reader :payouts
51
85
 
@@ -75,7 +75,7 @@ module Straddle
75
75
 
76
76
  case body
77
77
  in nil
78
- nil
78
+ req["content-length"] ||= 0 unless req["transfer-encoding"]
79
79
  in String
80
80
  req["content-length"] ||= body.bytesize.to_s unless req["transfer-encoding"]
81
81
  req.body_stream = Straddle::Internal::Util::ReadIOAdapter.new(body, &blk)
@@ -153,17 +153,19 @@ module Straddle
153
153
  end
154
154
 
155
155
  self.class.calibrate_socket_timeout(conn, deadline)
156
- conn.request(req) do |rsp|
157
- y << [req, rsp]
158
- break if finished
159
-
160
- rsp.read_body do |bytes|
161
- y << bytes.force_encoding(Encoding::BINARY)
162
- break if finished
163
-
164
- self.class.calibrate_socket_timeout(conn, deadline)
156
+ ::Kernel.catch(:jump) do
157
+ conn.request(req) do |rsp|
158
+ y << [req, rsp]
159
+ ::Kernel.throw(:jump) if finished
160
+
161
+ rsp.read_body do |bytes|
162
+ y << bytes.force_encoding(Encoding::BINARY)
163
+ ::Kernel.throw(:jump) if finished
164
+
165
+ self.class.calibrate_socket_timeout(conn, deadline)
166
+ end
167
+ eof = true
165
168
  end
166
- eof = true
167
169
  end
168
170
  end
169
171
  ensure
@@ -485,11 +485,42 @@ module Straddle
485
485
  end
486
486
 
487
487
  # @type [Regexp]
488
- JSON_CONTENT = %r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)}
488
+ JSON_CONTENT = %r{^application/(?:[a-zA-Z0-9.-]+\+)?json(?!l)}
489
489
  # @type [Regexp]
490
490
  JSONL_CONTENT = %r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}
491
491
 
492
492
  class << self
493
+ # @api private
494
+ #
495
+ # @param query [Hash{Symbol=>Object}]
496
+ #
497
+ # @return [Hash{Symbol=>Object}]
498
+ def encode_query_params(query)
499
+ out = {}
500
+ query.each { write_query_param_element!(out, _1, _2) }
501
+ out
502
+ end
503
+
504
+ # @api private
505
+ #
506
+ # @param collection [Hash{Symbol=>Object}]
507
+ # @param key [String]
508
+ # @param element [Object]
509
+ #
510
+ # @return [nil]
511
+ private def write_query_param_element!(collection, key, element)
512
+ case element
513
+ in Hash
514
+ element.each do |name, value|
515
+ write_query_param_element!(collection, "#{key}[#{name}]", value)
516
+ end
517
+ in Array
518
+ collection[key] = element.map(&:to_s).join(",")
519
+ else
520
+ collection[key] = element.to_s
521
+ end
522
+ end
523
+
493
524
  # @api private
494
525
  #
495
526
  # @param y [Enumerator::Yielder]
@@ -657,7 +688,8 @@ module Straddle
657
688
  def decode_content(headers, stream:, suppress_error: false)
658
689
  case (content_type = headers["content-type"])
659
690
  in Straddle::Internal::Util::JSON_CONTENT
660
- json = stream.to_a.join
691
+ return nil if (json = stream.to_a.join).empty?
692
+
661
693
  begin
662
694
  JSON.parse(json, symbolize_names: true)
663
695
  rescue JSON::ParserError => e
@@ -667,7 +699,11 @@ module Straddle
667
699
  in Straddle::Internal::Util::JSONL_CONTENT
668
700
  lines = decode_lines(stream)
669
701
  chain_fused(lines) do |y|
670
- lines.each { y << JSON.parse(_1, symbolize_names: true) }
702
+ lines.each do
703
+ next if _1.empty?
704
+
705
+ y << JSON.parse(_1, symbolize_names: true)
706
+ end
671
707
  end
672
708
  in %r{^text/event-stream}
673
709
  lines = decode_lines(stream)
@@ -238,6 +238,7 @@ module Straddle
238
238
  INACTIVE = :inactive
239
239
  REJECTED = :rejected
240
240
  REVIEW = :review
241
+ BLOCKED = :blocked
241
242
 
242
243
  # @!method self.values
243
244
  # @return [Array<Symbol>]
@@ -393,6 +394,13 @@ module Straddle
393
394
  OK = :ok
394
395
  OTHER_NETWORK_RETURN = :other_network_return
395
396
  PAYOUT_REFUSED = :payout_refused
397
+ CANCEL_REQUEST = :cancel_request
398
+ FAILED_VERIFICATION = :failed_verification
399
+ REQUIRE_REVIEW = :require_review
400
+ BLOCKED_BY_SYSTEM = :blocked_by_system
401
+ WATCHTOWER_REVIEW = :watchtower_review
402
+ VALIDATING = :validating
403
+ AUTO_HOLD = :auto_hold
396
404
 
397
405
  # @!method self.values
398
406
  # @return [Array<Symbol>]
@@ -238,6 +238,7 @@ module Straddle
238
238
  INACTIVE = :inactive
239
239
  REJECTED = :rejected
240
240
  REVIEW = :review
241
+ BLOCKED = :blocked
241
242
 
242
243
  # @!method self.values
243
244
  # @return [Array<Symbol>]
@@ -393,6 +394,13 @@ module Straddle
393
394
  OK = :ok
394
395
  OTHER_NETWORK_RETURN = :other_network_return
395
396
  PAYOUT_REFUSED = :payout_refused
397
+ CANCEL_REQUEST = :cancel_request
398
+ FAILED_VERIFICATION = :failed_verification
399
+ REQUIRE_REVIEW = :require_review
400
+ BLOCKED_BY_SYSTEM = :blocked_by_system
401
+ WATCHTOWER_REVIEW = :watchtower_review
402
+ VALIDATING = :validating
403
+ AUTO_HOLD = :auto_hold
396
404
 
397
405
  # @!method self.values
398
406
  # @return [Array<Symbol>]
@@ -7,6 +7,11 @@ module Straddle
7
7
  extend Straddle::Internal::Type::RequestParameters::Converter
8
8
  include Straddle::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
10
15
  # @!attribute reason
11
16
  # Details about why the charge status was updated.
12
17
  #
@@ -33,7 +38,9 @@ module Straddle
33
38
  # @return [String, nil]
34
39
  optional :straddle_account_id, String
35
40
 
36
- # @!method initialize(reason: nil, correlation_id: nil, idempotency_key: nil, request_id: nil, straddle_account_id: nil, request_options: {})
41
+ # @!method initialize(id:, reason: nil, correlation_id: nil, idempotency_key: nil, request_id: nil, straddle_account_id: nil, request_options: {})
42
+ # @param id [String]
43
+ #
37
44
  # @param reason [String, nil] Details about why the charge status was updated.
38
45
  #
39
46
  # @param correlation_id [String]
@@ -36,8 +36,8 @@ module Straddle
36
36
  # @!attribute description
37
37
  # An arbitrary description for the charge.
38
38
  #
39
- # @return [String]
40
- required :description, String
39
+ # @return [String, nil]
40
+ required :description, String, nil?: true
41
41
 
42
42
  # @!attribute device
43
43
  #
@@ -103,7 +103,7 @@ module Straddle
103
103
  #
104
104
  # @param currency [String] The currency of the charge. Only USD is supported.
105
105
  #
106
- # @param description [String] An arbitrary description for the charge.
106
+ # @param description [String, nil] An arbitrary description for the charge.
107
107
  #
108
108
  # @param device [Straddle::Models::DeviceInfoV1]
109
109
  #
@@ -132,15 +132,31 @@ module Straddle
132
132
  # @return [Symbol, Straddle::Models::ChargeCreateParams::Config::BalanceCheck]
133
133
  required :balance_check, enum: -> { Straddle::ChargeCreateParams::Config::BalanceCheck }
134
134
 
135
+ # @!attribute auto_hold
136
+ # Defines whether to automatically place this charge on hold after being created.
137
+ #
138
+ # @return [Boolean, nil]
139
+ optional :auto_hold, Straddle::Internal::Type::Boolean, nil?: true
140
+
141
+ # @!attribute auto_hold_message
142
+ # The reason the charge is being automatically held on creation.
143
+ #
144
+ # @return [String, nil]
145
+ optional :auto_hold_message, String, nil?: true
146
+
135
147
  # @!attribute sandbox_outcome
136
148
  # Payment will simulate processing if not Standard.
137
149
  #
138
150
  # @return [Symbol, Straddle::Models::ChargeCreateParams::Config::SandboxOutcome, nil]
139
151
  optional :sandbox_outcome, enum: -> { Straddle::ChargeCreateParams::Config::SandboxOutcome }
140
152
 
141
- # @!method initialize(balance_check:, sandbox_outcome: nil)
153
+ # @!method initialize(balance_check:, auto_hold: nil, auto_hold_message: nil, sandbox_outcome: nil)
142
154
  # @param balance_check [Symbol, Straddle::Models::ChargeCreateParams::Config::BalanceCheck] Defines whether to check the customer's balance before processing the charge.
143
155
  #
156
+ # @param auto_hold [Boolean, nil] Defines whether to automatically place this charge on hold after being created.
157
+ #
158
+ # @param auto_hold_message [String, nil] The reason the charge is being automatically held on creation.
159
+ #
144
160
  # @param sandbox_outcome [Symbol, Straddle::Models::ChargeCreateParams::Config::SandboxOutcome] Payment will simulate processing if not Standard.
145
161
 
146
162
  # Defines whether to check the customer's balance before processing the charge.
@@ -7,6 +7,11 @@ module Straddle
7
7
  extend Straddle::Internal::Type::RequestParameters::Converter
8
8
  include Straddle::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
10
15
  # @!attribute correlation_id
11
16
  #
12
17
  # @return [String, nil]
@@ -22,7 +27,8 @@ module Straddle
22
27
  # @return [String, nil]
23
28
  optional :straddle_account_id, String
24
29
 
25
- # @!method initialize(correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
30
+ # @!method initialize(id:, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
31
+ # @param id [String]
26
32
  # @param correlation_id [String]
27
33
  # @param request_id [String]
28
34
  # @param straddle_account_id [String]
@@ -7,6 +7,11 @@ module Straddle
7
7
  extend Straddle::Internal::Type::RequestParameters::Converter
8
8
  include Straddle::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
10
15
  # @!attribute reason
11
16
  # Details about why the charge status was updated.
12
17
  #
@@ -33,7 +38,9 @@ module Straddle
33
38
  # @return [String, nil]
34
39
  optional :straddle_account_id, String
35
40
 
36
- # @!method initialize(reason: nil, correlation_id: nil, idempotency_key: nil, request_id: nil, straddle_account_id: nil, request_options: {})
41
+ # @!method initialize(id:, reason: nil, correlation_id: nil, idempotency_key: nil, request_id: nil, straddle_account_id: nil, request_options: {})
42
+ # @param id [String]
43
+ #
37
44
  # @param reason [String, nil] Details about why the charge status was updated.
38
45
  #
39
46
  # @param correlation_id [String]
@@ -7,6 +7,11 @@ module Straddle
7
7
  extend Straddle::Internal::Type::RequestParameters::Converter
8
8
  include Straddle::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
10
15
  # @!attribute reason
11
16
  # Details about why the charge status was updated.
12
17
  #
@@ -33,7 +38,9 @@ module Straddle
33
38
  # @return [String, nil]
34
39
  optional :straddle_account_id, String
35
40
 
36
- # @!method initialize(reason: nil, correlation_id: nil, idempotency_key: nil, request_id: nil, straddle_account_id: nil, request_options: {})
41
+ # @!method initialize(id:, reason: nil, correlation_id: nil, idempotency_key: nil, request_id: nil, straddle_account_id: nil, request_options: {})
42
+ # @param id [String]
43
+ #
37
44
  # @param reason [String, nil] Details about why the charge status was updated.
38
45
  #
39
46
  # @param correlation_id [String]
@@ -7,6 +7,11 @@ module Straddle
7
7
  extend Straddle::Internal::Type::RequestParameters::Converter
8
8
  include Straddle::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
10
15
  # @!attribute correlation_id
11
16
  #
12
17
  # @return [String, nil]
@@ -22,7 +27,8 @@ module Straddle
22
27
  # @return [String, nil]
23
28
  optional :straddle_account_id, String
24
29
 
25
- # @!method initialize(correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
30
+ # @!method initialize(id:, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
31
+ # @param id [String]
26
32
  # @param correlation_id [String]
27
33
  # @param request_id [String]
28
34
  # @param straddle_account_id [String]
@@ -80,8 +80,8 @@ module Straddle
80
80
  # @!attribute description
81
81
  # Description.
82
82
  #
83
- # @return [String]
84
- required :description, String
83
+ # @return [String, nil]
84
+ required :description, String, nil?: true
85
85
 
86
86
  # @!attribute device
87
87
  #
@@ -130,6 +130,12 @@ module Straddle
130
130
  required :status_history,
131
131
  -> { Straddle::Internal::Type::ArrayOf[Straddle::Models::ChargeUnmaskResponse::Data::StatusHistory] }
132
132
 
133
+ # @!attribute trace_ids
134
+ # Trace Ids.
135
+ #
136
+ # @return [Hash{Symbol=>String}]
137
+ required :trace_ids, Straddle::Internal::Type::HashOf[String]
138
+
133
139
  # @!attribute updated_at
134
140
  # Updated at.
135
141
  #
@@ -171,7 +177,15 @@ module Straddle
171
177
  # @return [Time, nil]
172
178
  optional :processed_at, Time, nil?: true
173
179
 
174
- # @!method initialize(id:, amount:, config:, consent_type:, created_at:, currency:, description:, device:, external_id:, funding_ids:, paykey:, payment_date:, status:, status_details:, status_history:, updated_at:, customer_details: nil, effective_at: nil, metadata: nil, paykey_details: nil, payment_rail: nil, processed_at: nil)
180
+ # @!attribute related_payments
181
+ # Related payments.
182
+ #
183
+ # @return [Hash{Symbol=>Symbol, Straddle::Models::ChargeUnmaskResponse::Data::RelatedPayment}, nil]
184
+ optional :related_payments,
185
+ -> { Straddle::Internal::Type::HashOf[enum: Straddle::Models::ChargeUnmaskResponse::Data::RelatedPayment] },
186
+ nil?: true
187
+
188
+ # @!method initialize(id:, amount:, config:, consent_type:, created_at:, currency:, description:, device:, external_id:, funding_ids:, paykey:, payment_date:, status:, status_details:, status_history:, trace_ids:, updated_at:, customer_details: nil, effective_at: nil, metadata: nil, paykey_details: nil, payment_rail: nil, processed_at: nil, related_payments: nil)
175
189
  # Some parameter documentations has been truncated, see
176
190
  # {Straddle::Models::ChargeUnmaskResponse::Data} for more details.
177
191
  #
@@ -187,7 +201,7 @@ module Straddle
187
201
  #
188
202
  # @param currency [String] Currency.
189
203
  #
190
- # @param description [String] Description.
204
+ # @param description [String, nil] Description.
191
205
  #
192
206
  # @param device [Straddle::Models::ChargeUnmaskResponse::Data::Device]
193
207
  #
@@ -205,6 +219,8 @@ module Straddle
205
219
  #
206
220
  # @param status_history [Array<Straddle::Models::ChargeUnmaskResponse::Data::StatusHistory>] Status history.
207
221
  #
222
+ # @param trace_ids [Hash{Symbol=>String}] Trace Ids.
223
+ #
208
224
  # @param updated_at [Time] Updated at.
209
225
  #
210
226
  # @param customer_details [Straddle::Models::CustomerDetailsV1] Information about the customer associated with the charge or payout.
@@ -218,6 +234,8 @@ module Straddle
218
234
  # @param payment_rail [Symbol, Straddle::Models::ChargeUnmaskResponse::Data::PaymentRail] The payment rail used for the charge or payout.
219
235
  #
220
236
  # @param processed_at [Time, nil] Processed at.
237
+ #
238
+ # @param related_payments [Hash{Symbol=>Symbol, Straddle::Models::ChargeUnmaskResponse::Data::RelatedPayment}, nil] Related payments.
221
239
 
222
240
  # @see Straddle::Models::ChargeUnmaskResponse::Data#config
223
241
  class Config < Straddle::Internal::Type::BaseModel
@@ -227,6 +245,18 @@ module Straddle
227
245
  # @return [Symbol, Straddle::Models::ChargeUnmaskResponse::Data::Config::BalanceCheck]
228
246
  required :balance_check, enum: -> { Straddle::Models::ChargeUnmaskResponse::Data::Config::BalanceCheck }
229
247
 
248
+ # @!attribute auto_hold
249
+ # Defines whether to automatically place this charge on hold after being created.
250
+ #
251
+ # @return [Boolean, nil]
252
+ optional :auto_hold, Straddle::Internal::Type::Boolean, nil?: true
253
+
254
+ # @!attribute auto_hold_message
255
+ # The reason the charge is being automatically held on creation.
256
+ #
257
+ # @return [String, nil]
258
+ optional :auto_hold_message, String, nil?: true
259
+
230
260
  # @!attribute sandbox_outcome
231
261
  # Payment will simulate processing if not Standard.
232
262
  #
@@ -234,9 +264,13 @@ module Straddle
234
264
  optional :sandbox_outcome,
235
265
  enum: -> { Straddle::Models::ChargeUnmaskResponse::Data::Config::SandboxOutcome }
236
266
 
237
- # @!method initialize(balance_check:, sandbox_outcome: nil)
267
+ # @!method initialize(balance_check:, auto_hold: nil, auto_hold_message: nil, sandbox_outcome: nil)
238
268
  # @param balance_check [Symbol, Straddle::Models::ChargeUnmaskResponse::Data::Config::BalanceCheck] Defines whether to check the customer's balance before processing the charge.
239
269
  #
270
+ # @param auto_hold [Boolean, nil] Defines whether to automatically place this charge on hold after being created.
271
+ #
272
+ # @param auto_hold_message [String, nil] The reason the charge is being automatically held on creation.
273
+ #
240
274
  # @param sandbox_outcome [Symbol, Straddle::Models::ChargeUnmaskResponse::Data::Config::SandboxOutcome] Payment will simulate processing if not Standard.
241
275
 
242
276
  # Defines whether to check the customer's balance before processing the charge.
@@ -318,6 +352,7 @@ module Straddle
318
352
  PENDING = :pending
319
353
  PAID = :paid
320
354
  REVERSED = :reversed
355
+ VALIDATING = :validating
321
356
 
322
357
  # @!method self.values
323
358
  # @return [Array<Symbol>]
@@ -405,6 +440,13 @@ module Straddle
405
440
  OK = :ok
406
441
  OTHER_NETWORK_RETURN = :other_network_return
407
442
  PAYOUT_REFUSED = :payout_refused
443
+ CANCEL_REQUEST = :cancel_request
444
+ FAILED_VERIFICATION = :failed_verification
445
+ REQUIRE_REVIEW = :require_review
446
+ BLOCKED_BY_SYSTEM = :blocked_by_system
447
+ WATCHTOWER_REVIEW = :watchtower_review
448
+ VALIDATING = :validating
449
+ AUTO_HOLD = :auto_hold
408
450
 
409
451
  # @!method self.values
410
452
  # @return [Array<Symbol>]
@@ -441,6 +483,7 @@ module Straddle
441
483
  PENDING = :pending
442
484
  PAID = :paid
443
485
  REVERSED = :reversed
486
+ VALIDATING = :validating
444
487
 
445
488
  # @!method self.values
446
489
  # @return [Array<Symbol>]
@@ -458,6 +501,17 @@ module Straddle
458
501
  # @!method self.values
459
502
  # @return [Array<Symbol>]
460
503
  end
504
+
505
+ module RelatedPayment
506
+ extend Straddle::Internal::Type::Enum
507
+
508
+ ORIGINAL = :original
509
+ RESUBMIT = :resubmit
510
+ REFUND = :refund
511
+
512
+ # @!method self.values
513
+ # @return [Array<Symbol>]
514
+ end
461
515
  end
462
516
 
463
517
  # Indicates the structure of the returned content.