orb-billing 0.1.0.pre.alpha.33

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 (635) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +169 -0
  3. data/lib/orb/client.rb +129 -0
  4. data/lib/orb/errors.rb +317 -0
  5. data/lib/orb/models/alert.rb +225 -0
  6. data/lib/orb/models/alert_create_for_customer_params.rb +77 -0
  7. data/lib/orb/models/alert_create_for_external_customer_params.rb +77 -0
  8. data/lib/orb/models/alert_create_for_subscription_params.rb +74 -0
  9. data/lib/orb/models/alert_disable_params.rb +26 -0
  10. data/lib/orb/models/alert_enable_params.rb +26 -0
  11. data/lib/orb/models/alert_list_params.rb +97 -0
  12. data/lib/orb/models/alert_retrieve_params.rb +19 -0
  13. data/lib/orb/models/alert_update_params.rb +46 -0
  14. data/lib/orb/models/amount_discount.rb +53 -0
  15. data/lib/orb/models/billable_metric.rb +76 -0
  16. data/lib/orb/models/billing_cycle_relative_date.rb +18 -0
  17. data/lib/orb/models/coupon.rb +86 -0
  18. data/lib/orb/models/coupon_archive_params.rb +19 -0
  19. data/lib/orb/models/coupon_create_params.rb +102 -0
  20. data/lib/orb/models/coupon_fetch_params.rb +19 -0
  21. data/lib/orb/models/coupon_list_params.rb +53 -0
  22. data/lib/orb/models/coupons/subscription_list_params.rb +40 -0
  23. data/lib/orb/models/credit_note.rb +522 -0
  24. data/lib/orb/models/credit_note_create_params.rb +77 -0
  25. data/lib/orb/models/credit_note_fetch_params.rb +19 -0
  26. data/lib/orb/models/credit_note_list_params.rb +73 -0
  27. data/lib/orb/models/customer.rb +872 -0
  28. data/lib/orb/models/customer_create_params.rb +843 -0
  29. data/lib/orb/models/customer_delete_params.rb +19 -0
  30. data/lib/orb/models/customer_fetch_by_external_id_params.rb +19 -0
  31. data/lib/orb/models/customer_fetch_params.rb +19 -0
  32. data/lib/orb/models/customer_list_params.rb +73 -0
  33. data/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rb +19 -0
  34. data/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rb +19 -0
  35. data/lib/orb/models/customer_update_by_external_id_params.rb +848 -0
  36. data/lib/orb/models/customer_update_params.rb +838 -0
  37. data/lib/orb/models/customers/balance_transaction_create_params.rb +53 -0
  38. data/lib/orb/models/customers/balance_transaction_create_response.rb +167 -0
  39. data/lib/orb/models/customers/balance_transaction_list_params.rb +75 -0
  40. data/lib/orb/models/customers/balance_transaction_list_response.rb +167 -0
  41. data/lib/orb/models/customers/cost_list_by_external_id_params.rb +69 -0
  42. data/lib/orb/models/customers/cost_list_by_external_id_response.rb +106 -0
  43. data/lib/orb/models/customers/cost_list_params.rb +69 -0
  44. data/lib/orb/models/customers/cost_list_response.rb +106 -0
  45. data/lib/orb/models/customers/credit_list_by_external_id_params.rb +59 -0
  46. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +72 -0
  47. data/lib/orb/models/customers/credit_list_params.rb +59 -0
  48. data/lib/orb/models/customers/credit_list_response.rb +72 -0
  49. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +215 -0
  50. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rb +1311 -0
  51. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +214 -0
  52. data/lib/orb/models/customers/credits/ledger_create_entry_response.rb +1310 -0
  53. data/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rb +141 -0
  54. data/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rb +1310 -0
  55. data/lib/orb/models/customers/credits/ledger_list_params.rb +141 -0
  56. data/lib/orb/models/customers/credits/ledger_list_response.rb +1306 -0
  57. data/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rb +159 -0
  58. data/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rb +154 -0
  59. data/lib/orb/models/customers/credits/top_up_create_params.rb +158 -0
  60. data/lib/orb/models/customers/credits/top_up_create_response.rb +153 -0
  61. data/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rb +29 -0
  62. data/lib/orb/models/customers/credits/top_up_delete_params.rb +29 -0
  63. data/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rb +42 -0
  64. data/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rb +154 -0
  65. data/lib/orb/models/customers/credits/top_up_list_params.rb +42 -0
  66. data/lib/orb/models/customers/credits/top_up_list_response.rb +153 -0
  67. data/lib/orb/models/dimensional_price_group.rb +64 -0
  68. data/lib/orb/models/dimensional_price_group_create_params.rb +63 -0
  69. data/lib/orb/models/dimensional_price_group_list_params.rb +38 -0
  70. data/lib/orb/models/dimensional_price_group_retrieve_params.rb +19 -0
  71. data/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rb +21 -0
  72. data/lib/orb/models/dimensional_price_groups.rb +25 -0
  73. data/lib/orb/models/discount.rb +23 -0
  74. data/lib/orb/models/evaluate_price_group.rb +48 -0
  75. data/lib/orb/models/event_deprecate_params.rb +19 -0
  76. data/lib/orb/models/event_deprecate_response.rb +21 -0
  77. data/lib/orb/models/event_ingest_params.rb +100 -0
  78. data/lib/orb/models/event_ingest_response.rb +77 -0
  79. data/lib/orb/models/event_search_params.rb +45 -0
  80. data/lib/orb/models/event_search_response.rb +87 -0
  81. data/lib/orb/models/event_update_params.rb +58 -0
  82. data/lib/orb/models/event_update_response.rb +21 -0
  83. data/lib/orb/models/events/backfill_close_params.rb +21 -0
  84. data/lib/orb/models/events/backfill_close_response.rb +131 -0
  85. data/lib/orb/models/events/backfill_create_params.rb +97 -0
  86. data/lib/orb/models/events/backfill_create_response.rb +131 -0
  87. data/lib/orb/models/events/backfill_fetch_params.rb +21 -0
  88. data/lib/orb/models/events/backfill_fetch_response.rb +131 -0
  89. data/lib/orb/models/events/backfill_list_params.rb +40 -0
  90. data/lib/orb/models/events/backfill_list_response.rb +131 -0
  91. data/lib/orb/models/events/backfill_revert_params.rb +21 -0
  92. data/lib/orb/models/events/backfill_revert_response.rb +131 -0
  93. data/lib/orb/models/events/event_volumes.rb +54 -0
  94. data/lib/orb/models/events/volume_list_params.rb +64 -0
  95. data/lib/orb/models/invoice.rb +2218 -0
  96. data/lib/orb/models/invoice_create_params.rb +200 -0
  97. data/lib/orb/models/invoice_fetch_params.rb +19 -0
  98. data/lib/orb/models/invoice_fetch_upcoming_params.rb +25 -0
  99. data/lib/orb/models/invoice_fetch_upcoming_response.rb +2226 -0
  100. data/lib/orb/models/invoice_issue_params.rb +34 -0
  101. data/lib/orb/models/invoice_level_discount.rb +21 -0
  102. data/lib/orb/models/invoice_line_item_create_params.rb +62 -0
  103. data/lib/orb/models/invoice_line_item_create_response.rb +929 -0
  104. data/lib/orb/models/invoice_list_params.rb +197 -0
  105. data/lib/orb/models/invoice_mark_paid_params.rb +40 -0
  106. data/lib/orb/models/invoice_pay_params.rb +19 -0
  107. data/lib/orb/models/invoice_update_params.rb +28 -0
  108. data/lib/orb/models/invoice_void_params.rb +19 -0
  109. data/lib/orb/models/item.rb +82 -0
  110. data/lib/orb/models/item_create_params.rb +26 -0
  111. data/lib/orb/models/item_fetch_params.rb +19 -0
  112. data/lib/orb/models/item_list_params.rb +38 -0
  113. data/lib/orb/models/item_update_params.rb +73 -0
  114. data/lib/orb/models/metric_create_params.rb +56 -0
  115. data/lib/orb/models/metric_fetch_params.rb +19 -0
  116. data/lib/orb/models/metric_list_params.rb +73 -0
  117. data/lib/orb/models/metric_update_params.rb +28 -0
  118. data/lib/orb/models/pagination_metadata.rb +25 -0
  119. data/lib/orb/models/percentage_discount.rb +54 -0
  120. data/lib/orb/models/plan.rb +894 -0
  121. data/lib/orb/models/plan_create_params.rb +6702 -0
  122. data/lib/orb/models/plan_fetch_params.rb +19 -0
  123. data/lib/orb/models/plan_list_params.rb +100 -0
  124. data/lib/orb/models/plan_update_params.rb +37 -0
  125. data/lib/orb/models/plans/external_plan_id_fetch_params.rb +21 -0
  126. data/lib/orb/models/plans/external_plan_id_update_params.rb +39 -0
  127. data/lib/orb/models/price.rb +12229 -0
  128. data/lib/orb/models/price_create_params.rb +808 -0
  129. data/lib/orb/models/price_evaluate_params.rb +80 -0
  130. data/lib/orb/models/price_evaluate_response.rb +20 -0
  131. data/lib/orb/models/price_fetch_params.rb +19 -0
  132. data/lib/orb/models/price_list_params.rb +38 -0
  133. data/lib/orb/models/price_update_params.rb +28 -0
  134. data/lib/orb/models/prices/external_price_id_fetch_params.rb +21 -0
  135. data/lib/orb/models/prices/external_price_id_update_params.rb +30 -0
  136. data/lib/orb/models/subscription.rb +1233 -0
  137. data/lib/orb/models/subscription_cancel_params.rb +58 -0
  138. data/lib/orb/models/subscription_cancel_response.rb +1217 -0
  139. data/lib/orb/models/subscription_create_params.rb +15065 -0
  140. data/lib/orb/models/subscription_create_response.rb +1217 -0
  141. data/lib/orb/models/subscription_fetch_costs_params.rb +67 -0
  142. data/lib/orb/models/subscription_fetch_costs_response.rb +104 -0
  143. data/lib/orb/models/subscription_fetch_params.rb +19 -0
  144. data/lib/orb/models/subscription_fetch_schedule_params.rb +73 -0
  145. data/lib/orb/models/subscription_fetch_schedule_response.rb +68 -0
  146. data/lib/orb/models/subscription_fetch_usage_params.rb +135 -0
  147. data/lib/orb/models/subscription_list_params.rb +108 -0
  148. data/lib/orb/models/subscription_price_intervals_params.rb +8358 -0
  149. data/lib/orb/models/subscription_price_intervals_response.rb +1224 -0
  150. data/lib/orb/models/subscription_schedule_plan_change_params.rb +15088 -0
  151. data/lib/orb/models/subscription_schedule_plan_change_response.rb +1224 -0
  152. data/lib/orb/models/subscription_trigger_phase_params.rb +36 -0
  153. data/lib/orb/models/subscription_trigger_phase_response.rb +1224 -0
  154. data/lib/orb/models/subscription_unschedule_cancellation_params.rb +19 -0
  155. data/lib/orb/models/subscription_unschedule_cancellation_response.rb +1224 -0
  156. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rb +26 -0
  157. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rb +1228 -0
  158. data/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rb +19 -0
  159. data/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rb +1224 -0
  160. data/lib/orb/models/subscription_update_fixed_fee_quantity_params.rb +90 -0
  161. data/lib/orb/models/subscription_update_fixed_fee_quantity_response.rb +1224 -0
  162. data/lib/orb/models/subscription_update_params.rb +74 -0
  163. data/lib/orb/models/subscription_update_trial_params.rb +59 -0
  164. data/lib/orb/models/subscription_update_trial_response.rb +1222 -0
  165. data/lib/orb/models/subscription_usage.rb +258 -0
  166. data/lib/orb/models/subscriptions.rb +25 -0
  167. data/lib/orb/models/top_level_ping_params.rb +19 -0
  168. data/lib/orb/models/top_level_ping_response.rb +20 -0
  169. data/lib/orb/models/trial_discount.rb +69 -0
  170. data/lib/orb/models/usage_discount.rb +54 -0
  171. data/lib/orb/page.rb +114 -0
  172. data/lib/orb/request_options.rb +75 -0
  173. data/lib/orb/resources/alerts.rb +239 -0
  174. data/lib/orb/resources/coupons/subscriptions.rb +43 -0
  175. data/lib/orb/resources/coupons.rb +115 -0
  176. data/lib/orb/resources/credit_notes.rb +87 -0
  177. data/lib/orb/resources/customers/balance_transactions.rb +96 -0
  178. data/lib/orb/resources/customers/costs.rb +298 -0
  179. data/lib/orb/resources/customers/credits/ledger.rb +527 -0
  180. data/lib/orb/resources/customers/credits/top_ups.rb +192 -0
  181. data/lib/orb/resources/customers/credits.rb +88 -0
  182. data/lib/orb/resources/customers.rb +321 -0
  183. data/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rb +38 -0
  184. data/lib/orb/resources/dimensional_price_groups.rb +93 -0
  185. data/lib/orb/resources/events/backfills.rb +174 -0
  186. data/lib/orb/resources/events/volume.rb +52 -0
  187. data/lib/orb/resources/events.rb +415 -0
  188. data/lib/orb/resources/invoice_line_items.rb +41 -0
  189. data/lib/orb/resources/invoices.rb +266 -0
  190. data/lib/orb/resources/items.rb +95 -0
  191. data/lib/orb/resources/metrics.rb +114 -0
  192. data/lib/orb/resources/plans/external_plan_id.rb +76 -0
  193. data/lib/orb/resources/plans.rb +133 -0
  194. data/lib/orb/resources/prices/external_price_id.rb +61 -0
  195. data/lib/orb/resources/prices.rb +197 -0
  196. data/lib/orb/resources/subscriptions.rb +1278 -0
  197. data/lib/orb/resources/top_level.rb +37 -0
  198. data/lib/orb/transport/base_client.rb +459 -0
  199. data/lib/orb/transport/pooled_net_requester.rb +182 -0
  200. data/lib/orb/type/array_of.rb +112 -0
  201. data/lib/orb/type/base_model.rb +367 -0
  202. data/lib/orb/type/base_page.rb +61 -0
  203. data/lib/orb/type/boolean_model.rb +52 -0
  204. data/lib/orb/type/converter.rb +217 -0
  205. data/lib/orb/type/enum.rb +101 -0
  206. data/lib/orb/type/hash_of.rb +132 -0
  207. data/lib/orb/type/request_parameters.rb +38 -0
  208. data/lib/orb/type/union.rb +225 -0
  209. data/lib/orb/type/unknown.rb +56 -0
  210. data/lib/orb/type.rb +23 -0
  211. data/lib/orb/util.rb +722 -0
  212. data/lib/orb/version.rb +5 -0
  213. data/lib/orb.rb +247 -0
  214. data/manifest.yaml +15 -0
  215. data/rbi/lib/orb/client.rbi +90 -0
  216. data/rbi/lib/orb/errors.rbi +246 -0
  217. data/rbi/lib/orb/models/alert.rbi +239 -0
  218. data/rbi/lib/orb/models/alert_create_for_customer_params.rbi +86 -0
  219. data/rbi/lib/orb/models/alert_create_for_external_customer_params.rbi +88 -0
  220. data/rbi/lib/orb/models/alert_create_for_subscription_params.rbi +83 -0
  221. data/rbi/lib/orb/models/alert_disable_params.rbi +28 -0
  222. data/rbi/lib/orb/models/alert_enable_params.rbi +28 -0
  223. data/rbi/lib/orb/models/alert_list_params.rbi +95 -0
  224. data/rbi/lib/orb/models/alert_retrieve_params.rbi +20 -0
  225. data/rbi/lib/orb/models/alert_update_params.rbi +51 -0
  226. data/rbi/lib/orb/models/amount_discount.rbi +62 -0
  227. data/rbi/lib/orb/models/billable_metric.rbi +83 -0
  228. data/rbi/lib/orb/models/billing_cycle_relative_date.rbi +19 -0
  229. data/rbi/lib/orb/models/coupon.rbi +90 -0
  230. data/rbi/lib/orb/models/coupon_archive_params.rbi +20 -0
  231. data/rbi/lib/orb/models/coupon_create_params.rbi +120 -0
  232. data/rbi/lib/orb/models/coupon_fetch_params.rbi +20 -0
  233. data/rbi/lib/orb/models/coupon_list_params.rbi +59 -0
  234. data/rbi/lib/orb/models/coupons/subscription_list_params.rbi +41 -0
  235. data/rbi/lib/orb/models/credit_note.rbi +546 -0
  236. data/rbi/lib/orb/models/credit_note_create_params.rbi +84 -0
  237. data/rbi/lib/orb/models/credit_note_fetch_params.rbi +20 -0
  238. data/rbi/lib/orb/models/credit_note_list_params.rbi +74 -0
  239. data/rbi/lib/orb/models/customer.rbi +941 -0
  240. data/rbi/lib/orb/models/customer_create_params.rbi +923 -0
  241. data/rbi/lib/orb/models/customer_delete_params.rbi +20 -0
  242. data/rbi/lib/orb/models/customer_fetch_by_external_id_params.rbi +20 -0
  243. data/rbi/lib/orb/models/customer_fetch_params.rbi +20 -0
  244. data/rbi/lib/orb/models/customer_list_params.rbi +74 -0
  245. data/rbi/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbi +20 -0
  246. data/rbi/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rbi +20 -0
  247. data/rbi/lib/orb/models/customer_update_by_external_id_params.rbi +945 -0
  248. data/rbi/lib/orb/models/customer_update_params.rbi +919 -0
  249. data/rbi/lib/orb/models/customers/balance_transaction_create_params.rbi +64 -0
  250. data/rbi/lib/orb/models/customers/balance_transaction_create_response.rbi +199 -0
  251. data/rbi/lib/orb/models/customers/balance_transaction_list_params.rbi +76 -0
  252. data/rbi/lib/orb/models/customers/balance_transaction_list_response.rbi +191 -0
  253. data/rbi/lib/orb/models/customers/cost_list_by_external_id_params.rbi +86 -0
  254. data/rbi/lib/orb/models/customers/cost_list_by_external_id_response.rbi +214 -0
  255. data/rbi/lib/orb/models/customers/cost_list_params.rbi +84 -0
  256. data/rbi/lib/orb/models/customers/cost_list_response.rbi +212 -0
  257. data/rbi/lib/orb/models/customers/credit_list_by_external_id_params.rbi +64 -0
  258. data/rbi/lib/orb/models/customers/credit_list_by_external_id_response.rbi +87 -0
  259. data/rbi/lib/orb/models/customers/credit_list_params.rbi +64 -0
  260. data/rbi/lib/orb/models/customers/credit_list_response.rbi +86 -0
  261. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +270 -0
  262. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbi +1670 -0
  263. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_params.rbi +238 -0
  264. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_response.rbi +1626 -0
  265. data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rbi +181 -0
  266. data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rbi +1654 -0
  267. data/rbi/lib/orb/models/customers/credits/ledger_list_params.rbi +144 -0
  268. data/rbi/lib/orb/models/customers/credits/ledger_list_response.rbi +1588 -0
  269. data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rbi +196 -0
  270. data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rbi +198 -0
  271. data/rbi/lib/orb/models/customers/credits/top_up_create_params.rbi +176 -0
  272. data/rbi/lib/orb/models/customers/credits/top_up_create_response.rbi +175 -0
  273. data/rbi/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rbi +31 -0
  274. data/rbi/lib/orb/models/customers/credits/top_up_delete_params.rbi +28 -0
  275. data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rbi +49 -0
  276. data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rbi +188 -0
  277. data/rbi/lib/orb/models/customers/credits/top_up_list_params.rbi +49 -0
  278. data/rbi/lib/orb/models/customers/credits/top_up_list_response.rbi +168 -0
  279. data/rbi/lib/orb/models/dimensional_price_group.rbi +75 -0
  280. data/rbi/lib/orb/models/dimensional_price_group_create_params.rbi +66 -0
  281. data/rbi/lib/orb/models/dimensional_price_group_list_params.rbi +39 -0
  282. data/rbi/lib/orb/models/dimensional_price_group_retrieve_params.rbi +20 -0
  283. data/rbi/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbi +22 -0
  284. data/rbi/lib/orb/models/dimensional_price_groups.rbi +35 -0
  285. data/rbi/lib/orb/models/discount.rbi +18 -0
  286. data/rbi/lib/orb/models/evaluate_price_group.rbi +45 -0
  287. data/rbi/lib/orb/models/event_deprecate_params.rbi +20 -0
  288. data/rbi/lib/orb/models/event_deprecate_response.rbi +19 -0
  289. data/rbi/lib/orb/models/event_ingest_params.rbi +120 -0
  290. data/rbi/lib/orb/models/event_ingest_response.rbi +79 -0
  291. data/rbi/lib/orb/models/event_search_params.rbi +53 -0
  292. data/rbi/lib/orb/models/event_search_response.rbi +100 -0
  293. data/rbi/lib/orb/models/event_update_params.rbi +71 -0
  294. data/rbi/lib/orb/models/event_update_response.rbi +19 -0
  295. data/rbi/lib/orb/models/events/backfill_close_params.rbi +22 -0
  296. data/rbi/lib/orb/models/events/backfill_close_response.rbi +127 -0
  297. data/rbi/lib/orb/models/events/backfill_create_params.rbi +97 -0
  298. data/rbi/lib/orb/models/events/backfill_create_response.rbi +128 -0
  299. data/rbi/lib/orb/models/events/backfill_fetch_params.rbi +22 -0
  300. data/rbi/lib/orb/models/events/backfill_fetch_response.rbi +127 -0
  301. data/rbi/lib/orb/models/events/backfill_list_params.rbi +41 -0
  302. data/rbi/lib/orb/models/events/backfill_list_response.rbi +127 -0
  303. data/rbi/lib/orb/models/events/backfill_revert_params.rbi +22 -0
  304. data/rbi/lib/orb/models/events/backfill_revert_response.rbi +128 -0
  305. data/rbi/lib/orb/models/events/event_volumes.rbi +47 -0
  306. data/rbi/lib/orb/models/events/volume_list_params.rbi +69 -0
  307. data/rbi/lib/orb/models/invoice.rbi +2466 -0
  308. data/rbi/lib/orb/models/invoice_create_params.rbi +230 -0
  309. data/rbi/lib/orb/models/invoice_fetch_params.rbi +20 -0
  310. data/rbi/lib/orb/models/invoice_fetch_upcoming_params.rbi +24 -0
  311. data/rbi/lib/orb/models/invoice_fetch_upcoming_response.rbi +2646 -0
  312. data/rbi/lib/orb/models/invoice_issue_params.rbi +32 -0
  313. data/rbi/lib/orb/models/invoice_level_discount.rbi +16 -0
  314. data/rbi/lib/orb/models/invoice_line_item_create_params.rbi +67 -0
  315. data/rbi/lib/orb/models/invoice_line_item_create_response.rbi +1164 -0
  316. data/rbi/lib/orb/models/invoice_list_params.rbi +187 -0
  317. data/rbi/lib/orb/models/invoice_mark_paid_params.rbi +48 -0
  318. data/rbi/lib/orb/models/invoice_pay_params.rbi +20 -0
  319. data/rbi/lib/orb/models/invoice_update_params.rbi +36 -0
  320. data/rbi/lib/orb/models/invoice_void_params.rbi +20 -0
  321. data/rbi/lib/orb/models/item.rbi +101 -0
  322. data/rbi/lib/orb/models/item_create_params.rbi +25 -0
  323. data/rbi/lib/orb/models/item_fetch_params.rbi +20 -0
  324. data/rbi/lib/orb/models/item_list_params.rbi +39 -0
  325. data/rbi/lib/orb/models/item_update_params.rbi +113 -0
  326. data/rbi/lib/orb/models/metric_create_params.rbi +62 -0
  327. data/rbi/lib/orb/models/metric_fetch_params.rbi +20 -0
  328. data/rbi/lib/orb/models/metric_list_params.rbi +74 -0
  329. data/rbi/lib/orb/models/metric_update_params.rbi +36 -0
  330. data/rbi/lib/orb/models/pagination_metadata.rbi +21 -0
  331. data/rbi/lib/orb/models/percentage_discount.rbi +63 -0
  332. data/rbi/lib/orb/models/plan.rbi +1071 -0
  333. data/rbi/lib/orb/models/plan_create_params.rbi +10069 -0
  334. data/rbi/lib/orb/models/plan_fetch_params.rbi +20 -0
  335. data/rbi/lib/orb/models/plan_list_params.rbi +100 -0
  336. data/rbi/lib/orb/models/plan_update_params.rbi +46 -0
  337. data/rbi/lib/orb/models/plans/external_plan_id_fetch_params.rbi +22 -0
  338. data/rbi/lib/orb/models/plans/external_plan_id_update_params.rbi +48 -0
  339. data/rbi/lib/orb/models/price.rbi +15341 -0
  340. data/rbi/lib/orb/models/price_create_params.rbi +885 -0
  341. data/rbi/lib/orb/models/price_evaluate_params.rbi +81 -0
  342. data/rbi/lib/orb/models/price_evaluate_response.rbi +21 -0
  343. data/rbi/lib/orb/models/price_fetch_params.rbi +20 -0
  344. data/rbi/lib/orb/models/price_list_params.rbi +39 -0
  345. data/rbi/lib/orb/models/price_update_params.rbi +36 -0
  346. data/rbi/lib/orb/models/prices/external_price_id_fetch_params.rbi +22 -0
  347. data/rbi/lib/orb/models/prices/external_price_id_update_params.rbi +38 -0
  348. data/rbi/lib/orb/models/subscription.rbi +1381 -0
  349. data/rbi/lib/orb/models/subscription_cancel_params.rbi +75 -0
  350. data/rbi/lib/orb/models/subscription_cancel_response.rbi +1374 -0
  351. data/rbi/lib/orb/models/subscription_create_params.rbi +23422 -0
  352. data/rbi/lib/orb/models/subscription_create_response.rbi +1374 -0
  353. data/rbi/lib/orb/models/subscription_fetch_costs_params.rbi +82 -0
  354. data/rbi/lib/orb/models/subscription_fetch_costs_response.rbi +210 -0
  355. data/rbi/lib/orb/models/subscription_fetch_params.rbi +20 -0
  356. data/rbi/lib/orb/models/subscription_fetch_schedule_params.rbi +74 -0
  357. data/rbi/lib/orb/models/subscription_fetch_schedule_response.rbi +81 -0
  358. data/rbi/lib/orb/models/subscription_fetch_usage_params.rbi +137 -0
  359. data/rbi/lib/orb/models/subscription_list_params.rbi +108 -0
  360. data/rbi/lib/orb/models/subscription_price_intervals_params.rbi +12991 -0
  361. data/rbi/lib/orb/models/subscription_price_intervals_response.rbi +1387 -0
  362. data/rbi/lib/orb/models/subscription_schedule_plan_change_params.rbi +23589 -0
  363. data/rbi/lib/orb/models/subscription_schedule_plan_change_response.rbi +1390 -0
  364. data/rbi/lib/orb/models/subscription_trigger_phase_params.rbi +45 -0
  365. data/rbi/lib/orb/models/subscription_trigger_phase_response.rbi +1381 -0
  366. data/rbi/lib/orb/models/subscription_unschedule_cancellation_params.rbi +20 -0
  367. data/rbi/lib/orb/models/subscription_unschedule_cancellation_response.rbi +1400 -0
  368. data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbi +25 -0
  369. data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbi +1451 -0
  370. data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rbi +20 -0
  371. data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rbi +1410 -0
  372. data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_params.rbi +104 -0
  373. data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_response.rbi +1400 -0
  374. data/rbi/lib/orb/models/subscription_update_params.rbi +77 -0
  375. data/rbi/lib/orb/models/subscription_update_trial_params.rbi +63 -0
  376. data/rbi/lib/orb/models/subscription_update_trial_response.rbi +1378 -0
  377. data/rbi/lib/orb/models/subscription_usage.rbi +323 -0
  378. data/rbi/lib/orb/models/subscriptions.rbi +33 -0
  379. data/rbi/lib/orb/models/top_level_ping_params.rbi +20 -0
  380. data/rbi/lib/orb/models/top_level_ping_response.rbi +18 -0
  381. data/rbi/lib/orb/models/trial_discount.rbi +73 -0
  382. data/rbi/lib/orb/models/usage_discount.rbi +62 -0
  383. data/rbi/lib/orb/page.rbi +35 -0
  384. data/rbi/lib/orb/request_options.rbi +48 -0
  385. data/rbi/lib/orb/resources/alerts.rbi +216 -0
  386. data/rbi/lib/orb/resources/coupons/subscriptions.rbi +38 -0
  387. data/rbi/lib/orb/resources/coupons.rbi +96 -0
  388. data/rbi/lib/orb/resources/credit_notes.rbi +74 -0
  389. data/rbi/lib/orb/resources/customers/balance_transactions.rbi +92 -0
  390. data/rbi/lib/orb/resources/customers/costs.rbi +304 -0
  391. data/rbi/lib/orb/resources/customers/credits/ledger.rbi +645 -0
  392. data/rbi/lib/orb/resources/customers/credits/top_ups.rbi +180 -0
  393. data/rbi/lib/orb/resources/customers/credits.rbi +88 -0
  394. data/rbi/lib/orb/resources/customers.rbi +714 -0
  395. data/rbi/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbi +25 -0
  396. data/rbi/lib/orb/resources/dimensional_price_groups.rbi +78 -0
  397. data/rbi/lib/orb/resources/events/backfills.rbi +161 -0
  398. data/rbi/lib/orb/resources/events/volume.rbi +57 -0
  399. data/rbi/lib/orb/resources/events.rbi +408 -0
  400. data/rbi/lib/orb/resources/invoice_line_items.rbi +44 -0
  401. data/rbi/lib/orb/resources/invoices.rbi +262 -0
  402. data/rbi/lib/orb/resources/items.rbi +65 -0
  403. data/rbi/lib/orb/resources/metrics.rbi +102 -0
  404. data/rbi/lib/orb/resources/plans/external_plan_id.rbi +67 -0
  405. data/rbi/lib/orb/resources/plans.rbi +170 -0
  406. data/rbi/lib/orb/resources/prices/external_price_id.rbi +110 -0
  407. data/rbi/lib/orb/resources/prices.rbi +371 -0
  408. data/rbi/lib/orb/resources/subscriptions.rbi +1469 -0
  409. data/rbi/lib/orb/resources/top_level.rbi +25 -0
  410. data/rbi/lib/orb/transport/base_client.rbi +205 -0
  411. data/rbi/lib/orb/transport/pooled_net_requester.rbi +64 -0
  412. data/rbi/lib/orb/type/array_of.rbi +82 -0
  413. data/rbi/lib/orb/type/base_model.rbi +197 -0
  414. data/rbi/lib/orb/type/base_page.rbi +38 -0
  415. data/rbi/lib/orb/type/boolean_model.rbi +41 -0
  416. data/rbi/lib/orb/type/converter.rbi +95 -0
  417. data/rbi/lib/orb/type/enum.rbi +58 -0
  418. data/rbi/lib/orb/type/hash_of.rbi +86 -0
  419. data/rbi/lib/orb/type/request_parameters.rbi +20 -0
  420. data/rbi/lib/orb/type/union.rbi +66 -0
  421. data/rbi/lib/orb/type/unknown.rbi +37 -0
  422. data/rbi/lib/orb/type.rbi +23 -0
  423. data/rbi/lib/orb/util.rbi +278 -0
  424. data/rbi/lib/orb/version.rbi +5 -0
  425. data/sig/orb/client.rbs +53 -0
  426. data/sig/orb/errors.rbs +201 -0
  427. data/sig/orb/models/alert.rbs +142 -0
  428. data/sig/orb/models/alert_create_for_customer_params.rbs +56 -0
  429. data/sig/orb/models/alert_create_for_external_customer_params.rbs +56 -0
  430. data/sig/orb/models/alert_create_for_subscription_params.rbs +52 -0
  431. data/sig/orb/models/alert_disable_params.rbs +20 -0
  432. data/sig/orb/models/alert_enable_params.rbs +20 -0
  433. data/sig/orb/models/alert_list_params.rbs +57 -0
  434. data/sig/orb/models/alert_retrieve_params.rbs +14 -0
  435. data/sig/orb/models/alert_update_params.rbs +31 -0
  436. data/sig/orb/models/amount_discount.rbs +40 -0
  437. data/sig/orb/models/billable_metric.rbs +50 -0
  438. data/sig/orb/models/billing_cycle_relative_date.rbs +14 -0
  439. data/sig/orb/models/coupon.rbs +51 -0
  440. data/sig/orb/models/coupon_archive_params.rbs +14 -0
  441. data/sig/orb/models/coupon_create_params.rbs +77 -0
  442. data/sig/orb/models/coupon_fetch_params.rbs +14 -0
  443. data/sig/orb/models/coupon_list_params.rbs +37 -0
  444. data/sig/orb/models/coupons/subscription_list_params.rbs +27 -0
  445. data/sig/orb/models/credit_note.rbs +345 -0
  446. data/sig/orb/models/credit_note_create_params.rbs +57 -0
  447. data/sig/orb/models/credit_note_fetch_params.rbs +14 -0
  448. data/sig/orb/models/credit_note_list_params.rbs +45 -0
  449. data/sig/orb/models/customer.rbs +628 -0
  450. data/sig/orb/models/customer_create_params.rbs +624 -0
  451. data/sig/orb/models/customer_delete_params.rbs +14 -0
  452. data/sig/orb/models/customer_fetch_by_external_id_params.rbs +14 -0
  453. data/sig/orb/models/customer_fetch_params.rbs +14 -0
  454. data/sig/orb/models/customer_list_params.rbs +45 -0
  455. data/sig/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbs +15 -0
  456. data/sig/orb/models/customer_sync_payment_methods_from_gateway_params.rbs +15 -0
  457. data/sig/orb/models/customer_update_by_external_id_params.rbs +620 -0
  458. data/sig/orb/models/customer_update_params.rbs +620 -0
  459. data/sig/orb/models/customers/balance_transaction_create_params.rbs +44 -0
  460. data/sig/orb/models/customers/balance_transaction_create_response.rbs +114 -0
  461. data/sig/orb/models/customers/balance_transaction_list_params.rbs +47 -0
  462. data/sig/orb/models/customers/balance_transaction_list_response.rbs +114 -0
  463. data/sig/orb/models/customers/cost_list_by_external_id_params.rbs +48 -0
  464. data/sig/orb/models/customers/cost_list_by_external_id_response.rbs +82 -0
  465. data/sig/orb/models/customers/cost_list_params.rbs +48 -0
  466. data/sig/orb/models/customers/cost_list_response.rbs +80 -0
  467. data/sig/orb/models/customers/credit_list_by_external_id_params.rbs +41 -0
  468. data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +55 -0
  469. data/sig/orb/models/customers/credit_list_params.rbs +41 -0
  470. data/sig/orb/models/customers/credit_list_response.rbs +55 -0
  471. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbs +120 -0
  472. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbs +814 -0
  473. data/sig/orb/models/customers/credits/ledger_create_entry_params.rbs +120 -0
  474. data/sig/orb/models/customers/credits/ledger_create_entry_response.rbs +814 -0
  475. data/sig/orb/models/customers/credits/ledger_list_by_external_id_params.rbs +99 -0
  476. data/sig/orb/models/customers/credits/ledger_list_by_external_id_response.rbs +814 -0
  477. data/sig/orb/models/customers/credits/ledger_list_params.rbs +99 -0
  478. data/sig/orb/models/customers/credits/ledger_list_response.rbs +814 -0
  479. data/sig/orb/models/customers/credits/top_up_create_by_external_id_params.rbs +95 -0
  480. data/sig/orb/models/customers/credits/top_up_create_by_external_id_response.rbs +90 -0
  481. data/sig/orb/models/customers/credits/top_up_create_params.rbs +95 -0
  482. data/sig/orb/models/customers/credits/top_up_create_response.rbs +90 -0
  483. data/sig/orb/models/customers/credits/top_up_delete_by_external_id_params.rbs +24 -0
  484. data/sig/orb/models/customers/credits/top_up_delete_params.rbs +24 -0
  485. data/sig/orb/models/customers/credits/top_up_list_by_external_id_params.rbs +29 -0
  486. data/sig/orb/models/customers/credits/top_up_list_by_external_id_response.rbs +90 -0
  487. data/sig/orb/models/customers/credits/top_up_list_params.rbs +29 -0
  488. data/sig/orb/models/customers/credits/top_up_list_response.rbs +90 -0
  489. data/sig/orb/models/dimensional_price_group.rbs +38 -0
  490. data/sig/orb/models/dimensional_price_group_create_params.rbs +39 -0
  491. data/sig/orb/models/dimensional_price_group_list_params.rbs +25 -0
  492. data/sig/orb/models/dimensional_price_group_retrieve_params.rbs +15 -0
  493. data/sig/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbs +17 -0
  494. data/sig/orb/models/dimensional_price_groups.rbs +22 -0
  495. data/sig/orb/models/discount.rbs +15 -0
  496. data/sig/orb/models/evaluate_price_group.rbs +34 -0
  497. data/sig/orb/models/event_deprecate_params.rbs +14 -0
  498. data/sig/orb/models/event_deprecate_response.rbs +13 -0
  499. data/sig/orb/models/event_ingest_params.rbs +68 -0
  500. data/sig/orb/models/event_ingest_response.rbs +53 -0
  501. data/sig/orb/models/event_search_params.rbs +31 -0
  502. data/sig/orb/models/event_search_response.rbs +55 -0
  503. data/sig/orb/models/event_update_params.rbs +39 -0
  504. data/sig/orb/models/event_update_response.rbs +13 -0
  505. data/sig/orb/models/events/backfill_close_params.rbs +16 -0
  506. data/sig/orb/models/events/backfill_close_response.rbs +73 -0
  507. data/sig/orb/models/events/backfill_create_params.rbs +51 -0
  508. data/sig/orb/models/events/backfill_create_response.rbs +73 -0
  509. data/sig/orb/models/events/backfill_fetch_params.rbs +16 -0
  510. data/sig/orb/models/events/backfill_fetch_response.rbs +73 -0
  511. data/sig/orb/models/events/backfill_list_params.rbs +27 -0
  512. data/sig/orb/models/events/backfill_list_response.rbs +73 -0
  513. data/sig/orb/models/events/backfill_revert_params.rbs +16 -0
  514. data/sig/orb/models/events/backfill_revert_response.rbs +73 -0
  515. data/sig/orb/models/events/event_volumes.rbs +39 -0
  516. data/sig/orb/models/events/volume_list_params.rbs +41 -0
  517. data/sig/orb/models/invoice.rbs +1430 -0
  518. data/sig/orb/models/invoice_create_params.rbs +120 -0
  519. data/sig/orb/models/invoice_fetch_params.rbs +14 -0
  520. data/sig/orb/models/invoice_fetch_upcoming_params.rbs +20 -0
  521. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +1430 -0
  522. data/sig/orb/models/invoice_issue_params.rbs +21 -0
  523. data/sig/orb/models/invoice_level_discount.rbs +14 -0
  524. data/sig/orb/models/invoice_line_item_create_params.rbs +43 -0
  525. data/sig/orb/models/invoice_line_item_create_response.rbs +546 -0
  526. data/sig/orb/models/invoice_list_params.rbs +122 -0
  527. data/sig/orb/models/invoice_mark_paid_params.rbs +27 -0
  528. data/sig/orb/models/invoice_pay_params.rbs +14 -0
  529. data/sig/orb/models/invoice_update_params.rbs +20 -0
  530. data/sig/orb/models/invoice_void_params.rbs +14 -0
  531. data/sig/orb/models/item.rbs +72 -0
  532. data/sig/orb/models/item_create_params.rbs +19 -0
  533. data/sig/orb/models/item_fetch_params.rbs +14 -0
  534. data/sig/orb/models/item_list_params.rbs +25 -0
  535. data/sig/orb/models/item_update_params.rbs +69 -0
  536. data/sig/orb/models/metric_create_params.rbs +39 -0
  537. data/sig/orb/models/metric_fetch_params.rbs +14 -0
  538. data/sig/orb/models/metric_list_params.rbs +45 -0
  539. data/sig/orb/models/metric_update_params.rbs +20 -0
  540. data/sig/orb/models/pagination_metadata.rbs +15 -0
  541. data/sig/orb/models/percentage_discount.rbs +40 -0
  542. data/sig/orb/models/plan.rbs +529 -0
  543. data/sig/orb/models/plan_create_params.rbs +3991 -0
  544. data/sig/orb/models/plan_fetch_params.rbs +14 -0
  545. data/sig/orb/models/plan_list_params.rbs +65 -0
  546. data/sig/orb/models/plan_update_params.rbs +24 -0
  547. data/sig/orb/models/plans/external_plan_id_fetch_params.rbs +16 -0
  548. data/sig/orb/models/plans/external_plan_id_update_params.rbs +26 -0
  549. data/sig/orb/models/price.rbs +8108 -0
  550. data/sig/orb/models/price_create_params.rbs +520 -0
  551. data/sig/orb/models/price_evaluate_params.rbs +45 -0
  552. data/sig/orb/models/price_evaluate_response.rbs +14 -0
  553. data/sig/orb/models/price_fetch_params.rbs +14 -0
  554. data/sig/orb/models/price_list_params.rbs +25 -0
  555. data/sig/orb/models/price_update_params.rbs +20 -0
  556. data/sig/orb/models/prices/external_price_id_fetch_params.rbs +16 -0
  557. data/sig/orb/models/prices/external_price_id_update_params.rbs +22 -0
  558. data/sig/orb/models/subscription.rbs +687 -0
  559. data/sig/orb/models/subscription_cancel_params.rbs +44 -0
  560. data/sig/orb/models/subscription_cancel_response.rbs +687 -0
  561. data/sig/orb/models/subscription_create_params.rbs +9141 -0
  562. data/sig/orb/models/subscription_create_response.rbs +687 -0
  563. data/sig/orb/models/subscription_fetch_costs_params.rbs +46 -0
  564. data/sig/orb/models/subscription_fetch_costs_response.rbs +78 -0
  565. data/sig/orb/models/subscription_fetch_params.rbs +14 -0
  566. data/sig/orb/models/subscription_fetch_schedule_params.rbs +45 -0
  567. data/sig/orb/models/subscription_fetch_schedule_response.rbs +48 -0
  568. data/sig/orb/models/subscription_fetch_usage_params.rbs +80 -0
  569. data/sig/orb/models/subscription_list_params.rbs +69 -0
  570. data/sig/orb/models/subscription_price_intervals_params.rbs +5117 -0
  571. data/sig/orb/models/subscription_price_intervals_response.rbs +687 -0
  572. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +9133 -0
  573. data/sig/orb/models/subscription_schedule_plan_change_response.rbs +687 -0
  574. data/sig/orb/models/subscription_trigger_phase_params.rbs +24 -0
  575. data/sig/orb/models/subscription_trigger_phase_response.rbs +687 -0
  576. data/sig/orb/models/subscription_unschedule_cancellation_params.rbs +15 -0
  577. data/sig/orb/models/subscription_unschedule_cancellation_response.rbs +687 -0
  578. data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbs +20 -0
  579. data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbs +687 -0
  580. data/sig/orb/models/subscription_unschedule_pending_plan_changes_params.rbs +15 -0
  581. data/sig/orb/models/subscription_unschedule_pending_plan_changes_response.rbs +687 -0
  582. data/sig/orb/models/subscription_update_fixed_fee_quantity_params.rbs +55 -0
  583. data/sig/orb/models/subscription_update_fixed_fee_quantity_response.rbs +687 -0
  584. data/sig/orb/models/subscription_update_params.rbs +39 -0
  585. data/sig/orb/models/subscription_update_trial_params.rbs +39 -0
  586. data/sig/orb/models/subscription_update_trial_response.rbs +687 -0
  587. data/sig/orb/models/subscription_usage.rbs +196 -0
  588. data/sig/orb/models/subscriptions.rbs +22 -0
  589. data/sig/orb/models/top_level_ping_params.rbs +14 -0
  590. data/sig/orb/models/top_level_ping_response.rbs +13 -0
  591. data/sig/orb/models/trial_discount.rbs +44 -0
  592. data/sig/orb/models/usage_discount.rbs +40 -0
  593. data/sig/orb/page.rbs +22 -0
  594. data/sig/orb/request_options.rbs +32 -0
  595. data/sig/orb/resources/alerts.rbs +67 -0
  596. data/sig/orb/resources/coupons/subscriptions.rbs +16 -0
  597. data/sig/orb/resources/coupons.rbs +35 -0
  598. data/sig/orb/resources/credit_notes.rbs +29 -0
  599. data/sig/orb/resources/customers/balance_transactions.rbs +28 -0
  600. data/sig/orb/resources/customers/costs.rbs +27 -0
  601. data/sig/orb/resources/customers/credits/ledger.rbs +75 -0
  602. data/sig/orb/resources/customers/credits/top_ups.rbs +63 -0
  603. data/sig/orb/resources/customers/credits.rbs +31 -0
  604. data/sig/orb/resources/customers.rbs +114 -0
  605. data/sig/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbs +14 -0
  606. data/sig/orb/resources/dimensional_price_groups.rbs +29 -0
  607. data/sig/orb/resources/events/backfills.rbs +41 -0
  608. data/sig/orb/resources/events/volume.rbs +17 -0
  609. data/sig/orb/resources/events.rbs +40 -0
  610. data/sig/orb/resources/invoice_line_items.rbs +17 -0
  611. data/sig/orb/resources/invoices.rbs +84 -0
  612. data/sig/orb/resources/items.rbs +30 -0
  613. data/sig/orb/resources/metrics.rbs +37 -0
  614. data/sig/orb/resources/plans/external_plan_id.rbs +21 -0
  615. data/sig/orb/resources/plans.rbs +44 -0
  616. data/sig/orb/resources/prices/external_price_id.rbs +20 -0
  617. data/sig/orb/resources/prices.rbs +83 -0
  618. data/sig/orb/resources/subscriptions.rbs +194 -0
  619. data/sig/orb/resources/top_level.rbs +11 -0
  620. data/sig/orb/transport/base_client.rbs +110 -0
  621. data/sig/orb/transport/pooled_net_requester.rbs +39 -0
  622. data/sig/orb/type/array_of.rbs +36 -0
  623. data/sig/orb/type/base_model.rbs +77 -0
  624. data/sig/orb/type/base_page.rbs +22 -0
  625. data/sig/orb/type/boolean_model.rbs +18 -0
  626. data/sig/orb/type/converter.rbs +36 -0
  627. data/sig/orb/type/enum.rbs +22 -0
  628. data/sig/orb/type/hash_of.rbs +36 -0
  629. data/sig/orb/type/request_parameters.rbs +13 -0
  630. data/sig/orb/type/union.rbs +37 -0
  631. data/sig/orb/type/unknown.rbs +15 -0
  632. data/sig/orb/type.rbs +22 -0
  633. data/sig/orb/util.rbs +132 -0
  634. data/sig/orb/version.rbs +3 -0
  635. metadata +692 -0
@@ -0,0 +1,192 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Orb
4
+ module Resources
5
+ class Customers
6
+ class Credits
7
+ class TopUps
8
+ # This endpoint allows you to create a new top-up for a specified customer's
9
+ # balance. While this top-up is active, the customer's balance will added in
10
+ # increments of the specified amount whenever the balance reaches the specified
11
+ # threshold.
12
+ #
13
+ # If a top-up already exists for this customer in the same currency, the existing
14
+ # top-up will be replaced.
15
+ #
16
+ # @overload create(customer_id, amount:, currency:, invoice_settings:, per_unit_cost_basis:, threshold:, active_from: nil, expires_after: nil, expires_after_unit: nil, request_options: {})
17
+ #
18
+ # @param customer_id [String]
19
+ # @param amount [String]
20
+ # @param currency [String]
21
+ # @param invoice_settings [Orb::Models::Customers::Credits::TopUpCreateParams::InvoiceSettings]
22
+ # @param per_unit_cost_basis [String]
23
+ # @param threshold [String]
24
+ # @param active_from [Time, nil]
25
+ # @param expires_after [Integer, nil]
26
+ # @param expires_after_unit [Symbol, Orb::Models::Customers::Credits::TopUpCreateParams::ExpiresAfterUnit, nil]
27
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
28
+ #
29
+ # @return [Orb::Models::Customers::Credits::TopUpCreateResponse]
30
+ #
31
+ # @see Orb::Models::Customers::Credits::TopUpCreateParams
32
+ def create(customer_id, params)
33
+ parsed, options = Orb::Models::Customers::Credits::TopUpCreateParams.dump_request(params)
34
+ @client.request(
35
+ method: :post,
36
+ path: ["customers/%1$s/credits/top_ups", customer_id],
37
+ body: parsed,
38
+ model: Orb::Models::Customers::Credits::TopUpCreateResponse,
39
+ options: options
40
+ )
41
+ end
42
+
43
+ # List top-ups
44
+ #
45
+ # @overload list(customer_id, cursor: nil, limit: nil, request_options: {})
46
+ #
47
+ # @param customer_id [String]
48
+ # @param cursor [String, nil]
49
+ # @param limit [Integer]
50
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
51
+ #
52
+ # @return [Orb::Page<Orb::Models::Customers::Credits::TopUpListResponse>]
53
+ #
54
+ # @see Orb::Models::Customers::Credits::TopUpListParams
55
+ def list(customer_id, params = {})
56
+ parsed, options = Orb::Models::Customers::Credits::TopUpListParams.dump_request(params)
57
+ @client.request(
58
+ method: :get,
59
+ path: ["customers/%1$s/credits/top_ups", customer_id],
60
+ query: parsed,
61
+ page: Orb::Page,
62
+ model: Orb::Models::Customers::Credits::TopUpListResponse,
63
+ options: options
64
+ )
65
+ end
66
+
67
+ # This deactivates the top-up and voids any invoices associated with pending
68
+ # credit blocks purchased through the top-up.
69
+ #
70
+ # @overload delete(top_up_id, customer_id:, request_options: {})
71
+ #
72
+ # @param top_up_id [String]
73
+ # @param customer_id [String]
74
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
75
+ #
76
+ # @return [nil]
77
+ #
78
+ # @see Orb::Models::Customers::Credits::TopUpDeleteParams
79
+ def delete(top_up_id, params)
80
+ parsed, options = Orb::Models::Customers::Credits::TopUpDeleteParams.dump_request(params)
81
+ customer_id =
82
+ parsed.delete(:customer_id) do
83
+ raise ArgumentError.new("missing required path argument #{_1}")
84
+ end
85
+ @client.request(
86
+ method: :delete,
87
+ path: ["customers/%1$s/credits/top_ups/%2$s", customer_id, top_up_id],
88
+ model: NilClass,
89
+ options: options
90
+ )
91
+ end
92
+
93
+ # This endpoint allows you to create a new top-up for a specified customer's
94
+ # balance. While this top-up is active, the customer's balance will added in
95
+ # increments of the specified amount whenever the balance reaches the specified
96
+ # threshold.
97
+ #
98
+ # If a top-up already exists for this customer in the same currency, the existing
99
+ # top-up will be replaced.
100
+ #
101
+ # @overload create_by_external_id(external_customer_id, amount:, currency:, invoice_settings:, per_unit_cost_basis:, threshold:, active_from: nil, expires_after: nil, expires_after_unit: nil, request_options: {})
102
+ #
103
+ # @param external_customer_id [String]
104
+ # @param amount [String]
105
+ # @param currency [String]
106
+ # @param invoice_settings [Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams::InvoiceSettings]
107
+ # @param per_unit_cost_basis [String]
108
+ # @param threshold [String]
109
+ # @param active_from [Time, nil]
110
+ # @param expires_after [Integer, nil]
111
+ # @param expires_after_unit [Symbol, Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams::ExpiresAfterUnit, nil]
112
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
113
+ #
114
+ # @return [Orb::Models::Customers::Credits::TopUpCreateByExternalIDResponse]
115
+ #
116
+ # @see Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams
117
+ def create_by_external_id(external_customer_id, params)
118
+ parsed, options = Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams.dump_request(params)
119
+ @client.request(
120
+ method: :post,
121
+ path: ["customers/external_customer_id/%1$s/credits/top_ups", external_customer_id],
122
+ body: parsed,
123
+ model: Orb::Models::Customers::Credits::TopUpCreateByExternalIDResponse,
124
+ options: options
125
+ )
126
+ end
127
+
128
+ # This deactivates the top-up and voids any invoices associated with pending
129
+ # credit blocks purchased through the top-up.
130
+ #
131
+ # @overload delete_by_external_id(top_up_id, external_customer_id:, request_options: {})
132
+ #
133
+ # @param top_up_id [String]
134
+ # @param external_customer_id [String]
135
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
136
+ #
137
+ # @return [nil]
138
+ #
139
+ # @see Orb::Models::Customers::Credits::TopUpDeleteByExternalIDParams
140
+ def delete_by_external_id(top_up_id, params)
141
+ parsed, options = Orb::Models::Customers::Credits::TopUpDeleteByExternalIDParams.dump_request(params)
142
+ external_customer_id =
143
+ parsed.delete(:external_customer_id) do
144
+ raise ArgumentError.new("missing required path argument #{_1}")
145
+ end
146
+ @client.request(
147
+ method: :delete,
148
+ path: [
149
+ "customers/external_customer_id/%1$s/credits/top_ups/%2$s",
150
+ external_customer_id,
151
+ top_up_id
152
+ ],
153
+ model: NilClass,
154
+ options: options
155
+ )
156
+ end
157
+
158
+ # List top-ups by external ID
159
+ #
160
+ # @overload list_by_external_id(external_customer_id, cursor: nil, limit: nil, request_options: {})
161
+ #
162
+ # @param external_customer_id [String]
163
+ # @param cursor [String, nil]
164
+ # @param limit [Integer]
165
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
166
+ #
167
+ # @return [Orb::Page<Orb::Models::Customers::Credits::TopUpListByExternalIDResponse>]
168
+ #
169
+ # @see Orb::Models::Customers::Credits::TopUpListByExternalIDParams
170
+ def list_by_external_id(external_customer_id, params = {})
171
+ parsed, options = Orb::Models::Customers::Credits::TopUpListByExternalIDParams.dump_request(params)
172
+ @client.request(
173
+ method: :get,
174
+ path: ["customers/external_customer_id/%1$s/credits/top_ups", external_customer_id],
175
+ query: parsed,
176
+ page: Orb::Page,
177
+ model: Orb::Models::Customers::Credits::TopUpListByExternalIDResponse,
178
+ options: options
179
+ )
180
+ end
181
+
182
+ # @api private
183
+ #
184
+ # @param client [Orb::Client]
185
+ def initialize(client:)
186
+ @client = client
187
+ end
188
+ end
189
+ end
190
+ end
191
+ end
192
+ end
@@ -0,0 +1,88 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Orb
4
+ module Resources
5
+ class Customers
6
+ class Credits
7
+ # @return [Orb::Resources::Customers::Credits::Ledger]
8
+ attr_reader :ledger
9
+
10
+ # @return [Orb::Resources::Customers::Credits::TopUps]
11
+ attr_reader :top_ups
12
+
13
+ # Returns a paginated list of unexpired, non-zero credit blocks for a customer.
14
+ #
15
+ # If `include_all_blocks` is set to `true`, all credit blocks (including expired
16
+ # and depleted blocks) will be included in the response.
17
+ #
18
+ # Note that `currency` defaults to credits if not specified. To use a real world
19
+ # currency, set `currency` to an ISO 4217 string.
20
+ #
21
+ # @overload list(customer_id, currency: nil, cursor: nil, include_all_blocks: nil, limit: nil, request_options: {})
22
+ #
23
+ # @param customer_id [String]
24
+ # @param currency [String, nil]
25
+ # @param cursor [String, nil]
26
+ # @param include_all_blocks [Boolean]
27
+ # @param limit [Integer]
28
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
29
+ #
30
+ # @return [Orb::Page<Orb::Models::Customers::CreditListResponse>]
31
+ #
32
+ # @see Orb::Models::Customers::CreditListParams
33
+ def list(customer_id, params = {})
34
+ parsed, options = Orb::Models::Customers::CreditListParams.dump_request(params)
35
+ @client.request(
36
+ method: :get,
37
+ path: ["customers/%1$s/credits", customer_id],
38
+ query: parsed,
39
+ page: Orb::Page,
40
+ model: Orb::Models::Customers::CreditListResponse,
41
+ options: options
42
+ )
43
+ end
44
+
45
+ # Returns a paginated list of unexpired, non-zero credit blocks for a customer.
46
+ #
47
+ # If `include_all_blocks` is set to `true`, all credit blocks (including expired
48
+ # and depleted blocks) will be included in the response.
49
+ #
50
+ # Note that `currency` defaults to credits if not specified. To use a real world
51
+ # currency, set `currency` to an ISO 4217 string.
52
+ #
53
+ # @overload list_by_external_id(external_customer_id, currency: nil, cursor: nil, include_all_blocks: nil, limit: nil, request_options: {})
54
+ #
55
+ # @param external_customer_id [String]
56
+ # @param currency [String, nil]
57
+ # @param cursor [String, nil]
58
+ # @param include_all_blocks [Boolean]
59
+ # @param limit [Integer]
60
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
61
+ #
62
+ # @return [Orb::Page<Orb::Models::Customers::CreditListByExternalIDResponse>]
63
+ #
64
+ # @see Orb::Models::Customers::CreditListByExternalIDParams
65
+ def list_by_external_id(external_customer_id, params = {})
66
+ parsed, options = Orb::Models::Customers::CreditListByExternalIDParams.dump_request(params)
67
+ @client.request(
68
+ method: :get,
69
+ path: ["customers/external_customer_id/%1$s/credits", external_customer_id],
70
+ query: parsed,
71
+ page: Orb::Page,
72
+ model: Orb::Models::Customers::CreditListByExternalIDResponse,
73
+ options: options
74
+ )
75
+ end
76
+
77
+ # @api private
78
+ #
79
+ # @param client [Orb::Client]
80
+ def initialize(client:)
81
+ @client = client
82
+ @ledger = Orb::Resources::Customers::Credits::Ledger.new(client: client)
83
+ @top_ups = Orb::Resources::Customers::Credits::TopUps.new(client: client)
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,321 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Orb
4
+ module Resources
5
+ class Customers
6
+ # @return [Orb::Resources::Customers::Costs]
7
+ attr_reader :costs
8
+
9
+ # @return [Orb::Resources::Customers::Credits]
10
+ attr_reader :credits
11
+
12
+ # @return [Orb::Resources::Customers::BalanceTransactions]
13
+ attr_reader :balance_transactions
14
+
15
+ # This operation is used to create an Orb customer, who is party to the core
16
+ # billing relationship. See [Customer](/core-concepts##customer) for an overview
17
+ # of the customer resource.
18
+ #
19
+ # This endpoint is critical in the following Orb functionality:
20
+ #
21
+ # - Automated charges can be configured by setting `payment_provider` and
22
+ # `payment_provider_id` to automatically issue invoices
23
+ # - [Customer ID Aliases](/events-and-metrics/customer-aliases) can be configured
24
+ # by setting `external_customer_id`
25
+ # - [Timezone localization](/essentials/timezones) can be configured on a
26
+ # per-customer basis by setting the `timezone` parameter
27
+ #
28
+ # @overload create(email:, name:, accounting_sync_configuration: nil, additional_emails: nil, auto_collection: nil, billing_address: nil, currency: nil, email_delivery: nil, external_customer_id: nil, hierarchy: nil, metadata: nil, payment_provider: nil, payment_provider_id: nil, reporting_configuration: nil, shipping_address: nil, tax_configuration: nil, tax_id: nil, timezone: nil, request_options: {})
29
+ #
30
+ # @param email [String]
31
+ # @param name [String]
32
+ # @param accounting_sync_configuration [Orb::Models::CustomerCreateParams::AccountingSyncConfiguration, nil]
33
+ # @param additional_emails [Array<String>, nil]
34
+ # @param auto_collection [Boolean, nil]
35
+ # @param billing_address [Orb::Models::CustomerCreateParams::BillingAddress, nil]
36
+ # @param currency [String, nil]
37
+ # @param email_delivery [Boolean, nil]
38
+ # @param external_customer_id [String, nil]
39
+ # @param hierarchy [Orb::Models::CustomerCreateParams::Hierarchy, nil]
40
+ # @param metadata [Hash{Symbol=>String, nil}, nil]
41
+ # @param payment_provider [Symbol, Orb::Models::CustomerCreateParams::PaymentProvider, nil]
42
+ # @param payment_provider_id [String, nil]
43
+ # @param reporting_configuration [Orb::Models::CustomerCreateParams::ReportingConfiguration, nil]
44
+ # @param shipping_address [Orb::Models::CustomerCreateParams::ShippingAddress, nil]
45
+ # @param tax_configuration [Orb::Models::CustomerCreateParams::TaxConfiguration::NewAvalaraTaxConfiguration, Orb::Models::CustomerCreateParams::TaxConfiguration::NewTaxJarConfiguration, nil]
46
+ # @param tax_id [Orb::Models::CustomerCreateParams::TaxID, nil]
47
+ # @param timezone [String, nil]
48
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
49
+ #
50
+ # @return [Orb::Models::Customer]
51
+ #
52
+ # @see Orb::Models::CustomerCreateParams
53
+ def create(params)
54
+ parsed, options = Orb::Models::CustomerCreateParams.dump_request(params)
55
+ @client.request(
56
+ method: :post,
57
+ path: "customers",
58
+ body: parsed,
59
+ model: Orb::Models::Customer,
60
+ options: options
61
+ )
62
+ end
63
+
64
+ # This endpoint can be used to update the `payment_provider`,
65
+ # `payment_provider_id`, `name`, `email`, `email_delivery`, `tax_id`,
66
+ # `auto_collection`, `metadata`, `shipping_address`, `billing_address`, and
67
+ # `additional_emails` of an existing customer. Other fields on a customer are
68
+ # currently immutable.
69
+ #
70
+ # @overload update(customer_id, accounting_sync_configuration: nil, additional_emails: nil, auto_collection: nil, billing_address: nil, currency: nil, email: nil, email_delivery: nil, external_customer_id: nil, hierarchy: nil, metadata: nil, name: nil, payment_provider: nil, payment_provider_id: nil, reporting_configuration: nil, shipping_address: nil, tax_configuration: nil, tax_id: nil, request_options: {})
71
+ #
72
+ # @param customer_id [String]
73
+ # @param accounting_sync_configuration [Orb::Models::CustomerUpdateParams::AccountingSyncConfiguration, nil]
74
+ # @param additional_emails [Array<String>, nil]
75
+ # @param auto_collection [Boolean, nil]
76
+ # @param billing_address [Orb::Models::CustomerUpdateParams::BillingAddress, nil]
77
+ # @param currency [String, nil]
78
+ # @param email [String, nil]
79
+ # @param email_delivery [Boolean, nil]
80
+ # @param external_customer_id [String, nil]
81
+ # @param hierarchy [Orb::Models::CustomerUpdateParams::Hierarchy, nil]
82
+ # @param metadata [Hash{Symbol=>String, nil}, nil]
83
+ # @param name [String, nil]
84
+ # @param payment_provider [Symbol, Orb::Models::CustomerUpdateParams::PaymentProvider, nil]
85
+ # @param payment_provider_id [String, nil]
86
+ # @param reporting_configuration [Orb::Models::CustomerUpdateParams::ReportingConfiguration, nil]
87
+ # @param shipping_address [Orb::Models::CustomerUpdateParams::ShippingAddress, nil]
88
+ # @param tax_configuration [Orb::Models::CustomerUpdateParams::TaxConfiguration::NewAvalaraTaxConfiguration, Orb::Models::CustomerUpdateParams::TaxConfiguration::NewTaxJarConfiguration, nil]
89
+ # @param tax_id [Orb::Models::CustomerUpdateParams::TaxID, nil]
90
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
91
+ #
92
+ # @return [Orb::Models::Customer]
93
+ #
94
+ # @see Orb::Models::CustomerUpdateParams
95
+ def update(customer_id, params = {})
96
+ parsed, options = Orb::Models::CustomerUpdateParams.dump_request(params)
97
+ @client.request(
98
+ method: :put,
99
+ path: ["customers/%1$s", customer_id],
100
+ body: parsed,
101
+ model: Orb::Models::Customer,
102
+ options: options
103
+ )
104
+ end
105
+
106
+ # This endpoint returns a list of all customers for an account. The list of
107
+ # customers is ordered starting from the most recently created customer. This
108
+ # endpoint follows Orb's
109
+ # [standardized pagination format](/api-reference/pagination).
110
+ #
111
+ # See [Customer](/core-concepts##customer) for an overview of the customer model.
112
+ #
113
+ # @overload list(created_at_gt: nil, created_at_gte: nil, created_at_lt: nil, created_at_lte: nil, cursor: nil, limit: nil, request_options: {})
114
+ #
115
+ # @param created_at_gt [Time, nil]
116
+ # @param created_at_gte [Time, nil]
117
+ # @param created_at_lt [Time, nil]
118
+ # @param created_at_lte [Time, nil]
119
+ # @param cursor [String, nil]
120
+ # @param limit [Integer]
121
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
122
+ #
123
+ # @return [Orb::Page<Orb::Models::Customer>]
124
+ #
125
+ # @see Orb::Models::CustomerListParams
126
+ def list(params = {})
127
+ parsed, options = Orb::Models::CustomerListParams.dump_request(params)
128
+ @client.request(
129
+ method: :get,
130
+ path: "customers",
131
+ query: parsed,
132
+ page: Orb::Page,
133
+ model: Orb::Models::Customer,
134
+ options: options
135
+ )
136
+ end
137
+
138
+ # This performs a deletion of this customer, its subscriptions, and its invoices,
139
+ # provided the customer does not have any issued invoices. Customers with issued
140
+ # invoices cannot be deleted. This operation is irreversible. Note that this is a
141
+ # _soft_ deletion, but the data will be inaccessible through the API and Orb
142
+ # dashboard.
143
+ #
144
+ # For a hard-deletion, please reach out to the Orb team directly.
145
+ #
146
+ # **Note**: This operation happens asynchronously and can be expected to take a
147
+ # few minutes to propagate to related resources. However, querying for the
148
+ # customer on subsequent GET requests while deletion is in process will reflect
149
+ # its deletion with a `deleted: true` property. Once the customer deletion has
150
+ # been fully processed, the customer will not be returned in the API.
151
+ #
152
+ # On successful processing, this returns an empty dictionary (`{}`) in the API.
153
+ #
154
+ # @overload delete(customer_id, request_options: {})
155
+ #
156
+ # @param customer_id [String]
157
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
158
+ #
159
+ # @return [nil]
160
+ #
161
+ # @see Orb::Models::CustomerDeleteParams
162
+ def delete(customer_id, params = {})
163
+ @client.request(
164
+ method: :delete,
165
+ path: ["customers/%1$s", customer_id],
166
+ model: NilClass,
167
+ options: params[:request_options]
168
+ )
169
+ end
170
+
171
+ # This endpoint is used to fetch customer details given an identifier. If the
172
+ # `Customer` is in the process of being deleted, only the properties `id` and
173
+ # `deleted: true` will be returned.
174
+ #
175
+ # See the [Customer resource](/core-concepts#customer) for a full discussion of
176
+ # the Customer model.
177
+ #
178
+ # @overload fetch(customer_id, request_options: {})
179
+ #
180
+ # @param customer_id [String]
181
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
182
+ #
183
+ # @return [Orb::Models::Customer]
184
+ #
185
+ # @see Orb::Models::CustomerFetchParams
186
+ def fetch(customer_id, params = {})
187
+ @client.request(
188
+ method: :get,
189
+ path: ["customers/%1$s", customer_id],
190
+ model: Orb::Models::Customer,
191
+ options: params[:request_options]
192
+ )
193
+ end
194
+
195
+ # This endpoint is used to fetch customer details given an `external_customer_id`
196
+ # (see [Customer ID Aliases](/events-and-metrics/customer-aliases)).
197
+ #
198
+ # Note that the resource and semantics of this endpoint exactly mirror
199
+ # [Get Customer](fetch-customer).
200
+ #
201
+ # @overload fetch_by_external_id(external_customer_id, request_options: {})
202
+ #
203
+ # @param external_customer_id [String]
204
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
205
+ #
206
+ # @return [Orb::Models::Customer]
207
+ #
208
+ # @see Orb::Models::CustomerFetchByExternalIDParams
209
+ def fetch_by_external_id(external_customer_id, params = {})
210
+ @client.request(
211
+ method: :get,
212
+ path: ["customers/external_customer_id/%1$s", external_customer_id],
213
+ model: Orb::Models::Customer,
214
+ options: params[:request_options]
215
+ )
216
+ end
217
+
218
+ # Sync Orb's payment methods for the customer with their gateway.
219
+ #
220
+ # This method can be called before taking an action that may cause the customer to
221
+ # be charged, ensuring that the most up-to-date payment method is charged.
222
+ #
223
+ # **Note**: This functionality is currently only available for Stripe.
224
+ #
225
+ # @overload sync_payment_methods_from_gateway(external_customer_id, request_options: {})
226
+ #
227
+ # @param external_customer_id [String]
228
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
229
+ #
230
+ # @return [nil]
231
+ #
232
+ # @see Orb::Models::CustomerSyncPaymentMethodsFromGatewayParams
233
+ def sync_payment_methods_from_gateway(external_customer_id, params = {})
234
+ @client.request(
235
+ method: :post,
236
+ path: [
237
+ "customers/external_customer_id/%1$s/sync_payment_methods_from_gateway",
238
+ external_customer_id
239
+ ],
240
+ model: NilClass,
241
+ options: params[:request_options]
242
+ )
243
+ end
244
+
245
+ # Sync Orb's payment methods for the customer with their gateway.
246
+ #
247
+ # This method can be called before taking an action that may cause the customer to
248
+ # be charged, ensuring that the most up-to-date payment method is charged.
249
+ #
250
+ # **Note**: This functionality is currently only available for Stripe.
251
+ #
252
+ # @overload sync_payment_methods_from_gateway_by_external_customer_id(customer_id, request_options: {})
253
+ #
254
+ # @param customer_id [String]
255
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
256
+ #
257
+ # @return [nil]
258
+ #
259
+ # @see Orb::Models::CustomerSyncPaymentMethodsFromGatewayByExternalCustomerIDParams
260
+ def sync_payment_methods_from_gateway_by_external_customer_id(customer_id, params = {})
261
+ @client.request(
262
+ method: :post,
263
+ path: ["customers/%1$s/sync_payment_methods_from_gateway", customer_id],
264
+ model: NilClass,
265
+ options: params[:request_options]
266
+ )
267
+ end
268
+
269
+ # This endpoint is used to update customer details given an `external_customer_id`
270
+ # (see [Customer ID Aliases](/events-and-metrics/customer-aliases)). Note that the
271
+ # resource and semantics of this endpoint exactly mirror
272
+ # [Update Customer](update-customer).
273
+ #
274
+ # @overload update_by_external_id(id, accounting_sync_configuration: nil, additional_emails: nil, auto_collection: nil, billing_address: nil, currency: nil, email: nil, email_delivery: nil, external_customer_id: nil, hierarchy: nil, metadata: nil, name: nil, payment_provider: nil, payment_provider_id: nil, reporting_configuration: nil, shipping_address: nil, tax_configuration: nil, tax_id: nil, request_options: {})
275
+ #
276
+ # @param id [String]
277
+ # @param accounting_sync_configuration [Orb::Models::CustomerUpdateByExternalIDParams::AccountingSyncConfiguration, nil]
278
+ # @param additional_emails [Array<String>, nil]
279
+ # @param auto_collection [Boolean, nil]
280
+ # @param billing_address [Orb::Models::CustomerUpdateByExternalIDParams::BillingAddress, nil]
281
+ # @param currency [String, nil]
282
+ # @param email [String, nil]
283
+ # @param email_delivery [Boolean, nil]
284
+ # @param external_customer_id [String, nil]
285
+ # @param hierarchy [Orb::Models::CustomerUpdateByExternalIDParams::Hierarchy, nil]
286
+ # @param metadata [Hash{Symbol=>String, nil}, nil]
287
+ # @param name [String, nil]
288
+ # @param payment_provider [Symbol, Orb::Models::CustomerUpdateByExternalIDParams::PaymentProvider, nil]
289
+ # @param payment_provider_id [String, nil]
290
+ # @param reporting_configuration [Orb::Models::CustomerUpdateByExternalIDParams::ReportingConfiguration, nil]
291
+ # @param shipping_address [Orb::Models::CustomerUpdateByExternalIDParams::ShippingAddress, nil]
292
+ # @param tax_configuration [Orb::Models::CustomerUpdateByExternalIDParams::TaxConfiguration::NewAvalaraTaxConfiguration, Orb::Models::CustomerUpdateByExternalIDParams::TaxConfiguration::NewTaxJarConfiguration, nil]
293
+ # @param tax_id [Orb::Models::CustomerUpdateByExternalIDParams::TaxID, nil]
294
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
295
+ #
296
+ # @return [Orb::Models::Customer]
297
+ #
298
+ # @see Orb::Models::CustomerUpdateByExternalIDParams
299
+ def update_by_external_id(id, params = {})
300
+ parsed, options = Orb::Models::CustomerUpdateByExternalIDParams.dump_request(params)
301
+ @client.request(
302
+ method: :put,
303
+ path: ["customers/external_customer_id/%1$s", id],
304
+ body: parsed,
305
+ model: Orb::Models::Customer,
306
+ options: options
307
+ )
308
+ end
309
+
310
+ # @api private
311
+ #
312
+ # @param client [Orb::Client]
313
+ def initialize(client:)
314
+ @client = client
315
+ @costs = Orb::Resources::Customers::Costs.new(client: client)
316
+ @credits = Orb::Resources::Customers::Credits.new(client: client)
317
+ @balance_transactions = Orb::Resources::Customers::BalanceTransactions.new(client: client)
318
+ end
319
+ end
320
+ end
321
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Orb
4
+ module Resources
5
+ class DimensionalPriceGroups
6
+ class ExternalDimensionalPriceGroupID
7
+ # Fetch dimensional price group by external ID
8
+ #
9
+ # @overload retrieve(external_dimensional_price_group_id, request_options: {})
10
+ #
11
+ # @param external_dimensional_price_group_id [String]
12
+ # @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
13
+ #
14
+ # @return [Orb::Models::DimensionalPriceGroup]
15
+ #
16
+ # @see Orb::Models::DimensionalPriceGroups::ExternalDimensionalPriceGroupIDRetrieveParams
17
+ def retrieve(external_dimensional_price_group_id, params = {})
18
+ @client.request(
19
+ method: :get,
20
+ path: [
21
+ "dimensional_price_groups/external_dimensional_price_group_id/%1$s",
22
+ external_dimensional_price_group_id
23
+ ],
24
+ model: Orb::Models::DimensionalPriceGroup,
25
+ options: params[:request_options]
26
+ )
27
+ end
28
+
29
+ # @api private
30
+ #
31
+ # @param client [Orb::Client]
32
+ def initialize(client:)
33
+ @client = client
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end