metronome-sdk 0.1.0.pre.alpha.2 → 0.1.0.pre.alpha.4

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 (475) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +85 -0
  3. data/README.md +120 -74
  4. data/SECURITY.md +2 -2
  5. data/lib/metronome_sdk/client.rb +4 -4
  6. data/lib/metronome_sdk/errors.rb +22 -0
  7. data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
  8. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +3 -1
  9. data/lib/metronome_sdk/internal/type/array_of.rb +14 -1
  10. data/lib/metronome_sdk/internal/type/base_model.rb +92 -23
  11. data/lib/metronome_sdk/internal/type/boolean.rb +15 -1
  12. data/lib/metronome_sdk/internal/type/converter.rb +42 -34
  13. data/lib/metronome_sdk/internal/type/enum.rb +25 -2
  14. data/lib/metronome_sdk/internal/type/file_input.rb +13 -1
  15. data/lib/metronome_sdk/internal/type/hash_of.rb +14 -1
  16. data/lib/metronome_sdk/internal/type/union.rb +27 -7
  17. data/lib/metronome_sdk/internal/type/unknown.rb +15 -1
  18. data/lib/metronome_sdk/internal/util.rb +62 -10
  19. data/lib/metronome_sdk/internal.rb +3 -0
  20. data/lib/metronome_sdk/models/commit.rb +230 -87
  21. data/lib/metronome_sdk/models/contract_without_amendments.rb +551 -185
  22. data/lib/metronome_sdk/models/credit.rb +201 -51
  23. data/lib/metronome_sdk/models/discount.rb +5 -5
  24. data/lib/metronome_sdk/models/event_type_filter.rb +1 -1
  25. data/lib/metronome_sdk/models/override.rb +53 -34
  26. data/lib/metronome_sdk/models/pro_service.rb +2 -2
  27. data/lib/metronome_sdk/models/property_filter.rb +1 -1
  28. data/lib/metronome_sdk/models/rate.rb +9 -9
  29. data/lib/metronome_sdk/models/schedule_duration.rb +4 -4
  30. data/lib/metronome_sdk/models/schedule_point_in_time.rb +11 -11
  31. data/lib/metronome_sdk/models/scheduled_charge.rb +5 -5
  32. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +2 -2
  33. data/lib/metronome_sdk/models/v1/alert_create_params.rb +15 -12
  34. data/lib/metronome_sdk/models/v1/alert_create_response.rb +2 -2
  35. data/lib/metronome_sdk/models/v1/audit_log_list_params.rb +2 -2
  36. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +2 -2
  37. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -6
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +2 -2
  39. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +4 -4
  40. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -4
  41. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +577 -152
  42. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +2 -2
  43. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +2 -2
  44. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +12 -12
  45. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +2 -2
  46. data/lib/metronome_sdk/models/v1/contract_create_params.rb +1317 -341
  47. data/lib/metronome_sdk/models/v1/contract_create_response.rb +2 -2
  48. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +3 -7
  49. data/lib/metronome_sdk/models/v1/contract_list_response.rb +421 -36
  50. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +33 -5
  51. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +28 -7
  52. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +422 -36
  53. data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rb +34 -0
  54. data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rb +81 -0
  55. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +4 -4
  56. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +2 -2
  57. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +2 -2
  58. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +2 -2
  59. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -6
  60. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +2 -2
  61. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +5 -5
  62. data/lib/metronome_sdk/models/v1/contracts/product_list_params.rb +4 -4
  63. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -8
  64. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -8
  65. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +4 -4
  66. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +2 -2
  67. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +3 -3
  68. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +3 -3
  69. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +2 -2
  70. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -4
  71. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +2 -2
  72. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +4 -4
  73. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +33 -5
  74. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +26 -5
  75. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +4 -4
  76. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +2 -2
  77. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +2 -2
  78. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +2 -2
  79. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +2 -2
  80. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +2 -2
  81. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +46 -18
  82. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +2 -2
  83. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +36 -12
  84. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +6 -6
  85. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +33 -5
  86. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +26 -5
  87. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +12 -20
  88. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +2 -2
  89. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +2 -2
  90. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
  91. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +6 -6
  92. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +8 -8
  93. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +2 -2
  94. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +1 -1
  95. data/lib/metronome_sdk/models/v1/custom_field_add_key_params.rb +2 -2
  96. data/lib/metronome_sdk/models/v1/custom_field_delete_values_params.rb +2 -2
  97. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +2 -2
  98. data/lib/metronome_sdk/models/v1/custom_field_remove_key_params.rb +2 -2
  99. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +2 -2
  100. data/lib/metronome_sdk/models/v1/customer.rb +1 -1
  101. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +2 -2
  102. data/lib/metronome_sdk/models/v1/customer_create_params.rb +20 -20
  103. data/lib/metronome_sdk/models/v1/customer_create_response.rb +2 -2
  104. data/lib/metronome_sdk/models/v1/customer_detail.rb +10 -10
  105. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +4 -4
  106. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
  107. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
  108. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +2 -2
  109. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +2 -2
  110. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +2 -2
  111. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +2 -2
  112. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +2 -2
  113. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +2 -2
  114. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -6
  115. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +2 -2
  116. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +2 -2
  117. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
  118. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +86 -32
  119. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +2 -2
  120. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +2 -2
  121. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +2 -2
  122. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +59 -7
  123. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +2 -2
  124. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +2 -2
  125. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +2 -2
  126. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +24 -24
  127. data/lib/metronome_sdk/models/v1/customers/invoice.rb +74 -73
  128. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +4 -4
  129. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +2 -2
  130. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +2 -2
  131. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +16 -15
  132. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +2 -2
  133. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -2
  134. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +14 -13
  135. data/lib/metronome_sdk/models/v1/plan_detail.rb +18 -18
  136. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +2 -2
  137. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -2
  138. data/lib/metronome_sdk/models/v1/plan_list_customers_params.rb +2 -2
  139. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -2
  140. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +3 -3
  141. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +3 -3
  142. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +2 -2
  143. data/lib/metronome_sdk/models/v1/usage_list_params.rb +9 -8
  144. data/lib/metronome_sdk/models/v1/usage_list_with_groups_params.rb +5 -5
  145. data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
  146. data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
  147. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +78 -23
  148. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +2 -2
  149. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +62 -9
  150. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +2 -2
  151. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1995 -443
  152. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +2 -2
  153. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +1959 -140
  154. data/lib/metronome_sdk/models/v2/contract_list_response.rb +963 -91
  155. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +964 -91
  156. data/lib/metronome_sdk/models.rb +30 -19
  157. data/lib/metronome_sdk/resources/v1/alerts.rb +4 -4
  158. data/lib/metronome_sdk/resources/v1/audit_logs.rb +1 -1
  159. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +3 -3
  160. data/lib/metronome_sdk/resources/v1/contracts/products.rb +9 -6
  161. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +1 -1
  162. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +8 -6
  163. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +4 -4
  164. data/lib/metronome_sdk/resources/v1/contracts.rb +59 -28
  165. data/lib/metronome_sdk/resources/v1/credit_grants.rb +7 -5
  166. data/lib/metronome_sdk/resources/v1/custom_fields.rb +5 -5
  167. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +2 -2
  168. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +5 -5
  169. data/lib/metronome_sdk/resources/v1/customers/commits.rb +9 -7
  170. data/lib/metronome_sdk/resources/v1/customers/credits.rb +5 -3
  171. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +4 -4
  172. data/lib/metronome_sdk/resources/v1/customers/plans.rb +3 -3
  173. data/lib/metronome_sdk/resources/v1/customers.rb +43 -4
  174. data/lib/metronome_sdk/resources/v1/dashboards.rb +4 -4
  175. data/lib/metronome_sdk/resources/v1/plans.rb +1 -1
  176. data/lib/metronome_sdk/resources/v1/usage.rb +30 -5
  177. data/lib/metronome_sdk/resources/v2/contracts.rb +45 -31
  178. data/lib/metronome_sdk/version.rb +1 -1
  179. data/lib/metronome_sdk.rb +9 -1
  180. data/rbi/metronome_sdk/errors.rbi +16 -0
  181. data/rbi/metronome_sdk/internal/transport/pooled_net_requester.rbi +5 -1
  182. data/rbi/metronome_sdk/internal/type/array_of.rbi +6 -0
  183. data/rbi/metronome_sdk/internal/type/base_model.rbi +5 -0
  184. data/rbi/metronome_sdk/internal/type/boolean.rbi +8 -0
  185. data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
  186. data/rbi/metronome_sdk/internal/type/enum.rbi +5 -0
  187. data/rbi/metronome_sdk/internal/type/file_input.rbi +5 -0
  188. data/rbi/metronome_sdk/internal/type/hash_of.rbi +6 -0
  189. data/rbi/metronome_sdk/internal/type/union.rbi +10 -0
  190. data/rbi/metronome_sdk/internal/type/unknown.rbi +8 -0
  191. data/rbi/metronome_sdk/internal/util.rbi +36 -0
  192. data/rbi/metronome_sdk/internal.rbi +5 -0
  193. data/rbi/metronome_sdk/models/commit.rbi +376 -39
  194. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +791 -54
  195. data/rbi/metronome_sdk/models/credit.rbi +376 -25
  196. data/rbi/metronome_sdk/models/override.rbi +66 -0
  197. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +9 -9
  198. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +10 -4
  199. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +995 -17
  200. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +2220 -136
  201. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +9 -2
  202. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +820 -28
  203. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbi +72 -0
  204. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +66 -0
  205. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +820 -28
  206. data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbi +58 -0
  207. data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbi +212 -0
  208. data/rbi/metronome_sdk/models/v1/contracts/product_list_params.rbi +3 -3
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbi +72 -0
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +66 -0
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +72 -0
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +72 -0
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbi +72 -0
  214. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +66 -0
  215. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
  216. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
  217. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
  218. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
  219. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +121 -8
  220. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +109 -0
  221. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
  222. data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
  223. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
  224. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +113 -8
  225. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +101 -0
  226. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3667 -315
  227. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +5965 -2014
  228. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +2279 -226
  229. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +2279 -226
  230. data/rbi/metronome_sdk/resources/v1/alerts.rbi +5 -2
  231. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +2 -1
  232. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +5 -0
  233. data/rbi/metronome_sdk/resources/v1/contracts.rbi +36 -1
  234. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
  235. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +15 -4
  236. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +9 -0
  237. data/rbi/metronome_sdk/resources/v1/customers.rbi +35 -1
  238. data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
  239. data/rbi/metronome_sdk/resources/v2/contracts.rbi +65 -7
  240. data/sig/metronome_sdk/errors.rbs +9 -0
  241. data/sig/metronome_sdk/internal/transport/pooled_net_requester.rbs +2 -0
  242. data/sig/metronome_sdk/internal/type/array_of.rbs +3 -0
  243. data/sig/metronome_sdk/internal/type/base_model.rbs +2 -0
  244. data/sig/metronome_sdk/internal/type/boolean.rbs +3 -0
  245. data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
  246. data/sig/metronome_sdk/internal/type/enum.rbs +2 -0
  247. data/sig/metronome_sdk/internal/type/file_input.rbs +2 -0
  248. data/sig/metronome_sdk/internal/type/hash_of.rbs +3 -0
  249. data/sig/metronome_sdk/internal/type/union.rbs +2 -0
  250. data/sig/metronome_sdk/internal/type/unknown.rbs +3 -0
  251. data/sig/metronome_sdk/internal/util.rbs +12 -0
  252. data/sig/metronome_sdk/internal.rbs +2 -0
  253. data/sig/metronome_sdk/models/base_usage_filter.rbs +6 -0
  254. data/sig/metronome_sdk/models/commit.rbs +374 -68
  255. data/sig/metronome_sdk/models/contract_without_amendments.rbs +620 -110
  256. data/sig/metronome_sdk/models/credit.rbs +286 -40
  257. data/sig/metronome_sdk/models/credit_type_data.rbs +2 -0
  258. data/sig/metronome_sdk/models/discount.rbs +11 -0
  259. data/sig/metronome_sdk/models/event_type_filter.rbs +5 -0
  260. data/sig/metronome_sdk/models/id.rbs +2 -0
  261. data/sig/metronome_sdk/models/override.rbs +92 -22
  262. data/sig/metronome_sdk/models/pro_service.rbs +11 -0
  263. data/sig/metronome_sdk/models/property_filter.rbs +7 -0
  264. data/sig/metronome_sdk/models/rate.rbs +16 -4
  265. data/sig/metronome_sdk/models/schedule_duration.rbs +12 -0
  266. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +20 -6
  267. data/sig/metronome_sdk/models/scheduled_charge.rbs +12 -0
  268. data/sig/metronome_sdk/models/tier.rbs +2 -0
  269. data/sig/metronome_sdk/models/v1/alert_archive_params.rbs +6 -0
  270. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +2 -0
  271. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +29 -4
  272. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +2 -0
  273. data/sig/metronome_sdk/models/v1/audit_log_list_params.rbs +11 -0
  274. data/sig/metronome_sdk/models/v1/audit_log_list_response.rbs +16 -0
  275. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +2 -0
  276. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +2 -0
  277. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -0
  278. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +2 -0
  279. data/sig/metronome_sdk/models/v1/billable_metric_list_params.rbs +7 -0
  280. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +13 -0
  281. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_params.rbs +5 -0
  282. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +17 -0
  283. data/sig/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbs +11 -0
  284. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +719 -75
  285. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +2 -0
  286. data/sig/metronome_sdk/models/v1/contract_archive_params.rbs +7 -0
  287. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +2 -0
  288. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbs +47 -12
  289. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +2 -0
  290. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +1503 -250
  291. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +2 -0
  292. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +14 -0
  293. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +5 -0
  294. data/sig/metronome_sdk/models/v1/contract_list_params.rbs +10 -0
  295. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +459 -10
  296. data/sig/metronome_sdk/models/v1/contract_retrieve_params.rbs +8 -0
  297. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbs +39 -0
  298. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +48 -0
  299. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +459 -10
  300. data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbs +34 -0
  301. data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbs +101 -0
  302. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rbs +21 -0
  303. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +2 -0
  304. data/sig/metronome_sdk/models/v1/contract_set_usage_filter_params.rbs +9 -0
  305. data/sig/metronome_sdk/models/v1/contract_update_end_date_params.rbs +8 -0
  306. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +2 -0
  307. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_params.rbs +7 -0
  308. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_response.rbs +10 -0
  309. data/sig/metronome_sdk/models/v1/contracts/named_schedule_update_params.rbs +9 -0
  310. data/sig/metronome_sdk/models/v1/contracts/product_archive_params.rbs +5 -0
  311. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +2 -0
  312. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +18 -0
  313. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +2 -0
  314. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +19 -0
  315. data/sig/metronome_sdk/models/v1/contracts/product_list_params.rbs +7 -0
  316. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +29 -0
  317. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +2 -0
  318. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +33 -0
  319. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +19 -0
  320. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +2 -0
  321. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +10 -4
  322. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +9 -4
  323. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +2 -0
  324. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +2 -0
  325. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_params.rbs +21 -0
  326. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +2 -0
  327. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_params.rbs +7 -0
  328. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +23 -0
  329. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +2 -0
  330. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbs +38 -0
  331. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +46 -0
  332. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +27 -0
  333. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_params.rbs +14 -0
  334. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +2 -0
  335. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_params.rbs +8 -0
  336. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_response.rbs +10 -0
  337. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_update_params.rbs +10 -0
  338. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_params.rbs +6 -0
  339. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +2 -0
  340. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rbs +8 -0
  341. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +2 -0
  342. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +59 -8
  343. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +2 -0
  344. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +51 -4
  345. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +23 -0
  346. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbs +38 -0
  347. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +41 -0
  348. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +32 -4
  349. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +2 -0
  350. data/sig/metronome_sdk/models/v1/credit_grant_edit_params.rbs +8 -0
  351. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +2 -0
  352. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +29 -0
  353. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +30 -0
  354. data/sig/metronome_sdk/models/v1/credit_grant_list_params.rbs +11 -0
  355. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +38 -0
  356. data/sig/metronome_sdk/models/v1/credit_grant_void_params.rbs +7 -0
  357. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +2 -0
  358. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +10 -0
  359. data/sig/metronome_sdk/models/v1/custom_field_add_key_params.rbs +7 -0
  360. data/sig/metronome_sdk/models/v1/custom_field_delete_values_params.rbs +7 -0
  361. data/sig/metronome_sdk/models/v1/custom_field_list_keys_params.rbs +12 -6
  362. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +11 -0
  363. data/sig/metronome_sdk/models/v1/custom_field_remove_key_params.rbs +6 -0
  364. data/sig/metronome_sdk/models/v1/custom_field_set_values_params.rbs +7 -0
  365. data/sig/metronome_sdk/models/v1/customer.rbs +8 -0
  366. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +2 -0
  367. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +2 -0
  368. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +52 -26
  369. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +2 -0
  370. data/sig/metronome_sdk/models/v1/customer_detail.rbs +23 -4
  371. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_params.rbs +9 -0
  372. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +17 -0
  373. data/sig/metronome_sdk/models/v1/customer_list_costs_params.rbs +9 -0
  374. data/sig/metronome_sdk/models/v1/customer_list_costs_response.rbs +19 -0
  375. data/sig/metronome_sdk/models/v1/customer_list_params.rbs +10 -0
  376. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
  377. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
  378. data/sig/metronome_sdk/models/v1/customer_retrieve_params.rbs +5 -0
  379. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +2 -0
  380. data/sig/metronome_sdk/models/v1/customer_set_ingest_aliases_params.rbs +6 -0
  381. data/sig/metronome_sdk/models/v1/customer_set_name_params.rbs +6 -0
  382. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +2 -0
  383. data/sig/metronome_sdk/models/v1/customer_update_config_params.rbs +7 -0
  384. data/sig/metronome_sdk/models/v1/customers/alert_list_params.rbs +13 -6
  385. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +5 -0
  386. data/sig/metronome_sdk/models/v1/customers/alert_reset_params.rbs +6 -0
  387. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +7 -0
  388. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +2 -0
  389. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +10 -0
  390. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +6 -0
  391. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +6 -0
  392. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +23 -0
  393. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +116 -8
  394. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +2 -0
  395. data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +14 -0
  396. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +5 -0
  397. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_params.rbs +8 -0
  398. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +2 -0
  399. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +82 -0
  400. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +2 -0
  401. data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +14 -0
  402. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +5 -0
  403. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_params.rbs +7 -0
  404. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +2 -0
  405. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +45 -16
  406. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +195 -40
  407. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_params.rbs +11 -0
  408. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_response.rbs +2 -0
  409. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rbs +14 -0
  410. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +5 -0
  411. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +13 -0
  412. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_params.rbs +7 -0
  413. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +2 -0
  414. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_params.rbs +7 -0
  415. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_response.rbs +10 -0
  416. data/sig/metronome_sdk/models/v1/customers/named_schedule_update_params.rbs +9 -0
  417. data/sig/metronome_sdk/models/v1/customers/plan_add_params.rbs +38 -4
  418. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +2 -0
  419. data/sig/metronome_sdk/models/v1/customers/plan_end_params.rbs +9 -0
  420. data/sig/metronome_sdk/models/v1/customers/plan_end_response.rbs +2 -0
  421. data/sig/metronome_sdk/models/v1/customers/plan_list_params.rbs +7 -0
  422. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_params.rbs +8 -0
  423. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbs +14 -0
  424. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +23 -0
  425. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +30 -7
  426. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_response.rbs +6 -0
  427. data/sig/metronome_sdk/models/v1/invoice_regenerate_params.rbs +5 -0
  428. data/sig/metronome_sdk/models/v1/invoice_regenerate_response.rbs +6 -0
  429. data/sig/metronome_sdk/models/v1/invoice_void_params.rbs +5 -0
  430. data/sig/metronome_sdk/models/v1/invoice_void_response.rbs +6 -0
  431. data/sig/metronome_sdk/models/v1/plan_detail.rbs +38 -0
  432. data/sig/metronome_sdk/models/v1/plan_get_details_params.rbs +5 -0
  433. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +2 -0
  434. data/sig/metronome_sdk/models/v1/plan_list_charges_params.rbs +7 -0
  435. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +28 -0
  436. data/sig/metronome_sdk/models/v1/plan_list_customers_params.rbs +8 -0
  437. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +14 -0
  438. data/sig/metronome_sdk/models/v1/plan_list_params.rbs +6 -0
  439. data/sig/metronome_sdk/models/v1/plan_list_response.rbs +7 -0
  440. data/sig/metronome_sdk/models/v1/pricing_unit_list_params.rbs +6 -0
  441. data/sig/metronome_sdk/models/v1/pricing_unit_list_response.rbs +2 -0
  442. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +12 -4
  443. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +9 -4
  444. data/sig/metronome_sdk/models/v1/service_list_params.rbs +2 -0
  445. data/sig/metronome_sdk/models/v1/service_list_response.rbs +10 -0
  446. data/sig/metronome_sdk/models/v1/usage_ingest_params.rbs +13 -0
  447. data/sig/metronome_sdk/models/v1/usage_list_params.rbs +17 -0
  448. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +15 -0
  449. data/sig/metronome_sdk/models/v1/usage_list_with_groups_params.rbs +15 -0
  450. data/sig/metronome_sdk/models/v1/usage_list_with_groups_response.rbs +8 -0
  451. data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
  452. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
  453. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +106 -1
  454. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +2 -0
  455. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +81 -1
  456. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +2 -0
  457. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +2233 -303
  458. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +2 -0
  459. data/sig/metronome_sdk/models/v2/contract_get_edit_history_params.rbs +6 -0
  460. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +2475 -453
  461. data/sig/metronome_sdk/models/v2/contract_list_params.rbs +10 -0
  462. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +1400 -43
  463. data/sig/metronome_sdk/models/v2/contract_retrieve_params.rbs +9 -0
  464. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +1400 -43
  465. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -0
  466. data/sig/metronome_sdk/resources/v1/contracts.rbs +10 -0
  467. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
  468. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  469. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -1
  470. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
  471. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
  472. data/sig/metronome_sdk/resources/v1/customers.rbs +8 -0
  473. data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
  474. data/sig/metronome_sdk/resources/v2/contracts.rbs +8 -1
  475. metadata +20 -2
@@ -28,13 +28,13 @@ module MetronomeSDK
28
28
 
29
29
  # @!attribute commits
30
30
  #
31
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Commit>, nil]
31
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Commit>, nil]
32
32
  optional :commits,
33
33
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Commit] }
34
34
 
35
35
  # @!attribute credits
36
36
  #
37
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Credit>, nil]
37
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Credit>, nil]
38
38
  optional :credits,
39
39
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Credit] }
40
40
 
@@ -46,7 +46,7 @@ module MetronomeSDK
46
46
  # @!attribute discounts
47
47
  # This field's availability is dependent on your client's configuration.
48
48
  #
49
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Discount>, nil]
49
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Discount>, nil]
50
50
  optional :discounts,
51
51
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Discount] }
52
52
 
@@ -58,14 +58,14 @@ module MetronomeSDK
58
58
 
59
59
  # @!attribute overrides
60
60
  #
61
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Override>, nil]
61
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Override>, nil]
62
62
  optional :overrides,
63
63
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Override] }
64
64
 
65
65
  # @!attribute professional_services
66
66
  # This field's availability is dependent on your client's configuration.
67
67
  #
68
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::ProfessionalService>, nil]
68
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::ProfessionalService>, nil]
69
69
  optional :professional_services,
70
70
  -> {
71
71
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::ProfessionalService]
@@ -74,7 +74,7 @@ module MetronomeSDK
74
74
  # @!attribute reseller_royalties
75
75
  # This field's availability is dependent on your client's configuration.
76
76
  #
77
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty>, nil]
77
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty>, nil]
78
78
  optional :reseller_royalties,
79
79
  -> {
80
80
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty]
@@ -88,7 +88,7 @@ module MetronomeSDK
88
88
 
89
89
  # @!attribute scheduled_charges
90
90
  #
91
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::ScheduledCharge>, nil]
91
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge>, nil]
92
92
  optional :scheduled_charges,
93
93
  -> {
94
94
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::ScheduledCharge]
@@ -107,25 +107,25 @@ module MetronomeSDK
107
107
  #
108
108
  # @param starting_at [Time] inclusive start time for the amendment
109
109
  #
110
- # @param commits [Array<MetronomeSDK::V1::ContractAmendParams::Commit>]
110
+ # @param commits [Array<MetronomeSDK::Models::V1::ContractAmendParams::Commit>]
111
111
  #
112
- # @param credits [Array<MetronomeSDK::V1::ContractAmendParams::Credit>]
112
+ # @param credits [Array<MetronomeSDK::Models::V1::ContractAmendParams::Credit>]
113
113
  #
114
114
  # @param custom_fields [Hash{Symbol=>String}]
115
115
  #
116
- # @param discounts [Array<MetronomeSDK::V1::ContractAmendParams::Discount>] This field's availability is dependent on your client's configuration.
116
+ # @param discounts [Array<MetronomeSDK::Models::V1::ContractAmendParams::Discount>] This field's availability is dependent on your client's configuration.
117
117
  #
118
118
  # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
119
119
  #
120
- # @param overrides [Array<MetronomeSDK::V1::ContractAmendParams::Override>]
120
+ # @param overrides [Array<MetronomeSDK::Models::V1::ContractAmendParams::Override>]
121
121
  #
122
- # @param professional_services [Array<MetronomeSDK::V1::ContractAmendParams::ProfessionalService>] This field's availability is dependent on your client's configuration.
122
+ # @param professional_services [Array<MetronomeSDK::Models::V1::ContractAmendParams::ProfessionalService>] This field's availability is dependent on your client's configuration.
123
123
  #
124
- # @param reseller_royalties [Array<MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty>] This field's availability is dependent on your client's configuration.
124
+ # @param reseller_royalties [Array<MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty>] This field's availability is dependent on your client's configuration.
125
125
  #
126
126
  # @param salesforce_opportunity_id [String] This field's availability is dependent on your client's configuration.
127
127
  #
128
- # @param scheduled_charges [Array<MetronomeSDK::V1::ContractAmendParams::ScheduledCharge>]
128
+ # @param scheduled_charges [Array<MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge>]
129
129
  #
130
130
  # @param total_contract_value [Float] This field's availability is dependent on your client's configuration.
131
131
  #
@@ -139,7 +139,7 @@ module MetronomeSDK
139
139
 
140
140
  # @!attribute type
141
141
  #
142
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::Type]
142
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type]
143
143
  required :type, enum: -> { MetronomeSDK::V1::ContractAmendParams::Commit::Type }
144
144
 
145
145
  # @!attribute access_schedule
@@ -147,7 +147,7 @@ module MetronomeSDK
147
147
  # commits only one schedule item is allowed and amount must match invoice_schedule
148
148
  # total.
149
149
  #
150
- # @return [MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule, nil]
150
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule, nil]
151
151
  optional :access_schedule, -> { MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule }
152
152
 
153
153
  # @!attribute amount
@@ -157,15 +157,17 @@ module MetronomeSDK
157
157
  optional :amount, Float
158
158
 
159
159
  # @!attribute applicable_product_ids
160
- # Which products the commit applies to. If both applicable_product_ids and
161
- # applicable_product_tags are not provided, the commit applies to all products.
160
+ # Which products the commit applies to. If applicable_product_ids,
161
+ # applicable_product_tags or specifiers are not provided, the commit applies to
162
+ # all products.
162
163
  #
163
164
  # @return [Array<String>, nil]
164
165
  optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
165
166
 
166
167
  # @!attribute applicable_product_tags
167
- # Which tags the commit applies to. If both applicable_product_ids and
168
- # applicable_product_tags are not provided, the commit applies to all products.
168
+ # Which tags the commit applies to. If applicable_product_ids,
169
+ # applicable_product_tags or specifiers are not provided, the commit applies to
170
+ # all products.
169
171
  #
170
172
  # @return [Array<String>, nil]
171
173
  optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
@@ -181,13 +183,20 @@ module MetronomeSDK
181
183
  # @return [String, nil]
182
184
  optional :description, String
183
185
 
186
+ # @!attribute hierarchy_configuration
187
+ # Optional configuration for commit hierarchy access control
188
+ #
189
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration, nil]
190
+ optional :hierarchy_configuration,
191
+ -> { MetronomeSDK::V1::ContractAmendParams::Commit::HierarchyConfiguration }
192
+
184
193
  # @!attribute invoice_schedule
185
194
  # Required for "POSTPAID" commits: the true up invoice will be generated at this
186
195
  # time and only one schedule item is allowed; the total must match access_schedule
187
196
  # amount. Optional for "PREPAID" commits: if not provided, this will be a
188
197
  # "complimentary" commit with no invoice.
189
198
  #
190
- # @return [MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule, nil]
199
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule, nil]
191
200
  optional :invoice_schedule, -> { MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule }
192
201
 
193
202
  # @!attribute name
@@ -205,7 +214,7 @@ module MetronomeSDK
205
214
  # @!attribute payment_gate_config
206
215
  # optionally payment gate this commit
207
216
  #
208
- # @return [MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig, nil]
217
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig, nil]
209
218
  optional :payment_gate_config,
210
219
  -> {
211
220
  MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig
@@ -220,7 +229,7 @@ module MetronomeSDK
220
229
 
221
230
  # @!attribute rate_type
222
231
  #
223
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::RateType, nil]
232
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType, nil]
224
233
  optional :rate_type, enum: -> { MetronomeSDK::V1::ContractAmendParams::Commit::RateType }
225
234
 
226
235
  # @!attribute rollover_fraction
@@ -229,6 +238,18 @@ module MetronomeSDK
229
238
  # @return [Float, nil]
230
239
  optional :rollover_fraction, Float
231
240
 
241
+ # @!attribute specifiers
242
+ # List of filters that determine what kind of customer usage draws down a commit
243
+ # or credit. A customer's usage needs to meet the condition of at least one of the
244
+ # specifiers to contribute to a commit's or credit's drawdown. This field cannot
245
+ # be used together with `applicable_product_ids` or `applicable_product_tags`.
246
+ #
247
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Commit::Specifier>, nil]
248
+ optional :specifiers,
249
+ -> {
250
+ MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Commit::Specifier]
251
+ }
252
+
232
253
  # @!attribute temporary_id
233
254
  # A temporary ID for the commit that can be used to reference the commit for
234
255
  # commit specific overrides.
@@ -236,43 +257,47 @@ module MetronomeSDK
236
257
  # @return [String, nil]
237
258
  optional :temporary_id, String
238
259
 
239
- # @!method initialize(product_id:, type:, access_schedule: nil, amount: nil, applicable_product_ids: nil, applicable_product_tags: nil, custom_fields: nil, description: nil, invoice_schedule: nil, name: nil, netsuite_sales_order_id: nil, payment_gate_config: nil, priority: nil, rate_type: nil, rollover_fraction: nil, temporary_id: nil)
260
+ # @!method initialize(product_id:, type:, access_schedule: nil, amount: nil, applicable_product_ids: nil, applicable_product_tags: nil, custom_fields: nil, description: nil, hierarchy_configuration: nil, invoice_schedule: nil, name: nil, netsuite_sales_order_id: nil, payment_gate_config: nil, priority: nil, rate_type: nil, rollover_fraction: nil, specifiers: nil, temporary_id: nil)
240
261
  # Some parameter documentations has been truncated, see
241
- # {MetronomeSDK::V1::ContractAmendParams::Commit} for more details.
262
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Commit} for more details.
242
263
  #
243
264
  # @param product_id [String]
244
265
  #
245
- # @param type [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::Type]
266
+ # @param type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type]
246
267
  #
247
- # @param access_schedule [MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule] Required: Schedule for distributing the commit to the customer. For "POSTPAID" c
268
+ # @param access_schedule [MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule] Required: Schedule for distributing the commit to the customer. For "POSTPAID" c
248
269
  #
249
270
  # @param amount [Float] (DEPRECATED) Use access_schedule and invoice_schedule instead.
250
271
  #
251
- # @param applicable_product_ids [Array<String>] Which products the commit applies to. If both applicable_product_ids and applica
272
+ # @param applicable_product_ids [Array<String>] Which products the commit applies to. If applicable_product_ids, applicable_prod
252
273
  #
253
- # @param applicable_product_tags [Array<String>] Which tags the commit applies to. If both applicable*product_ids and applicable*
274
+ # @param applicable_product_tags [Array<String>] Which tags the commit applies to. If applicable*product_ids, applicable_product*
254
275
  #
255
276
  # @param custom_fields [Hash{Symbol=>String}]
256
277
  #
257
278
  # @param description [String] Used only in UI/API. It is not exposed to end customers.
258
279
  #
259
- # @param invoice_schedule [MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule] Required for "POSTPAID" commits: the true up invoice will be generated at this t
280
+ # @param hierarchy_configuration [MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration] Optional configuration for commit hierarchy access control
281
+ #
282
+ # @param invoice_schedule [MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule] Required for "POSTPAID" commits: the true up invoice will be generated at this t
260
283
  #
261
284
  # @param name [String] displayed on invoices
262
285
  #
263
286
  # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
264
287
  #
265
- # @param payment_gate_config [MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig] optionally payment gate this commit
288
+ # @param payment_gate_config [MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig] optionally payment gate this commit
266
289
  #
267
290
  # @param priority [Float] If multiple commits are applicable, the one with the lower priority will apply f
268
291
  #
269
- # @param rate_type [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::RateType]
292
+ # @param rate_type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType]
270
293
  #
271
294
  # @param rollover_fraction [Float] Fraction of unused segments that will be rolled over. Must be between 0 and 1.
272
295
  #
296
+ # @param specifiers [Array<MetronomeSDK::Models::V1::ContractAmendParams::Commit::Specifier>] List of filters that determine what kind of customer usage draws down a commit o
297
+ #
273
298
  # @param temporary_id [String] A temporary ID for the commit that can be used to reference the commit for commi
274
299
 
275
- # @see MetronomeSDK::V1::ContractAmendParams::Commit#type
300
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit#type
276
301
  module Type
277
302
  extend MetronomeSDK::Internal::Type::Enum
278
303
 
@@ -283,11 +308,11 @@ module MetronomeSDK
283
308
  # @return [Array<Symbol>]
284
309
  end
285
310
 
286
- # @see MetronomeSDK::V1::ContractAmendParams::Commit#access_schedule
311
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit#access_schedule
287
312
  class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
288
313
  # @!attribute schedule_items
289
314
  #
290
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem>]
315
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem>]
291
316
  required :schedule_items,
292
317
  -> {
293
318
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem]
@@ -304,7 +329,7 @@ module MetronomeSDK
304
329
  # commits only one schedule item is allowed and amount must match invoice_schedule
305
330
  # total.
306
331
  #
307
- # @param schedule_items [Array<MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem>]
332
+ # @param schedule_items [Array<MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem>]
308
333
  #
309
334
  # @param credit_type_id [String] Defaults to USD (cents) if not passed
310
335
 
@@ -335,7 +360,118 @@ module MetronomeSDK
335
360
  end
336
361
  end
337
362
 
338
- # @see MetronomeSDK::V1::ContractAmendParams::Commit#invoice_schedule
363
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit#hierarchy_configuration
364
+ class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
365
+ # @!attribute child_access
366
+ #
367
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
368
+ required :child_access,
369
+ union: -> {
370
+ MetronomeSDK::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess
371
+ }
372
+
373
+ # @!method initialize(child_access:)
374
+ # Optional configuration for commit hierarchy access control
375
+ #
376
+ # @param child_access [MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
377
+
378
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration#child_access
379
+ module ChildAccess
380
+ extend MetronomeSDK::Internal::Type::Union
381
+
382
+ variant -> {
383
+ MetronomeSDK::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
384
+ }
385
+
386
+ variant -> {
387
+ MetronomeSDK::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
388
+ }
389
+
390
+ variant -> {
391
+ MetronomeSDK::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
392
+ }
393
+
394
+ class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
395
+ # @!attribute type
396
+ #
397
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
398
+ required :type,
399
+ enum: -> {
400
+ MetronomeSDK::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
401
+ }
402
+
403
+ # @!method initialize(type:)
404
+ # @param type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
405
+
406
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll#type
407
+ module Type
408
+ extend MetronomeSDK::Internal::Type::Enum
409
+
410
+ ALL = :ALL
411
+
412
+ # @!method self.values
413
+ # @return [Array<Symbol>]
414
+ end
415
+ end
416
+
417
+ class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
418
+ # @!attribute type
419
+ #
420
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
421
+ required :type,
422
+ enum: -> {
423
+ MetronomeSDK::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
424
+ }
425
+
426
+ # @!method initialize(type:)
427
+ # @param type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
428
+
429
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone#type
430
+ module Type
431
+ extend MetronomeSDK::Internal::Type::Enum
432
+
433
+ NONE = :NONE
434
+
435
+ # @!method self.values
436
+ # @return [Array<Symbol>]
437
+ end
438
+ end
439
+
440
+ class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
441
+ # @!attribute contract_ids
442
+ #
443
+ # @return [Array<String>]
444
+ required :contract_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
445
+
446
+ # @!attribute type
447
+ #
448
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
449
+ required :type,
450
+ enum: -> {
451
+ MetronomeSDK::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
452
+ }
453
+
454
+ # @!method initialize(contract_ids:, type:)
455
+ # @param contract_ids [Array<String>]
456
+ # @param type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
457
+
458
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs#type
459
+ module Type
460
+ extend MetronomeSDK::Internal::Type::Enum
461
+
462
+ CONTRACT_IDS = :CONTRACT_IDS
463
+
464
+ # @!method self.values
465
+ # @return [Array<Symbol>]
466
+ end
467
+ end
468
+
469
+ # @!method self.variants
470
+ # @return [Array(MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractAmendParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs)]
471
+ end
472
+ end
473
+
474
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit#invoice_schedule
339
475
  class InvoiceSchedule < MetronomeSDK::Internal::Type::BaseModel
340
476
  # @!attribute credit_type_id
341
477
  # Defaults to USD (cents) if not passed.
@@ -348,14 +484,14 @@ module MetronomeSDK
348
484
  # amount. If amount is sent, the unit price is assumed to be the amount and
349
485
  # quantity is inferred to be 1.
350
486
  #
351
- # @return [MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule, nil]
487
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule, nil]
352
488
  optional :recurring_schedule,
353
489
  -> { MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule }
354
490
 
355
491
  # @!attribute schedule_items
356
492
  # Either provide amount or provide both unit_price and quantity.
357
493
  #
358
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem>, nil]
494
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem>, nil]
359
495
  optional :schedule_items,
360
496
  -> {
361
497
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem]
@@ -363,8 +499,8 @@ module MetronomeSDK
363
499
 
364
500
  # @!method initialize(credit_type_id: nil, recurring_schedule: nil, schedule_items: nil)
365
501
  # Some parameter documentations has been truncated, see
366
- # {MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule} for more
367
- # details.
502
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule} for
503
+ # more details.
368
504
  #
369
505
  # Required for "POSTPAID" commits: the true up invoice will be generated at this
370
506
  # time and only one schedule item is allowed; the total must match access_schedule
@@ -373,15 +509,15 @@ module MetronomeSDK
373
509
  #
374
510
  # @param credit_type_id [String] Defaults to USD (cents) if not passed.
375
511
  #
376
- # @param recurring_schedule [MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
512
+ # @param recurring_schedule [MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
377
513
  #
378
- # @param schedule_items [Array<MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
514
+ # @param schedule_items [Array<MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
379
515
 
380
- # @see MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule#recurring_schedule
516
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule#recurring_schedule
381
517
  class RecurringSchedule < MetronomeSDK::Internal::Type::BaseModel
382
518
  # @!attribute amount_distribution
383
519
  #
384
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution]
520
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution]
385
521
  required :amount_distribution,
386
522
  enum: -> {
387
523
  MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution
@@ -395,7 +531,7 @@ module MetronomeSDK
395
531
 
396
532
  # @!attribute frequency
397
533
  #
398
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency]
534
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency]
399
535
  required :frequency,
400
536
  enum: -> {
401
537
  MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency
@@ -433,18 +569,18 @@ module MetronomeSDK
433
569
 
434
570
  # @!method initialize(amount_distribution:, ending_before:, frequency:, starting_at:, amount: nil, quantity: nil, unit_price: nil)
435
571
  # Some parameter documentations has been truncated, see
436
- # {MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule}
572
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule}
437
573
  # for more details.
438
574
  #
439
575
  # Enter the unit price and quantity for the charge or instead only send the
440
576
  # amount. If amount is sent, the unit price is assumed to be the amount and
441
577
  # quantity is inferred to be 1.
442
578
  #
443
- # @param amount_distribution [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution]
579
+ # @param amount_distribution [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution]
444
580
  #
445
581
  # @param ending_before [Time] RFC 3339 timestamp (exclusive).
446
582
  #
447
- # @param frequency [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency]
583
+ # @param frequency [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency]
448
584
  #
449
585
  # @param starting_at [Time] RFC 3339 timestamp (inclusive).
450
586
  #
@@ -454,7 +590,7 @@ module MetronomeSDK
454
590
  #
455
591
  # @param unit_price [Float] Unit price for the charge. Will be multiplied by quantity to determine the amoun
456
592
 
457
- # @see MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule#amount_distribution
593
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule#amount_distribution
458
594
  module AmountDistribution
459
595
  extend MetronomeSDK::Internal::Type::Enum
460
596
 
@@ -466,7 +602,7 @@ module MetronomeSDK
466
602
  # @return [Array<Symbol>]
467
603
  end
468
604
 
469
- # @see MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule#frequency
605
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule#frequency
470
606
  module Frequency
471
607
  extend MetronomeSDK::Internal::Type::Enum
472
608
 
@@ -513,7 +649,7 @@ module MetronomeSDK
513
649
 
514
650
  # @!method initialize(timestamp:, amount: nil, quantity: nil, unit_price: nil)
515
651
  # Some parameter documentations has been truncated, see
516
- # {MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem}
652
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem}
517
653
  # for more details.
518
654
  #
519
655
  # @param timestamp [Time] timestamp of the scheduled event
@@ -526,7 +662,7 @@ module MetronomeSDK
526
662
  end
527
663
  end
528
664
 
529
- # @see MetronomeSDK::V1::ContractAmendParams::Commit#payment_gate_config
665
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit#payment_gate_config
530
666
  class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
531
667
  # @!attribute payment_gate_type
532
668
  # Gate access to the commit balance based on successful collection of payment.
@@ -534,16 +670,25 @@ module MetronomeSDK
534
670
  # facilitate payment using your own payment integration. Select NONE if you do not
535
671
  # wish to payment gate the commit balance.
536
672
  #
537
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType]
673
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType]
538
674
  required :payment_gate_type,
539
675
  enum: -> {
540
676
  MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType
541
677
  }
542
678
 
679
+ # @!attribute precalculated_tax_config
680
+ # Only applicable if using PRECALCULATED as your tax type.
681
+ #
682
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig, nil]
683
+ optional :precalculated_tax_config,
684
+ -> {
685
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig
686
+ }
687
+
543
688
  # @!attribute stripe_config
544
- # Only applicable if using Stripe as your payment gateway through Metronome.
689
+ # Only applicable if using STRIPE as your payment gate type.
545
690
  #
546
- # @return [MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig, nil]
691
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig, nil]
547
692
  optional :stripe_config,
548
693
  -> { MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig }
549
694
 
@@ -552,31 +697,33 @@ module MetronomeSDK
552
697
  # not wish Metronome to calculate tax on your behalf. Leaving this field blank
553
698
  # will default to NONE.
554
699
  #
555
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType, nil]
700
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType, nil]
556
701
  optional :tax_type,
557
702
  enum: -> {
558
703
  MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType
559
704
  }
560
705
 
561
- # @!method initialize(payment_gate_type:, stripe_config: nil, tax_type: nil)
706
+ # @!method initialize(payment_gate_type:, precalculated_tax_config: nil, stripe_config: nil, tax_type: nil)
562
707
  # Some parameter documentations has been truncated, see
563
- # {MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig} for more
564
- # details.
708
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig} for
709
+ # more details.
565
710
  #
566
711
  # optionally payment gate this commit
567
712
  #
568
- # @param payment_gate_type [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType] Gate access to the commit balance based on successful collection of payment. Sel
713
+ # @param payment_gate_type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType] Gate access to the commit balance based on successful collection of payment. Sel
569
714
  #
570
- # @param stripe_config [MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig] Only applicable if using Stripe as your payment gateway through Metronome.
715
+ # @param precalculated_tax_config [MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig] Only applicable if using PRECALCULATED as your tax type.
571
716
  #
572
- # @param tax_type [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType] Stripe tax is only supported for Stripe payment gateway. Select NONE if you do n
717
+ # @param stripe_config [MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig] Only applicable if using STRIPE as your payment gate type.
718
+ #
719
+ # @param tax_type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType] Stripe tax is only supported for Stripe payment gateway. Select NONE if you do n
573
720
 
574
721
  # Gate access to the commit balance based on successful collection of payment.
575
722
  # Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
576
723
  # facilitate payment using your own payment integration. Select NONE if you do not
577
724
  # wish to payment gate the commit balance.
578
725
  #
579
- # @see MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig#payment_gate_type
726
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig#payment_gate_type
580
727
  module PaymentGateType
581
728
  extend MetronomeSDK::Internal::Type::Enum
582
729
 
@@ -588,25 +735,66 @@ module MetronomeSDK
588
735
  # @return [Array<Symbol>]
589
736
  end
590
737
 
591
- # @see MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig#stripe_config
738
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig#precalculated_tax_config
739
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
740
+ # @!attribute tax_amount
741
+ # Amount of tax to be applied. This should be in the same currency and
742
+ # denomination as the commit's invoice schedule
743
+ #
744
+ # @return [Float]
745
+ required :tax_amount, Float
746
+
747
+ # @!attribute tax_name
748
+ # Name of the tax to be applied. This may be used in an invoice line item
749
+ # description.
750
+ #
751
+ # @return [String, nil]
752
+ optional :tax_name, String
753
+
754
+ # @!method initialize(tax_amount:, tax_name: nil)
755
+ # Some parameter documentations has been truncated, see
756
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig}
757
+ # for more details.
758
+ #
759
+ # Only applicable if using PRECALCULATED as your tax type.
760
+ #
761
+ # @param tax_amount [Float] Amount of tax to be applied. This should be in the same currency and denominatio
762
+ #
763
+ # @param tax_name [String] Name of the tax to be applied. This may be used in an invoice line item descript
764
+ end
765
+
766
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig#stripe_config
592
767
  class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
593
768
  # @!attribute payment_type
594
769
  # If left blank, will default to INVOICE
595
770
  #
596
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType]
771
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType]
597
772
  required :payment_type,
598
773
  enum: -> {
599
774
  MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType
600
775
  }
601
776
 
602
- # @!method initialize(payment_type:)
603
- # Only applicable if using Stripe as your payment gateway through Metronome.
777
+ # @!attribute invoice_metadata
778
+ # Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
779
+ # your payment type.
604
780
  #
605
- # @param payment_type [Symbol, MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
781
+ # @return [Hash{Symbol=>String}, nil]
782
+ optional :invoice_metadata, MetronomeSDK::Internal::Type::HashOf[String]
783
+
784
+ # @!method initialize(payment_type:, invoice_metadata: nil)
785
+ # Some parameter documentations has been truncated, see
786
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig}
787
+ # for more details.
788
+ #
789
+ # Only applicable if using STRIPE as your payment gate type.
790
+ #
791
+ # @param payment_type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
792
+ #
793
+ # @param invoice_metadata [Hash{Symbol=>String}] Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
606
794
 
607
795
  # If left blank, will default to INVOICE
608
796
  #
609
- # @see MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig#payment_type
797
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig#payment_type
610
798
  module PaymentType
611
799
  extend MetronomeSDK::Internal::Type::Enum
612
800
 
@@ -622,19 +810,21 @@ module MetronomeSDK
622
810
  # not wish Metronome to calculate tax on your behalf. Leaving this field blank
623
811
  # will default to NONE.
624
812
  #
625
- # @see MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig#tax_type
813
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig#tax_type
626
814
  module TaxType
627
815
  extend MetronomeSDK::Internal::Type::Enum
628
816
 
629
817
  NONE = :NONE
630
818
  STRIPE = :STRIPE
819
+ ANROK = :ANROK
820
+ PRECALCULATED = :PRECALCULATED
631
821
 
632
822
  # @!method self.values
633
823
  # @return [Array<Symbol>]
634
824
  end
635
825
  end
636
826
 
637
- # @see MetronomeSDK::V1::ContractAmendParams::Commit#rate_type
827
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Commit#rate_type
638
828
  module RateType
639
829
  extend MetronomeSDK::Internal::Type::Enum
640
830
 
@@ -644,13 +834,51 @@ module MetronomeSDK
644
834
  # @!method self.values
645
835
  # @return [Array<Symbol>]
646
836
  end
837
+
838
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
839
+ # @!attribute presentation_group_values
840
+ #
841
+ # @return [Hash{Symbol=>String}, nil]
842
+ optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String]
843
+
844
+ # @!attribute pricing_group_values
845
+ #
846
+ # @return [Hash{Symbol=>String}, nil]
847
+ optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
848
+
849
+ # @!attribute product_id
850
+ # If provided, the specifier will only apply to the product with the specified ID.
851
+ #
852
+ # @return [String, nil]
853
+ optional :product_id, String
854
+
855
+ # @!attribute product_tags
856
+ # If provided, the specifier will only apply to products with all the specified
857
+ # tags.
858
+ #
859
+ # @return [Array<String>, nil]
860
+ optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
861
+
862
+ # @!method initialize(presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil)
863
+ # Some parameter documentations has been truncated, see
864
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Commit::Specifier} for more
865
+ # details.
866
+ #
867
+ # @param presentation_group_values [Hash{Symbol=>String}]
868
+ #
869
+ # @param pricing_group_values [Hash{Symbol=>String}]
870
+ #
871
+ # @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
872
+ #
873
+ # @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
874
+ end
647
875
  end
648
876
 
649
877
  class Credit < MetronomeSDK::Internal::Type::BaseModel
650
878
  # @!attribute access_schedule
651
879
  # Schedule for distributing the credit to the customer.
652
880
  #
653
- # @return [MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule]
881
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule]
654
882
  required :access_schedule, -> { MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule }
655
883
 
656
884
  # @!attribute product_id
@@ -683,6 +911,13 @@ module MetronomeSDK
683
911
  # @return [String, nil]
684
912
  optional :description, String
685
913
 
914
+ # @!attribute hierarchy_configuration
915
+ # Optional configuration for credit hierarchy access control
916
+ #
917
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration, nil]
918
+ optional :hierarchy_configuration,
919
+ -> { MetronomeSDK::V1::ContractAmendParams::Credit::HierarchyConfiguration }
920
+
686
921
  # @!attribute name
687
922
  # displayed on invoices
688
923
  #
@@ -704,14 +939,26 @@ module MetronomeSDK
704
939
 
705
940
  # @!attribute rate_type
706
941
  #
707
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Credit::RateType, nil]
942
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType, nil]
708
943
  optional :rate_type, enum: -> { MetronomeSDK::V1::ContractAmendParams::Credit::RateType }
709
944
 
710
- # @!method initialize(access_schedule:, product_id:, applicable_product_ids: nil, applicable_product_tags: nil, custom_fields: nil, description: nil, name: nil, netsuite_sales_order_id: nil, priority: nil, rate_type: nil)
945
+ # @!attribute specifiers
946
+ # List of filters that determine what kind of customer usage draws down a commit
947
+ # or credit. A customer's usage needs to meet the condition of at least one of the
948
+ # specifiers to contribute to a commit's or credit's drawdown. This field cannot
949
+ # be used together with `applicable_product_ids` or `applicable_product_tags`.
950
+ #
951
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Credit::Specifier>, nil]
952
+ optional :specifiers,
953
+ -> {
954
+ MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Credit::Specifier]
955
+ }
956
+
957
+ # @!method initialize(access_schedule:, product_id:, applicable_product_ids: nil, applicable_product_tags: nil, custom_fields: nil, description: nil, hierarchy_configuration: nil, name: nil, netsuite_sales_order_id: nil, priority: nil, rate_type: nil, specifiers: nil)
711
958
  # Some parameter documentations has been truncated, see
712
- # {MetronomeSDK::V1::ContractAmendParams::Credit} for more details.
959
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Credit} for more details.
713
960
  #
714
- # @param access_schedule [MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule] Schedule for distributing the credit to the customer.
961
+ # @param access_schedule [MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule] Schedule for distributing the credit to the customer.
715
962
  #
716
963
  # @param product_id [String]
717
964
  #
@@ -723,19 +970,23 @@ module MetronomeSDK
723
970
  #
724
971
  # @param description [String] Used only in UI/API. It is not exposed to end customers.
725
972
  #
973
+ # @param hierarchy_configuration [MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration] Optional configuration for credit hierarchy access control
974
+ #
726
975
  # @param name [String] displayed on invoices
727
976
  #
728
977
  # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
729
978
  #
730
979
  # @param priority [Float] If multiple credits are applicable, the one with the lower priority will apply f
731
980
  #
732
- # @param rate_type [Symbol, MetronomeSDK::V1::ContractAmendParams::Credit::RateType]
981
+ # @param rate_type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType]
982
+ #
983
+ # @param specifiers [Array<MetronomeSDK::Models::V1::ContractAmendParams::Credit::Specifier>] List of filters that determine what kind of customer usage draws down a commit o
733
984
 
734
- # @see MetronomeSDK::V1::ContractAmendParams::Credit#access_schedule
985
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Credit#access_schedule
735
986
  class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
736
987
  # @!attribute schedule_items
737
988
  #
738
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem>]
989
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem>]
739
990
  required :schedule_items,
740
991
  -> {
741
992
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem]
@@ -750,7 +1001,7 @@ module MetronomeSDK
750
1001
  # @!method initialize(schedule_items:, credit_type_id: nil)
751
1002
  # Schedule for distributing the credit to the customer.
752
1003
  #
753
- # @param schedule_items [Array<MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem>]
1004
+ # @param schedule_items [Array<MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem>]
754
1005
  #
755
1006
  # @param credit_type_id [String] Defaults to USD (cents) if not passed
756
1007
 
@@ -781,7 +1032,118 @@ module MetronomeSDK
781
1032
  end
782
1033
  end
783
1034
 
784
- # @see MetronomeSDK::V1::ContractAmendParams::Credit#rate_type
1035
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Credit#hierarchy_configuration
1036
+ class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
1037
+ # @!attribute child_access
1038
+ #
1039
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
1040
+ required :child_access,
1041
+ union: -> {
1042
+ MetronomeSDK::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess
1043
+ }
1044
+
1045
+ # @!method initialize(child_access:)
1046
+ # Optional configuration for credit hierarchy access control
1047
+ #
1048
+ # @param child_access [MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
1049
+
1050
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration#child_access
1051
+ module ChildAccess
1052
+ extend MetronomeSDK::Internal::Type::Union
1053
+
1054
+ variant -> {
1055
+ MetronomeSDK::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
1056
+ }
1057
+
1058
+ variant -> {
1059
+ MetronomeSDK::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
1060
+ }
1061
+
1062
+ variant -> {
1063
+ MetronomeSDK::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
1064
+ }
1065
+
1066
+ class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
1067
+ # @!attribute type
1068
+ #
1069
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
1070
+ required :type,
1071
+ enum: -> {
1072
+ MetronomeSDK::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
1073
+ }
1074
+
1075
+ # @!method initialize(type:)
1076
+ # @param type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
1077
+
1078
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll#type
1079
+ module Type
1080
+ extend MetronomeSDK::Internal::Type::Enum
1081
+
1082
+ ALL = :ALL
1083
+
1084
+ # @!method self.values
1085
+ # @return [Array<Symbol>]
1086
+ end
1087
+ end
1088
+
1089
+ class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
1090
+ # @!attribute type
1091
+ #
1092
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
1093
+ required :type,
1094
+ enum: -> {
1095
+ MetronomeSDK::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
1096
+ }
1097
+
1098
+ # @!method initialize(type:)
1099
+ # @param type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
1100
+
1101
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone#type
1102
+ module Type
1103
+ extend MetronomeSDK::Internal::Type::Enum
1104
+
1105
+ NONE = :NONE
1106
+
1107
+ # @!method self.values
1108
+ # @return [Array<Symbol>]
1109
+ end
1110
+ end
1111
+
1112
+ class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
1113
+ # @!attribute contract_ids
1114
+ #
1115
+ # @return [Array<String>]
1116
+ required :contract_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
1117
+
1118
+ # @!attribute type
1119
+ #
1120
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
1121
+ required :type,
1122
+ enum: -> {
1123
+ MetronomeSDK::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
1124
+ }
1125
+
1126
+ # @!method initialize(contract_ids:, type:)
1127
+ # @param contract_ids [Array<String>]
1128
+ # @param type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
1129
+
1130
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs#type
1131
+ module Type
1132
+ extend MetronomeSDK::Internal::Type::Enum
1133
+
1134
+ CONTRACT_IDS = :CONTRACT_IDS
1135
+
1136
+ # @!method self.values
1137
+ # @return [Array<Symbol>]
1138
+ end
1139
+ end
1140
+
1141
+ # @!method self.variants
1142
+ # @return [Array(MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractAmendParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs)]
1143
+ end
1144
+ end
1145
+
1146
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Credit#rate_type
785
1147
  module RateType
786
1148
  extend MetronomeSDK::Internal::Type::Enum
787
1149
 
@@ -791,6 +1153,44 @@ module MetronomeSDK
791
1153
  # @!method self.values
792
1154
  # @return [Array<Symbol>]
793
1155
  end
1156
+
1157
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
1158
+ # @!attribute presentation_group_values
1159
+ #
1160
+ # @return [Hash{Symbol=>String}, nil]
1161
+ optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String]
1162
+
1163
+ # @!attribute pricing_group_values
1164
+ #
1165
+ # @return [Hash{Symbol=>String}, nil]
1166
+ optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
1167
+
1168
+ # @!attribute product_id
1169
+ # If provided, the specifier will only apply to the product with the specified ID.
1170
+ #
1171
+ # @return [String, nil]
1172
+ optional :product_id, String
1173
+
1174
+ # @!attribute product_tags
1175
+ # If provided, the specifier will only apply to products with all the specified
1176
+ # tags.
1177
+ #
1178
+ # @return [Array<String>, nil]
1179
+ optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
1180
+
1181
+ # @!method initialize(presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil)
1182
+ # Some parameter documentations has been truncated, see
1183
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Credit::Specifier} for more
1184
+ # details.
1185
+ #
1186
+ # @param presentation_group_values [Hash{Symbol=>String}]
1187
+ #
1188
+ # @param pricing_group_values [Hash{Symbol=>String}]
1189
+ #
1190
+ # @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
1191
+ #
1192
+ # @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
1193
+ end
794
1194
  end
795
1195
 
796
1196
  class Discount < MetronomeSDK::Internal::Type::BaseModel
@@ -802,7 +1202,7 @@ module MetronomeSDK
802
1202
  # @!attribute schedule
803
1203
  # Must provide either schedule_items or recurring_schedule.
804
1204
  #
805
- # @return [MetronomeSDK::V1::ContractAmendParams::Discount::Schedule]
1205
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule]
806
1206
  required :schedule, -> { MetronomeSDK::V1::ContractAmendParams::Discount::Schedule }
807
1207
 
808
1208
  # @!attribute custom_fields
@@ -825,7 +1225,7 @@ module MetronomeSDK
825
1225
  # @!method initialize(product_id:, schedule:, custom_fields: nil, name: nil, netsuite_sales_order_id: nil)
826
1226
  # @param product_id [String]
827
1227
  #
828
- # @param schedule [MetronomeSDK::V1::ContractAmendParams::Discount::Schedule] Must provide either schedule_items or recurring_schedule.
1228
+ # @param schedule [MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule] Must provide either schedule_items or recurring_schedule.
829
1229
  #
830
1230
  # @param custom_fields [Hash{Symbol=>String}]
831
1231
  #
@@ -833,7 +1233,7 @@ module MetronomeSDK
833
1233
  #
834
1234
  # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
835
1235
 
836
- # @see MetronomeSDK::V1::ContractAmendParams::Discount#schedule
1236
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Discount#schedule
837
1237
  class Schedule < MetronomeSDK::Internal::Type::BaseModel
838
1238
  # @!attribute credit_type_id
839
1239
  # Defaults to USD (cents) if not passed.
@@ -846,14 +1246,14 @@ module MetronomeSDK
846
1246
  # amount. If amount is sent, the unit price is assumed to be the amount and
847
1247
  # quantity is inferred to be 1.
848
1248
  #
849
- # @return [MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule, nil]
1249
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule, nil]
850
1250
  optional :recurring_schedule,
851
1251
  -> { MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule }
852
1252
 
853
1253
  # @!attribute schedule_items
854
1254
  # Either provide amount or provide both unit_price and quantity.
855
1255
  #
856
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem>, nil]
1256
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::ScheduleItem>, nil]
857
1257
  optional :schedule_items,
858
1258
  -> {
859
1259
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem]
@@ -861,21 +1261,22 @@ module MetronomeSDK
861
1261
 
862
1262
  # @!method initialize(credit_type_id: nil, recurring_schedule: nil, schedule_items: nil)
863
1263
  # Some parameter documentations has been truncated, see
864
- # {MetronomeSDK::V1::ContractAmendParams::Discount::Schedule} for more details.
1264
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule} for more
1265
+ # details.
865
1266
  #
866
1267
  # Must provide either schedule_items or recurring_schedule.
867
1268
  #
868
1269
  # @param credit_type_id [String] Defaults to USD (cents) if not passed.
869
1270
  #
870
- # @param recurring_schedule [MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
1271
+ # @param recurring_schedule [MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
871
1272
  #
872
- # @param schedule_items [Array<MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
1273
+ # @param schedule_items [Array<MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
873
1274
 
874
- # @see MetronomeSDK::V1::ContractAmendParams::Discount::Schedule#recurring_schedule
1275
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule#recurring_schedule
875
1276
  class RecurringSchedule < MetronomeSDK::Internal::Type::BaseModel
876
1277
  # @!attribute amount_distribution
877
1278
  #
878
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution]
1279
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution]
879
1280
  required :amount_distribution,
880
1281
  enum: -> {
881
1282
  MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution
@@ -889,7 +1290,7 @@ module MetronomeSDK
889
1290
 
890
1291
  # @!attribute frequency
891
1292
  #
892
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency]
1293
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency]
893
1294
  required :frequency,
894
1295
  enum: -> {
895
1296
  MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency
@@ -927,18 +1328,18 @@ module MetronomeSDK
927
1328
 
928
1329
  # @!method initialize(amount_distribution:, ending_before:, frequency:, starting_at:, amount: nil, quantity: nil, unit_price: nil)
929
1330
  # Some parameter documentations has been truncated, see
930
- # {MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule}
1331
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule}
931
1332
  # for more details.
932
1333
  #
933
1334
  # Enter the unit price and quantity for the charge or instead only send the
934
1335
  # amount. If amount is sent, the unit price is assumed to be the amount and
935
1336
  # quantity is inferred to be 1.
936
1337
  #
937
- # @param amount_distribution [Symbol, MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution]
1338
+ # @param amount_distribution [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution]
938
1339
  #
939
1340
  # @param ending_before [Time] RFC 3339 timestamp (exclusive).
940
1341
  #
941
- # @param frequency [Symbol, MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency]
1342
+ # @param frequency [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency]
942
1343
  #
943
1344
  # @param starting_at [Time] RFC 3339 timestamp (inclusive).
944
1345
  #
@@ -948,7 +1349,7 @@ module MetronomeSDK
948
1349
  #
949
1350
  # @param unit_price [Float] Unit price for the charge. Will be multiplied by quantity to determine the amoun
950
1351
 
951
- # @see MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule#amount_distribution
1352
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule#amount_distribution
952
1353
  module AmountDistribution
953
1354
  extend MetronomeSDK::Internal::Type::Enum
954
1355
 
@@ -960,7 +1361,7 @@ module MetronomeSDK
960
1361
  # @return [Array<Symbol>]
961
1362
  end
962
1363
 
963
- # @see MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule#frequency
1364
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule#frequency
964
1365
  module Frequency
965
1366
  extend MetronomeSDK::Internal::Type::Enum
966
1367
 
@@ -1007,8 +1408,8 @@ module MetronomeSDK
1007
1408
 
1008
1409
  # @!method initialize(timestamp:, amount: nil, quantity: nil, unit_price: nil)
1009
1410
  # Some parameter documentations has been truncated, see
1010
- # {MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem} for
1011
- # more details.
1411
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::ScheduleItem}
1412
+ # for more details.
1012
1413
  #
1013
1414
  # @param timestamp [Time] timestamp of the scheduled event
1014
1415
  #
@@ -1065,7 +1466,7 @@ module MetronomeSDK
1065
1466
  # Cannot be used in conjunction with product_id or applicable_product_tags. If
1066
1467
  # provided, the override will apply to all products with the specified specifiers.
1067
1468
  #
1068
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier>, nil]
1469
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier>, nil]
1069
1470
  optional :override_specifiers,
1070
1471
  -> {
1071
1472
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier]
@@ -1074,7 +1475,7 @@ module MetronomeSDK
1074
1475
  # @!attribute overwrite_rate
1075
1476
  # Required for OVERWRITE type.
1076
1477
  #
1077
- # @return [MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate, nil]
1478
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate, nil]
1078
1479
  optional :overwrite_rate, -> { MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate }
1079
1480
 
1080
1481
  # @!attribute priority
@@ -1098,13 +1499,13 @@ module MetronomeSDK
1098
1499
  # be used for overrides that have `is_commit_specific` set to `true`. Defaults to
1099
1500
  # `"LIST_RATE"`.
1100
1501
  #
1101
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Override::Target, nil]
1502
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::Target, nil]
1102
1503
  optional :target, enum: -> { MetronomeSDK::V1::ContractAmendParams::Override::Target }
1103
1504
 
1104
1505
  # @!attribute tiers
1105
1506
  # Required for TIERED type. Must have at least one tier.
1106
1507
  #
1107
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::Override::Tier>, nil]
1508
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::Override::Tier>, nil]
1108
1509
  optional :tiers,
1109
1510
  -> {
1110
1511
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Override::Tier]
@@ -1113,12 +1514,12 @@ module MetronomeSDK
1113
1514
  # @!attribute type
1114
1515
  # Overwrites are prioritized over multipliers and tiered overrides.
1115
1516
  #
1116
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Override::Type, nil]
1517
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::Type, nil]
1117
1518
  optional :type, enum: -> { MetronomeSDK::V1::ContractAmendParams::Override::Type }
1118
1519
 
1119
1520
  # @!method initialize(starting_at:, applicable_product_tags: nil, ending_before: nil, entitled: nil, is_commit_specific: nil, multiplier: nil, override_specifiers: nil, overwrite_rate: nil, priority: nil, product_id: nil, target: nil, tiers: nil, type: nil)
1120
1521
  # Some parameter documentations has been truncated, see
1121
- # {MetronomeSDK::V1::ContractAmendParams::Override} for more details.
1522
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Override} for more details.
1122
1523
  #
1123
1524
  # @param starting_at [Time] RFC 3339 timestamp indicating when the override will start applying (inclusive)
1124
1525
  #
@@ -1132,21 +1533,29 @@ module MetronomeSDK
1132
1533
  #
1133
1534
  # @param multiplier [Float] Required for MULTIPLIER type. Must be >=0.
1134
1535
  #
1135
- # @param override_specifiers [Array<MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier>] Cannot be used in conjunction with product_id or applicable_product_tags. If pro
1536
+ # @param override_specifiers [Array<MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier>] Cannot be used in conjunction with product_id or applicable_product_tags. If pro
1136
1537
  #
1137
- # @param overwrite_rate [MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate] Required for OVERWRITE type.
1538
+ # @param overwrite_rate [MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate] Required for OVERWRITE type.
1138
1539
  #
1139
1540
  # @param priority [Float] Required for EXPLICIT multiplier prioritization scheme and all TIERED overrides.
1140
1541
  #
1141
1542
  # @param product_id [String] ID of the product whose rate is being overridden. Cannot be used in conjunction
1142
1543
  #
1143
- # @param target [Symbol, MetronomeSDK::V1::ContractAmendParams::Override::Target] Indicates whether the override applies to commit rates or list rates. Can only b
1544
+ # @param target [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::Target] Indicates whether the override applies to commit rates or list rates. Can only b
1144
1545
  #
1145
- # @param tiers [Array<MetronomeSDK::V1::ContractAmendParams::Override::Tier>] Required for TIERED type. Must have at least one tier.
1546
+ # @param tiers [Array<MetronomeSDK::Models::V1::ContractAmendParams::Override::Tier>] Required for TIERED type. Must have at least one tier.
1146
1547
  #
1147
- # @param type [Symbol, MetronomeSDK::V1::ContractAmendParams::Override::Type] Overwrites are prioritized over multipliers and tiered overrides.
1548
+ # @param type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::Type] Overwrites are prioritized over multipliers and tiered overrides.
1148
1549
 
1149
1550
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
1551
+ # @!attribute billing_frequency
1552
+ #
1553
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency, nil]
1554
+ optional :billing_frequency,
1555
+ enum: -> {
1556
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency
1557
+ }
1558
+
1150
1559
  # @!attribute commit_ids
1151
1560
  # Can only be used for commit specific overrides. Must be used in conjunction with
1152
1561
  # one of product_id, product_tags, pricing_group_values, or
@@ -1201,10 +1610,12 @@ module MetronomeSDK
1201
1610
  # @return [Array<String>, nil]
1202
1611
  optional :recurring_credit_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
1203
1612
 
1204
- # @!method initialize(commit_ids: nil, presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil, recurring_commit_ids: nil, recurring_credit_ids: nil)
1613
+ # @!method initialize(billing_frequency: nil, commit_ids: nil, presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil, recurring_commit_ids: nil, recurring_credit_ids: nil)
1205
1614
  # Some parameter documentations has been truncated, see
1206
- # {MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier} for more
1207
- # details.
1615
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier} for
1616
+ # more details.
1617
+ #
1618
+ # @param billing_frequency [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency]
1208
1619
  #
1209
1620
  # @param commit_ids [Array<String>] Can only be used for commit specific overrides. Must be used in conjunction with
1210
1621
  #
@@ -1219,13 +1630,26 @@ module MetronomeSDK
1219
1630
  # @param recurring_commit_ids [Array<String>] Can only be used for commit specific overrides. Must be used in conjunction with
1220
1631
  #
1221
1632
  # @param recurring_credit_ids [Array<String>] Can only be used for commit specific overrides. Must be used in conjunction with
1633
+
1634
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier#billing_frequency
1635
+ module BillingFrequency
1636
+ extend MetronomeSDK::Internal::Type::Enum
1637
+
1638
+ MONTHLY = :MONTHLY
1639
+ QUARTERLY = :QUARTERLY
1640
+ ANNUAL = :ANNUAL
1641
+ WEEKLY = :WEEKLY
1642
+
1643
+ # @!method self.values
1644
+ # @return [Array<Symbol>]
1645
+ end
1222
1646
  end
1223
1647
 
1224
- # @see MetronomeSDK::V1::ContractAmendParams::Override#overwrite_rate
1648
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Override#overwrite_rate
1225
1649
  class OverwriteRate < MetronomeSDK::Internal::Type::BaseModel
1226
1650
  # @!attribute rate_type
1227
1651
  #
1228
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType]
1652
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType]
1229
1653
  required :rate_type,
1230
1654
  enum: -> {
1231
1655
  MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType
@@ -1266,17 +1690,17 @@ module MetronomeSDK
1266
1690
  # @!attribute tiers
1267
1691
  # Only set for TIERED rate_type.
1268
1692
  #
1269
- # @return [Array<MetronomeSDK::Tier>, nil]
1693
+ # @return [Array<MetronomeSDK::Models::Tier>, nil]
1270
1694
  optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
1271
1695
 
1272
1696
  # @!method initialize(rate_type:, credit_type_id: nil, custom_rate: nil, is_prorated: nil, price: nil, quantity: nil, tiers: nil)
1273
1697
  # Some parameter documentations has been truncated, see
1274
- # {MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate} for more
1275
- # details.
1698
+ # {MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate} for
1699
+ # more details.
1276
1700
  #
1277
1701
  # Required for OVERWRITE type.
1278
1702
  #
1279
- # @param rate_type [Symbol, MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType]
1703
+ # @param rate_type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType]
1280
1704
  #
1281
1705
  # @param credit_type_id [String]
1282
1706
  #
@@ -1288,9 +1712,9 @@ module MetronomeSDK
1288
1712
  #
1289
1713
  # @param quantity [Float] Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
1290
1714
  #
1291
- # @param tiers [Array<MetronomeSDK::Tier>] Only set for TIERED rate_type.
1715
+ # @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
1292
1716
 
1293
- # @see MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate#rate_type
1717
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate#rate_type
1294
1718
  module RateType
1295
1719
  extend MetronomeSDK::Internal::Type::Enum
1296
1720
 
@@ -1309,7 +1733,7 @@ module MetronomeSDK
1309
1733
  # be used for overrides that have `is_commit_specific` set to `true`. Defaults to
1310
1734
  # `"LIST_RATE"`.
1311
1735
  #
1312
- # @see MetronomeSDK::V1::ContractAmendParams::Override#target
1736
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Override#target
1313
1737
  module Target
1314
1738
  extend MetronomeSDK::Internal::Type::Enum
1315
1739
 
@@ -1338,7 +1762,7 @@ module MetronomeSDK
1338
1762
 
1339
1763
  # Overwrites are prioritized over multipliers and tiered overrides.
1340
1764
  #
1341
- # @see MetronomeSDK::V1::ContractAmendParams::Override#type
1765
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::Override#type
1342
1766
  module Type
1343
1767
  extend MetronomeSDK::Internal::Type::Enum
1344
1768
 
@@ -1395,7 +1819,8 @@ module MetronomeSDK
1395
1819
 
1396
1820
  # @!method initialize(max_amount:, product_id:, quantity:, unit_price:, custom_fields: nil, description: nil, netsuite_sales_order_id: nil)
1397
1821
  # Some parameter documentations has been truncated, see
1398
- # {MetronomeSDK::V1::ContractAmendParams::ProfessionalService} for more details.
1822
+ # {MetronomeSDK::Models::V1::ContractAmendParams::ProfessionalService} for more
1823
+ # details.
1399
1824
  #
1400
1825
  # @param max_amount [Float] Maximum amount for the term.
1401
1826
  #
@@ -1415,7 +1840,7 @@ module MetronomeSDK
1415
1840
  class ResellerRoyalty < MetronomeSDK::Internal::Type::BaseModel
1416
1841
  # @!attribute reseller_type
1417
1842
  #
1418
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType]
1843
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType]
1419
1844
  required :reseller_type,
1420
1845
  enum: -> {
1421
1846
  MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType
@@ -1435,7 +1860,7 @@ module MetronomeSDK
1435
1860
 
1436
1861
  # @!attribute aws_options
1437
1862
  #
1438
- # @return [MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::AwsOptions, nil]
1863
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::AwsOptions, nil]
1439
1864
  optional :aws_options, -> { MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::AwsOptions }
1440
1865
 
1441
1866
  # @!attribute ending_before
@@ -1451,7 +1876,7 @@ module MetronomeSDK
1451
1876
 
1452
1877
  # @!attribute gcp_options
1453
1878
  #
1454
- # @return [MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::GcpOptions, nil]
1879
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::GcpOptions, nil]
1455
1880
  optional :gcp_options, -> { MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::GcpOptions }
1456
1881
 
1457
1882
  # @!attribute netsuite_reseller_id
@@ -1470,19 +1895,19 @@ module MetronomeSDK
1470
1895
  optional :starting_at, Time
1471
1896
 
1472
1897
  # @!method initialize(reseller_type:, applicable_product_ids: nil, applicable_product_tags: nil, aws_options: nil, ending_before: nil, fraction: nil, gcp_options: nil, netsuite_reseller_id: nil, reseller_contract_value: nil, starting_at: nil)
1473
- # @param reseller_type [Symbol, MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType]
1898
+ # @param reseller_type [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType]
1474
1899
  #
1475
1900
  # @param applicable_product_ids [Array<String>] Must provide at least one of applicable_product_ids or applicable_product_tags.
1476
1901
  #
1477
1902
  # @param applicable_product_tags [Array<String>] Must provide at least one of applicable_product_ids or applicable_product_tags.
1478
1903
  #
1479
- # @param aws_options [MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::AwsOptions]
1904
+ # @param aws_options [MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::AwsOptions]
1480
1905
  #
1481
1906
  # @param ending_before [Time, nil] Use null to indicate that the existing end timestamp should be removed.
1482
1907
  #
1483
1908
  # @param fraction [Float]
1484
1909
  #
1485
- # @param gcp_options [MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::GcpOptions]
1910
+ # @param gcp_options [MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::GcpOptions]
1486
1911
  #
1487
1912
  # @param netsuite_reseller_id [String]
1488
1913
  #
@@ -1490,7 +1915,7 @@ module MetronomeSDK
1490
1915
  #
1491
1916
  # @param starting_at [Time]
1492
1917
 
1493
- # @see MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty#reseller_type
1918
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty#reseller_type
1494
1919
  module ResellerType
1495
1920
  extend MetronomeSDK::Internal::Type::Enum
1496
1921
 
@@ -1503,7 +1928,7 @@ module MetronomeSDK
1503
1928
  # @return [Array<Symbol>]
1504
1929
  end
1505
1930
 
1506
- # @see MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty#aws_options
1931
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty#aws_options
1507
1932
  class AwsOptions < MetronomeSDK::Internal::Type::BaseModel
1508
1933
  # @!attribute aws_account_number
1509
1934
  #
@@ -1526,7 +1951,7 @@ module MetronomeSDK
1526
1951
  # @param aws_payer_reference_id [String]
1527
1952
  end
1528
1953
 
1529
- # @see MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty#gcp_options
1954
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty#gcp_options
1530
1955
  class GcpOptions < MetronomeSDK::Internal::Type::BaseModel
1531
1956
  # @!attribute gcp_account_id
1532
1957
  #
@@ -1553,7 +1978,7 @@ module MetronomeSDK
1553
1978
  # @!attribute schedule
1554
1979
  # Must provide either schedule_items or recurring_schedule.
1555
1980
  #
1556
- # @return [MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule]
1981
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule]
1557
1982
  required :schedule, -> { MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule }
1558
1983
 
1559
1984
  # @!attribute name
@@ -1571,13 +1996,13 @@ module MetronomeSDK
1571
1996
  # @!method initialize(product_id:, schedule:, name: nil, netsuite_sales_order_id: nil)
1572
1997
  # @param product_id [String]
1573
1998
  #
1574
- # @param schedule [MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule] Must provide either schedule_items or recurring_schedule.
1999
+ # @param schedule [MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule] Must provide either schedule_items or recurring_schedule.
1575
2000
  #
1576
2001
  # @param name [String] displayed on invoices
1577
2002
  #
1578
2003
  # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
1579
2004
 
1580
- # @see MetronomeSDK::V1::ContractAmendParams::ScheduledCharge#schedule
2005
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge#schedule
1581
2006
  class Schedule < MetronomeSDK::Internal::Type::BaseModel
1582
2007
  # @!attribute credit_type_id
1583
2008
  # Defaults to USD (cents) if not passed.
@@ -1590,7 +2015,7 @@ module MetronomeSDK
1590
2015
  # amount. If amount is sent, the unit price is assumed to be the amount and
1591
2016
  # quantity is inferred to be 1.
1592
2017
  #
1593
- # @return [MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule, nil]
2018
+ # @return [MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule, nil]
1594
2019
  optional :recurring_schedule,
1595
2020
  -> {
1596
2021
  MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule
@@ -1599,7 +2024,7 @@ module MetronomeSDK
1599
2024
  # @!attribute schedule_items
1600
2025
  # Either provide amount or provide both unit_price and quantity.
1601
2026
  #
1602
- # @return [Array<MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem>, nil]
2027
+ # @return [Array<MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem>, nil]
1603
2028
  optional :schedule_items,
1604
2029
  -> {
1605
2030
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem]
@@ -1607,22 +2032,22 @@ module MetronomeSDK
1607
2032
 
1608
2033
  # @!method initialize(credit_type_id: nil, recurring_schedule: nil, schedule_items: nil)
1609
2034
  # Some parameter documentations has been truncated, see
1610
- # {MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule} for more
1611
- # details.
2035
+ # {MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule} for
2036
+ # more details.
1612
2037
  #
1613
2038
  # Must provide either schedule_items or recurring_schedule.
1614
2039
  #
1615
2040
  # @param credit_type_id [String] Defaults to USD (cents) if not passed.
1616
2041
  #
1617
- # @param recurring_schedule [MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
2042
+ # @param recurring_schedule [MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
1618
2043
  #
1619
- # @param schedule_items [Array<MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
2044
+ # @param schedule_items [Array<MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
1620
2045
 
1621
- # @see MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule#recurring_schedule
2046
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule#recurring_schedule
1622
2047
  class RecurringSchedule < MetronomeSDK::Internal::Type::BaseModel
1623
2048
  # @!attribute amount_distribution
1624
2049
  #
1625
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution]
2050
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution]
1626
2051
  required :amount_distribution,
1627
2052
  enum: -> {
1628
2053
  MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution
@@ -1636,7 +2061,7 @@ module MetronomeSDK
1636
2061
 
1637
2062
  # @!attribute frequency
1638
2063
  #
1639
- # @return [Symbol, MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency]
2064
+ # @return [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency]
1640
2065
  required :frequency,
1641
2066
  enum: -> {
1642
2067
  MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency
@@ -1674,18 +2099,18 @@ module MetronomeSDK
1674
2099
 
1675
2100
  # @!method initialize(amount_distribution:, ending_before:, frequency:, starting_at:, amount: nil, quantity: nil, unit_price: nil)
1676
2101
  # Some parameter documentations has been truncated, see
1677
- # {MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule}
2102
+ # {MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule}
1678
2103
  # for more details.
1679
2104
  #
1680
2105
  # Enter the unit price and quantity for the charge or instead only send the
1681
2106
  # amount. If amount is sent, the unit price is assumed to be the amount and
1682
2107
  # quantity is inferred to be 1.
1683
2108
  #
1684
- # @param amount_distribution [Symbol, MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution]
2109
+ # @param amount_distribution [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution]
1685
2110
  #
1686
2111
  # @param ending_before [Time] RFC 3339 timestamp (exclusive).
1687
2112
  #
1688
- # @param frequency [Symbol, MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency]
2113
+ # @param frequency [Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency]
1689
2114
  #
1690
2115
  # @param starting_at [Time] RFC 3339 timestamp (inclusive).
1691
2116
  #
@@ -1695,7 +2120,7 @@ module MetronomeSDK
1695
2120
  #
1696
2121
  # @param unit_price [Float] Unit price for the charge. Will be multiplied by quantity to determine the amoun
1697
2122
 
1698
- # @see MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule#amount_distribution
2123
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule#amount_distribution
1699
2124
  module AmountDistribution
1700
2125
  extend MetronomeSDK::Internal::Type::Enum
1701
2126
 
@@ -1707,7 +2132,7 @@ module MetronomeSDK
1707
2132
  # @return [Array<Symbol>]
1708
2133
  end
1709
2134
 
1710
- # @see MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule#frequency
2135
+ # @see MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule#frequency
1711
2136
  module Frequency
1712
2137
  extend MetronomeSDK::Internal::Type::Enum
1713
2138
 
@@ -1754,7 +2179,7 @@ module MetronomeSDK
1754
2179
 
1755
2180
  # @!method initialize(timestamp:, amount: nil, quantity: nil, unit_price: nil)
1756
2181
  # Some parameter documentations has been truncated, see
1757
- # {MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem}
2182
+ # {MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem}
1758
2183
  # for more details.
1759
2184
  #
1760
2185
  # @param timestamp [Time] timestamp of the scheduled event