metronome-sdk 0.3.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +91 -0
  3. data/README.md +9 -9
  4. data/lib/metronome_sdk/errors.rb +25 -11
  5. data/lib/metronome_sdk/file_part.rb +10 -7
  6. data/lib/metronome_sdk/internal/body_cursor_page.rb +86 -0
  7. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  8. data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +86 -0
  9. data/lib/metronome_sdk/internal/transport/base_client.rb +12 -11
  10. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +8 -19
  11. data/lib/metronome_sdk/internal/type/base_model.rb +6 -13
  12. data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
  13. data/lib/metronome_sdk/internal/type/enum.rb +25 -0
  14. data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
  15. data/lib/metronome_sdk/internal/type/union.rb +11 -0
  16. data/lib/metronome_sdk/internal/util.rb +9 -8
  17. data/lib/metronome_sdk/models/base_threshold_commit.rb +36 -0
  18. data/lib/metronome_sdk/models/commit.rb +26 -170
  19. data/lib/metronome_sdk/models/commit_hierarchy_configuration.rb +98 -0
  20. data/lib/metronome_sdk/models/commit_rate.rb +48 -0
  21. data/lib/metronome_sdk/models/commit_specifier.rb +42 -0
  22. data/lib/metronome_sdk/models/commit_specifier_input.rb +42 -0
  23. data/lib/metronome_sdk/models/contract.rb +404 -0
  24. data/lib/metronome_sdk/models/contract_v2.rb +3169 -0
  25. data/lib/metronome_sdk/models/contract_without_amendments.rb +38 -1128
  26. data/lib/metronome_sdk/models/credit.rb +9 -156
  27. data/lib/metronome_sdk/models/discount.rb +2 -1
  28. data/lib/metronome_sdk/models/hierarchy_configuration.rb +173 -0
  29. data/lib/metronome_sdk/models/override.rb +6 -101
  30. data/lib/metronome_sdk/models/override_tier.rb +21 -0
  31. data/lib/metronome_sdk/models/overwrite_rate.rb +82 -0
  32. data/lib/metronome_sdk/models/payment_gate_config.rb +150 -0
  33. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +150 -0
  34. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +100 -0
  35. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +102 -0
  36. data/lib/metronome_sdk/models/pro_service.rb +2 -1
  37. data/lib/metronome_sdk/models/recurring_commit_subscription_config.rb +51 -0
  38. data/lib/metronome_sdk/models/scheduled_charge.rb +2 -1
  39. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +44 -0
  40. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +44 -0
  41. data/lib/metronome_sdk/models/subscription.rb +311 -0
  42. data/lib/metronome_sdk/models/update_base_threshold_commit.rb +36 -0
  43. data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
  44. data/lib/metronome_sdk/models/v1/alert_create_params.rb +42 -42
  45. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +1 -2
  46. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +3 -3
  47. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -7
  48. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +58 -411
  49. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +7 -16
  50. data/lib/metronome_sdk/models/v1/contract_create_params.rb +315 -1459
  51. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +6 -23
  52. data/lib/metronome_sdk/models/v1/contract_list_response.rb +3 -1153
  53. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +2 -6
  54. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +5 -50
  55. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +3 -1154
  56. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +1 -3
  57. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +2 -1
  58. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -1
  59. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -1
  60. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +1 -4
  61. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -7
  62. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +10 -1
  63. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +2 -6
  64. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +5 -50
  65. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +10 -1
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +1 -3
  67. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +1 -3
  68. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -61
  69. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +3 -49
  70. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +4 -51
  71. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +2 -6
  72. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +5 -49
  73. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +103 -123
  74. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +3 -5
  75. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +1 -3
  76. data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +41 -58
  77. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +5 -1
  78. data/lib/metronome_sdk/models/v1/customer.rb +2 -1
  79. data/lib/metronome_sdk/models/v1/customer_create_params.rb +37 -11
  80. data/lib/metronome_sdk/models/v1/customer_detail.rb +11 -2
  81. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +3 -3
  82. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +6 -18
  83. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
  84. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rb +28 -0
  85. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +128 -0
  86. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +143 -0
  87. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +4 -6
  88. data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
  89. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +37 -8
  90. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +2 -0
  91. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +2 -0
  92. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +10 -60
  93. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +6 -48
  94. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +48 -54
  95. data/lib/metronome_sdk/models/v1/customers/invoice.rb +197 -66
  96. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +1 -4
  97. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
  98. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +2 -6
  99. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -1
  100. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +4 -11
  101. data/lib/metronome_sdk/models/v1/payment.rb +151 -0
  102. data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
  103. data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
  104. data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
  105. data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
  106. data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
  107. data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
  108. data/lib/metronome_sdk/models/v1/plan_detail.rb +9 -5
  109. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -1
  110. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -1
  111. data/lib/metronome_sdk/models/v1/plan_list_response.rb +5 -1
  112. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +1 -4
  113. data/lib/metronome_sdk/models/v1/usage_list_params.rb +1 -3
  114. data/lib/metronome_sdk/models/v1/usage_list_response.rb +45 -62
  115. data/lib/metronome_sdk/models/v1/usage_search_response.rb +4 -7
  116. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +37 -58
  117. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +34 -49
  118. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +552 -2265
  119. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +417 -2317
  120. data/lib/metronome_sdk/models/v2/contract_list_response.rb +3 -4520
  121. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +3 -4528
  122. data/lib/metronome_sdk/models.rb +38 -0
  123. data/lib/metronome_sdk/resources/v1/alerts.rb +90 -16
  124. data/lib/metronome_sdk/resources/v1/audit_logs.rb +39 -4
  125. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +54 -4
  126. data/lib/metronome_sdk/resources/v1/contracts/products.rb +25 -6
  127. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +7 -2
  128. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +10 -2
  129. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +109 -10
  130. data/lib/metronome_sdk/resources/v1/contracts.rb +255 -18
  131. data/lib/metronome_sdk/resources/v1/credit_grants.rb +2 -1
  132. data/lib/metronome_sdk/resources/v1/custom_fields.rb +51 -14
  133. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +127 -13
  134. data/lib/metronome_sdk/resources/v1/customers/commits.rb +119 -9
  135. data/lib/metronome_sdk/resources/v1/customers/credits.rb +104 -8
  136. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +179 -8
  137. data/lib/metronome_sdk/resources/v1/customers.rb +175 -15
  138. data/lib/metronome_sdk/resources/v1/dashboards.rb +29 -3
  139. data/lib/metronome_sdk/resources/v1/invoices.rb +23 -2
  140. data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
  141. data/lib/metronome_sdk/resources/v1/pricing_units.rb +6 -1
  142. data/lib/metronome_sdk/resources/v1/services.rb +6 -4
  143. data/lib/metronome_sdk/resources/v1/usage.rb +188 -13
  144. data/lib/metronome_sdk/resources/v1.rb +4 -0
  145. data/lib/metronome_sdk/resources/v2/contracts.rb +120 -18
  146. data/lib/metronome_sdk/version.rb +1 -1
  147. data/lib/metronome_sdk.rb +33 -3
  148. data/rbi/metronome_sdk/errors.rbi +31 -4
  149. data/rbi/metronome_sdk/file_part.rbi +1 -1
  150. data/rbi/metronome_sdk/internal/body_cursor_page.rbi +22 -0
  151. data/rbi/metronome_sdk/internal/cursor_page_without_limit.rbi +22 -0
  152. data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
  153. data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
  154. data/rbi/metronome_sdk/internal/util.rbi +1 -1
  155. data/rbi/metronome_sdk/models/base_threshold_commit.rbi +58 -0
  156. data/rbi/metronome_sdk/models/commit.rbi +26 -348
  157. data/rbi/metronome_sdk/models/commit_hierarchy_configuration.rbi +280 -0
  158. data/rbi/metronome_sdk/models/commit_rate.rbi +85 -0
  159. data/rbi/metronome_sdk/models/commit_specifier.rbi +71 -0
  160. data/rbi/metronome_sdk/models/commit_specifier_input.rbi +74 -0
  161. data/rbi/metronome_sdk/models/contract.rbi +768 -0
  162. data/rbi/metronome_sdk/models/contract_v2.rbi +6415 -0
  163. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +186 -2509
  164. data/rbi/metronome_sdk/models/credit.rbi +10 -348
  165. data/rbi/metronome_sdk/models/discount.rbi +2 -0
  166. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +424 -0
  167. data/rbi/metronome_sdk/models/override.rbi +8 -193
  168. data/rbi/metronome_sdk/models/override_tier.rbi +29 -0
  169. data/rbi/metronome_sdk/models/overwrite_rate.rbi +137 -0
  170. data/rbi/metronome_sdk/models/payment_gate_config.rbi +317 -0
  171. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +326 -0
  172. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +183 -0
  173. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +188 -0
  174. data/rbi/metronome_sdk/models/pro_service.rbi +2 -0
  175. data/rbi/metronome_sdk/models/recurring_commit_subscription_config.rbi +125 -0
  176. data/rbi/metronome_sdk/models/scheduled_charge.rbi +2 -0
  177. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +76 -0
  178. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -0
  179. data/rbi/metronome_sdk/models/subscription.rbi +635 -0
  180. data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +61 -0
  181. data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
  182. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +57 -50
  183. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +2 -0
  184. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +2 -0
  185. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +49 -768
  186. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +2 -0
  187. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1843 -4119
  188. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +8 -59
  189. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +5 -2420
  190. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +6 -129
  191. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +4 -2419
  192. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +2 -0
  193. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +2 -0
  194. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +2 -0
  195. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_params.rbi +2 -0
  196. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +2 -0
  197. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +6 -129
  198. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +2 -0
  199. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +4 -129
  200. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +4 -129
  201. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +4 -129
  202. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +6 -129
  203. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +147 -198
  204. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +2 -0
  205. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +117 -165
  206. data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +8 -1
  207. data/rbi/metronome_sdk/models/v1/customer.rbi +2 -0
  208. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +88 -3
  209. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +10 -0
  210. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +2 -0
  211. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +6 -21
  212. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
  213. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbi +51 -0
  214. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +265 -0
  215. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +348 -0
  216. data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
  217. data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
  218. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +68 -8
  219. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +10 -0
  220. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +10 -0
  221. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +6 -90
  222. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +6 -90
  223. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +54 -47
  224. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +316 -68
  225. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
  226. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +2 -0
  227. data/rbi/metronome_sdk/models/v1/payment.rbi +316 -0
  228. data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
  229. data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
  230. data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
  231. data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
  232. data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
  233. data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
  234. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +2 -0
  235. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +2 -0
  236. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +2 -0
  237. data/rbi/metronome_sdk/models/v1/plan_list_response.rbi +8 -1
  238. data/rbi/metronome_sdk/models/v1/usage_list_response.rbi +45 -86
  239. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +2 -0
  240. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +74 -76
  241. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +74 -76
  242. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3875 -7234
  243. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1733 -6207
  244. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +5 -9867
  245. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +6 -9866
  246. data/rbi/metronome_sdk/models.rbi +44 -0
  247. data/rbi/metronome_sdk/resources/v1/alerts.rbi +101 -27
  248. data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +39 -4
  249. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +54 -4
  250. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +25 -5
  251. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +7 -2
  252. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +10 -3
  253. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +109 -9
  254. data/rbi/metronome_sdk/resources/v1/contracts.rbi +258 -16
  255. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +5 -1
  256. data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +57 -14
  257. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +133 -11
  258. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +119 -10
  259. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +104 -9
  260. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +159 -7
  261. data/rbi/metronome_sdk/resources/v1/customers.rbi +162 -14
  262. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +29 -3
  263. data/rbi/metronome_sdk/resources/v1/invoices.rbi +23 -2
  264. data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
  265. data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +6 -1
  266. data/rbi/metronome_sdk/resources/v1/services.rbi +6 -4
  267. data/rbi/metronome_sdk/resources/v1/usage.rbi +191 -13
  268. data/rbi/metronome_sdk/resources/v1.rbi +3 -0
  269. data/rbi/metronome_sdk/resources/v2/contracts.rbi +134 -23
  270. data/sig/metronome_sdk/errors.rbs +7 -0
  271. data/sig/metronome_sdk/file_part.rbs +1 -1
  272. data/sig/metronome_sdk/internal/body_cursor_page.rbs +13 -0
  273. data/sig/metronome_sdk/internal/cursor_page_without_limit.rbs +13 -0
  274. data/sig/metronome_sdk/models/base_threshold_commit.rbs +26 -0
  275. data/sig/metronome_sdk/models/commit.rbs +17 -170
  276. data/sig/metronome_sdk/models/commit_hierarchy_configuration.rbs +117 -0
  277. data/sig/metronome_sdk/models/commit_rate.rbs +48 -0
  278. data/sig/metronome_sdk/models/commit_specifier.rbs +47 -0
  279. data/sig/metronome_sdk/models/commit_specifier_input.rbs +47 -0
  280. data/sig/metronome_sdk/models/contract.rbs +398 -0
  281. data/sig/metronome_sdk/models/contract_v2.rbs +3108 -0
  282. data/sig/metronome_sdk/models/contract_without_amendments.rbs +54 -976
  283. data/sig/metronome_sdk/models/credit.rbs +12 -170
  284. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +152 -0
  285. data/sig/metronome_sdk/models/override.rbs +12 -101
  286. data/sig/metronome_sdk/models/override_tier.rbs +17 -0
  287. data/sig/metronome_sdk/models/overwrite_rate.rbs +78 -0
  288. data/sig/metronome_sdk/models/payment_gate_config.rbs +124 -0
  289. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +124 -0
  290. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +82 -0
  291. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +82 -0
  292. data/sig/metronome_sdk/models/recurring_commit_subscription_config.rbs +51 -0
  293. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +35 -0
  294. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +35 -0
  295. data/sig/metronome_sdk/models/subscription.rbs +295 -0
  296. data/sig/metronome_sdk/models/update_base_threshold_commit.rbs +28 -0
  297. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +4 -2
  298. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +26 -341
  299. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +219 -1184
  300. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +4 -25
  301. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +4 -1041
  302. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +6 -54
  303. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +4 -1041
  304. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +6 -54
  305. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +6 -54
  306. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +6 -54
  307. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +6 -54
  308. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +6 -54
  309. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +72 -94
  310. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +53 -75
  311. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +31 -4
  312. data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
  313. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
  314. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
  315. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbs +32 -0
  316. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +113 -0
  317. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +133 -0
  318. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +21 -0
  319. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +7 -1
  320. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +6 -1
  321. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +6 -50
  322. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +6 -50
  323. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +4 -2
  324. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +137 -24
  325. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
  326. data/sig/metronome_sdk/models/v1/payment.rbs +191 -0
  327. data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
  328. data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
  329. data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
  330. data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
  331. data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
  332. data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
  333. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +33 -55
  334. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +28 -43
  335. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +28 -43
  336. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +412 -1793
  337. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +342 -2149
  338. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +4 -4426
  339. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +4 -4426
  340. data/sig/metronome_sdk/models.rbs +38 -0
  341. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  342. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -3
  343. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -1
  344. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  345. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +2 -1
  346. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +2 -2
  347. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +2 -2
  348. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
  349. data/sig/metronome_sdk/resources/v1/customers.rbs +11 -0
  350. data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
  351. data/sig/metronome_sdk/resources/v1/usage.rbs +1 -1
  352. data/sig/metronome_sdk/resources/v1.rbs +2 -0
  353. data/sig/metronome_sdk/resources/v2/contracts.rbs +10 -4
  354. metadata +101 -11
  355. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +0 -29
  356. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +0 -26
  357. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +0 -26
  358. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +0 -46
  359. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +0 -45
  360. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +0 -45
  361. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +0 -29
  362. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +0 -26
  363. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +0 -26
@@ -17,7 +17,7 @@ module MetronomeSDK
17
17
  net_payment_terms_days: Float,
18
18
  netsuite_sales_order_id: String,
19
19
  overrides: ::Array[MetronomeSDK::V1::ContractCreateParams::Override],
20
- prepaid_balance_threshold_configuration: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration,
20
+ prepaid_balance_threshold_configuration: MetronomeSDK::PrepaidBalanceThresholdConfiguration,
21
21
  priority: Float,
22
22
  professional_services: ::Array[MetronomeSDK::V1::ContractCreateParams::ProfessionalService],
23
23
  rate_card_alias: String,
@@ -28,7 +28,7 @@ module MetronomeSDK
28
28
  salesforce_opportunity_id: String,
29
29
  scheduled_charges: ::Array[MetronomeSDK::V1::ContractCreateParams::ScheduledCharge],
30
30
  scheduled_charges_on_usage_invoices: MetronomeSDK::Models::V1::ContractCreateParams::scheduled_charges_on_usage_invoices,
31
- spend_threshold_configuration: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration,
31
+ spend_threshold_configuration: MetronomeSDK::SpendThresholdConfiguration,
32
32
  subscriptions: ::Array[MetronomeSDK::V1::ContractCreateParams::Subscription],
33
33
  total_contract_value: Float,
34
34
  transition: MetronomeSDK::V1::ContractCreateParams::Transition,
@@ -108,11 +108,11 @@ module MetronomeSDK
108
108
  ::Array[MetronomeSDK::V1::ContractCreateParams::Override]
109
109
  ) -> ::Array[MetronomeSDK::V1::ContractCreateParams::Override]
110
110
 
111
- attr_reader prepaid_balance_threshold_configuration: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration?
111
+ attr_reader prepaid_balance_threshold_configuration: MetronomeSDK::PrepaidBalanceThresholdConfiguration?
112
112
 
113
113
  def prepaid_balance_threshold_configuration=: (
114
- MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration
115
- ) -> MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration
114
+ MetronomeSDK::PrepaidBalanceThresholdConfiguration
115
+ ) -> MetronomeSDK::PrepaidBalanceThresholdConfiguration
116
116
 
117
117
  attr_reader priority: Float?
118
118
 
@@ -166,11 +166,11 @@ module MetronomeSDK
166
166
  MetronomeSDK::Models::V1::ContractCreateParams::scheduled_charges_on_usage_invoices
167
167
  ) -> MetronomeSDK::Models::V1::ContractCreateParams::scheduled_charges_on_usage_invoices
168
168
 
169
- attr_reader spend_threshold_configuration: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration?
169
+ attr_reader spend_threshold_configuration: MetronomeSDK::SpendThresholdConfiguration?
170
170
 
171
171
  def spend_threshold_configuration=: (
172
- MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration
173
- ) -> MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration
172
+ MetronomeSDK::SpendThresholdConfiguration
173
+ ) -> MetronomeSDK::SpendThresholdConfiguration
174
174
 
175
175
  attr_reader subscriptions: ::Array[MetronomeSDK::V1::ContractCreateParams::Subscription]?
176
176
 
@@ -219,7 +219,7 @@ module MetronomeSDK
219
219
  ?net_payment_terms_days: Float,
220
220
  ?netsuite_sales_order_id: String,
221
221
  ?overrides: ::Array[MetronomeSDK::V1::ContractCreateParams::Override],
222
- ?prepaid_balance_threshold_configuration: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration,
222
+ ?prepaid_balance_threshold_configuration: MetronomeSDK::PrepaidBalanceThresholdConfiguration,
223
223
  ?priority: Float,
224
224
  ?professional_services: ::Array[MetronomeSDK::V1::ContractCreateParams::ProfessionalService],
225
225
  ?rate_card_alias: String,
@@ -230,7 +230,7 @@ module MetronomeSDK
230
230
  ?salesforce_opportunity_id: String,
231
231
  ?scheduled_charges: ::Array[MetronomeSDK::V1::ContractCreateParams::ScheduledCharge],
232
232
  ?scheduled_charges_on_usage_invoices: MetronomeSDK::Models::V1::ContractCreateParams::scheduled_charges_on_usage_invoices,
233
- ?spend_threshold_configuration: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration,
233
+ ?spend_threshold_configuration: MetronomeSDK::SpendThresholdConfiguration,
234
234
  ?subscriptions: ::Array[MetronomeSDK::V1::ContractCreateParams::Subscription],
235
235
  ?total_contract_value: Float,
236
236
  ?transition: MetronomeSDK::V1::ContractCreateParams::Transition,
@@ -255,7 +255,7 @@ module MetronomeSDK
255
255
  net_payment_terms_days: Float,
256
256
  netsuite_sales_order_id: String,
257
257
  overrides: ::Array[MetronomeSDK::V1::ContractCreateParams::Override],
258
- prepaid_balance_threshold_configuration: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration,
258
+ prepaid_balance_threshold_configuration: MetronomeSDK::PrepaidBalanceThresholdConfiguration,
259
259
  priority: Float,
260
260
  professional_services: ::Array[MetronomeSDK::V1::ContractCreateParams::ProfessionalService],
261
261
  rate_card_alias: String,
@@ -266,7 +266,7 @@ module MetronomeSDK
266
266
  salesforce_opportunity_id: String,
267
267
  scheduled_charges: ::Array[MetronomeSDK::V1::ContractCreateParams::ScheduledCharge],
268
268
  scheduled_charges_on_usage_invoices: MetronomeSDK::Models::V1::ContractCreateParams::scheduled_charges_on_usage_invoices,
269
- spend_threshold_configuration: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration,
269
+ spend_threshold_configuration: MetronomeSDK::SpendThresholdConfiguration,
270
270
  subscriptions: ::Array[MetronomeSDK::V1::ContractCreateParams::Subscription],
271
271
  total_contract_value: Float,
272
272
  transition: MetronomeSDK::V1::ContractCreateParams::Transition,
@@ -356,7 +356,7 @@ module MetronomeSDK
356
356
  applicable_product_tags: ::Array[String],
357
357
  custom_fields: ::Hash[Symbol, String],
358
358
  description: String,
359
- hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration,
359
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
360
360
  invoice_schedule: MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule,
361
361
  name: String,
362
362
  netsuite_sales_order_id: String,
@@ -364,7 +364,7 @@ module MetronomeSDK
364
364
  priority: Float,
365
365
  rate_type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::rate_type,
366
366
  rollover_fraction: Float,
367
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::Commit::Specifier],
367
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
368
368
  temporary_id: String
369
369
  }
370
370
 
@@ -399,11 +399,11 @@ module MetronomeSDK
399
399
 
400
400
  def description=: (String) -> String
401
401
 
402
- attr_reader hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration?
402
+ attr_reader hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration?
403
403
 
404
404
  def hierarchy_configuration=: (
405
- MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration
406
- ) -> MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration
405
+ MetronomeSDK::CommitHierarchyConfiguration
406
+ ) -> MetronomeSDK::CommitHierarchyConfiguration
407
407
 
408
408
  attr_reader invoice_schedule: MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule?
409
409
 
@@ -439,11 +439,11 @@ module MetronomeSDK
439
439
 
440
440
  def rollover_fraction=: (Float) -> Float
441
441
 
442
- attr_reader specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::Commit::Specifier]?
442
+ attr_reader specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]?
443
443
 
444
444
  def specifiers=: (
445
- ::Array[MetronomeSDK::V1::ContractCreateParams::Commit::Specifier]
446
- ) -> ::Array[MetronomeSDK::V1::ContractCreateParams::Commit::Specifier]
445
+ ::Array[MetronomeSDK::CommitSpecifierInput]
446
+ ) -> ::Array[MetronomeSDK::CommitSpecifierInput]
447
447
 
448
448
  attr_reader temporary_id: String?
449
449
 
@@ -458,7 +458,7 @@ module MetronomeSDK
458
458
  ?applicable_product_tags: ::Array[String],
459
459
  ?custom_fields: ::Hash[Symbol, String],
460
460
  ?description: String,
461
- ?hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration,
461
+ ?hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
462
462
  ?invoice_schedule: MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule,
463
463
  ?name: String,
464
464
  ?netsuite_sales_order_id: String,
@@ -466,7 +466,7 @@ module MetronomeSDK
466
466
  ?priority: Float,
467
467
  ?rate_type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::rate_type,
468
468
  ?rollover_fraction: Float,
469
- ?specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::Commit::Specifier],
469
+ ?specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
470
470
  ?temporary_id: String
471
471
  ) -> void
472
472
 
@@ -479,7 +479,7 @@ module MetronomeSDK
479
479
  applicable_product_tags: ::Array[String],
480
480
  custom_fields: ::Hash[Symbol, String],
481
481
  description: String,
482
- hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration,
482
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
483
483
  invoice_schedule: MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule,
484
484
  name: String,
485
485
  netsuite_sales_order_id: String,
@@ -487,7 +487,7 @@ module MetronomeSDK
487
487
  priority: Float,
488
488
  rate_type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::rate_type,
489
489
  rollover_fraction: Float,
490
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::Commit::Specifier],
490
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
491
491
  temporary_id: String
492
492
  }
493
493
 
@@ -549,120 +549,6 @@ module MetronomeSDK
549
549
  end
550
550
  end
551
551
 
552
- type hierarchy_configuration =
553
- {
554
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::child_access
555
- }
556
-
557
- class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
558
- attr_accessor child_access: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::child_access
559
-
560
- def initialize: (
561
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::child_access
562
- ) -> void
563
-
564
- def to_hash: -> {
565
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::child_access
566
- }
567
-
568
- type child_access =
569
- MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
570
- | MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
571
- | MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
572
-
573
- module ChildAccess
574
- extend MetronomeSDK::Internal::Type::Union
575
-
576
- type commit_hierarchy_child_access_all =
577
- {
578
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
579
- }
580
-
581
- class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
582
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
583
-
584
- def initialize: (
585
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
586
- ) -> void
587
-
588
- def to_hash: -> {
589
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
590
- }
591
-
592
- type type_ = :ALL
593
-
594
- module Type
595
- extend MetronomeSDK::Internal::Type::Enum
596
-
597
- ALL: :ALL
598
-
599
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_]
600
- end
601
- end
602
-
603
- type commit_hierarchy_child_access_none =
604
- {
605
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
606
- }
607
-
608
- class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
609
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
610
-
611
- def initialize: (
612
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
613
- ) -> void
614
-
615
- def to_hash: -> {
616
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
617
- }
618
-
619
- type type_ = :NONE
620
-
621
- module Type
622
- extend MetronomeSDK::Internal::Type::Enum
623
-
624
- NONE: :NONE
625
-
626
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_]
627
- end
628
- end
629
-
630
- type commit_hierarchy_child_access_contract_ids =
631
- {
632
- contract_ids: ::Array[String],
633
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
634
- }
635
-
636
- class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
637
- attr_accessor contract_ids: ::Array[String]
638
-
639
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
640
-
641
- def initialize: (
642
- contract_ids: ::Array[String],
643
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
644
- ) -> void
645
-
646
- def to_hash: -> {
647
- contract_ids: ::Array[String],
648
- type: MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
649
- }
650
-
651
- type type_ = :CONTRACT_IDS
652
-
653
- module Type
654
- extend MetronomeSDK::Internal::Type::Enum
655
-
656
- CONTRACT_IDS: :CONTRACT_IDS
657
-
658
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_]
659
- end
660
- end
661
-
662
- def self?.variants: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::child_access]
663
- end
664
- end
665
-
666
552
  type invoice_schedule =
667
553
  {
668
554
  credit_type_id: String,
@@ -937,7 +823,7 @@ module MetronomeSDK
937
823
  end
938
824
  end
939
825
 
940
- type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
826
+ type tax_type = :NONE | :STRIPE | :ANROK | :AVALARA | :PRECALCULATED
941
827
 
942
828
  module TaxType
943
829
  extend MetronomeSDK::Internal::Type::Enum
@@ -945,6 +831,7 @@ module MetronomeSDK
945
831
  NONE: :NONE
946
832
  STRIPE: :STRIPE
947
833
  ANROK: :ANROK
834
+ AVALARA: :AVALARA
948
835
  PRECALCULATED: :PRECALCULATED
949
836
 
950
837
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Commit::PaymentGateConfig::tax_type]
@@ -961,50 +848,6 @@ module MetronomeSDK
961
848
 
962
849
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Commit::rate_type]
963
850
  end
964
-
965
- type specifier =
966
- {
967
- presentation_group_values: ::Hash[Symbol, String],
968
- pricing_group_values: ::Hash[Symbol, String],
969
- product_id: String,
970
- product_tags: ::Array[String]
971
- }
972
-
973
- class Specifier < MetronomeSDK::Internal::Type::BaseModel
974
- attr_reader presentation_group_values: ::Hash[Symbol, String]?
975
-
976
- def presentation_group_values=: (
977
- ::Hash[Symbol, String]
978
- ) -> ::Hash[Symbol, String]
979
-
980
- attr_reader pricing_group_values: ::Hash[Symbol, String]?
981
-
982
- def pricing_group_values=: (
983
- ::Hash[Symbol, String]
984
- ) -> ::Hash[Symbol, String]
985
-
986
- attr_reader product_id: String?
987
-
988
- def product_id=: (String) -> String
989
-
990
- attr_reader product_tags: ::Array[String]?
991
-
992
- def product_tags=: (::Array[String]) -> ::Array[String]
993
-
994
- def initialize: (
995
- ?presentation_group_values: ::Hash[Symbol, String],
996
- ?pricing_group_values: ::Hash[Symbol, String],
997
- ?product_id: String,
998
- ?product_tags: ::Array[String]
999
- ) -> void
1000
-
1001
- def to_hash: -> {
1002
- presentation_group_values: ::Hash[Symbol, String],
1003
- pricing_group_values: ::Hash[Symbol, String],
1004
- product_id: String,
1005
- product_tags: ::Array[String]
1006
- }
1007
- end
1008
851
  end
1009
852
 
1010
853
  type credit =
@@ -1015,12 +858,12 @@ module MetronomeSDK
1015
858
  applicable_product_tags: ::Array[String],
1016
859
  custom_fields: ::Hash[Symbol, String],
1017
860
  description: String,
1018
- hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration,
861
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
1019
862
  name: String,
1020
863
  netsuite_sales_order_id: String,
1021
864
  priority: Float,
1022
865
  rate_type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::rate_type,
1023
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::Credit::Specifier]
866
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
1024
867
  }
1025
868
 
1026
869
  class Credit < MetronomeSDK::Internal::Type::BaseModel
@@ -1044,11 +887,11 @@ module MetronomeSDK
1044
887
 
1045
888
  def description=: (String) -> String
1046
889
 
1047
- attr_reader hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration?
890
+ attr_reader hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration?
1048
891
 
1049
892
  def hierarchy_configuration=: (
1050
- MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration
1051
- ) -> MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration
893
+ MetronomeSDK::CommitHierarchyConfiguration
894
+ ) -> MetronomeSDK::CommitHierarchyConfiguration
1052
895
 
1053
896
  attr_reader name: String?
1054
897
 
@@ -1068,11 +911,11 @@ module MetronomeSDK
1068
911
  MetronomeSDK::Models::V1::ContractCreateParams::Credit::rate_type
1069
912
  ) -> MetronomeSDK::Models::V1::ContractCreateParams::Credit::rate_type
1070
913
 
1071
- attr_reader specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::Credit::Specifier]?
914
+ attr_reader specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]?
1072
915
 
1073
916
  def specifiers=: (
1074
- ::Array[MetronomeSDK::V1::ContractCreateParams::Credit::Specifier]
1075
- ) -> ::Array[MetronomeSDK::V1::ContractCreateParams::Credit::Specifier]
917
+ ::Array[MetronomeSDK::CommitSpecifierInput]
918
+ ) -> ::Array[MetronomeSDK::CommitSpecifierInput]
1076
919
 
1077
920
  def initialize: (
1078
921
  access_schedule: MetronomeSDK::V1::ContractCreateParams::Credit::AccessSchedule,
@@ -1081,12 +924,12 @@ module MetronomeSDK
1081
924
  ?applicable_product_tags: ::Array[String],
1082
925
  ?custom_fields: ::Hash[Symbol, String],
1083
926
  ?description: String,
1084
- ?hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration,
927
+ ?hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
1085
928
  ?name: String,
1086
929
  ?netsuite_sales_order_id: String,
1087
930
  ?priority: Float,
1088
931
  ?rate_type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::rate_type,
1089
- ?specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::Credit::Specifier]
932
+ ?specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
1090
933
  ) -> void
1091
934
 
1092
935
  def to_hash: -> {
@@ -1096,12 +939,12 @@ module MetronomeSDK
1096
939
  applicable_product_tags: ::Array[String],
1097
940
  custom_fields: ::Hash[Symbol, String],
1098
941
  description: String,
1099
- hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration,
942
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
1100
943
  name: String,
1101
944
  netsuite_sales_order_id: String,
1102
945
  priority: Float,
1103
946
  rate_type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::rate_type,
1104
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::Credit::Specifier]
947
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
1105
948
  }
1106
949
 
1107
950
  type access_schedule =
@@ -1151,120 +994,6 @@ module MetronomeSDK
1151
994
  end
1152
995
  end
1153
996
 
1154
- type hierarchy_configuration =
1155
- {
1156
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::child_access
1157
- }
1158
-
1159
- class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
1160
- attr_accessor child_access: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::child_access
1161
-
1162
- def initialize: (
1163
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::child_access
1164
- ) -> void
1165
-
1166
- def to_hash: -> {
1167
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::child_access
1168
- }
1169
-
1170
- type child_access =
1171
- MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
1172
- | MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
1173
- | MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
1174
-
1175
- module ChildAccess
1176
- extend MetronomeSDK::Internal::Type::Union
1177
-
1178
- type commit_hierarchy_child_access_all =
1179
- {
1180
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
1181
- }
1182
-
1183
- class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
1184
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
1185
-
1186
- def initialize: (
1187
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
1188
- ) -> void
1189
-
1190
- def to_hash: -> {
1191
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
1192
- }
1193
-
1194
- type type_ = :ALL
1195
-
1196
- module Type
1197
- extend MetronomeSDK::Internal::Type::Enum
1198
-
1199
- ALL: :ALL
1200
-
1201
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_]
1202
- end
1203
- end
1204
-
1205
- type commit_hierarchy_child_access_none =
1206
- {
1207
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
1208
- }
1209
-
1210
- class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
1211
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
1212
-
1213
- def initialize: (
1214
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
1215
- ) -> void
1216
-
1217
- def to_hash: -> {
1218
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
1219
- }
1220
-
1221
- type type_ = :NONE
1222
-
1223
- module Type
1224
- extend MetronomeSDK::Internal::Type::Enum
1225
-
1226
- NONE: :NONE
1227
-
1228
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_]
1229
- end
1230
- end
1231
-
1232
- type commit_hierarchy_child_access_contract_ids =
1233
- {
1234
- contract_ids: ::Array[String],
1235
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
1236
- }
1237
-
1238
- class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
1239
- attr_accessor contract_ids: ::Array[String]
1240
-
1241
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
1242
-
1243
- def initialize: (
1244
- contract_ids: ::Array[String],
1245
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
1246
- ) -> void
1247
-
1248
- def to_hash: -> {
1249
- contract_ids: ::Array[String],
1250
- type: MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
1251
- }
1252
-
1253
- type type_ = :CONTRACT_IDS
1254
-
1255
- module Type
1256
- extend MetronomeSDK::Internal::Type::Enum
1257
-
1258
- CONTRACT_IDS: :CONTRACT_IDS
1259
-
1260
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_]
1261
- end
1262
- end
1263
-
1264
- def self?.variants: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::child_access]
1265
- end
1266
- end
1267
-
1268
997
  type rate_type = :COMMIT_RATE | :LIST_RATE
1269
998
 
1270
999
  module RateType
@@ -1275,50 +1004,6 @@ module MetronomeSDK
1275
1004
 
1276
1005
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Credit::rate_type]
1277
1006
  end
1278
-
1279
- type specifier =
1280
- {
1281
- presentation_group_values: ::Hash[Symbol, String],
1282
- pricing_group_values: ::Hash[Symbol, String],
1283
- product_id: String,
1284
- product_tags: ::Array[String]
1285
- }
1286
-
1287
- class Specifier < MetronomeSDK::Internal::Type::BaseModel
1288
- attr_reader presentation_group_values: ::Hash[Symbol, String]?
1289
-
1290
- def presentation_group_values=: (
1291
- ::Hash[Symbol, String]
1292
- ) -> ::Hash[Symbol, String]
1293
-
1294
- attr_reader pricing_group_values: ::Hash[Symbol, String]?
1295
-
1296
- def pricing_group_values=: (
1297
- ::Hash[Symbol, String]
1298
- ) -> ::Hash[Symbol, String]
1299
-
1300
- attr_reader product_id: String?
1301
-
1302
- def product_id=: (String) -> String
1303
-
1304
- attr_reader product_tags: ::Array[String]?
1305
-
1306
- def product_tags=: (::Array[String]) -> ::Array[String]
1307
-
1308
- def initialize: (
1309
- ?presentation_group_values: ::Hash[Symbol, String],
1310
- ?pricing_group_values: ::Hash[Symbol, String],
1311
- ?product_id: String,
1312
- ?product_tags: ::Array[String]
1313
- ) -> void
1314
-
1315
- def to_hash: -> {
1316
- presentation_group_values: ::Hash[Symbol, String],
1317
- pricing_group_values: ::Hash[Symbol, String],
1318
- product_id: String,
1319
- product_tags: ::Array[String]
1320
- }
1321
- end
1322
1007
  end
1323
1008
 
1324
1009
  type discount =
@@ -1526,18 +1211,49 @@ module MetronomeSDK
1526
1211
 
1527
1212
  type hierarchy_configuration =
1528
1213
  {
1529
- parent: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent
1214
+ parent: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent,
1215
+ parent_behavior: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior,
1216
+ payer: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::payer,
1217
+ usage_statement_behavior: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::usage_statement_behavior
1530
1218
  }
1531
1219
 
1532
1220
  class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
1533
- attr_accessor parent: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent
1221
+ attr_reader parent: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent?
1222
+
1223
+ def parent=: (
1224
+ MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent
1225
+ ) -> MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent
1226
+
1227
+ attr_reader parent_behavior: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior?
1228
+
1229
+ def parent_behavior=: (
1230
+ MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior
1231
+ ) -> MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior
1232
+
1233
+ attr_reader payer: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::payer?
1234
+
1235
+ def payer=: (
1236
+ MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::payer
1237
+ ) -> MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::payer
1238
+
1239
+ attr_reader usage_statement_behavior: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::usage_statement_behavior?
1240
+
1241
+ def usage_statement_behavior=: (
1242
+ MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::usage_statement_behavior
1243
+ ) -> MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::usage_statement_behavior
1534
1244
 
1535
1245
  def initialize: (
1536
- parent: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent
1246
+ ?parent: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent,
1247
+ ?parent_behavior: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior,
1248
+ ?payer: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::payer,
1249
+ ?usage_statement_behavior: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::usage_statement_behavior
1537
1250
  ) -> void
1538
1251
 
1539
1252
  def to_hash: -> {
1540
- parent: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent
1253
+ parent: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent,
1254
+ parent_behavior: MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior,
1255
+ payer: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::payer,
1256
+ usage_statement_behavior: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::usage_statement_behavior
1541
1257
  }
1542
1258
 
1543
1259
  type parent = { contract_id: String, customer_id: String }
@@ -1551,6 +1267,60 @@ module MetronomeSDK
1551
1267
 
1552
1268
  def to_hash: -> { contract_id: String, customer_id: String }
1553
1269
  end
1270
+
1271
+ type parent_behavior =
1272
+ {
1273
+ invoice_consolidation_type: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior::invoice_consolidation_type
1274
+ }
1275
+
1276
+ class ParentBehavior < MetronomeSDK::Internal::Type::BaseModel
1277
+ attr_reader invoice_consolidation_type: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior::invoice_consolidation_type?
1278
+
1279
+ def invoice_consolidation_type=: (
1280
+ MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior::invoice_consolidation_type
1281
+ ) -> MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior::invoice_consolidation_type
1282
+
1283
+ def initialize: (
1284
+ ?invoice_consolidation_type: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior::invoice_consolidation_type
1285
+ ) -> void
1286
+
1287
+ def to_hash: -> {
1288
+ invoice_consolidation_type: MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior::invoice_consolidation_type
1289
+ }
1290
+
1291
+ type invoice_consolidation_type = :CONCATENATE | :NONE
1292
+
1293
+ module InvoiceConsolidationType
1294
+ extend MetronomeSDK::Internal::Type::Enum
1295
+
1296
+ CONCATENATE: :CONCATENATE
1297
+ NONE: :NONE
1298
+
1299
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::ParentBehavior::invoice_consolidation_type]
1300
+ end
1301
+ end
1302
+
1303
+ type payer = :SELF | :PARENT
1304
+
1305
+ module Payer
1306
+ extend MetronomeSDK::Internal::Type::Enum
1307
+
1308
+ SELF: :SELF
1309
+ PARENT: :PARENT
1310
+
1311
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::payer]
1312
+ end
1313
+
1314
+ type usage_statement_behavior = :CONSOLIDATE | :SEPARATE
1315
+
1316
+ module UsageStatementBehavior
1317
+ extend MetronomeSDK::Internal::Type::Enum
1318
+
1319
+ CONSOLIDATE: :CONSOLIDATE
1320
+ SEPARATE: :SEPARATE
1321
+
1322
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration::usage_statement_behavior]
1323
+ end
1554
1324
  end
1555
1325
 
1556
1326
  type multiplier_override_prioritization = :LOWEST_MULTIPLIER | :EXPLICIT
@@ -1875,321 +1645,58 @@ module MetronomeSDK
1875
1645
  end
1876
1646
  end
1877
1647
 
1878
- type prepaid_balance_threshold_configuration =
1648
+ type professional_service =
1879
1649
  {
1880
- commit: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit,
1881
- is_enabled: bool,
1882
- payment_gate_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig,
1883
- recharge_to_amount: Float,
1884
- threshold_amount: Float,
1885
- custom_credit_type_id: String
1650
+ max_amount: Float,
1651
+ product_id: String,
1652
+ quantity: Float,
1653
+ unit_price: Float,
1654
+ custom_fields: ::Hash[Symbol, String],
1655
+ description: String,
1656
+ netsuite_sales_order_id: String
1886
1657
  }
1887
1658
 
1888
- class PrepaidBalanceThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
1889
- attr_accessor commit: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit
1659
+ class ProfessionalService < MetronomeSDK::Internal::Type::BaseModel
1660
+ attr_accessor max_amount: Float
1661
+
1662
+ attr_accessor product_id: String
1663
+
1664
+ attr_accessor quantity: Float
1665
+
1666
+ attr_accessor unit_price: Float
1890
1667
 
1891
- attr_accessor is_enabled: bool
1668
+ attr_reader custom_fields: ::Hash[Symbol, String]?
1892
1669
 
1893
- attr_accessor payment_gate_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig
1670
+ def custom_fields=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
1894
1671
 
1895
- attr_accessor recharge_to_amount: Float
1672
+ attr_reader description: String?
1896
1673
 
1897
- attr_accessor threshold_amount: Float
1674
+ def description=: (String) -> String
1898
1675
 
1899
- attr_reader custom_credit_type_id: String?
1676
+ attr_reader netsuite_sales_order_id: String?
1900
1677
 
1901
- def custom_credit_type_id=: (String) -> String
1678
+ def netsuite_sales_order_id=: (String) -> String
1902
1679
 
1903
1680
  def initialize: (
1904
- commit: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit,
1905
- is_enabled: bool,
1906
- payment_gate_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig,
1907
- recharge_to_amount: Float,
1908
- threshold_amount: Float,
1909
- ?custom_credit_type_id: String
1681
+ max_amount: Float,
1682
+ product_id: String,
1683
+ quantity: Float,
1684
+ unit_price: Float,
1685
+ ?custom_fields: ::Hash[Symbol, String],
1686
+ ?description: String,
1687
+ ?netsuite_sales_order_id: String
1910
1688
  ) -> void
1911
1689
 
1912
1690
  def to_hash: -> {
1913
- commit: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit,
1914
- is_enabled: bool,
1915
- payment_gate_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig,
1916
- recharge_to_amount: Float,
1917
- threshold_amount: Float,
1918
- custom_credit_type_id: String
1691
+ max_amount: Float,
1692
+ product_id: String,
1693
+ quantity: Float,
1694
+ unit_price: Float,
1695
+ custom_fields: ::Hash[Symbol, String],
1696
+ description: String,
1697
+ netsuite_sales_order_id: String
1919
1698
  }
1920
-
1921
- type commit =
1922
- {
1923
- product_id: String,
1924
- applicable_product_ids: ::Array[String],
1925
- applicable_product_tags: ::Array[String],
1926
- description: String,
1927
- name: String,
1928
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
1929
- }
1930
-
1931
- class Commit < MetronomeSDK::Internal::Type::BaseModel
1932
- attr_accessor product_id: String
1933
-
1934
- attr_reader applicable_product_ids: ::Array[String]?
1935
-
1936
- def applicable_product_ids=: (::Array[String]) -> ::Array[String]
1937
-
1938
- attr_reader applicable_product_tags: ::Array[String]?
1939
-
1940
- def applicable_product_tags=: (::Array[String]) -> ::Array[String]
1941
-
1942
- attr_reader description: String?
1943
-
1944
- def description=: (String) -> String
1945
-
1946
- attr_reader name: String?
1947
-
1948
- def name=: (String) -> String
1949
-
1950
- attr_reader specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier]?
1951
-
1952
- def specifiers=: (
1953
- ::Array[MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
1954
- ) -> ::Array[MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
1955
-
1956
- def initialize: (
1957
- product_id: String,
1958
- ?applicable_product_ids: ::Array[String],
1959
- ?applicable_product_tags: ::Array[String],
1960
- ?description: String,
1961
- ?name: String,
1962
- ?specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
1963
- ) -> void
1964
-
1965
- def to_hash: -> {
1966
- product_id: String,
1967
- applicable_product_ids: ::Array[String],
1968
- applicable_product_tags: ::Array[String],
1969
- description: String,
1970
- name: String,
1971
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
1972
- }
1973
-
1974
- type specifier =
1975
- {
1976
- presentation_group_values: ::Hash[Symbol, String],
1977
- pricing_group_values: ::Hash[Symbol, String],
1978
- product_id: String,
1979
- product_tags: ::Array[String]
1980
- }
1981
-
1982
- class Specifier < MetronomeSDK::Internal::Type::BaseModel
1983
- attr_reader presentation_group_values: ::Hash[Symbol, String]?
1984
-
1985
- def presentation_group_values=: (
1986
- ::Hash[Symbol, String]
1987
- ) -> ::Hash[Symbol, String]
1988
-
1989
- attr_reader pricing_group_values: ::Hash[Symbol, String]?
1990
-
1991
- def pricing_group_values=: (
1992
- ::Hash[Symbol, String]
1993
- ) -> ::Hash[Symbol, String]
1994
-
1995
- attr_reader product_id: String?
1996
-
1997
- def product_id=: (String) -> String
1998
-
1999
- attr_reader product_tags: ::Array[String]?
2000
-
2001
- def product_tags=: (::Array[String]) -> ::Array[String]
2002
-
2003
- def initialize: (
2004
- ?presentation_group_values: ::Hash[Symbol, String],
2005
- ?pricing_group_values: ::Hash[Symbol, String],
2006
- ?product_id: String,
2007
- ?product_tags: ::Array[String]
2008
- ) -> void
2009
-
2010
- def to_hash: -> {
2011
- presentation_group_values: ::Hash[Symbol, String],
2012
- pricing_group_values: ::Hash[Symbol, String],
2013
- product_id: String,
2014
- product_tags: ::Array[String]
2015
- }
2016
- end
2017
- end
2018
-
2019
- type payment_gate_config =
2020
- {
2021
- payment_gate_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
2022
- precalculated_tax_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
2023
- stripe_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
2024
- tax_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
2025
- }
2026
-
2027
- class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
2028
- attr_accessor payment_gate_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type
2029
-
2030
- attr_reader precalculated_tax_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig?
2031
-
2032
- def precalculated_tax_config=: (
2033
- MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
2034
- ) -> MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
2035
-
2036
- attr_reader stripe_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig?
2037
-
2038
- def stripe_config=: (
2039
- MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig
2040
- ) -> MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig
2041
-
2042
- attr_reader tax_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type?
2043
-
2044
- def tax_type=: (
2045
- MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
2046
- ) -> MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
2047
-
2048
- def initialize: (
2049
- payment_gate_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
2050
- ?precalculated_tax_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
2051
- ?stripe_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
2052
- ?tax_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
2053
- ) -> void
2054
-
2055
- def to_hash: -> {
2056
- payment_gate_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
2057
- precalculated_tax_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
2058
- stripe_config: MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
2059
- tax_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
2060
- }
2061
-
2062
- type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
2063
-
2064
- module PaymentGateType
2065
- extend MetronomeSDK::Internal::Type::Enum
2066
-
2067
- NONE: :NONE
2068
- STRIPE: :STRIPE
2069
- EXTERNAL: :EXTERNAL
2070
-
2071
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type]
2072
- end
2073
-
2074
- type precalculated_tax_config =
2075
- { tax_amount: Float, tax_name: String }
2076
-
2077
- class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
2078
- attr_accessor tax_amount: Float
2079
-
2080
- attr_reader tax_name: String?
2081
-
2082
- def tax_name=: (String) -> String
2083
-
2084
- def initialize: (tax_amount: Float, ?tax_name: String) -> void
2085
-
2086
- def to_hash: -> { tax_amount: Float, tax_name: String }
2087
- end
2088
-
2089
- type stripe_config =
2090
- {
2091
- payment_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
2092
- invoice_metadata: ::Hash[Symbol, String]
2093
- }
2094
-
2095
- class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
2096
- attr_accessor payment_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
2097
-
2098
- attr_reader invoice_metadata: ::Hash[Symbol, String]?
2099
-
2100
- def invoice_metadata=: (
2101
- ::Hash[Symbol, String]
2102
- ) -> ::Hash[Symbol, String]
2103
-
2104
- def initialize: (
2105
- payment_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
2106
- ?invoice_metadata: ::Hash[Symbol, String]
2107
- ) -> void
2108
-
2109
- def to_hash: -> {
2110
- payment_type: MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
2111
- invoice_metadata: ::Hash[Symbol, String]
2112
- }
2113
-
2114
- type payment_type = :INVOICE | :PAYMENT_INTENT
2115
-
2116
- module PaymentType
2117
- extend MetronomeSDK::Internal::Type::Enum
2118
-
2119
- INVOICE: :INVOICE
2120
- PAYMENT_INTENT: :PAYMENT_INTENT
2121
-
2122
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type]
2123
- end
2124
- end
2125
-
2126
- type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
2127
-
2128
- module TaxType
2129
- extend MetronomeSDK::Internal::Type::Enum
2130
-
2131
- NONE: :NONE
2132
- STRIPE: :STRIPE
2133
- ANROK: :ANROK
2134
- PRECALCULATED: :PRECALCULATED
2135
-
2136
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type]
2137
- end
2138
- end
2139
- end
2140
-
2141
- type professional_service =
2142
- {
2143
- max_amount: Float,
2144
- product_id: String,
2145
- quantity: Float,
2146
- unit_price: Float,
2147
- custom_fields: ::Hash[Symbol, String],
2148
- description: String,
2149
- netsuite_sales_order_id: String
2150
- }
2151
-
2152
- class ProfessionalService < MetronomeSDK::Internal::Type::BaseModel
2153
- attr_accessor max_amount: Float
2154
-
2155
- attr_accessor product_id: String
2156
-
2157
- attr_accessor quantity: Float
2158
-
2159
- attr_accessor unit_price: Float
2160
-
2161
- attr_reader custom_fields: ::Hash[Symbol, String]?
2162
-
2163
- def custom_fields=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
2164
-
2165
- attr_reader description: String?
2166
-
2167
- def description=: (String) -> String
2168
-
2169
- attr_reader netsuite_sales_order_id: String?
2170
-
2171
- def netsuite_sales_order_id=: (String) -> String
2172
-
2173
- def initialize: (
2174
- max_amount: Float,
2175
- product_id: String,
2176
- quantity: Float,
2177
- unit_price: Float,
2178
- ?custom_fields: ::Hash[Symbol, String],
2179
- ?description: String,
2180
- ?netsuite_sales_order_id: String
2181
- ) -> void
2182
-
2183
- def to_hash: -> {
2184
- max_amount: Float,
2185
- product_id: String,
2186
- quantity: Float,
2187
- unit_price: Float,
2188
- custom_fields: ::Hash[Symbol, String],
2189
- description: String,
2190
- netsuite_sales_order_id: String
2191
- }
2192
- end
1699
+ end
2193
1700
 
2194
1701
  type recurring_commit =
2195
1702
  {
@@ -2202,7 +1709,7 @@ module MetronomeSDK
2202
1709
  applicable_product_tags: ::Array[String],
2203
1710
  description: String,
2204
1711
  ending_before: Time,
2205
- hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration,
1712
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
2206
1713
  invoice_amount: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::InvoiceAmount,
2207
1714
  name: String,
2208
1715
  netsuite_sales_order_id: String,
@@ -2210,7 +1717,7 @@ module MetronomeSDK
2210
1717
  rate_type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::rate_type,
2211
1718
  recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::recurrence_frequency,
2212
1719
  rollover_fraction: Float,
2213
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCommit::Specifier],
1720
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
2214
1721
  subscription_config: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig,
2215
1722
  temporary_id: String
2216
1723
  }
@@ -2242,11 +1749,11 @@ module MetronomeSDK
2242
1749
 
2243
1750
  def ending_before=: (Time) -> Time
2244
1751
 
2245
- attr_reader hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration?
1752
+ attr_reader hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration?
2246
1753
 
2247
1754
  def hierarchy_configuration=: (
2248
- MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration
2249
- ) -> MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration
1755
+ MetronomeSDK::CommitHierarchyConfiguration
1756
+ ) -> MetronomeSDK::CommitHierarchyConfiguration
2250
1757
 
2251
1758
  attr_reader invoice_amount: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::InvoiceAmount?
2252
1759
 
@@ -2284,11 +1791,11 @@ module MetronomeSDK
2284
1791
 
2285
1792
  def rollover_fraction=: (Float) -> Float
2286
1793
 
2287
- attr_reader specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCommit::Specifier]?
1794
+ attr_reader specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]?
2288
1795
 
2289
1796
  def specifiers=: (
2290
- ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCommit::Specifier]
2291
- ) -> ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCommit::Specifier]
1797
+ ::Array[MetronomeSDK::CommitSpecifierInput]
1798
+ ) -> ::Array[MetronomeSDK::CommitSpecifierInput]
2292
1799
 
2293
1800
  attr_reader subscription_config: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig?
2294
1801
 
@@ -2310,7 +1817,7 @@ module MetronomeSDK
2310
1817
  ?applicable_product_tags: ::Array[String],
2311
1818
  ?description: String,
2312
1819
  ?ending_before: Time,
2313
- ?hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration,
1820
+ ?hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
2314
1821
  ?invoice_amount: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::InvoiceAmount,
2315
1822
  ?name: String,
2316
1823
  ?netsuite_sales_order_id: String,
@@ -2318,7 +1825,7 @@ module MetronomeSDK
2318
1825
  ?rate_type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::rate_type,
2319
1826
  ?recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::recurrence_frequency,
2320
1827
  ?rollover_fraction: Float,
2321
- ?specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCommit::Specifier],
1828
+ ?specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
2322
1829
  ?subscription_config: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig,
2323
1830
  ?temporary_id: String
2324
1831
  ) -> void
@@ -2333,7 +1840,7 @@ module MetronomeSDK
2333
1840
  applicable_product_tags: ::Array[String],
2334
1841
  description: String,
2335
1842
  ending_before: Time,
2336
- hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration,
1843
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
2337
1844
  invoice_amount: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::InvoiceAmount,
2338
1845
  name: String,
2339
1846
  netsuite_sales_order_id: String,
@@ -2341,7 +1848,7 @@ module MetronomeSDK
2341
1848
  rate_type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::rate_type,
2342
1849
  recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::recurrence_frequency,
2343
1850
  rollover_fraction: Float,
2344
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCommit::Specifier],
1851
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
2345
1852
  subscription_config: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig,
2346
1853
  temporary_id: String
2347
1854
  }
@@ -2407,120 +1914,6 @@ module MetronomeSDK
2407
1914
  end
2408
1915
  end
2409
1916
 
2410
- type hierarchy_configuration =
2411
- {
2412
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::child_access
2413
- }
2414
-
2415
- class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
2416
- attr_accessor child_access: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::child_access
2417
-
2418
- def initialize: (
2419
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::child_access
2420
- ) -> void
2421
-
2422
- def to_hash: -> {
2423
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::child_access
2424
- }
2425
-
2426
- type child_access =
2427
- MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
2428
- | MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
2429
- | MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
2430
-
2431
- module ChildAccess
2432
- extend MetronomeSDK::Internal::Type::Union
2433
-
2434
- type commit_hierarchy_child_access_all =
2435
- {
2436
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
2437
- }
2438
-
2439
- class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
2440
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
2441
-
2442
- def initialize: (
2443
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
2444
- ) -> void
2445
-
2446
- def to_hash: -> {
2447
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
2448
- }
2449
-
2450
- type type_ = :ALL
2451
-
2452
- module Type
2453
- extend MetronomeSDK::Internal::Type::Enum
2454
-
2455
- ALL: :ALL
2456
-
2457
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_]
2458
- end
2459
- end
2460
-
2461
- type commit_hierarchy_child_access_none =
2462
- {
2463
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
2464
- }
2465
-
2466
- class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
2467
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
2468
-
2469
- def initialize: (
2470
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
2471
- ) -> void
2472
-
2473
- def to_hash: -> {
2474
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
2475
- }
2476
-
2477
- type type_ = :NONE
2478
-
2479
- module Type
2480
- extend MetronomeSDK::Internal::Type::Enum
2481
-
2482
- NONE: :NONE
2483
-
2484
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_]
2485
- end
2486
- end
2487
-
2488
- type commit_hierarchy_child_access_contract_ids =
2489
- {
2490
- contract_ids: ::Array[String],
2491
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
2492
- }
2493
-
2494
- class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
2495
- attr_accessor contract_ids: ::Array[String]
2496
-
2497
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
2498
-
2499
- def initialize: (
2500
- contract_ids: ::Array[String],
2501
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
2502
- ) -> void
2503
-
2504
- def to_hash: -> {
2505
- contract_ids: ::Array[String],
2506
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
2507
- }
2508
-
2509
- type type_ = :CONTRACT_IDS
2510
-
2511
- module Type
2512
- extend MetronomeSDK::Internal::Type::Enum
2513
-
2514
- CONTRACT_IDS: :CONTRACT_IDS
2515
-
2516
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_]
2517
- end
2518
- end
2519
-
2520
- def self?.variants: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::child_access]
2521
- end
2522
- end
2523
-
2524
1917
  type invoice_amount =
2525
1918
  { credit_type_id: String, quantity: Float, unit_price: Float }
2526
1919
 
@@ -2581,50 +1974,6 @@ module MetronomeSDK
2581
1974
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::recurrence_frequency]
2582
1975
  end
2583
1976
 
2584
- type specifier =
2585
- {
2586
- presentation_group_values: ::Hash[Symbol, String],
2587
- pricing_group_values: ::Hash[Symbol, String],
2588
- product_id: String,
2589
- product_tags: ::Array[String]
2590
- }
2591
-
2592
- class Specifier < MetronomeSDK::Internal::Type::BaseModel
2593
- attr_reader presentation_group_values: ::Hash[Symbol, String]?
2594
-
2595
- def presentation_group_values=: (
2596
- ::Hash[Symbol, String]
2597
- ) -> ::Hash[Symbol, String]
2598
-
2599
- attr_reader pricing_group_values: ::Hash[Symbol, String]?
2600
-
2601
- def pricing_group_values=: (
2602
- ::Hash[Symbol, String]
2603
- ) -> ::Hash[Symbol, String]
2604
-
2605
- attr_reader product_id: String?
2606
-
2607
- def product_id=: (String) -> String
2608
-
2609
- attr_reader product_tags: ::Array[String]?
2610
-
2611
- def product_tags=: (::Array[String]) -> ::Array[String]
2612
-
2613
- def initialize: (
2614
- ?presentation_group_values: ::Hash[Symbol, String],
2615
- ?pricing_group_values: ::Hash[Symbol, String],
2616
- ?product_id: String,
2617
- ?product_tags: ::Array[String]
2618
- ) -> void
2619
-
2620
- def to_hash: -> {
2621
- presentation_group_values: ::Hash[Symbol, String],
2622
- pricing_group_values: ::Hash[Symbol, String],
2623
- product_id: String,
2624
- product_tags: ::Array[String]
2625
- }
2626
- end
2627
-
2628
1977
  type subscription_config =
2629
1978
  {
2630
1979
  apply_seat_increase_config: MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig,
@@ -2665,11 +2014,12 @@ module MetronomeSDK
2665
2014
  def to_hash: -> { is_prorated: bool }
2666
2015
  end
2667
2016
 
2668
- type allocation = :POOLED
2017
+ type allocation = :INDIVIDUAL | :POOLED
2669
2018
 
2670
2019
  module Allocation
2671
2020
  extend MetronomeSDK::Internal::Type::Enum
2672
2021
 
2022
+ INDIVIDUAL: :INDIVIDUAL
2673
2023
  POOLED: :POOLED
2674
2024
 
2675
2025
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig::allocation]
@@ -2688,14 +2038,14 @@ module MetronomeSDK
2688
2038
  applicable_product_tags: ::Array[String],
2689
2039
  description: String,
2690
2040
  ending_before: Time,
2691
- hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration,
2041
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
2692
2042
  name: String,
2693
2043
  netsuite_sales_order_id: String,
2694
2044
  proration: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::proration,
2695
2045
  rate_type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::rate_type,
2696
2046
  recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::recurrence_frequency,
2697
2047
  rollover_fraction: Float,
2698
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCredit::Specifier],
2048
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
2699
2049
  subscription_config: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig,
2700
2050
  temporary_id: String
2701
2051
  }
@@ -2727,11 +2077,11 @@ module MetronomeSDK
2727
2077
 
2728
2078
  def ending_before=: (Time) -> Time
2729
2079
 
2730
- attr_reader hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration?
2080
+ attr_reader hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration?
2731
2081
 
2732
2082
  def hierarchy_configuration=: (
2733
- MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration
2734
- ) -> MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration
2083
+ MetronomeSDK::CommitHierarchyConfiguration
2084
+ ) -> MetronomeSDK::CommitHierarchyConfiguration
2735
2085
 
2736
2086
  attr_reader name: String?
2737
2087
 
@@ -2763,11 +2113,11 @@ module MetronomeSDK
2763
2113
 
2764
2114
  def rollover_fraction=: (Float) -> Float
2765
2115
 
2766
- attr_reader specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCredit::Specifier]?
2116
+ attr_reader specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]?
2767
2117
 
2768
2118
  def specifiers=: (
2769
- ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCredit::Specifier]
2770
- ) -> ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCredit::Specifier]
2119
+ ::Array[MetronomeSDK::CommitSpecifierInput]
2120
+ ) -> ::Array[MetronomeSDK::CommitSpecifierInput]
2771
2121
 
2772
2122
  attr_reader subscription_config: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig?
2773
2123
 
@@ -2789,14 +2139,14 @@ module MetronomeSDK
2789
2139
  ?applicable_product_tags: ::Array[String],
2790
2140
  ?description: String,
2791
2141
  ?ending_before: Time,
2792
- ?hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration,
2142
+ ?hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
2793
2143
  ?name: String,
2794
2144
  ?netsuite_sales_order_id: String,
2795
2145
  ?proration: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::proration,
2796
2146
  ?rate_type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::rate_type,
2797
2147
  ?recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::recurrence_frequency,
2798
2148
  ?rollover_fraction: Float,
2799
- ?specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCredit::Specifier],
2149
+ ?specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
2800
2150
  ?subscription_config: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig,
2801
2151
  ?temporary_id: String
2802
2152
  ) -> void
@@ -2811,14 +2161,14 @@ module MetronomeSDK
2811
2161
  applicable_product_tags: ::Array[String],
2812
2162
  description: String,
2813
2163
  ending_before: Time,
2814
- hierarchy_configuration: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration,
2164
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
2815
2165
  name: String,
2816
2166
  netsuite_sales_order_id: String,
2817
2167
  proration: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::proration,
2818
2168
  rate_type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::rate_type,
2819
2169
  recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::recurrence_frequency,
2820
2170
  rollover_fraction: Float,
2821
- specifiers: ::Array[MetronomeSDK::V1::ContractCreateParams::RecurringCredit::Specifier],
2171
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput],
2822
2172
  subscription_config: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig,
2823
2173
  temporary_id: String
2824
2174
  }
@@ -2884,120 +2234,6 @@ module MetronomeSDK
2884
2234
  end
2885
2235
  end
2886
2236
 
2887
- type hierarchy_configuration =
2888
- {
2889
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::child_access
2890
- }
2891
-
2892
- class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
2893
- attr_accessor child_access: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::child_access
2894
-
2895
- def initialize: (
2896
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::child_access
2897
- ) -> void
2898
-
2899
- def to_hash: -> {
2900
- child_access: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::child_access
2901
- }
2902
-
2903
- type child_access =
2904
- MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
2905
- | MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
2906
- | MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
2907
-
2908
- module ChildAccess
2909
- extend MetronomeSDK::Internal::Type::Union
2910
-
2911
- type commit_hierarchy_child_access_all =
2912
- {
2913
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
2914
- }
2915
-
2916
- class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
2917
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
2918
-
2919
- def initialize: (
2920
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
2921
- ) -> void
2922
-
2923
- def to_hash: -> {
2924
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_
2925
- }
2926
-
2927
- type type_ = :ALL
2928
-
2929
- module Type
2930
- extend MetronomeSDK::Internal::Type::Enum
2931
-
2932
- ALL: :ALL
2933
-
2934
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::type_]
2935
- end
2936
- end
2937
-
2938
- type commit_hierarchy_child_access_none =
2939
- {
2940
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
2941
- }
2942
-
2943
- class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
2944
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
2945
-
2946
- def initialize: (
2947
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
2948
- ) -> void
2949
-
2950
- def to_hash: -> {
2951
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_
2952
- }
2953
-
2954
- type type_ = :NONE
2955
-
2956
- module Type
2957
- extend MetronomeSDK::Internal::Type::Enum
2958
-
2959
- NONE: :NONE
2960
-
2961
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::type_]
2962
- end
2963
- end
2964
-
2965
- type commit_hierarchy_child_access_contract_ids =
2966
- {
2967
- contract_ids: ::Array[String],
2968
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
2969
- }
2970
-
2971
- class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
2972
- attr_accessor contract_ids: ::Array[String]
2973
-
2974
- attr_accessor type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
2975
-
2976
- def initialize: (
2977
- contract_ids: ::Array[String],
2978
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
2979
- ) -> void
2980
-
2981
- def to_hash: -> {
2982
- contract_ids: ::Array[String],
2983
- type: MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_
2984
- }
2985
-
2986
- type type_ = :CONTRACT_IDS
2987
-
2988
- module Type
2989
- extend MetronomeSDK::Internal::Type::Enum
2990
-
2991
- CONTRACT_IDS: :CONTRACT_IDS
2992
-
2993
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::type_]
2994
- end
2995
- end
2996
-
2997
- def self?.variants: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::child_access]
2998
- end
2999
- end
3000
-
3001
2237
  type proration = :NONE | :FIRST | :LAST | :FIRST_AND_LAST
3002
2238
 
3003
2239
  module Proration
@@ -3035,50 +2271,6 @@ module MetronomeSDK
3035
2271
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::recurrence_frequency]
3036
2272
  end
3037
2273
 
3038
- type specifier =
3039
- {
3040
- presentation_group_values: ::Hash[Symbol, String],
3041
- pricing_group_values: ::Hash[Symbol, String],
3042
- product_id: String,
3043
- product_tags: ::Array[String]
3044
- }
3045
-
3046
- class Specifier < MetronomeSDK::Internal::Type::BaseModel
3047
- attr_reader presentation_group_values: ::Hash[Symbol, String]?
3048
-
3049
- def presentation_group_values=: (
3050
- ::Hash[Symbol, String]
3051
- ) -> ::Hash[Symbol, String]
3052
-
3053
- attr_reader pricing_group_values: ::Hash[Symbol, String]?
3054
-
3055
- def pricing_group_values=: (
3056
- ::Hash[Symbol, String]
3057
- ) -> ::Hash[Symbol, String]
3058
-
3059
- attr_reader product_id: String?
3060
-
3061
- def product_id=: (String) -> String
3062
-
3063
- attr_reader product_tags: ::Array[String]?
3064
-
3065
- def product_tags=: (::Array[String]) -> ::Array[String]
3066
-
3067
- def initialize: (
3068
- ?presentation_group_values: ::Hash[Symbol, String],
3069
- ?pricing_group_values: ::Hash[Symbol, String],
3070
- ?product_id: String,
3071
- ?product_tags: ::Array[String]
3072
- ) -> void
3073
-
3074
- def to_hash: -> {
3075
- presentation_group_values: ::Hash[Symbol, String],
3076
- pricing_group_values: ::Hash[Symbol, String],
3077
- product_id: String,
3078
- product_tags: ::Array[String]
3079
- }
3080
- end
3081
-
3082
2274
  type subscription_config =
3083
2275
  {
3084
2276
  apply_seat_increase_config: MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig,
@@ -3119,11 +2311,12 @@ module MetronomeSDK
3119
2311
  def to_hash: -> { is_prorated: bool }
3120
2312
  end
3121
2313
 
3122
- type allocation = :POOLED
2314
+ type allocation = :INDIVIDUAL | :POOLED
3123
2315
 
3124
2316
  module Allocation
3125
2317
  extend MetronomeSDK::Internal::Type::Enum
3126
2318
 
2319
+ INDIVIDUAL: :INDIVIDUAL
3127
2320
  POOLED: :POOLED
3128
2321
 
3129
2322
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig::allocation]
@@ -3487,196 +2680,17 @@ module MetronomeSDK
3487
2680
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::scheduled_charges_on_usage_invoices]
3488
2681
  end
3489
2682
 
3490
- type spend_threshold_configuration =
3491
- {
3492
- commit: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::Commit,
3493
- is_enabled: bool,
3494
- payment_gate_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig,
3495
- threshold_amount: Float
3496
- }
3497
-
3498
- class SpendThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
3499
- attr_accessor commit: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::Commit
3500
-
3501
- attr_accessor is_enabled: bool
3502
-
3503
- attr_accessor payment_gate_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig
3504
-
3505
- attr_accessor threshold_amount: Float
3506
-
3507
- def initialize: (
3508
- commit: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::Commit,
3509
- is_enabled: bool,
3510
- payment_gate_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig,
3511
- threshold_amount: Float
3512
- ) -> void
3513
-
3514
- def to_hash: -> {
3515
- commit: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::Commit,
3516
- is_enabled: bool,
3517
- payment_gate_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig,
3518
- threshold_amount: Float
3519
- }
3520
-
3521
- type commit =
3522
- { product_id: String, description: String, name: String }
3523
-
3524
- class Commit < MetronomeSDK::Internal::Type::BaseModel
3525
- attr_accessor product_id: String
3526
-
3527
- attr_reader description: String?
3528
-
3529
- def description=: (String) -> String
3530
-
3531
- attr_reader name: String?
3532
-
3533
- def name=: (String) -> String
3534
-
3535
- def initialize: (
3536
- product_id: String,
3537
- ?description: String,
3538
- ?name: String
3539
- ) -> void
3540
-
3541
- def to_hash: -> {
3542
- product_id: String,
3543
- description: String,
3544
- name: String
3545
- }
3546
- end
3547
-
3548
- type payment_gate_config =
3549
- {
3550
- payment_gate_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3551
- precalculated_tax_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3552
- stripe_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
3553
- tax_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::tax_type
3554
- }
3555
-
3556
- class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
3557
- attr_accessor payment_gate_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::payment_gate_type
3558
-
3559
- attr_reader precalculated_tax_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig?
3560
-
3561
- def precalculated_tax_config=: (
3562
- MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
3563
- ) -> MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
3564
-
3565
- attr_reader stripe_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig?
3566
-
3567
- def stripe_config=: (
3568
- MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig
3569
- ) -> MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig
3570
-
3571
- attr_reader tax_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::tax_type?
3572
-
3573
- def tax_type=: (
3574
- MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::tax_type
3575
- ) -> MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::tax_type
3576
-
3577
- def initialize: (
3578
- payment_gate_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3579
- ?precalculated_tax_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3580
- ?stripe_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
3581
- ?tax_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::tax_type
3582
- ) -> void
3583
-
3584
- def to_hash: -> {
3585
- payment_gate_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3586
- precalculated_tax_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3587
- stripe_config: MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
3588
- tax_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::tax_type
3589
- }
3590
-
3591
- type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
3592
-
3593
- module PaymentGateType
3594
- extend MetronomeSDK::Internal::Type::Enum
3595
-
3596
- NONE: :NONE
3597
- STRIPE: :STRIPE
3598
- EXTERNAL: :EXTERNAL
3599
-
3600
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::payment_gate_type]
3601
- end
3602
-
3603
- type precalculated_tax_config =
3604
- { tax_amount: Float, tax_name: String }
3605
-
3606
- class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
3607
- attr_accessor tax_amount: Float
3608
-
3609
- attr_reader tax_name: String?
3610
-
3611
- def tax_name=: (String) -> String
3612
-
3613
- def initialize: (tax_amount: Float, ?tax_name: String) -> void
3614
-
3615
- def to_hash: -> { tax_amount: Float, tax_name: String }
3616
- end
3617
-
3618
- type stripe_config =
3619
- {
3620
- payment_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3621
- invoice_metadata: ::Hash[Symbol, String]
3622
- }
3623
-
3624
- class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
3625
- attr_accessor payment_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
3626
-
3627
- attr_reader invoice_metadata: ::Hash[Symbol, String]?
3628
-
3629
- def invoice_metadata=: (
3630
- ::Hash[Symbol, String]
3631
- ) -> ::Hash[Symbol, String]
3632
-
3633
- def initialize: (
3634
- payment_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3635
- ?invoice_metadata: ::Hash[Symbol, String]
3636
- ) -> void
3637
-
3638
- def to_hash: -> {
3639
- payment_type: MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3640
- invoice_metadata: ::Hash[Symbol, String]
3641
- }
3642
-
3643
- type payment_type = :INVOICE | :PAYMENT_INTENT
3644
-
3645
- module PaymentType
3646
- extend MetronomeSDK::Internal::Type::Enum
3647
-
3648
- INVOICE: :INVOICE
3649
- PAYMENT_INTENT: :PAYMENT_INTENT
3650
-
3651
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type]
3652
- end
3653
- end
3654
-
3655
- type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
3656
-
3657
- module TaxType
3658
- extend MetronomeSDK::Internal::Type::Enum
3659
-
3660
- NONE: :NONE
3661
- STRIPE: :STRIPE
3662
- ANROK: :ANROK
3663
- PRECALCULATED: :PRECALCULATED
3664
-
3665
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::tax_type]
3666
- end
3667
- end
3668
- end
3669
-
3670
2683
  type subscription =
3671
2684
  {
3672
2685
  collection_schedule: MetronomeSDK::Models::V1::ContractCreateParams::Subscription::collection_schedule,
3673
- initial_quantity: Float,
3674
2686
  proration: MetronomeSDK::V1::ContractCreateParams::Subscription::Proration,
3675
2687
  subscription_rate: MetronomeSDK::V1::ContractCreateParams::Subscription::SubscriptionRate,
3676
2688
  custom_fields: ::Hash[Symbol, String],
3677
2689
  description: String,
3678
2690
  ending_before: Time,
2691
+ initial_quantity: Float,
3679
2692
  name: String,
2693
+ quantity_management_mode: MetronomeSDK::Models::V1::ContractCreateParams::Subscription::quantity_management_mode,
3680
2694
  starting_at: Time,
3681
2695
  temporary_id: String
3682
2696
  }
@@ -3684,8 +2698,6 @@ module MetronomeSDK
3684
2698
  class Subscription < MetronomeSDK::Internal::Type::BaseModel
3685
2699
  attr_accessor collection_schedule: MetronomeSDK::Models::V1::ContractCreateParams::Subscription::collection_schedule
3686
2700
 
3687
- attr_accessor initial_quantity: Float
3688
-
3689
2701
  attr_accessor proration: MetronomeSDK::V1::ContractCreateParams::Subscription::Proration
3690
2702
 
3691
2703
  attr_accessor subscription_rate: MetronomeSDK::V1::ContractCreateParams::Subscription::SubscriptionRate
@@ -3702,10 +2714,20 @@ module MetronomeSDK
3702
2714
 
3703
2715
  def ending_before=: (Time) -> Time
3704
2716
 
2717
+ attr_reader initial_quantity: Float?
2718
+
2719
+ def initial_quantity=: (Float) -> Float
2720
+
3705
2721
  attr_reader name: String?
3706
2722
 
3707
2723
  def name=: (String) -> String
3708
2724
 
2725
+ attr_reader quantity_management_mode: MetronomeSDK::Models::V1::ContractCreateParams::Subscription::quantity_management_mode?
2726
+
2727
+ def quantity_management_mode=: (
2728
+ MetronomeSDK::Models::V1::ContractCreateParams::Subscription::quantity_management_mode
2729
+ ) -> MetronomeSDK::Models::V1::ContractCreateParams::Subscription::quantity_management_mode
2730
+
3709
2731
  attr_reader starting_at: Time?
3710
2732
 
3711
2733
  def starting_at=: (Time) -> Time
@@ -3716,26 +2738,28 @@ module MetronomeSDK
3716
2738
 
3717
2739
  def initialize: (
3718
2740
  collection_schedule: MetronomeSDK::Models::V1::ContractCreateParams::Subscription::collection_schedule,
3719
- initial_quantity: Float,
3720
2741
  proration: MetronomeSDK::V1::ContractCreateParams::Subscription::Proration,
3721
2742
  subscription_rate: MetronomeSDK::V1::ContractCreateParams::Subscription::SubscriptionRate,
3722
2743
  ?custom_fields: ::Hash[Symbol, String],
3723
2744
  ?description: String,
3724
2745
  ?ending_before: Time,
2746
+ ?initial_quantity: Float,
3725
2747
  ?name: String,
2748
+ ?quantity_management_mode: MetronomeSDK::Models::V1::ContractCreateParams::Subscription::quantity_management_mode,
3726
2749
  ?starting_at: Time,
3727
2750
  ?temporary_id: String
3728
2751
  ) -> void
3729
2752
 
3730
2753
  def to_hash: -> {
3731
2754
  collection_schedule: MetronomeSDK::Models::V1::ContractCreateParams::Subscription::collection_schedule,
3732
- initial_quantity: Float,
3733
2755
  proration: MetronomeSDK::V1::ContractCreateParams::Subscription::Proration,
3734
2756
  subscription_rate: MetronomeSDK::V1::ContractCreateParams::Subscription::SubscriptionRate,
3735
2757
  custom_fields: ::Hash[Symbol, String],
3736
2758
  description: String,
3737
2759
  ending_before: Time,
2760
+ initial_quantity: Float,
3738
2761
  name: String,
2762
+ quantity_management_mode: MetronomeSDK::Models::V1::ContractCreateParams::Subscription::quantity_management_mode,
3739
2763
  starting_at: Time,
3740
2764
  temporary_id: String
3741
2765
  }
@@ -3825,6 +2849,17 @@ module MetronomeSDK
3825
2849
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Subscription::SubscriptionRate::billing_frequency]
3826
2850
  end
3827
2851
  end
2852
+
2853
+ type quantity_management_mode = :SEAT_BASED | :QUANTITY_ONLY
2854
+
2855
+ module QuantityManagementMode
2856
+ extend MetronomeSDK::Internal::Type::Enum
2857
+
2858
+ SEAT_BASED: :SEAT_BASED
2859
+ QUANTITY_ONLY: :QUANTITY_ONLY
2860
+
2861
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Subscription::quantity_management_mode]
2862
+ end
3828
2863
  end
3829
2864
 
3830
2865
  type transition =