straddle 0.1.0.pre.alpha.1

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 (428) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +9 -0
  4. data/README.md +344 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/straddle/client.rb +125 -0
  7. data/lib/straddle/errors.rb +214 -0
  8. data/lib/straddle/file_part.rb +55 -0
  9. data/lib/straddle/internal/page_number_schema.rb +127 -0
  10. data/lib/straddle/internal/transport/base_client.rb +563 -0
  11. data/lib/straddle/internal/transport/pooled_net_requester.rb +209 -0
  12. data/lib/straddle/internal/type/array_of.rb +167 -0
  13. data/lib/straddle/internal/type/base_model.rb +536 -0
  14. data/lib/straddle/internal/type/base_page.rb +55 -0
  15. data/lib/straddle/internal/type/boolean.rb +77 -0
  16. data/lib/straddle/internal/type/converter.rb +300 -0
  17. data/lib/straddle/internal/type/enum.rb +131 -0
  18. data/lib/straddle/internal/type/file_input.rb +108 -0
  19. data/lib/straddle/internal/type/hash_of.rb +187 -0
  20. data/lib/straddle/internal/type/request_parameters.rb +42 -0
  21. data/lib/straddle/internal/type/union.rb +235 -0
  22. data/lib/straddle/internal/type/unknown.rb +81 -0
  23. data/lib/straddle/internal/util.rb +914 -0
  24. data/lib/straddle/internal.rb +20 -0
  25. data/lib/straddle/models/bridge/link_bank_account_params.rb +122 -0
  26. data/lib/straddle/models/bridge/link_create_paykey_params.rb +98 -0
  27. data/lib/straddle/models/bridge/link_create_paykey_response.rb +411 -0
  28. data/lib/straddle/models/bridge/link_create_tan_params.rb +122 -0
  29. data/lib/straddle/models/bridge/link_create_tan_response.rb +411 -0
  30. data/lib/straddle/models/bridge/link_plaid_params.rb +95 -0
  31. data/lib/straddle/models/bridge_initialize_params.rb +76 -0
  32. data/lib/straddle/models/bridge_token_v1.rb +74 -0
  33. data/lib/straddle/models/charge_cancel_params.rb +43 -0
  34. data/lib/straddle/models/charge_create_params.rb +191 -0
  35. data/lib/straddle/models/charge_get_params.rb +32 -0
  36. data/lib/straddle/models/charge_hold_params.rb +43 -0
  37. data/lib/straddle/models/charge_release_params.rb +43 -0
  38. data/lib/straddle/models/charge_unmask_params.rb +32 -0
  39. data/lib/straddle/models/charge_unmask_response.rb +485 -0
  40. data/lib/straddle/models/charge_update_params.rb +72 -0
  41. data/lib/straddle/models/charge_v1.rb +485 -0
  42. data/lib/straddle/models/customer_address_v1.rb +51 -0
  43. data/lib/straddle/models/customer_create_params.rb +287 -0
  44. data/lib/straddle/models/customer_delete_params.rb +32 -0
  45. data/lib/straddle/models/customer_details_v1.rb +63 -0
  46. data/lib/straddle/models/customer_get_params.rb +32 -0
  47. data/lib/straddle/models/customer_list_params.rb +173 -0
  48. data/lib/straddle/models/customer_refresh_review_params.rb +32 -0
  49. data/lib/straddle/models/customer_summary_paged_v1.rb +248 -0
  50. data/lib/straddle/models/customer_unmasked_params.rb +32 -0
  51. data/lib/straddle/models/customer_unmasked_v1.rb +366 -0
  52. data/lib/straddle/models/customer_update_params.rb +239 -0
  53. data/lib/straddle/models/customer_v1.rb +371 -0
  54. data/lib/straddle/models/customers/customer_review_v1.rb +1091 -0
  55. data/lib/straddle/models/customers/identity_verification_breakdown_v1.rb +79 -0
  56. data/lib/straddle/models/customers/review_decision_params.rb +56 -0
  57. data/lib/straddle/models/customers/review_get_params.rb +34 -0
  58. data/lib/straddle/models/device_info_v1.rb +20 -0
  59. data/lib/straddle/models/device_unmasked_v1.rb +20 -0
  60. data/lib/straddle/models/embed/account_create_params.rb +106 -0
  61. data/lib/straddle/models/embed/account_get_params.rb +28 -0
  62. data/lib/straddle/models/embed/account_list_params.rb +116 -0
  63. data/lib/straddle/models/embed/account_onboard_params.rb +34 -0
  64. data/lib/straddle/models/embed/account_paged_v1.rb +561 -0
  65. data/lib/straddle/models/embed/account_simulate_params.rb +44 -0
  66. data/lib/straddle/models/embed/account_update_params.rb +58 -0
  67. data/lib/straddle/models/embed/account_v1.rb +557 -0
  68. data/lib/straddle/models/embed/accounts/capability_request_create_params.rb +227 -0
  69. data/lib/straddle/models/embed/accounts/capability_request_list_params.rb +139 -0
  70. data/lib/straddle/models/embed/accounts/capability_request_paged_v1.rb +201 -0
  71. data/lib/straddle/models/embed/address_v1.rb +84 -0
  72. data/lib/straddle/models/embed/business_profile_v1.rb +88 -0
  73. data/lib/straddle/models/embed/capability_v1.rb +28 -0
  74. data/lib/straddle/models/embed/industry_v1.rb +37 -0
  75. data/lib/straddle/models/embed/linked_bank_account_create_params.rb +90 -0
  76. data/lib/straddle/models/embed/linked_bank_account_get_params.rb +28 -0
  77. data/lib/straddle/models/embed/linked_bank_account_list_params.rb +98 -0
  78. data/lib/straddle/models/embed/linked_bank_account_paged_v1.rb +271 -0
  79. data/lib/straddle/models/embed/linked_bank_account_unmask_params.rb +28 -0
  80. data/lib/straddle/models/embed/linked_bank_account_unmask_v1.rb +262 -0
  81. data/lib/straddle/models/embed/linked_bank_account_update_params.rb +81 -0
  82. data/lib/straddle/models/embed/linked_bank_account_v1.rb +263 -0
  83. data/lib/straddle/models/embed/organization_create_params.rb +59 -0
  84. data/lib/straddle/models/embed/organization_get_params.rb +28 -0
  85. data/lib/straddle/models/embed/organization_list_params.rb +89 -0
  86. data/lib/straddle/models/embed/organization_paged_v1.rb +120 -0
  87. data/lib/straddle/models/embed/organization_v1.rb +121 -0
  88. data/lib/straddle/models/embed/representative.rb +351 -0
  89. data/lib/straddle/models/embed/representative_create_params.rb +160 -0
  90. data/lib/straddle/models/embed/representative_get_params.rb +28 -0
  91. data/lib/straddle/models/embed/representative_list_params.rb +112 -0
  92. data/lib/straddle/models/embed/representative_paged.rb +352 -0
  93. data/lib/straddle/models/embed/representative_unmask_params.rb +28 -0
  94. data/lib/straddle/models/embed/representative_update_params.rb +152 -0
  95. data/lib/straddle/models/embed/support_channels_v1.rb +34 -0
  96. data/lib/straddle/models/embed/terms_of_service_v1.rb +68 -0
  97. data/lib/straddle/models/funding_event_get_params.rb +32 -0
  98. data/lib/straddle/models/funding_event_list_params.rb +161 -0
  99. data/lib/straddle/models/funding_event_summary_item_v1.rb +167 -0
  100. data/lib/straddle/models/funding_event_summary_paged_v1.rb +249 -0
  101. data/lib/straddle/models/paged_response_metadata.rb +93 -0
  102. data/lib/straddle/models/paykey_cancel_params.rb +38 -0
  103. data/lib/straddle/models/paykey_details_v1.rb +45 -0
  104. data/lib/straddle/models/paykey_get_params.rb +32 -0
  105. data/lib/straddle/models/paykey_list_params.rb +137 -0
  106. data/lib/straddle/models/paykey_reveal_params.rb +32 -0
  107. data/lib/straddle/models/paykey_reveal_response.rb +405 -0
  108. data/lib/straddle/models/paykey_summary_paged_v1.rb +431 -0
  109. data/lib/straddle/models/paykey_unmasked_params.rb +32 -0
  110. data/lib/straddle/models/paykey_unmasked_v1.rb +399 -0
  111. data/lib/straddle/models/paykey_v1.rb +403 -0
  112. data/lib/straddle/models/payment_list_params.rb +361 -0
  113. data/lib/straddle/models/payment_summary_paged_v1.rb +325 -0
  114. data/lib/straddle/models/payout_cancel_params.rb +43 -0
  115. data/lib/straddle/models/payout_create_params.rb +145 -0
  116. data/lib/straddle/models/payout_get_params.rb +32 -0
  117. data/lib/straddle/models/payout_hold_params.rb +43 -0
  118. data/lib/straddle/models/payout_release_params.rb +43 -0
  119. data/lib/straddle/models/payout_unmask_params.rb +32 -0
  120. data/lib/straddle/models/payout_unmask_response.rb +433 -0
  121. data/lib/straddle/models/payout_update_params.rb +72 -0
  122. data/lib/straddle/models/payout_v1.rb +434 -0
  123. data/lib/straddle/models/report_create_total_customers_by_status_params.rb +32 -0
  124. data/lib/straddle/models/report_create_total_customers_by_status_response.rb +98 -0
  125. data/lib/straddle/models/response_metadata.rb +26 -0
  126. data/lib/straddle/models/status_details_v1.rb +102 -0
  127. data/lib/straddle/models.rb +149 -0
  128. data/lib/straddle/request_options.rb +77 -0
  129. data/lib/straddle/resources/bridge/link.rb +204 -0
  130. data/lib/straddle/resources/bridge.rb +58 -0
  131. data/lib/straddle/resources/charges.rb +305 -0
  132. data/lib/straddle/resources/customers/review.rb +99 -0
  133. data/lib/straddle/resources/customers.rb +349 -0
  134. data/lib/straddle/resources/embed/accounts/capability_requests.rb +115 -0
  135. data/lib/straddle/resources/embed/accounts.rb +251 -0
  136. data/lib/straddle/resources/embed/linked_bank_accounts.rb +199 -0
  137. data/lib/straddle/resources/embed/organizations.rb +129 -0
  138. data/lib/straddle/resources/embed/representatives.rb +233 -0
  139. data/lib/straddle/resources/embed.rb +30 -0
  140. data/lib/straddle/resources/funding_events.rb +114 -0
  141. data/lib/straddle/resources/paykeys.rb +207 -0
  142. data/lib/straddle/resources/payments.rb +131 -0
  143. data/lib/straddle/resources/payouts.rb +303 -0
  144. data/lib/straddle/resources/reports.rb +42 -0
  145. data/lib/straddle/version.rb +5 -0
  146. data/lib/straddle.rb +172 -0
  147. data/manifest.yaml +15 -0
  148. data/rbi/straddle/client.rbi +93 -0
  149. data/rbi/straddle/errors.rbi +178 -0
  150. data/rbi/straddle/file_part.rbi +37 -0
  151. data/rbi/straddle/internal/page_number_schema.rbi +79 -0
  152. data/rbi/straddle/internal/transport/base_client.rbi +293 -0
  153. data/rbi/straddle/internal/transport/pooled_net_requester.rbi +79 -0
  154. data/rbi/straddle/internal/type/array_of.rbi +104 -0
  155. data/rbi/straddle/internal/type/base_model.rbi +302 -0
  156. data/rbi/straddle/internal/type/base_page.rbi +42 -0
  157. data/rbi/straddle/internal/type/boolean.rbi +58 -0
  158. data/rbi/straddle/internal/type/converter.rbi +162 -0
  159. data/rbi/straddle/internal/type/enum.rbi +82 -0
  160. data/rbi/straddle/internal/type/file_input.rbi +59 -0
  161. data/rbi/straddle/internal/type/hash_of.rbi +104 -0
  162. data/rbi/straddle/internal/type/request_parameters.rbi +29 -0
  163. data/rbi/straddle/internal/type/union.rbi +121 -0
  164. data/rbi/straddle/internal/type/unknown.rbi +58 -0
  165. data/rbi/straddle/internal/util.rbi +487 -0
  166. data/rbi/straddle/internal.rbi +16 -0
  167. data/rbi/straddle/models/bridge/link_bank_account_params.rbi +248 -0
  168. data/rbi/straddle/models/bridge/link_create_paykey_params.rbi +196 -0
  169. data/rbi/straddle/models/bridge/link_create_paykey_response.rbi +976 -0
  170. data/rbi/straddle/models/bridge/link_create_tan_params.rbi +243 -0
  171. data/rbi/straddle/models/bridge/link_create_tan_response.rbi +972 -0
  172. data/rbi/straddle/models/bridge/link_plaid_params.rbi +192 -0
  173. data/rbi/straddle/models/bridge_initialize_params.rbi +169 -0
  174. data/rbi/straddle/models/bridge_token_v1.rbi +122 -0
  175. data/rbi/straddle/models/charge_cancel_params.rbi +70 -0
  176. data/rbi/straddle/models/charge_create_params.rbi +369 -0
  177. data/rbi/straddle/models/charge_get_params.rbi +62 -0
  178. data/rbi/straddle/models/charge_hold_params.rbi +70 -0
  179. data/rbi/straddle/models/charge_release_params.rbi +70 -0
  180. data/rbi/straddle/models/charge_unmask_params.rbi +62 -0
  181. data/rbi/straddle/models/charge_unmask_response.rbi +1078 -0
  182. data/rbi/straddle/models/charge_update_params.rbi +98 -0
  183. data/rbi/straddle/models/charge_v1.rbi +932 -0
  184. data/rbi/straddle/models/customer_address_v1.rbi +71 -0
  185. data/rbi/straddle/models/customer_create_params.rbi +542 -0
  186. data/rbi/straddle/models/customer_delete_params.rbi +62 -0
  187. data/rbi/straddle/models/customer_details_v1.rbi +101 -0
  188. data/rbi/straddle/models/customer_get_params.rbi +62 -0
  189. data/rbi/straddle/models/customer_list_params.rbi +306 -0
  190. data/rbi/straddle/models/customer_refresh_review_params.rbi +65 -0
  191. data/rbi/straddle/models/customer_summary_paged_v1.rbi +432 -0
  192. data/rbi/straddle/models/customer_unmasked_params.rbi +62 -0
  193. data/rbi/straddle/models/customer_unmasked_v1.rbi +700 -0
  194. data/rbi/straddle/models/customer_update_params.rbi +381 -0
  195. data/rbi/straddle/models/customer_v1.rbi +667 -0
  196. data/rbi/straddle/models/customers/customer_review_v1.rbi +2212 -0
  197. data/rbi/straddle/models/customers/identity_verification_breakdown_v1.rbi +194 -0
  198. data/rbi/straddle/models/customers/review_decision_params.rbi +110 -0
  199. data/rbi/straddle/models/customers/review_get_params.rbi +67 -0
  200. data/rbi/straddle/models/device_info_v1.rbi +29 -0
  201. data/rbi/straddle/models/device_unmasked_v1.rbi +29 -0
  202. data/rbi/straddle/models/embed/account_create_params.rbi +190 -0
  203. data/rbi/straddle/models/embed/account_get_params.rbi +54 -0
  204. data/rbi/straddle/models/embed/account_list_params.rbi +250 -0
  205. data/rbi/straddle/models/embed/account_onboard_params.rbi +71 -0
  206. data/rbi/straddle/models/embed/account_paged_v1.rbi +1193 -0
  207. data/rbi/straddle/models/embed/account_simulate_params.rbi +111 -0
  208. data/rbi/straddle/models/embed/account_update_params.rbi +91 -0
  209. data/rbi/straddle/models/embed/account_v1.rbi +1162 -0
  210. data/rbi/straddle/models/embed/accounts/capability_request_create_params.rbi +434 -0
  211. data/rbi/straddle/models/embed/accounts/capability_request_list_params.rbi +364 -0
  212. data/rbi/straddle/models/embed/accounts/capability_request_paged_v1.rbi +409 -0
  213. data/rbi/straddle/models/embed/address_v1.rbi +104 -0
  214. data/rbi/straddle/models/embed/business_profile_v1.rbi +125 -0
  215. data/rbi/straddle/models/embed/capability_v1.rbi +70 -0
  216. data/rbi/straddle/models/embed/industry_v1.rbi +55 -0
  217. data/rbi/straddle/models/embed/linked_bank_account_create_params.rbi +149 -0
  218. data/rbi/straddle/models/embed/linked_bank_account_get_params.rbi +54 -0
  219. data/rbi/straddle/models/embed/linked_bank_account_list_params.rbi +213 -0
  220. data/rbi/straddle/models/embed/linked_bank_account_paged_v1.rbi +539 -0
  221. data/rbi/straddle/models/embed/linked_bank_account_unmask_params.rbi +54 -0
  222. data/rbi/straddle/models/embed/linked_bank_account_unmask_v1.rbi +535 -0
  223. data/rbi/straddle/models/embed/linked_bank_account_update_params.rbi +139 -0
  224. data/rbi/straddle/models/embed/linked_bank_account_v1.rbi +532 -0
  225. data/rbi/straddle/models/embed/organization_create_params.rbi +86 -0
  226. data/rbi/straddle/models/embed/organization_get_params.rbi +54 -0
  227. data/rbi/straddle/models/embed/organization_list_params.rbi +169 -0
  228. data/rbi/straddle/models/embed/organization_paged_v1.rbi +206 -0
  229. data/rbi/straddle/models/embed/organization_v1.rbi +202 -0
  230. data/rbi/straddle/models/embed/representative.rbi +609 -0
  231. data/rbi/straddle/models/embed/representative_create_params.rbi +225 -0
  232. data/rbi/straddle/models/embed/representative_get_params.rbi +54 -0
  233. data/rbi/straddle/models/embed/representative_list_params.rbi +229 -0
  234. data/rbi/straddle/models/embed/representative_paged.rbi +623 -0
  235. data/rbi/straddle/models/embed/representative_unmask_params.rbi +54 -0
  236. data/rbi/straddle/models/embed/representative_update_params.rbi +217 -0
  237. data/rbi/straddle/models/embed/support_channels_v1.rbi +58 -0
  238. data/rbi/straddle/models/embed/terms_of_service_v1.rbi +113 -0
  239. data/rbi/straddle/models/funding_event_get_params.rbi +62 -0
  240. data/rbi/straddle/models/funding_event_list_params.rbi +311 -0
  241. data/rbi/straddle/models/funding_event_summary_item_v1.rbi +319 -0
  242. data/rbi/straddle/models/funding_event_summary_paged_v1.rbi +451 -0
  243. data/rbi/straddle/models/paged_response_metadata.rbi +125 -0
  244. data/rbi/straddle/models/paykey_cancel_params.rbi +68 -0
  245. data/rbi/straddle/models/paykey_details_v1.rbi +65 -0
  246. data/rbi/straddle/models/paykey_get_params.rbi +62 -0
  247. data/rbi/straddle/models/paykey_list_params.rbi +253 -0
  248. data/rbi/straddle/models/paykey_reveal_params.rbi +62 -0
  249. data/rbi/straddle/models/paykey_reveal_response.rbi +953 -0
  250. data/rbi/straddle/models/paykey_summary_paged_v1.rbi +926 -0
  251. data/rbi/straddle/models/paykey_unmasked_params.rbi +62 -0
  252. data/rbi/straddle/models/paykey_unmasked_v1.rbi +871 -0
  253. data/rbi/straddle/models/paykey_v1.rbi +800 -0
  254. data/rbi/straddle/models/payment_list_params.rbi +781 -0
  255. data/rbi/straddle/models/payment_summary_paged_v1.rbi +536 -0
  256. data/rbi/straddle/models/payout_cancel_params.rbi +70 -0
  257. data/rbi/straddle/models/payout_create_params.rbi +275 -0
  258. data/rbi/straddle/models/payout_get_params.rbi +62 -0
  259. data/rbi/straddle/models/payout_hold_params.rbi +70 -0
  260. data/rbi/straddle/models/payout_release_params.rbi +70 -0
  261. data/rbi/straddle/models/payout_unmask_params.rbi +62 -0
  262. data/rbi/straddle/models/payout_unmask_response.rbi +966 -0
  263. data/rbi/straddle/models/payout_update_params.rbi +98 -0
  264. data/rbi/straddle/models/payout_v1.rbi +836 -0
  265. data/rbi/straddle/models/report_create_total_customers_by_status_params.rbi +65 -0
  266. data/rbi/straddle/models/report_create_total_customers_by_status_response.rbi +191 -0
  267. data/rbi/straddle/models/response_metadata.rbi +42 -0
  268. data/rbi/straddle/models/status_details_v1.rbi +207 -0
  269. data/rbi/straddle/models.rbi +112 -0
  270. data/rbi/straddle/request_options.rbi +59 -0
  271. data/rbi/straddle/resources/bridge/link.rbi +175 -0
  272. data/rbi/straddle/resources/bridge.rbi +44 -0
  273. data/rbi/straddle/resources/charges.rbi +242 -0
  274. data/rbi/straddle/resources/customers/review.rbi +75 -0
  275. data/rbi/straddle/resources/customers.rbi +307 -0
  276. data/rbi/straddle/resources/embed/accounts/capability_requests.rbi +116 -0
  277. data/rbi/straddle/resources/embed/accounts.rbi +216 -0
  278. data/rbi/straddle/resources/embed/linked_bank_accounts.rbi +169 -0
  279. data/rbi/straddle/resources/embed/organizations.rbi +110 -0
  280. data/rbi/straddle/resources/embed/representatives.rbi +208 -0
  281. data/rbi/straddle/resources/embed.rbi +24 -0
  282. data/rbi/straddle/resources/funding_events.rbi +94 -0
  283. data/rbi/straddle/resources/paykeys.rbi +161 -0
  284. data/rbi/straddle/resources/payments.rbi +125 -0
  285. data/rbi/straddle/resources/payouts.rbi +237 -0
  286. data/rbi/straddle/resources/reports.rbi +31 -0
  287. data/rbi/straddle/version.rbi +5 -0
  288. data/sig/straddle/client.rbs +48 -0
  289. data/sig/straddle/errors.rbs +110 -0
  290. data/sig/straddle/file_part.rbs +21 -0
  291. data/sig/straddle/internal/page_number_schema.rbs +52 -0
  292. data/sig/straddle/internal/transport/base_client.rbs +131 -0
  293. data/sig/straddle/internal/transport/pooled_net_requester.rbs +45 -0
  294. data/sig/straddle/internal/type/array_of.rbs +48 -0
  295. data/sig/straddle/internal/type/base_model.rbs +102 -0
  296. data/sig/straddle/internal/type/base_page.rbs +24 -0
  297. data/sig/straddle/internal/type/boolean.rbs +26 -0
  298. data/sig/straddle/internal/type/converter.rbs +62 -0
  299. data/sig/straddle/internal/type/enum.rbs +32 -0
  300. data/sig/straddle/internal/type/file_input.rbs +25 -0
  301. data/sig/straddle/internal/type/hash_of.rbs +48 -0
  302. data/sig/straddle/internal/type/request_parameters.rbs +17 -0
  303. data/sig/straddle/internal/type/union.rbs +52 -0
  304. data/sig/straddle/internal/type/unknown.rbs +26 -0
  305. data/sig/straddle/internal/util.rbs +185 -0
  306. data/sig/straddle/internal.rbs +9 -0
  307. data/sig/straddle/models/bridge/link_bank_account_params.rbs +122 -0
  308. data/sig/straddle/models/bridge/link_create_paykey_params.rbs +101 -0
  309. data/sig/straddle/models/bridge/link_create_paykey_response.rbs +389 -0
  310. data/sig/straddle/models/bridge/link_create_tan_params.rbs +122 -0
  311. data/sig/straddle/models/bridge/link_create_tan_response.rbs +389 -0
  312. data/sig/straddle/models/bridge/link_plaid_params.rbs +101 -0
  313. data/sig/straddle/models/bridge_initialize_params.rbs +89 -0
  314. data/sig/straddle/models/bridge_token_v1.rbs +53 -0
  315. data/sig/straddle/models/charge_cancel_params.rbs +47 -0
  316. data/sig/straddle/models/charge_create_params.rbs +172 -0
  317. data/sig/straddle/models/charge_get_params.rbs +42 -0
  318. data/sig/straddle/models/charge_hold_params.rbs +47 -0
  319. data/sig/straddle/models/charge_release_params.rbs +47 -0
  320. data/sig/straddle/models/charge_unmask_params.rbs +42 -0
  321. data/sig/straddle/models/charge_unmask_response.rbs +437 -0
  322. data/sig/straddle/models/charge_update_params.rbs +62 -0
  323. data/sig/straddle/models/charge_v1.rbs +427 -0
  324. data/sig/straddle/models/customer_address_v1.rbs +40 -0
  325. data/sig/straddle/models/customer_create_params.rbs +235 -0
  326. data/sig/straddle/models/customer_delete_params.rbs +42 -0
  327. data/sig/straddle/models/customer_details_v1.rbs +51 -0
  328. data/sig/straddle/models/customer_get_params.rbs +42 -0
  329. data/sig/straddle/models/customer_list_params.rbs +182 -0
  330. data/sig/straddle/models/customer_refresh_review_params.rbs +42 -0
  331. data/sig/straddle/models/customer_summary_paged_v1.rbs +194 -0
  332. data/sig/straddle/models/customer_unmasked_params.rbs +42 -0
  333. data/sig/straddle/models/customer_unmasked_v1.rbs +285 -0
  334. data/sig/straddle/models/customer_update_params.rbs +173 -0
  335. data/sig/straddle/models/customer_v1.rbs +297 -0
  336. data/sig/straddle/models/customers/customer_review_v1.rbs +1001 -0
  337. data/sig/straddle/models/customers/identity_verification_breakdown_v1.rbs +81 -0
  338. data/sig/straddle/models/customers/review_decision_params.rbs +60 -0
  339. data/sig/straddle/models/customers/review_get_params.rbs +44 -0
  340. data/sig/straddle/models/device_info_v1.rbs +13 -0
  341. data/sig/straddle/models/device_unmasked_v1.rbs +13 -0
  342. data/sig/straddle/models/embed/account_create_params.rbs +89 -0
  343. data/sig/straddle/models/embed/account_get_params.rbs +34 -0
  344. data/sig/straddle/models/embed/account_list_params.rbs +127 -0
  345. data/sig/straddle/models/embed/account_onboard_params.rbs +42 -0
  346. data/sig/straddle/models/embed/account_paged_v1.rbs +493 -0
  347. data/sig/straddle/models/embed/account_simulate_params.rbs +57 -0
  348. data/sig/straddle/models/embed/account_update_params.rbs +52 -0
  349. data/sig/straddle/models/embed/account_v1.rbs +493 -0
  350. data/sig/straddle/models/embed/accounts/capability_request_create_params.rbs +207 -0
  351. data/sig/straddle/models/embed/accounts/capability_request_list_params.rbs +153 -0
  352. data/sig/straddle/models/embed/accounts/capability_request_paged_v1.rbs +153 -0
  353. data/sig/straddle/models/embed/address_v1.rbs +62 -0
  354. data/sig/straddle/models/embed/business_profile_v1.rbs +75 -0
  355. data/sig/straddle/models/embed/capability_v1.rbs +33 -0
  356. data/sig/straddle/models/embed/industry_v1.rbs +23 -0
  357. data/sig/straddle/models/embed/linked_bank_account_create_params.rbs +79 -0
  358. data/sig/straddle/models/embed/linked_bank_account_get_params.rbs +34 -0
  359. data/sig/straddle/models/embed/linked_bank_account_list_params.rbs +105 -0
  360. data/sig/straddle/models/embed/linked_bank_account_paged_v1.rbs +215 -0
  361. data/sig/straddle/models/embed/linked_bank_account_unmask_params.rbs +34 -0
  362. data/sig/straddle/models/embed/linked_bank_account_unmask_v1.rbs +210 -0
  363. data/sig/straddle/models/embed/linked_bank_account_update_params.rbs +74 -0
  364. data/sig/straddle/models/embed/linked_bank_account_v1.rbs +215 -0
  365. data/sig/straddle/models/embed/organization_create_params.rbs +52 -0
  366. data/sig/straddle/models/embed/organization_get_params.rbs +34 -0
  367. data/sig/straddle/models/embed/organization_list_params.rbs +92 -0
  368. data/sig/straddle/models/embed/organization_paged_v1.rbs +87 -0
  369. data/sig/straddle/models/embed/organization_v1.rbs +87 -0
  370. data/sig/straddle/models/embed/representative.rbs +260 -0
  371. data/sig/straddle/models/embed/representative_create_params.rbs +119 -0
  372. data/sig/straddle/models/embed/representative_get_params.rbs +34 -0
  373. data/sig/straddle/models/embed/representative_list_params.rbs +119 -0
  374. data/sig/straddle/models/embed/representative_paged.rbs +260 -0
  375. data/sig/straddle/models/embed/representative_unmask_params.rbs +34 -0
  376. data/sig/straddle/models/embed/representative_update_params.rbs +114 -0
  377. data/sig/straddle/models/embed/support_channels_v1.rbs +24 -0
  378. data/sig/straddle/models/embed/terms_of_service_v1.rbs +53 -0
  379. data/sig/straddle/models/funding_event_get_params.rbs +42 -0
  380. data/sig/straddle/models/funding_event_list_params.rbs +155 -0
  381. data/sig/straddle/models/funding_event_summary_item_v1.rbs +123 -0
  382. data/sig/straddle/models/funding_event_summary_paged_v1.rbs +191 -0
  383. data/sig/straddle/models/paged_response_metadata.rbs +71 -0
  384. data/sig/straddle/models/paykey_cancel_params.rbs +47 -0
  385. data/sig/straddle/models/paykey_details_v1.rbs +30 -0
  386. data/sig/straddle/models/paykey_get_params.rbs +42 -0
  387. data/sig/straddle/models/paykey_list_params.rbs +151 -0
  388. data/sig/straddle/models/paykey_reveal_params.rbs +42 -0
  389. data/sig/straddle/models/paykey_reveal_response.rbs +386 -0
  390. data/sig/straddle/models/paykey_summary_paged_v1.rbs +401 -0
  391. data/sig/straddle/models/paykey_unmasked_params.rbs +42 -0
  392. data/sig/straddle/models/paykey_unmasked_v1.rbs +386 -0
  393. data/sig/straddle/models/paykey_v1.rbs +386 -0
  394. data/sig/straddle/models/payment_list_params.rbs +391 -0
  395. data/sig/straddle/models/payment_summary_paged_v1.rbs +252 -0
  396. data/sig/straddle/models/payout_cancel_params.rbs +47 -0
  397. data/sig/straddle/models/payout_create_params.rbs +143 -0
  398. data/sig/straddle/models/payout_get_params.rbs +42 -0
  399. data/sig/straddle/models/payout_hold_params.rbs +47 -0
  400. data/sig/straddle/models/payout_release_params.rbs +47 -0
  401. data/sig/straddle/models/payout_unmask_params.rbs +42 -0
  402. data/sig/straddle/models/payout_unmask_response.rbs +404 -0
  403. data/sig/straddle/models/payout_update_params.rbs +62 -0
  404. data/sig/straddle/models/payout_v1.rbs +394 -0
  405. data/sig/straddle/models/report_create_total_customers_by_status_params.rbs +42 -0
  406. data/sig/straddle/models/report_create_total_customers_by_status_response.rbs +80 -0
  407. data/sig/straddle/models/response_metadata.rbs +19 -0
  408. data/sig/straddle/models/status_details_v1.rbs +104 -0
  409. data/sig/straddle/models.rbs +109 -0
  410. data/sig/straddle/request_options.rbs +34 -0
  411. data/sig/straddle/resources/bridge/link.rbs +57 -0
  412. data/sig/straddle/resources/bridge.rbs +18 -0
  413. data/sig/straddle/resources/charges.rbs +79 -0
  414. data/sig/straddle/resources/customers/review.rbs +26 -0
  415. data/sig/straddle/resources/customers.rbs +94 -0
  416. data/sig/straddle/resources/embed/accounts/capability_requests.rbs +38 -0
  417. data/sig/straddle/resources/embed/accounts.rbs +69 -0
  418. data/sig/straddle/resources/embed/linked_bank_accounts.rbs +53 -0
  419. data/sig/straddle/resources/embed/organizations.rbs +37 -0
  420. data/sig/straddle/resources/embed/representatives.rbs +67 -0
  421. data/sig/straddle/resources/embed.rbs +15 -0
  422. data/sig/straddle/resources/funding_events.rbs +31 -0
  423. data/sig/straddle/resources/paykeys.rbs +54 -0
  424. data/sig/straddle/resources/payments.rbs +40 -0
  425. data/sig/straddle/resources/payouts.rbs +78 -0
  426. data/sig/straddle/resources/reports.rbs +14 -0
  427. data/sig/straddle/version.rbs +3 -0
  428. metadata +485 -0
@@ -0,0 +1,349 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Straddle
4
+ module Resources
5
+ class Customers
6
+ # @return [Straddle::Resources::Customers::Review]
7
+ attr_reader :review
8
+
9
+ # Some parameter documentations has been truncated, see
10
+ # {Straddle::Models::CustomerCreateParams} for more details.
11
+ #
12
+ # Creates a new customer record and automatically initiates identity, fraud, and
13
+ # risk assessment scores. This endpoint allows you to create a customer profile
14
+ # and associate it with paykeys and payments.
15
+ #
16
+ # @overload create(device:, email:, name:, phone:, type:, address: nil, compliance_profile: nil, config: nil, external_id: nil, metadata: nil, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
17
+ #
18
+ # @param device [Straddle::Models::DeviceUnmaskedV1] Body param:
19
+ #
20
+ # @param email [String] Body param: The customer's email address.
21
+ #
22
+ # @param name [String] Body param: Full name of the individual or business name.
23
+ #
24
+ # @param phone [String] Body param: The customer's phone number in E.164 format. Mobile number is prefer
25
+ #
26
+ # @param type [Symbol, Straddle::Models::CustomerCreateParams::Type] Body param:
27
+ #
28
+ # @param address [Straddle::Models::CustomerAddressV1, nil] Body param: An object containing the customer's address. **This is optional.** I
29
+ #
30
+ # @param compliance_profile [Straddle::Models::CustomerCreateParams::ComplianceProfile::IndividualComplianceProfile, Straddle::Models::CustomerCreateParams::ComplianceProfile::BusinessComplianceProfile, nil] Body param: An object containing the customer's compliance profile. \*\*This is
31
+ # op
32
+ #
33
+ # @param config [Straddle::Models::CustomerCreateParams::Config] Body param:
34
+ #
35
+ # @param external_id [String, nil] Body param: Unique identifier for the customer in your database, used for cross-
36
+ #
37
+ # @param metadata [Hash{Symbol=>String}, nil] Body param: Up to 20 additional user-defined key-value pairs. Useful for storing
38
+ #
39
+ # @param correlation_id [String] Header param: Optional client generated identifier to trace and debug a series o
40
+ #
41
+ # @param request_id [String] Header param: Optional client generated identifier to trace and debug a request.
42
+ #
43
+ # @param straddle_account_id [String] Header param: For use by platforms to specify an account id and set scope of a r
44
+ #
45
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
46
+ #
47
+ # @return [Straddle::Models::CustomerV1]
48
+ #
49
+ # @see Straddle::Models::CustomerCreateParams
50
+ def create(params)
51
+ parsed, options = Straddle::CustomerCreateParams.dump_request(params)
52
+ header_params =
53
+ {
54
+ correlation_id: "correlation-id",
55
+ request_id: "request-id",
56
+ straddle_account_id: "straddle-account-id"
57
+ }
58
+ @client.request(
59
+ method: :post,
60
+ path: "v1/customers",
61
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
62
+ body: parsed.except(*header_params.keys),
63
+ model: Straddle::CustomerV1,
64
+ options: options
65
+ )
66
+ end
67
+
68
+ # Some parameter documentations has been truncated, see
69
+ # {Straddle::Models::CustomerUpdateParams} for more details.
70
+ #
71
+ # Updates an existing customer's information. This endpoint allows you to modify
72
+ # the customer's contact details, PII, and metadata.
73
+ #
74
+ # @overload update(id, device:, email:, name:, phone:, status:, address: nil, compliance_profile: nil, external_id: nil, metadata: nil, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
75
+ #
76
+ # @param id [String] Path param:
77
+ #
78
+ # @param device [Straddle::Models::DeviceUnmaskedV1] Body param:
79
+ #
80
+ # @param email [String] Body param: The customer's email address.
81
+ #
82
+ # @param name [String] Body param: The customer's full name or business name.
83
+ #
84
+ # @param phone [String] Body param: The customer's phone number in E.164 format.
85
+ #
86
+ # @param status [Symbol, Straddle::Models::CustomerUpdateParams::Status] Body param:
87
+ #
88
+ # @param address [Straddle::Models::CustomerAddressV1, nil] Body param: An object containing the customer's address. This is optional, but i
89
+ #
90
+ # @param compliance_profile [Straddle::Models::CustomerUpdateParams::ComplianceProfile::IndividualComplianceProfile, Straddle::Models::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile, nil] Body param: Individual PII data required to trigger Patriot Act compliant KYC ve
91
+ #
92
+ # @param external_id [String, nil] Body param: Unique identifier for the customer in your database, used for cross-
93
+ #
94
+ # @param metadata [Hash{Symbol=>String}, nil] Body param: Up to 20 additional user-defined key-value pairs. Useful for storing
95
+ #
96
+ # @param correlation_id [String] Header param: Optional client generated identifier to trace and debug a series o
97
+ #
98
+ # @param request_id [String] Header param: Optional client generated identifier to trace and debug a request.
99
+ #
100
+ # @param straddle_account_id [String] Header param: For use by platforms to specify an account id and set scope of a r
101
+ #
102
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
103
+ #
104
+ # @return [Straddle::Models::CustomerV1]
105
+ #
106
+ # @see Straddle::Models::CustomerUpdateParams
107
+ def update(id, params)
108
+ parsed, options = Straddle::CustomerUpdateParams.dump_request(params)
109
+ header_params =
110
+ {
111
+ correlation_id: "correlation-id",
112
+ request_id: "request-id",
113
+ straddle_account_id: "straddle-account-id"
114
+ }
115
+ @client.request(
116
+ method: :put,
117
+ path: ["v1/customers/%1$s", id],
118
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
119
+ body: parsed.except(*header_params.keys),
120
+ model: Straddle::CustomerV1,
121
+ options: options
122
+ )
123
+ end
124
+
125
+ # Some parameter documentations has been truncated, see
126
+ # {Straddle::Models::CustomerListParams} for more details.
127
+ #
128
+ # Lists or searches customers connected to your account. All supported query
129
+ # parameters are optional. If none are provided, the response will include all
130
+ # customers connected to your account. This endpoint supports advanced sorting and
131
+ # filtering options.
132
+ #
133
+ # @overload list(created_from: nil, created_to: nil, email: nil, external_id: nil, name: nil, page_number: nil, page_size: nil, search_text: nil, sort_by: nil, sort_order: nil, status: nil, types: nil, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
134
+ #
135
+ # @param created_from [Time] Query param: Start date for filtering by `created_at` date.
136
+ #
137
+ # @param created_to [Time] Query param: End date for filtering by `created_at` date.
138
+ #
139
+ # @param email [String] Query param: Filter customers by `email` address.
140
+ #
141
+ # @param external_id [String] Query param: Filter by your system's `external_id`.
142
+ #
143
+ # @param name [String] Query param: Filter customers by `name` (partial match).
144
+ #
145
+ # @param page_number [Integer] Query param: Page number for paginated results. Starts at 1.
146
+ #
147
+ # @param page_size [Integer] Query param: Number of results per page. Maximum: 1000.
148
+ #
149
+ # @param search_text [String] Query param: General search term to filter customers.
150
+ #
151
+ # @param sort_by [Symbol, Straddle::Models::CustomerListParams::SortBy] Query param:
152
+ #
153
+ # @param sort_order [Symbol, Straddle::Models::CustomerListParams::SortOrder] Query param:
154
+ #
155
+ # @param status [Array<Symbol, Straddle::Models::CustomerListParams::Status>] Query param: Filter customers by their current `status`.
156
+ #
157
+ # @param types [Array<Symbol, Straddle::Models::CustomerListParams::Type>] Query param: Filter by customer type `individual` or `business`.
158
+ #
159
+ # @param correlation_id [String] Header param: Optional client generated identifier to trace and debug a series o
160
+ #
161
+ # @param request_id [String] Header param: Optional client generated identifier to trace and debug a request.
162
+ #
163
+ # @param straddle_account_id [String] Header param: For use by platforms to specify an `account_id` to set the scope o
164
+ #
165
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
166
+ #
167
+ # @return [Straddle::Internal::PageNumberSchema<Straddle::Models::CustomerSummaryPagedV1::Data>]
168
+ #
169
+ # @see Straddle::Models::CustomerListParams
170
+ def list(params = {})
171
+ parsed, options = Straddle::CustomerListParams.dump_request(params)
172
+ query_params =
173
+ [
174
+ :created_from,
175
+ :created_to,
176
+ :email,
177
+ :external_id,
178
+ :name,
179
+ :page_number,
180
+ :page_size,
181
+ :search_text,
182
+ :sort_by,
183
+ :sort_order,
184
+ :status,
185
+ :types
186
+ ]
187
+ @client.request(
188
+ method: :get,
189
+ path: "v1/customers",
190
+ query: parsed.slice(*query_params),
191
+ headers: parsed.except(*query_params).transform_keys(
192
+ correlation_id: "correlation-id",
193
+ request_id: "request-id",
194
+ straddle_account_id: "straddle-account-id"
195
+ ),
196
+ page: Straddle::Internal::PageNumberSchema,
197
+ model: Straddle::CustomerSummaryPagedV1::Data,
198
+ options: options
199
+ )
200
+ end
201
+
202
+ # Permanently removes a customer record from Straddle. This action cannot be
203
+ # undone and should only be used to satisfy regulatory requirements or for privacy
204
+ # compliance.
205
+ #
206
+ # @overload delete(id, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
207
+ #
208
+ # @param id [String]
209
+ #
210
+ # @param correlation_id [String] Optional client generated identifier to trace and debug a series of requests.
211
+ #
212
+ # @param request_id [String] Optional client generated identifier to trace and debug a request.
213
+ #
214
+ # @param straddle_account_id [String] For use by platforms to specify an account id and set scope of a request.
215
+ #
216
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
217
+ #
218
+ # @return [Straddle::Models::CustomerV1]
219
+ #
220
+ # @see Straddle::Models::CustomerDeleteParams
221
+ def delete(id, params = {})
222
+ parsed, options = Straddle::CustomerDeleteParams.dump_request(params)
223
+ @client.request(
224
+ method: :delete,
225
+ path: ["v1/customers/%1$s", id],
226
+ headers: parsed.transform_keys(
227
+ correlation_id: "correlation-id",
228
+ request_id: "request-id",
229
+ straddle_account_id: "straddle-account-id"
230
+ ),
231
+ model: Straddle::CustomerV1,
232
+ options: options
233
+ )
234
+ end
235
+
236
+ # Retrieves the details of an existing customer. Supply the unique customer ID
237
+ # that was returned from your 'create customer' request, and Straddle will return
238
+ # the corresponding customer information.
239
+ #
240
+ # @overload get(id, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
241
+ #
242
+ # @param id [String]
243
+ #
244
+ # @param correlation_id [String] Optional client generated identifier to trace and debug a series of requests.
245
+ #
246
+ # @param request_id [String] Optional client generated identifier to trace and debug a request.
247
+ #
248
+ # @param straddle_account_id [String] For use by platforms to specify an account id and set scope of a request.
249
+ #
250
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
251
+ #
252
+ # @return [Straddle::Models::CustomerV1]
253
+ #
254
+ # @see Straddle::Models::CustomerGetParams
255
+ def get(id, params = {})
256
+ parsed, options = Straddle::CustomerGetParams.dump_request(params)
257
+ @client.request(
258
+ method: :get,
259
+ path: ["v1/customers/%1$s", id],
260
+ headers: parsed.transform_keys(
261
+ correlation_id: "correlation-id",
262
+ request_id: "request-id",
263
+ straddle_account_id: "straddle-account-id"
264
+ ),
265
+ model: Straddle::CustomerV1,
266
+ options: options
267
+ )
268
+ end
269
+
270
+ # Updates the decision of a customer's identity validation. This endpoint allows
271
+ # you to modify the outcome of a customer decision and is useful for correcting or
272
+ # updating the status of a customer's verification.
273
+ #
274
+ # @overload refresh_review(id, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
275
+ #
276
+ # @param id [String]
277
+ #
278
+ # @param correlation_id [String] Optional client generated identifier to trace and debug a series of requests.
279
+ #
280
+ # @param request_id [String] Optional client generated identifier to trace and debug a request.
281
+ #
282
+ # @param straddle_account_id [String] For use by platforms to specify an account id and set scope of a request.
283
+ #
284
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
285
+ #
286
+ # @return [Straddle::Models::CustomerV1]
287
+ #
288
+ # @see Straddle::Models::CustomerRefreshReviewParams
289
+ def refresh_review(id, params = {})
290
+ parsed, options = Straddle::CustomerRefreshReviewParams.dump_request(params)
291
+ @client.request(
292
+ method: :put,
293
+ path: ["v1/customers/%1$s/refresh_review", id],
294
+ headers: parsed.transform_keys(
295
+ correlation_id: "correlation-id",
296
+ request_id: "request-id",
297
+ straddle_account_id: "straddle-account-id"
298
+ ),
299
+ model: Straddle::CustomerV1,
300
+ options: options
301
+ )
302
+ end
303
+
304
+ # Retrieves the unmasked details, including PII, of an existing customer. Supply
305
+ # the unique customer ID that was returned from your 'create customer' request,
306
+ # and Straddle will return the corresponding customer information. This endpoint
307
+ # needs to be enabled by Straddle and should only be used when absolutely
308
+ # necessary.
309
+ #
310
+ # @overload unmasked(id, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
311
+ #
312
+ # @param id [String]
313
+ #
314
+ # @param correlation_id [String] Optional client generated identifier to trace and debug a series of requests.
315
+ #
316
+ # @param request_id [String] Optional client generated identifier to trace and debug a request.
317
+ #
318
+ # @param straddle_account_id [String] For use by platforms to specify an account id and set scope of a request.
319
+ #
320
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
321
+ #
322
+ # @return [Straddle::Models::CustomerUnmaskedV1]
323
+ #
324
+ # @see Straddle::Models::CustomerUnmaskedParams
325
+ def unmasked(id, params = {})
326
+ parsed, options = Straddle::CustomerUnmaskedParams.dump_request(params)
327
+ @client.request(
328
+ method: :get,
329
+ path: ["v1/customers/%1$s/unmasked", id],
330
+ headers: parsed.transform_keys(
331
+ correlation_id: "correlation-id",
332
+ request_id: "request-id",
333
+ straddle_account_id: "straddle-account-id"
334
+ ),
335
+ model: Straddle::CustomerUnmaskedV1,
336
+ options: options
337
+ )
338
+ end
339
+
340
+ # @api private
341
+ #
342
+ # @param client [Straddle::Client]
343
+ def initialize(client:)
344
+ @client = client
345
+ @review = Straddle::Resources::Customers::Review.new(client: client)
346
+ end
347
+ end
348
+ end
349
+ end
@@ -0,0 +1,115 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Straddle
4
+ module Resources
5
+ class Embed
6
+ class Accounts
7
+ class CapabilityRequests
8
+ # Some parameter documentations has been truncated, see
9
+ # {Straddle::Models::Embed::Accounts::CapabilityRequestCreateParams} for more
10
+ # details.
11
+ #
12
+ # Submits a request to enable a specific capability for an account. Use this
13
+ # endpoint to request additional features or services for an account.
14
+ #
15
+ # @overload create(account_id, businesses: nil, charges: nil, individuals: nil, internet: nil, payouts: nil, signed_agreement: nil, correlation_id: nil, request_id: nil, request_options: {})
16
+ #
17
+ # @param account_id [String] Path param:
18
+ #
19
+ # @param businesses [Straddle::Models::Embed::Accounts::CapabilityRequestCreateParams::Businesses] Body param: Allows the account to accept payments from businesses.
20
+ #
21
+ # @param charges [Straddle::Models::Embed::Accounts::CapabilityRequestCreateParams::Charges] Body param: The charges capability settings for the account.
22
+ #
23
+ # @param individuals [Straddle::Models::Embed::Accounts::CapabilityRequestCreateParams::Individuals] Body param: Allows the account to accept payments from individuals.
24
+ #
25
+ # @param internet [Straddle::Models::Embed::Accounts::CapabilityRequestCreateParams::Internet] Body param: Allows the account to accept payments authorized via the internet or
26
+ #
27
+ # @param payouts [Straddle::Models::Embed::Accounts::CapabilityRequestCreateParams::Payouts] Body param: The payouts capability settings for the account.
28
+ #
29
+ # @param signed_agreement [Straddle::Models::Embed::Accounts::CapabilityRequestCreateParams::SignedAgreement] Body param: Allows the account to accept payments authorized by signed agreement
30
+ #
31
+ # @param correlation_id [String] Header param: Optional client generated identifier to trace and debug a series o
32
+ #
33
+ # @param request_id [String] Header param: Optional client generated identifier to trace and debug a request.
34
+ #
35
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
36
+ #
37
+ # @return [Straddle::Models::Embed::Accounts::CapabilityRequestPagedV1]
38
+ #
39
+ # @see Straddle::Models::Embed::Accounts::CapabilityRequestCreateParams
40
+ def create(account_id, params = {})
41
+ parsed, options = Straddle::Embed::Accounts::CapabilityRequestCreateParams.dump_request(params)
42
+ header_params = {correlation_id: "correlation-id", request_id: "request-id"}
43
+ @client.request(
44
+ method: :post,
45
+ path: ["v1/accounts/%1$s/capability_requests", account_id],
46
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
47
+ body: parsed.except(*header_params.keys),
48
+ model: Straddle::Embed::Accounts::CapabilityRequestPagedV1,
49
+ options: options
50
+ )
51
+ end
52
+
53
+ # Some parameter documentations has been truncated, see
54
+ # {Straddle::Models::Embed::Accounts::CapabilityRequestListParams} for more
55
+ # details.
56
+ #
57
+ # Retrieves a list of capability requests associated with an account. The requests
58
+ # are returned sorted by creation date, with the most recent requests appearing
59
+ # first. This endpoint supports advanced sorting and filtering options.
60
+ #
61
+ # @overload list(account_id, category: nil, page_number: nil, page_size: nil, sort_by: nil, sort_order: nil, status: nil, type: nil, correlation_id: nil, request_id: nil, request_options: {})
62
+ #
63
+ # @param account_id [String] Path param:
64
+ #
65
+ # @param category [Symbol, Straddle::Models::Embed::Accounts::CapabilityRequestListParams::Category] Query param: Filter capability requests by category.
66
+ #
67
+ # @param page_number [Integer] Query param: Results page number. Starts at page 1.
68
+ #
69
+ # @param page_size [Integer] Query param: Page size.Max value: 1000
70
+ #
71
+ # @param sort_by [String] Query param: Sort By.
72
+ #
73
+ # @param sort_order [Symbol, Straddle::Models::Embed::Accounts::CapabilityRequestListParams::SortOrder] Query param: Sort Order.
74
+ #
75
+ # @param status [Symbol, Straddle::Models::Embed::Accounts::CapabilityRequestListParams::Status] Query param: Filter capability requests by their current status.
76
+ #
77
+ # @param type [Symbol, Straddle::Models::Embed::Accounts::CapabilityRequestListParams::Type] Query param: Filter capability requests by the specific type of capability.
78
+ #
79
+ # @param correlation_id [String] Header param: Optional client generated identifier to trace and debug a series o
80
+ #
81
+ # @param request_id [String] Header param: Optional client generated identifier to trace and debug a request.
82
+ #
83
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}, nil]
84
+ #
85
+ # @return [Straddle::Internal::PageNumberSchema<Straddle::Models::Embed::Accounts::CapabilityRequestPagedV1::Data>]
86
+ #
87
+ # @see Straddle::Models::Embed::Accounts::CapabilityRequestListParams
88
+ def list(account_id, params = {})
89
+ parsed, options = Straddle::Embed::Accounts::CapabilityRequestListParams.dump_request(params)
90
+ query_params = [:category, :page_number, :page_size, :sort_by, :sort_order, :status, :type]
91
+ @client.request(
92
+ method: :get,
93
+ path: ["v1/accounts/%1$s/capability_requests", account_id],
94
+ query: parsed.slice(*query_params),
95
+ headers: parsed.except(*query_params).transform_keys(
96
+ correlation_id: "correlation-id",
97
+ request_id: "request-id"
98
+ ),
99
+ page: Straddle::Internal::PageNumberSchema,
100
+ model: Straddle::Embed::Accounts::CapabilityRequestPagedV1::Data,
101
+ options: options
102
+ )
103
+ end
104
+
105
+ # @api private
106
+ #
107
+ # @param client [Straddle::Client]
108
+ def initialize(client:)
109
+ @client = client
110
+ end
111
+ end
112
+ end
113
+ end
114
+ end
115
+ end