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,1164 @@
1
+ # typed: strong
2
+
3
+ module Orb
4
+ module Models
5
+ class InvoiceLineItemCreateResponse < Orb::BaseModel
6
+ # A unique ID for this line item.
7
+ sig { returns(String) }
8
+ attr_accessor :id
9
+
10
+ # The line amount after any adjustments and before overage conversion, credits and
11
+ # partial invoicing.
12
+ sig { returns(String) }
13
+ attr_accessor :adjusted_subtotal
14
+
15
+ # All adjustments applied to the line item in the order they were applied based on
16
+ # invoice calculations (ie. usage discounts -> amount discounts -> percentage
17
+ # discounts -> minimums -> maximums).
18
+ sig do
19
+ returns(
20
+ T::Array[
21
+ T.any(
22
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryUsageDiscountAdjustment,
23
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryAmountDiscountAdjustment,
24
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryPercentageDiscountAdjustment,
25
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryMinimumAdjustment,
26
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryMaximumAdjustment
27
+ )
28
+ ]
29
+ )
30
+ end
31
+ attr_accessor :adjustments
32
+
33
+ # The final amount for a line item after all adjustments and pre paid credits have
34
+ # been applied.
35
+ sig { returns(String) }
36
+ attr_accessor :amount
37
+
38
+ # The number of prepaid credits applied.
39
+ sig { returns(String) }
40
+ attr_accessor :credits_applied
41
+
42
+ sig do
43
+ returns(
44
+ T.nilable(
45
+ T.any(
46
+ Orb::Models::PercentageDiscount,
47
+ Orb::Models::TrialDiscount,
48
+ Orb::Models::UsageDiscount,
49
+ Orb::Models::AmountDiscount
50
+ )
51
+ )
52
+ )
53
+ end
54
+ attr_accessor :discount
55
+
56
+ # The end date of the range of time applied for this line item's price.
57
+ sig { returns(Time) }
58
+ attr_accessor :end_date
59
+
60
+ # An additional filter that was used to calculate the usage for this line item.
61
+ sig { returns(T.nilable(String)) }
62
+ attr_accessor :filter
63
+
64
+ # [DEPRECATED] For configured prices that are split by a grouping key, this will
65
+ # be populated with the key and a value. The `amount` and `subtotal` will be the
66
+ # values for this particular grouping.
67
+ sig { returns(T.nilable(String)) }
68
+ attr_accessor :grouping
69
+
70
+ # This field is deprecated in favor of `adjustments`.
71
+ sig { returns(T.nilable(Orb::Models::InvoiceLineItemCreateResponse::Maximum)) }
72
+ attr_reader :maximum
73
+
74
+ sig do
75
+ params(maximum: T.nilable(T.any(Orb::Models::InvoiceLineItemCreateResponse::Maximum, Orb::Util::AnyHash)))
76
+ .void
77
+ end
78
+ attr_writer :maximum
79
+
80
+ # This field is deprecated in favor of `adjustments`.
81
+ sig { returns(T.nilable(String)) }
82
+ attr_accessor :maximum_amount
83
+
84
+ # This field is deprecated in favor of `adjustments`.
85
+ sig { returns(T.nilable(Orb::Models::InvoiceLineItemCreateResponse::Minimum)) }
86
+ attr_reader :minimum
87
+
88
+ sig do
89
+ params(minimum: T.nilable(T.any(Orb::Models::InvoiceLineItemCreateResponse::Minimum, Orb::Util::AnyHash)))
90
+ .void
91
+ end
92
+ attr_writer :minimum
93
+
94
+ # This field is deprecated in favor of `adjustments`.
95
+ sig { returns(T.nilable(String)) }
96
+ attr_accessor :minimum_amount
97
+
98
+ # The name of the price associated with this line item.
99
+ sig { returns(String) }
100
+ attr_accessor :name
101
+
102
+ # Any amount applied from a partial invoice
103
+ sig { returns(String) }
104
+ attr_accessor :partially_invoiced_amount
105
+
106
+ # The Price resource represents a price that can be billed on a subscription,
107
+ # resulting in a charge on an invoice in the form of an invoice line item. Prices
108
+ # take a quantity and determine an amount to bill.
109
+ #
110
+ # Orb supports a few different pricing models out of the box. Each of these models
111
+ # is serialized differently in a given Price object. The model_type field
112
+ # determines the key for the configuration object that is present.
113
+ #
114
+ # For more on the types of prices, see
115
+ # [the core concepts documentation](/core-concepts#plan-and-price)
116
+ sig do
117
+ returns(
118
+ T.nilable(
119
+ T.any(
120
+ Orb::Models::Price::UnitPrice,
121
+ Orb::Models::Price::PackagePrice,
122
+ Orb::Models::Price::MatrixPrice,
123
+ Orb::Models::Price::TieredPrice,
124
+ Orb::Models::Price::TieredBpsPrice,
125
+ Orb::Models::Price::BpsPrice,
126
+ Orb::Models::Price::BulkBpsPrice,
127
+ Orb::Models::Price::BulkPrice,
128
+ Orb::Models::Price::ThresholdTotalAmountPrice,
129
+ Orb::Models::Price::TieredPackagePrice,
130
+ Orb::Models::Price::GroupedTieredPrice,
131
+ Orb::Models::Price::TieredWithMinimumPrice,
132
+ Orb::Models::Price::TieredPackageWithMinimumPrice,
133
+ Orb::Models::Price::PackageWithAllocationPrice,
134
+ Orb::Models::Price::UnitWithPercentPrice,
135
+ Orb::Models::Price::MatrixWithAllocationPrice,
136
+ Orb::Models::Price::TieredWithProrationPrice,
137
+ Orb::Models::Price::UnitWithProrationPrice,
138
+ Orb::Models::Price::GroupedAllocationPrice,
139
+ Orb::Models::Price::GroupedWithProratedMinimumPrice,
140
+ Orb::Models::Price::GroupedWithMeteredMinimumPrice,
141
+ Orb::Models::Price::MatrixWithDisplayNamePrice,
142
+ Orb::Models::Price::BulkWithProrationPrice,
143
+ Orb::Models::Price::GroupedTieredPackagePrice,
144
+ Orb::Models::Price::MaxGroupTieredPackagePrice,
145
+ Orb::Models::Price::ScalableMatrixWithUnitPricingPrice,
146
+ Orb::Models::Price::ScalableMatrixWithTieredPricingPrice,
147
+ Orb::Models::Price::CumulativeGroupedBulkPrice
148
+ )
149
+ )
150
+ )
151
+ end
152
+ attr_accessor :price
153
+
154
+ # Either the fixed fee quantity or the usage during the service period.
155
+ sig { returns(Float) }
156
+ attr_accessor :quantity
157
+
158
+ # The start date of the range of time applied for this line item's price.
159
+ sig { returns(Time) }
160
+ attr_accessor :start_date
161
+
162
+ # For complex pricing structures, the line item can be broken down further in
163
+ # `sub_line_items`.
164
+ sig do
165
+ returns(
166
+ T::Array[
167
+ T.any(
168
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem,
169
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem,
170
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::OtherSubLineItem
171
+ )
172
+ ]
173
+ )
174
+ end
175
+ attr_accessor :sub_line_items
176
+
177
+ # The line amount before before any adjustments.
178
+ sig { returns(String) }
179
+ attr_accessor :subtotal
180
+
181
+ # An array of tax rates and their incurred tax amounts. Empty if no tax
182
+ # integration is configured.
183
+ sig { returns(T::Array[Orb::Models::InvoiceLineItemCreateResponse::TaxAmount]) }
184
+ attr_accessor :tax_amounts
185
+
186
+ # A list of customer ids that were used to calculate the usage for this line item.
187
+ sig { returns(T.nilable(T::Array[String])) }
188
+ attr_accessor :usage_customer_ids
189
+
190
+ sig do
191
+ params(
192
+ id: String,
193
+ adjusted_subtotal: String,
194
+ adjustments: T::Array[
195
+ T.any(
196
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryUsageDiscountAdjustment,
197
+ Orb::Util::AnyHash,
198
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryAmountDiscountAdjustment,
199
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryPercentageDiscountAdjustment,
200
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryMinimumAdjustment,
201
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryMaximumAdjustment
202
+ )
203
+ ],
204
+ amount: String,
205
+ credits_applied: String,
206
+ discount: T.nilable(
207
+ T.any(
208
+ Orb::Models::PercentageDiscount,
209
+ Orb::Util::AnyHash,
210
+ Orb::Models::TrialDiscount,
211
+ Orb::Models::UsageDiscount,
212
+ Orb::Models::AmountDiscount
213
+ )
214
+ ),
215
+ end_date: Time,
216
+ filter: T.nilable(String),
217
+ grouping: T.nilable(String),
218
+ maximum: T.nilable(T.any(Orb::Models::InvoiceLineItemCreateResponse::Maximum, Orb::Util::AnyHash)),
219
+ maximum_amount: T.nilable(String),
220
+ minimum: T.nilable(T.any(Orb::Models::InvoiceLineItemCreateResponse::Minimum, Orb::Util::AnyHash)),
221
+ minimum_amount: T.nilable(String),
222
+ name: String,
223
+ partially_invoiced_amount: String,
224
+ price: T.nilable(
225
+ T.any(
226
+ Orb::Models::Price::UnitPrice,
227
+ Orb::Util::AnyHash,
228
+ Orb::Models::Price::PackagePrice,
229
+ Orb::Models::Price::MatrixPrice,
230
+ Orb::Models::Price::TieredPrice,
231
+ Orb::Models::Price::TieredBpsPrice,
232
+ Orb::Models::Price::BpsPrice,
233
+ Orb::Models::Price::BulkBpsPrice,
234
+ Orb::Models::Price::BulkPrice,
235
+ Orb::Models::Price::ThresholdTotalAmountPrice,
236
+ Orb::Models::Price::TieredPackagePrice,
237
+ Orb::Models::Price::GroupedTieredPrice,
238
+ Orb::Models::Price::TieredWithMinimumPrice,
239
+ Orb::Models::Price::TieredPackageWithMinimumPrice,
240
+ Orb::Models::Price::PackageWithAllocationPrice,
241
+ Orb::Models::Price::UnitWithPercentPrice,
242
+ Orb::Models::Price::MatrixWithAllocationPrice,
243
+ Orb::Models::Price::TieredWithProrationPrice,
244
+ Orb::Models::Price::UnitWithProrationPrice,
245
+ Orb::Models::Price::GroupedAllocationPrice,
246
+ Orb::Models::Price::GroupedWithProratedMinimumPrice,
247
+ Orb::Models::Price::GroupedWithMeteredMinimumPrice,
248
+ Orb::Models::Price::MatrixWithDisplayNamePrice,
249
+ Orb::Models::Price::BulkWithProrationPrice,
250
+ Orb::Models::Price::GroupedTieredPackagePrice,
251
+ Orb::Models::Price::MaxGroupTieredPackagePrice,
252
+ Orb::Models::Price::ScalableMatrixWithUnitPricingPrice,
253
+ Orb::Models::Price::ScalableMatrixWithTieredPricingPrice,
254
+ Orb::Models::Price::CumulativeGroupedBulkPrice
255
+ )
256
+ ),
257
+ quantity: Float,
258
+ start_date: Time,
259
+ sub_line_items: T::Array[
260
+ T.any(
261
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem,
262
+ Orb::Util::AnyHash,
263
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem,
264
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::OtherSubLineItem
265
+ )
266
+ ],
267
+ subtotal: String,
268
+ tax_amounts: T::Array[T.any(Orb::Models::InvoiceLineItemCreateResponse::TaxAmount, Orb::Util::AnyHash)],
269
+ usage_customer_ids: T.nilable(T::Array[String])
270
+ )
271
+ .returns(T.attached_class)
272
+ end
273
+ def self.new(
274
+ id:,
275
+ adjusted_subtotal:,
276
+ adjustments:,
277
+ amount:,
278
+ credits_applied:,
279
+ discount:,
280
+ end_date:,
281
+ filter:,
282
+ grouping:,
283
+ maximum:,
284
+ maximum_amount:,
285
+ minimum:,
286
+ minimum_amount:,
287
+ name:,
288
+ partially_invoiced_amount:,
289
+ price:,
290
+ quantity:,
291
+ start_date:,
292
+ sub_line_items:,
293
+ subtotal:,
294
+ tax_amounts:,
295
+ usage_customer_ids:
296
+ )
297
+ end
298
+
299
+ sig do
300
+ override
301
+ .returns(
302
+ {
303
+ id: String,
304
+ adjusted_subtotal: String,
305
+ adjustments: T::Array[
306
+ T.any(
307
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryUsageDiscountAdjustment,
308
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryAmountDiscountAdjustment,
309
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryPercentageDiscountAdjustment,
310
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryMinimumAdjustment,
311
+ Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryMaximumAdjustment
312
+ )
313
+ ],
314
+ amount: String,
315
+ credits_applied: String,
316
+ discount: T.nilable(
317
+ T.any(
318
+ Orb::Models::PercentageDiscount,
319
+ Orb::Models::TrialDiscount,
320
+ Orb::Models::UsageDiscount,
321
+ Orb::Models::AmountDiscount
322
+ )
323
+ ),
324
+ end_date: Time,
325
+ filter: T.nilable(String),
326
+ grouping: T.nilable(String),
327
+ maximum: T.nilable(Orb::Models::InvoiceLineItemCreateResponse::Maximum),
328
+ maximum_amount: T.nilable(String),
329
+ minimum: T.nilable(Orb::Models::InvoiceLineItemCreateResponse::Minimum),
330
+ minimum_amount: T.nilable(String),
331
+ name: String,
332
+ partially_invoiced_amount: String,
333
+ price: T.nilable(
334
+ T.any(
335
+ Orb::Models::Price::UnitPrice,
336
+ Orb::Models::Price::PackagePrice,
337
+ Orb::Models::Price::MatrixPrice,
338
+ Orb::Models::Price::TieredPrice,
339
+ Orb::Models::Price::TieredBpsPrice,
340
+ Orb::Models::Price::BpsPrice,
341
+ Orb::Models::Price::BulkBpsPrice,
342
+ Orb::Models::Price::BulkPrice,
343
+ Orb::Models::Price::ThresholdTotalAmountPrice,
344
+ Orb::Models::Price::TieredPackagePrice,
345
+ Orb::Models::Price::GroupedTieredPrice,
346
+ Orb::Models::Price::TieredWithMinimumPrice,
347
+ Orb::Models::Price::TieredPackageWithMinimumPrice,
348
+ Orb::Models::Price::PackageWithAllocationPrice,
349
+ Orb::Models::Price::UnitWithPercentPrice,
350
+ Orb::Models::Price::MatrixWithAllocationPrice,
351
+ Orb::Models::Price::TieredWithProrationPrice,
352
+ Orb::Models::Price::UnitWithProrationPrice,
353
+ Orb::Models::Price::GroupedAllocationPrice,
354
+ Orb::Models::Price::GroupedWithProratedMinimumPrice,
355
+ Orb::Models::Price::GroupedWithMeteredMinimumPrice,
356
+ Orb::Models::Price::MatrixWithDisplayNamePrice,
357
+ Orb::Models::Price::BulkWithProrationPrice,
358
+ Orb::Models::Price::GroupedTieredPackagePrice,
359
+ Orb::Models::Price::MaxGroupTieredPackagePrice,
360
+ Orb::Models::Price::ScalableMatrixWithUnitPricingPrice,
361
+ Orb::Models::Price::ScalableMatrixWithTieredPricingPrice,
362
+ Orb::Models::Price::CumulativeGroupedBulkPrice
363
+ )
364
+ ),
365
+ quantity: Float,
366
+ start_date: Time,
367
+ sub_line_items: T::Array[
368
+ T.any(
369
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem,
370
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem,
371
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::OtherSubLineItem
372
+ )
373
+ ],
374
+ subtotal: String,
375
+ tax_amounts: T::Array[Orb::Models::InvoiceLineItemCreateResponse::TaxAmount],
376
+ usage_customer_ids: T.nilable(T::Array[String])
377
+ }
378
+ )
379
+ end
380
+ def to_hash
381
+ end
382
+
383
+ module Adjustment
384
+ extend Orb::Union
385
+
386
+ class MonetaryUsageDiscountAdjustment < Orb::BaseModel
387
+ sig { returns(String) }
388
+ attr_accessor :id
389
+
390
+ sig { returns(Symbol) }
391
+ attr_accessor :adjustment_type
392
+
393
+ # The value applied by an adjustment.
394
+ sig { returns(String) }
395
+ attr_accessor :amount
396
+
397
+ # The price IDs that this adjustment applies to.
398
+ sig { returns(T::Array[String]) }
399
+ attr_accessor :applies_to_price_ids
400
+
401
+ # True for adjustments that apply to an entire invocice, false for adjustments
402
+ # that apply to only one price.
403
+ sig { returns(T::Boolean) }
404
+ attr_accessor :is_invoice_level
405
+
406
+ # The reason for the adjustment.
407
+ sig { returns(T.nilable(String)) }
408
+ attr_accessor :reason
409
+
410
+ # The number of usage units by which to discount the price this adjustment applies
411
+ # to in a given billing period.
412
+ sig { returns(Float) }
413
+ attr_accessor :usage_discount
414
+
415
+ sig do
416
+ params(
417
+ id: String,
418
+ amount: String,
419
+ applies_to_price_ids: T::Array[String],
420
+ is_invoice_level: T::Boolean,
421
+ reason: T.nilable(String),
422
+ usage_discount: Float,
423
+ adjustment_type: Symbol
424
+ )
425
+ .returns(T.attached_class)
426
+ end
427
+ def self.new(
428
+ id:,
429
+ amount:,
430
+ applies_to_price_ids:,
431
+ is_invoice_level:,
432
+ reason:,
433
+ usage_discount:,
434
+ adjustment_type: :usage_discount
435
+ )
436
+ end
437
+
438
+ sig do
439
+ override
440
+ .returns(
441
+ {
442
+ id: String,
443
+ adjustment_type: Symbol,
444
+ amount: String,
445
+ applies_to_price_ids: T::Array[String],
446
+ is_invoice_level: T::Boolean,
447
+ reason: T.nilable(String),
448
+ usage_discount: Float
449
+ }
450
+ )
451
+ end
452
+ def to_hash
453
+ end
454
+ end
455
+
456
+ class MonetaryAmountDiscountAdjustment < Orb::BaseModel
457
+ sig { returns(String) }
458
+ attr_accessor :id
459
+
460
+ sig { returns(Symbol) }
461
+ attr_accessor :adjustment_type
462
+
463
+ # The value applied by an adjustment.
464
+ sig { returns(String) }
465
+ attr_accessor :amount
466
+
467
+ # The amount by which to discount the prices this adjustment applies to in a given
468
+ # billing period.
469
+ sig { returns(String) }
470
+ attr_accessor :amount_discount
471
+
472
+ # The price IDs that this adjustment applies to.
473
+ sig { returns(T::Array[String]) }
474
+ attr_accessor :applies_to_price_ids
475
+
476
+ # True for adjustments that apply to an entire invocice, false for adjustments
477
+ # that apply to only one price.
478
+ sig { returns(T::Boolean) }
479
+ attr_accessor :is_invoice_level
480
+
481
+ # The reason for the adjustment.
482
+ sig { returns(T.nilable(String)) }
483
+ attr_accessor :reason
484
+
485
+ sig do
486
+ params(
487
+ id: String,
488
+ amount: String,
489
+ amount_discount: String,
490
+ applies_to_price_ids: T::Array[String],
491
+ is_invoice_level: T::Boolean,
492
+ reason: T.nilable(String),
493
+ adjustment_type: Symbol
494
+ )
495
+ .returns(T.attached_class)
496
+ end
497
+ def self.new(
498
+ id:,
499
+ amount:,
500
+ amount_discount:,
501
+ applies_to_price_ids:,
502
+ is_invoice_level:,
503
+ reason:,
504
+ adjustment_type: :amount_discount
505
+ )
506
+ end
507
+
508
+ sig do
509
+ override
510
+ .returns(
511
+ {
512
+ id: String,
513
+ adjustment_type: Symbol,
514
+ amount: String,
515
+ amount_discount: String,
516
+ applies_to_price_ids: T::Array[String],
517
+ is_invoice_level: T::Boolean,
518
+ reason: T.nilable(String)
519
+ }
520
+ )
521
+ end
522
+ def to_hash
523
+ end
524
+ end
525
+
526
+ class MonetaryPercentageDiscountAdjustment < Orb::BaseModel
527
+ sig { returns(String) }
528
+ attr_accessor :id
529
+
530
+ sig { returns(Symbol) }
531
+ attr_accessor :adjustment_type
532
+
533
+ # The value applied by an adjustment.
534
+ sig { returns(String) }
535
+ attr_accessor :amount
536
+
537
+ # The price IDs that this adjustment applies to.
538
+ sig { returns(T::Array[String]) }
539
+ attr_accessor :applies_to_price_ids
540
+
541
+ # True for adjustments that apply to an entire invocice, false for adjustments
542
+ # that apply to only one price.
543
+ sig { returns(T::Boolean) }
544
+ attr_accessor :is_invoice_level
545
+
546
+ # The percentage (as a value between 0 and 1) by which to discount the price
547
+ # intervals this adjustment applies to in a given billing period.
548
+ sig { returns(Float) }
549
+ attr_accessor :percentage_discount
550
+
551
+ # The reason for the adjustment.
552
+ sig { returns(T.nilable(String)) }
553
+ attr_accessor :reason
554
+
555
+ sig do
556
+ params(
557
+ id: String,
558
+ amount: String,
559
+ applies_to_price_ids: T::Array[String],
560
+ is_invoice_level: T::Boolean,
561
+ percentage_discount: Float,
562
+ reason: T.nilable(String),
563
+ adjustment_type: Symbol
564
+ )
565
+ .returns(T.attached_class)
566
+ end
567
+ def self.new(
568
+ id:,
569
+ amount:,
570
+ applies_to_price_ids:,
571
+ is_invoice_level:,
572
+ percentage_discount:,
573
+ reason:,
574
+ adjustment_type: :percentage_discount
575
+ )
576
+ end
577
+
578
+ sig do
579
+ override
580
+ .returns(
581
+ {
582
+ id: String,
583
+ adjustment_type: Symbol,
584
+ amount: String,
585
+ applies_to_price_ids: T::Array[String],
586
+ is_invoice_level: T::Boolean,
587
+ percentage_discount: Float,
588
+ reason: T.nilable(String)
589
+ }
590
+ )
591
+ end
592
+ def to_hash
593
+ end
594
+ end
595
+
596
+ class MonetaryMinimumAdjustment < Orb::BaseModel
597
+ sig { returns(String) }
598
+ attr_accessor :id
599
+
600
+ sig { returns(Symbol) }
601
+ attr_accessor :adjustment_type
602
+
603
+ # The value applied by an adjustment.
604
+ sig { returns(String) }
605
+ attr_accessor :amount
606
+
607
+ # The price IDs that this adjustment applies to.
608
+ sig { returns(T::Array[String]) }
609
+ attr_accessor :applies_to_price_ids
610
+
611
+ # True for adjustments that apply to an entire invocice, false for adjustments
612
+ # that apply to only one price.
613
+ sig { returns(T::Boolean) }
614
+ attr_accessor :is_invoice_level
615
+
616
+ # The item ID that revenue from this minimum will be attributed to.
617
+ sig { returns(String) }
618
+ attr_accessor :item_id
619
+
620
+ # The minimum amount to charge in a given billing period for the prices this
621
+ # adjustment applies to.
622
+ sig { returns(String) }
623
+ attr_accessor :minimum_amount
624
+
625
+ # The reason for the adjustment.
626
+ sig { returns(T.nilable(String)) }
627
+ attr_accessor :reason
628
+
629
+ sig do
630
+ params(
631
+ id: String,
632
+ amount: String,
633
+ applies_to_price_ids: T::Array[String],
634
+ is_invoice_level: T::Boolean,
635
+ item_id: String,
636
+ minimum_amount: String,
637
+ reason: T.nilable(String),
638
+ adjustment_type: Symbol
639
+ )
640
+ .returns(T.attached_class)
641
+ end
642
+ def self.new(
643
+ id:,
644
+ amount:,
645
+ applies_to_price_ids:,
646
+ is_invoice_level:,
647
+ item_id:,
648
+ minimum_amount:,
649
+ reason:,
650
+ adjustment_type: :minimum
651
+ )
652
+ end
653
+
654
+ sig do
655
+ override
656
+ .returns(
657
+ {
658
+ id: String,
659
+ adjustment_type: Symbol,
660
+ amount: String,
661
+ applies_to_price_ids: T::Array[String],
662
+ is_invoice_level: T::Boolean,
663
+ item_id: String,
664
+ minimum_amount: String,
665
+ reason: T.nilable(String)
666
+ }
667
+ )
668
+ end
669
+ def to_hash
670
+ end
671
+ end
672
+
673
+ class MonetaryMaximumAdjustment < Orb::BaseModel
674
+ sig { returns(String) }
675
+ attr_accessor :id
676
+
677
+ sig { returns(Symbol) }
678
+ attr_accessor :adjustment_type
679
+
680
+ # The value applied by an adjustment.
681
+ sig { returns(String) }
682
+ attr_accessor :amount
683
+
684
+ # The price IDs that this adjustment applies to.
685
+ sig { returns(T::Array[String]) }
686
+ attr_accessor :applies_to_price_ids
687
+
688
+ # True for adjustments that apply to an entire invocice, false for adjustments
689
+ # that apply to only one price.
690
+ sig { returns(T::Boolean) }
691
+ attr_accessor :is_invoice_level
692
+
693
+ # The maximum amount to charge in a given billing period for the prices this
694
+ # adjustment applies to.
695
+ sig { returns(String) }
696
+ attr_accessor :maximum_amount
697
+
698
+ # The reason for the adjustment.
699
+ sig { returns(T.nilable(String)) }
700
+ attr_accessor :reason
701
+
702
+ sig do
703
+ params(
704
+ id: String,
705
+ amount: String,
706
+ applies_to_price_ids: T::Array[String],
707
+ is_invoice_level: T::Boolean,
708
+ maximum_amount: String,
709
+ reason: T.nilable(String),
710
+ adjustment_type: Symbol
711
+ )
712
+ .returns(T.attached_class)
713
+ end
714
+ def self.new(
715
+ id:,
716
+ amount:,
717
+ applies_to_price_ids:,
718
+ is_invoice_level:,
719
+ maximum_amount:,
720
+ reason:,
721
+ adjustment_type: :maximum
722
+ )
723
+ end
724
+
725
+ sig do
726
+ override
727
+ .returns(
728
+ {
729
+ id: String,
730
+ adjustment_type: Symbol,
731
+ amount: String,
732
+ applies_to_price_ids: T::Array[String],
733
+ is_invoice_level: T::Boolean,
734
+ maximum_amount: String,
735
+ reason: T.nilable(String)
736
+ }
737
+ )
738
+ end
739
+ def to_hash
740
+ end
741
+ end
742
+
743
+ sig do
744
+ override
745
+ .returns(
746
+ [Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryUsageDiscountAdjustment, Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryAmountDiscountAdjustment, Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryPercentageDiscountAdjustment, Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryMinimumAdjustment, Orb::Models::InvoiceLineItemCreateResponse::Adjustment::MonetaryMaximumAdjustment]
747
+ )
748
+ end
749
+ def self.variants
750
+ end
751
+ end
752
+
753
+ class Maximum < Orb::BaseModel
754
+ # List of price_ids that this maximum amount applies to. For plan/plan phase
755
+ # maximums, this can be a subset of prices.
756
+ sig { returns(T::Array[String]) }
757
+ attr_accessor :applies_to_price_ids
758
+
759
+ # Maximum amount applied
760
+ sig { returns(String) }
761
+ attr_accessor :maximum_amount
762
+
763
+ # This field is deprecated in favor of `adjustments`.
764
+ sig do
765
+ params(applies_to_price_ids: T::Array[String], maximum_amount: String).returns(T.attached_class)
766
+ end
767
+ def self.new(applies_to_price_ids:, maximum_amount:)
768
+ end
769
+
770
+ sig { override.returns({applies_to_price_ids: T::Array[String], maximum_amount: String}) }
771
+ def to_hash
772
+ end
773
+ end
774
+
775
+ class Minimum < Orb::BaseModel
776
+ # List of price_ids that this minimum amount applies to. For plan/plan phase
777
+ # minimums, this can be a subset of prices.
778
+ sig { returns(T::Array[String]) }
779
+ attr_accessor :applies_to_price_ids
780
+
781
+ # Minimum amount applied
782
+ sig { returns(String) }
783
+ attr_accessor :minimum_amount
784
+
785
+ # This field is deprecated in favor of `adjustments`.
786
+ sig do
787
+ params(applies_to_price_ids: T::Array[String], minimum_amount: String).returns(T.attached_class)
788
+ end
789
+ def self.new(applies_to_price_ids:, minimum_amount:)
790
+ end
791
+
792
+ sig { override.returns({applies_to_price_ids: T::Array[String], minimum_amount: String}) }
793
+ def to_hash
794
+ end
795
+ end
796
+
797
+ module SubLineItem
798
+ extend Orb::Union
799
+
800
+ class MatrixSubLineItem < Orb::BaseModel
801
+ # The total amount for this sub line item.
802
+ sig { returns(String) }
803
+ attr_accessor :amount
804
+
805
+ sig { returns(T.nilable(Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem::Grouping)) }
806
+ attr_reader :grouping
807
+
808
+ sig do
809
+ params(
810
+ grouping: T.nilable(
811
+ T.any(
812
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem::Grouping,
813
+ Orb::Util::AnyHash
814
+ )
815
+ )
816
+ )
817
+ .void
818
+ end
819
+ attr_writer :grouping
820
+
821
+ sig { returns(Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem::MatrixConfig) }
822
+ attr_reader :matrix_config
823
+
824
+ sig do
825
+ params(
826
+ matrix_config: T.any(
827
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem::MatrixConfig,
828
+ Orb::Util::AnyHash
829
+ )
830
+ )
831
+ .void
832
+ end
833
+ attr_writer :matrix_config
834
+
835
+ sig { returns(String) }
836
+ attr_accessor :name
837
+
838
+ sig { returns(Float) }
839
+ attr_accessor :quantity
840
+
841
+ sig { returns(Symbol) }
842
+ attr_accessor :type
843
+
844
+ sig do
845
+ params(
846
+ amount: String,
847
+ grouping: T.nilable(
848
+ T.any(
849
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem::Grouping,
850
+ Orb::Util::AnyHash
851
+ )
852
+ ),
853
+ matrix_config: T.any(
854
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem::MatrixConfig,
855
+ Orb::Util::AnyHash
856
+ ),
857
+ name: String,
858
+ quantity: Float,
859
+ type: Symbol
860
+ )
861
+ .returns(T.attached_class)
862
+ end
863
+ def self.new(amount:, grouping:, matrix_config:, name:, quantity:, type: :matrix)
864
+ end
865
+
866
+ sig do
867
+ override
868
+ .returns(
869
+ {
870
+ amount: String,
871
+ grouping: T.nilable(Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem::Grouping),
872
+ matrix_config: Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem::MatrixConfig,
873
+ name: String,
874
+ quantity: Float,
875
+ type: Symbol
876
+ }
877
+ )
878
+ end
879
+ def to_hash
880
+ end
881
+
882
+ class Grouping < Orb::BaseModel
883
+ sig { returns(String) }
884
+ attr_accessor :key
885
+
886
+ # No value indicates the default group
887
+ sig { returns(T.nilable(String)) }
888
+ attr_accessor :value
889
+
890
+ sig { params(key: String, value: T.nilable(String)).returns(T.attached_class) }
891
+ def self.new(key:, value:)
892
+ end
893
+
894
+ sig { override.returns({key: String, value: T.nilable(String)}) }
895
+ def to_hash
896
+ end
897
+ end
898
+
899
+ class MatrixConfig < Orb::BaseModel
900
+ # The ordered dimension values for this line item.
901
+ sig { returns(T::Array[T.nilable(String)]) }
902
+ attr_accessor :dimension_values
903
+
904
+ sig { params(dimension_values: T::Array[T.nilable(String)]).returns(T.attached_class) }
905
+ def self.new(dimension_values:)
906
+ end
907
+
908
+ sig { override.returns({dimension_values: T::Array[T.nilable(String)]}) }
909
+ def to_hash
910
+ end
911
+ end
912
+ end
913
+
914
+ class TierSubLineItem < Orb::BaseModel
915
+ # The total amount for this sub line item.
916
+ sig { returns(String) }
917
+ attr_accessor :amount
918
+
919
+ sig { returns(T.nilable(Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem::Grouping)) }
920
+ attr_reader :grouping
921
+
922
+ sig do
923
+ params(
924
+ grouping: T.nilable(
925
+ T.any(
926
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem::Grouping,
927
+ Orb::Util::AnyHash
928
+ )
929
+ )
930
+ )
931
+ .void
932
+ end
933
+ attr_writer :grouping
934
+
935
+ sig { returns(String) }
936
+ attr_accessor :name
937
+
938
+ sig { returns(Float) }
939
+ attr_accessor :quantity
940
+
941
+ sig { returns(Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem::TierConfig) }
942
+ attr_reader :tier_config
943
+
944
+ sig do
945
+ params(
946
+ tier_config: T.any(
947
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem::TierConfig,
948
+ Orb::Util::AnyHash
949
+ )
950
+ )
951
+ .void
952
+ end
953
+ attr_writer :tier_config
954
+
955
+ sig { returns(Symbol) }
956
+ attr_accessor :type
957
+
958
+ sig do
959
+ params(
960
+ amount: String,
961
+ grouping: T.nilable(
962
+ T.any(
963
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem::Grouping,
964
+ Orb::Util::AnyHash
965
+ )
966
+ ),
967
+ name: String,
968
+ quantity: Float,
969
+ tier_config: T.any(
970
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem::TierConfig,
971
+ Orb::Util::AnyHash
972
+ ),
973
+ type: Symbol
974
+ )
975
+ .returns(T.attached_class)
976
+ end
977
+ def self.new(amount:, grouping:, name:, quantity:, tier_config:, type: :tier)
978
+ end
979
+
980
+ sig do
981
+ override
982
+ .returns(
983
+ {
984
+ amount: String,
985
+ grouping: T.nilable(Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem::Grouping),
986
+ name: String,
987
+ quantity: Float,
988
+ tier_config: Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem::TierConfig,
989
+ type: Symbol
990
+ }
991
+ )
992
+ end
993
+ def to_hash
994
+ end
995
+
996
+ class Grouping < Orb::BaseModel
997
+ sig { returns(String) }
998
+ attr_accessor :key
999
+
1000
+ # No value indicates the default group
1001
+ sig { returns(T.nilable(String)) }
1002
+ attr_accessor :value
1003
+
1004
+ sig { params(key: String, value: T.nilable(String)).returns(T.attached_class) }
1005
+ def self.new(key:, value:)
1006
+ end
1007
+
1008
+ sig { override.returns({key: String, value: T.nilable(String)}) }
1009
+ def to_hash
1010
+ end
1011
+ end
1012
+
1013
+ class TierConfig < Orb::BaseModel
1014
+ sig { returns(Float) }
1015
+ attr_accessor :first_unit
1016
+
1017
+ sig { returns(T.nilable(Float)) }
1018
+ attr_accessor :last_unit
1019
+
1020
+ sig { returns(String) }
1021
+ attr_accessor :unit_amount
1022
+
1023
+ sig do
1024
+ params(
1025
+ first_unit: Float,
1026
+ last_unit: T.nilable(Float),
1027
+ unit_amount: String
1028
+ ).returns(T.attached_class)
1029
+ end
1030
+ def self.new(first_unit:, last_unit:, unit_amount:)
1031
+ end
1032
+
1033
+ sig { override.returns({first_unit: Float, last_unit: T.nilable(Float), unit_amount: String}) }
1034
+ def to_hash
1035
+ end
1036
+ end
1037
+ end
1038
+
1039
+ class OtherSubLineItem < Orb::BaseModel
1040
+ # The total amount for this sub line item.
1041
+ sig { returns(String) }
1042
+ attr_accessor :amount
1043
+
1044
+ sig { returns(T.nilable(Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::OtherSubLineItem::Grouping)) }
1045
+ attr_reader :grouping
1046
+
1047
+ sig do
1048
+ params(
1049
+ grouping: T.nilable(
1050
+ T.any(
1051
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::OtherSubLineItem::Grouping,
1052
+ Orb::Util::AnyHash
1053
+ )
1054
+ )
1055
+ )
1056
+ .void
1057
+ end
1058
+ attr_writer :grouping
1059
+
1060
+ sig { returns(String) }
1061
+ attr_accessor :name
1062
+
1063
+ sig { returns(Float) }
1064
+ attr_accessor :quantity
1065
+
1066
+ sig { returns(Symbol) }
1067
+ attr_accessor :type
1068
+
1069
+ sig do
1070
+ params(
1071
+ amount: String,
1072
+ grouping: T.nilable(
1073
+ T.any(
1074
+ Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::OtherSubLineItem::Grouping,
1075
+ Orb::Util::AnyHash
1076
+ )
1077
+ ),
1078
+ name: String,
1079
+ quantity: Float,
1080
+ type: Symbol
1081
+ )
1082
+ .returns(T.attached_class)
1083
+ end
1084
+ def self.new(amount:, grouping:, name:, quantity:, type: :"'null'")
1085
+ end
1086
+
1087
+ sig do
1088
+ override
1089
+ .returns(
1090
+ {
1091
+ amount: String,
1092
+ grouping: T.nilable(Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::OtherSubLineItem::Grouping),
1093
+ name: String,
1094
+ quantity: Float,
1095
+ type: Symbol
1096
+ }
1097
+ )
1098
+ end
1099
+ def to_hash
1100
+ end
1101
+
1102
+ class Grouping < Orb::BaseModel
1103
+ sig { returns(String) }
1104
+ attr_accessor :key
1105
+
1106
+ # No value indicates the default group
1107
+ sig { returns(T.nilable(String)) }
1108
+ attr_accessor :value
1109
+
1110
+ sig { params(key: String, value: T.nilable(String)).returns(T.attached_class) }
1111
+ def self.new(key:, value:)
1112
+ end
1113
+
1114
+ sig { override.returns({key: String, value: T.nilable(String)}) }
1115
+ def to_hash
1116
+ end
1117
+ end
1118
+ end
1119
+
1120
+ sig do
1121
+ override
1122
+ .returns(
1123
+ [Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::MatrixSubLineItem, Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::TierSubLineItem, Orb::Models::InvoiceLineItemCreateResponse::SubLineItem::OtherSubLineItem]
1124
+ )
1125
+ end
1126
+ def self.variants
1127
+ end
1128
+ end
1129
+
1130
+ class TaxAmount < Orb::BaseModel
1131
+ # The amount of additional tax incurred by this tax rate.
1132
+ sig { returns(String) }
1133
+ attr_accessor :amount
1134
+
1135
+ # The human-readable description of the applied tax rate.
1136
+ sig { returns(String) }
1137
+ attr_accessor :tax_rate_description
1138
+
1139
+ # The tax rate percentage, out of 100.
1140
+ sig { returns(T.nilable(String)) }
1141
+ attr_accessor :tax_rate_percentage
1142
+
1143
+ sig do
1144
+ params(amount: String, tax_rate_description: String, tax_rate_percentage: T.nilable(String))
1145
+ .returns(T.attached_class)
1146
+ end
1147
+ def self.new(amount:, tax_rate_description:, tax_rate_percentage:)
1148
+ end
1149
+
1150
+ sig do
1151
+ override.returns(
1152
+ {
1153
+ amount: String,
1154
+ tax_rate_description: String,
1155
+ tax_rate_percentage: T.nilable(String)
1156
+ }
1157
+ )
1158
+ end
1159
+ def to_hash
1160
+ end
1161
+ end
1162
+ end
1163
+ end
1164
+ end