metronome-sdk 0.1.0.pre.alpha.3 → 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 (403) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +40 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/errors.rb +22 -0
  5. data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
  6. data/lib/metronome_sdk/internal/type/array_of.rb +6 -1
  7. data/lib/metronome_sdk/internal/type/base_model.rb +82 -26
  8. data/lib/metronome_sdk/internal/type/boolean.rb +7 -1
  9. data/lib/metronome_sdk/internal/type/converter.rb +42 -34
  10. data/lib/metronome_sdk/internal/type/enum.rb +16 -5
  11. data/lib/metronome_sdk/internal/type/file_input.rb +6 -1
  12. data/lib/metronome_sdk/internal/type/hash_of.rb +6 -1
  13. data/lib/metronome_sdk/internal/type/union.rb +17 -9
  14. data/lib/metronome_sdk/internal/type/unknown.rb +7 -1
  15. data/lib/metronome_sdk/internal/util.rb +8 -9
  16. data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
  17. data/lib/metronome_sdk/models/commit.rb +1010 -0
  18. data/lib/metronome_sdk/models/contract_without_amendments.rb +1803 -0
  19. data/lib/metronome_sdk/models/credit.rb +634 -0
  20. data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
  21. data/lib/metronome_sdk/models/discount.rb +68 -0
  22. data/lib/metronome_sdk/models/event_type_filter.rb +33 -0
  23. data/lib/metronome_sdk/models/id.rb +15 -0
  24. data/lib/metronome_sdk/models/override.rb +381 -0
  25. data/lib/metronome_sdk/models/pro_service.rb +73 -0
  26. data/lib/metronome_sdk/models/property_filter.rb +52 -0
  27. data/lib/metronome_sdk/models/rate.rb +101 -0
  28. data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
  29. data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
  30. data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
  31. data/lib/metronome_sdk/models/tier.rb +21 -0
  32. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +3 -14
  33. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -1
  34. data/lib/metronome_sdk/models/v1/alert_create_response.rb +3 -14
  35. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +2 -8
  36. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +3 -14
  37. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -86
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +3 -14
  39. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +6 -85
  40. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +8 -85
  41. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +312 -35
  42. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +3 -14
  43. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +3 -14
  44. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +3 -1276
  45. data/lib/metronome_sdk/models/v1/contract_create_params.rb +550 -102
  46. data/lib/metronome_sdk/models/v1/contract_create_response.rb +3 -14
  47. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +5 -1645
  48. data/lib/metronome_sdk/models/v1/contract_list_response.rb +253 -10692
  49. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +9 -295
  50. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +254 -10721
  51. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +3 -1276
  52. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +3 -14
  53. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +3 -14
  54. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -97
  55. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +3 -14
  56. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +148 -0
  57. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +12 -561
  58. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +2 -8
  59. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +14 -559
  60. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +6 -97
  61. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +3 -14
  62. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
  63. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +45 -0
  64. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +2 -8
  65. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +3 -14
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +3 -14
  67. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +6 -42
  68. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +2 -8
  69. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +6 -159
  70. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +6 -42
  71. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +3 -14
  72. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +3 -14
  73. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +3 -14
  74. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -44
  75. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +3 -16
  76. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +6 -44
  77. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +9 -61
  78. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +6 -158
  79. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +5 -77
  80. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +3 -14
  81. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +3 -14
  82. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
  83. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +11 -153
  84. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +14 -175
  85. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +3 -14
  86. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +69 -0
  87. data/lib/metronome_sdk/models/v1/customer.rb +53 -0
  88. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +2 -8
  89. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +3 -14
  90. data/lib/metronome_sdk/models/v1/customer_create_response.rb +3 -50
  91. data/lib/metronome_sdk/models/v1/{customer_list_response.rb → customer_detail.rb} +14 -15
  92. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +6 -86
  93. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
  94. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
  95. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +3 -126
  96. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +3 -50
  97. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +5 -276
  98. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +3 -279
  99. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
  100. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +8 -6
  101. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +3 -14
  102. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +3 -1047
  103. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +3 -14
  104. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +3 -14
  105. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +3 -593
  106. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +3 -14
  107. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +270 -0
  108. data/lib/metronome_sdk/models/v1/customers/{invoice_list_response.rb → invoice.rb} +119 -303
  109. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +2 -1271
  110. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +3 -1276
  111. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +3 -14
  112. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +3 -21
  113. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +1 -0
  114. data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
  115. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +3 -286
  116. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +3 -20
  117. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +3 -128
  118. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
  119. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
  120. data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
  121. data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
  122. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -8
  123. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +3 -14
  124. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +3 -2
  125. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +3 -14
  126. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +885 -103
  127. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3 -14
  128. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +351 -625
  129. data/lib/metronome_sdk/models/v2/contract_list_response.rb +590 -749
  130. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +590 -751
  131. data/lib/metronome_sdk/models.rb +36 -4
  132. data/lib/metronome_sdk/resources/v1/alerts.rb +1 -1
  133. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +2 -2
  134. data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -4
  135. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -1
  136. data/lib/metronome_sdk/resources/v1/contracts.rb +8 -4
  137. data/lib/metronome_sdk/resources/v1/credit_grants.rb +4 -2
  138. data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -2
  139. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -2
  140. data/lib/metronome_sdk/resources/v1/customers.rb +40 -2
  141. data/lib/metronome_sdk/resources/v1/usage.rb +25 -0
  142. data/lib/metronome_sdk/resources/v2/contracts.rb +11 -9
  143. data/lib/metronome_sdk/version.rb +1 -1
  144. data/lib/metronome_sdk.rb +31 -2
  145. data/rbi/metronome_sdk/errors.rbi +16 -0
  146. data/rbi/metronome_sdk/internal/type/boolean.rbi +2 -0
  147. data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
  148. data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
  149. data/rbi/metronome_sdk/internal/type/unknown.rbi +2 -0
  150. data/rbi/metronome_sdk/internal/util.rbi +2 -0
  151. data/rbi/metronome_sdk/models/base_usage_filter.rbi +46 -0
  152. data/rbi/metronome_sdk/models/commit.rbi +1962 -0
  153. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +3676 -0
  154. data/rbi/metronome_sdk/models/credit.rbi +1230 -0
  155. data/rbi/metronome_sdk/models/credit_type_data.rbi +26 -0
  156. data/rbi/metronome_sdk/models/discount.rbi +106 -0
  157. data/rbi/metronome_sdk/models/event_type_filter.rbi +57 -0
  158. data/rbi/metronome_sdk/models/id.rbi +23 -0
  159. data/rbi/metronome_sdk/models/override.rbi +675 -0
  160. data/rbi/metronome_sdk/models/pro_service.rbi +98 -0
  161. data/rbi/metronome_sdk/models/property_filter.rbi +88 -0
  162. data/rbi/metronome_sdk/models/rate.rbi +155 -0
  163. data/rbi/metronome_sdk/models/schedule_duration.rbi +89 -0
  164. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +121 -0
  165. data/rbi/metronome_sdk/models/scheduled_charge.rbi +119 -0
  166. data/rbi/metronome_sdk/models/tier.rbi +29 -0
  167. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +4 -37
  168. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -0
  169. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +4 -37
  170. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +6 -12
  171. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +4 -44
  172. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +8 -177
  173. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +4 -43
  174. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +8 -177
  175. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +8 -175
  176. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +712 -68
  177. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +4 -37
  178. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +4 -39
  179. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +3 -2595
  180. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1100 -172
  181. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +4 -37
  182. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3 -3366
  183. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +375 -22523
  184. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +12 -632
  185. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +375 -22523
  186. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +3 -2595
  187. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +4 -44
  188. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +4 -44
  189. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +8 -209
  190. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +4 -44
  191. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +237 -0
  192. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +76 -1143
  193. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +3 -9
  194. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +76 -1137
  195. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +8 -209
  196. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +4 -44
  197. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +111 -0
  198. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +94 -0
  199. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +3 -9
  200. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +4 -44
  201. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +4 -44
  202. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +8 -74
  203. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +3 -9
  204. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +8 -344
  205. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +8 -74
  206. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +4 -44
  207. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +4 -44
  208. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +4 -44
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +8 -108
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +4 -45
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +8 -108
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +12 -149
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +8 -344
  214. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +8 -166
  215. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +4 -41
  216. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +4 -39
  217. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
  218. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +10 -231
  219. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +14 -281
  220. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +4 -39
  221. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +90 -0
  222. data/rbi/metronome_sdk/models/v1/customer.rbi +74 -0
  223. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +6 -12
  224. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +4 -39
  225. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +6 -84
  226. data/rbi/metronome_sdk/models/v1/{customer_list_response.rbi → customer_detail.rbi} +19 -26
  227. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +8 -177
  228. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
  229. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
  230. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +6 -255
  231. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +6 -86
  232. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +3 -623
  233. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +4 -622
  234. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
  235. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +12 -8
  236. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +4 -44
  237. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +3 -2164
  238. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +4 -44
  239. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +4 -44
  240. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +3 -1224
  241. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +4 -44
  242. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +572 -0
  243. data/rbi/metronome_sdk/models/v1/customers/{invoice_list_response.rbi → invoice.rbi} +182 -589
  244. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +4 -2561
  245. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +6 -2612
  246. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +4 -41
  247. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +4 -39
  248. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
  249. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +349 -0
  250. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +6 -560
  251. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +4 -37
  252. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +4 -248
  253. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +79 -0
  254. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +80 -0
  255. data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
  256. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
  257. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +23 -23
  258. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +4 -41
  259. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +11 -15
  260. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +4 -41
  261. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1859 -202
  262. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +4 -37
  263. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +700 -1447
  264. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +1204 -1472
  265. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +1204 -1472
  266. data/rbi/metronome_sdk/models.rbi +32 -0
  267. data/rbi/metronome_sdk/resources/v1/alerts.rbi +3 -0
  268. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +2 -6
  269. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +4 -4
  270. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +1 -4
  271. data/rbi/metronome_sdk/resources/v1/contracts.rbi +10 -4
  272. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
  273. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +6 -4
  274. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
  275. data/rbi/metronome_sdk/resources/v1/customers.rbi +34 -3
  276. data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
  277. data/rbi/metronome_sdk/resources/v2/contracts.rbi +24 -14
  278. data/sig/metronome_sdk/errors.rbs +9 -0
  279. data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
  280. data/sig/metronome_sdk/models/base_usage_filter.rbs +28 -0
  281. data/sig/metronome_sdk/models/commit.rbs +1020 -0
  282. data/sig/metronome_sdk/models/contract_without_amendments.rbs +1582 -0
  283. data/sig/metronome_sdk/models/credit.rbs +643 -0
  284. data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
  285. data/sig/metronome_sdk/models/discount.rbs +63 -0
  286. data/sig/metronome_sdk/models/event_type_filter.rbs +26 -0
  287. data/sig/metronome_sdk/models/id.rbs +13 -0
  288. data/sig/metronome_sdk/models/override.rbs +399 -0
  289. data/sig/metronome_sdk/models/pro_service.rbs +61 -0
  290. data/sig/metronome_sdk/models/property_filter.rbs +41 -0
  291. data/sig/metronome_sdk/models/rate.rbs +94 -0
  292. data/sig/metronome_sdk/models/schedule_duration.rbs +56 -0
  293. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +75 -0
  294. data/sig/metronome_sdk/models/scheduled_charge.rbs +70 -0
  295. data/sig/metronome_sdk/models/tier.rbs +17 -0
  296. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +4 -19
  297. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +4 -19
  298. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +4 -12
  299. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +4 -19
  300. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -73
  301. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +4 -19
  302. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +12 -73
  303. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +12 -73
  304. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +291 -24
  305. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +4 -19
  306. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +4 -19
  307. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +4 -1291
  308. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +448 -84
  309. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +4 -19
  310. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1 -1642
  311. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +188 -10437
  312. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +15 -271
  313. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +188 -10437
  314. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +4 -1291
  315. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +4 -19
  316. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +4 -21
  317. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +8 -82
  318. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +4 -21
  319. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +121 -0
  320. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +16 -466
  321. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +4 -12
  322. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +16 -466
  323. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +8 -82
  324. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +4 -21
  325. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +47 -0
  326. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +41 -0
  327. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +4 -12
  328. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +4 -21
  329. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +4 -21
  330. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +10 -34
  331. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +4 -12
  332. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +10 -144
  333. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +10 -34
  334. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +4 -21
  335. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +4 -21
  336. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +4 -21
  337. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +12 -40
  338. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +4 -21
  339. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +12 -40
  340. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +18 -58
  341. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +10 -144
  342. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +2 -66
  343. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +4 -19
  344. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +4 -19
  345. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +20 -0
  346. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +12 -118
  347. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +16 -140
  348. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +4 -19
  349. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +52 -0
  350. data/sig/metronome_sdk/models/v1/customer.rbs +44 -0
  351. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +4 -12
  352. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +4 -19
  353. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +4 -48
  354. data/sig/metronome_sdk/models/v1/{customer_list_response.rbs → customer_detail.rbs} +17 -17
  355. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +12 -73
  356. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
  357. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
  358. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +4 -112
  359. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +4 -48
  360. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +4 -243
  361. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +4 -247
  362. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +7 -0
  363. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +4 -21
  364. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +4 -1057
  365. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +4 -21
  366. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +4 -21
  367. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +4 -596
  368. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +4 -21
  369. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +234 -0
  370. data/sig/metronome_sdk/models/v1/customers/{invoice_list_response.rbs → invoice.rbs} +147 -305
  371. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +8 -1278
  372. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +4 -1294
  373. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +4 -19
  374. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +4 -16
  375. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +2 -1
  376. data/sig/metronome_sdk/models/v1/plan_detail.rbs +203 -0
  377. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +4 -267
  378. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +4 -16
  379. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +4 -108
  380. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +37 -0
  381. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +37 -0
  382. data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
  383. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
  384. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +4 -8
  385. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +4 -19
  386. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +4 -8
  387. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +4 -19
  388. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +743 -77
  389. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4 -19
  390. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +274 -665
  391. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +567 -759
  392. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +567 -759
  393. data/sig/metronome_sdk/models.rbs +32 -0
  394. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
  395. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
  396. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  397. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -1
  398. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
  399. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
  400. data/sig/metronome_sdk/resources/v1/customers.rbs +9 -1
  401. data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
  402. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -2
  403. metadata +95 -8
@@ -34,9 +34,8 @@ module MetronomeSDK
34
34
 
35
35
  # @!attribute add_discounts
36
36
  #
37
- # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount>, nil]
38
- optional :add_discounts,
39
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount] }
37
+ # @return [Array<MetronomeSDK::Models::Discount>, nil]
38
+ optional :add_discounts, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Discount] }
40
39
 
41
40
  # @!attribute add_overrides
42
41
  #
@@ -52,9 +51,8 @@ module MetronomeSDK
52
51
 
53
52
  # @!attribute add_pro_services
54
53
  #
55
- # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddProService>, nil]
56
- optional :add_pro_services,
57
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddProService] }
54
+ # @return [Array<MetronomeSDK::Models::ProService>, nil]
55
+ optional :add_pro_services, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::ProService] }
58
56
 
59
57
  # @!attribute add_recurring_commits
60
58
  #
@@ -87,7 +85,7 @@ module MetronomeSDK
87
85
  -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration }
88
86
 
89
87
  # @!attribute add_subscriptions
90
- # (beta) List of subscriptions on the contract.
88
+ # List of subscriptions on the contract.
91
89
  #
92
90
  # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription>, nil]
93
91
  optional :add_subscriptions,
@@ -139,6 +137,13 @@ module MetronomeSDK
139
137
  # @return [Time, nil]
140
138
  optional :update_contract_end_date, Time
141
139
 
140
+ # @!attribute update_contract_name
141
+ # Value to update the contract name to. If not provided, the contract name will
142
+ # remain unchanged.
143
+ #
144
+ # @return [String, nil]
145
+ optional :update_contract_name, String, nil?: true
146
+
142
147
  # @!attribute update_credits
143
148
  #
144
149
  # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit>, nil]
@@ -188,26 +193,30 @@ module MetronomeSDK
188
193
  -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration }
189
194
 
190
195
  # @!attribute update_subscriptions
191
- # (beta) Optional list of subscriptions to update.
196
+ # Optional list of subscriptions to update.
192
197
  #
193
198
  # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription>, nil]
194
199
  optional :update_subscriptions,
195
200
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription] }
196
201
 
197
- # @!method initialize(id:, add_commits: nil, add_credits: nil, add_discounts: nil, add_overrides: nil, add_prepaid_balance_threshold_configuration: nil, add_pro_services: nil, add_recurring_commits: nil, add_recurring_credits: nil, add_reseller_royalties: nil, add_scheduled_charges: nil, add_spend_threshold_configuration: nil, add_subscriptions: nil, add_usage_filters: nil, archive_commits: nil, archive_credits: nil, archive_scheduled_charges: nil, remove_overrides: nil, timestamp: nil, update_commits: nil, update_contract_end_date: nil, update_credits: nil, update_discounts: nil, update_prepaid_balance_threshold_configuration: nil, update_recurring_commits: nil, update_recurring_credits: nil, update_refund_invoices: nil, update_scheduled_charges: nil, update_spend_threshold_configuration: nil, update_subscriptions: nil)
202
+ # @!method initialize(id:, add_commits: nil, add_credits: nil, add_discounts: nil, add_overrides: nil, add_prepaid_balance_threshold_configuration: nil, add_pro_services: nil, add_recurring_commits: nil, add_recurring_credits: nil, add_reseller_royalties: nil, add_scheduled_charges: nil, add_spend_threshold_configuration: nil, add_subscriptions: nil, add_usage_filters: nil, archive_commits: nil, archive_credits: nil, archive_scheduled_charges: nil, remove_overrides: nil, timestamp: nil, update_commits: nil, update_contract_end_date: nil, update_contract_name: nil, update_credits: nil, update_discounts: nil, update_prepaid_balance_threshold_configuration: nil, update_recurring_commits: nil, update_recurring_credits: nil, update_refund_invoices: nil, update_scheduled_charges: nil, update_spend_threshold_configuration: nil, update_subscriptions: nil)
203
+ # Some parameter documentations has been truncated, see
204
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data} for more
205
+ # details.
206
+ #
198
207
  # @param id [String]
199
208
  #
200
209
  # @param add_commits [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit>]
201
210
  #
202
211
  # @param add_credits [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit>]
203
212
  #
204
- # @param add_discounts [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount>]
213
+ # @param add_discounts [Array<MetronomeSDK::Models::Discount>]
205
214
  #
206
215
  # @param add_overrides [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride>]
207
216
  #
208
217
  # @param add_prepaid_balance_threshold_configuration [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration]
209
218
  #
210
- # @param add_pro_services [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddProService>]
219
+ # @param add_pro_services [Array<MetronomeSDK::Models::ProService>]
211
220
  #
212
221
  # @param add_recurring_commits [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit>]
213
222
  #
@@ -219,7 +228,7 @@ module MetronomeSDK
219
228
  #
220
229
  # @param add_spend_threshold_configuration [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration]
221
230
  #
222
- # @param add_subscriptions [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription>] (beta) List of subscriptions on the contract.
231
+ # @param add_subscriptions [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription>] List of subscriptions on the contract.
223
232
  #
224
233
  # @param add_usage_filters [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddUsageFilter>]
225
234
  #
@@ -237,6 +246,8 @@ module MetronomeSDK
237
246
  #
238
247
  # @param update_contract_end_date [Time]
239
248
  #
249
+ # @param update_contract_name [String, nil] Value to update the contract name to. If not provided, the contract name will re
250
+ #
240
251
  # @param update_credits [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit>]
241
252
  #
242
253
  # @param update_discounts [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount>]
@@ -253,7 +264,7 @@ module MetronomeSDK
253
264
  #
254
265
  # @param update_spend_threshold_configuration [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration]
255
266
  #
256
- # @param update_subscriptions [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription>] (beta) Optional list of subscriptions to update.
267
+ # @param update_subscriptions [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription>] Optional list of subscriptions to update.
257
268
 
258
269
  class AddCommit < MetronomeSDK::Internal::Type::BaseModel
259
270
  # @!attribute id
@@ -277,9 +288,8 @@ module MetronomeSDK
277
288
  # The schedule that the customer will gain access to the credits purposed with
278
289
  # this commit.
279
290
  #
280
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule, nil]
281
- optional :access_schedule,
282
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule }
291
+ # @return [MetronomeSDK::Models::ScheduleDuration, nil]
292
+ optional :access_schedule, -> { MetronomeSDK::ScheduleDuration }
283
293
 
284
294
  # @!attribute applicable_product_ids
285
295
  #
@@ -299,9 +309,8 @@ module MetronomeSDK
299
309
  # @!attribute invoice_schedule
300
310
  # The schedule that the customer will be invoiced for this commit.
301
311
  #
302
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule, nil]
303
- optional :invoice_schedule,
304
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule }
312
+ # @return [MetronomeSDK::Models::SchedulePointInTime, nil]
313
+ optional :invoice_schedule, -> { MetronomeSDK::SchedulePointInTime }
305
314
 
306
315
  # @!attribute name
307
316
  #
@@ -359,7 +368,7 @@ module MetronomeSDK
359
368
  #
360
369
  # @param type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Type]
361
370
  #
362
- # @param access_schedule [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule] The schedule that the customer will gain access to the credits purposed with thi
371
+ # @param access_schedule [MetronomeSDK::Models::ScheduleDuration] The schedule that the customer will gain access to the credits purposed with thi
363
372
  #
364
373
  # @param applicable_product_ids [Array<String>]
365
374
  #
@@ -367,7 +376,7 @@ module MetronomeSDK
367
376
  #
368
377
  # @param description [String]
369
378
  #
370
- # @param invoice_schedule [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule] The schedule that the customer will be invoiced for this commit.
379
+ # @param invoice_schedule [MetronomeSDK::Models::SchedulePointInTime] The schedule that the customer will be invoiced for this commit.
371
380
  #
372
381
  # @param name [String]
373
382
  #
@@ -411,151 +420,6 @@ module MetronomeSDK
411
420
  # @return [Array<Symbol>]
412
421
  end
413
422
 
414
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit#access_schedule
415
- class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
416
- # @!attribute schedule_items
417
- #
418
- # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule::ScheduleItem>]
419
- required :schedule_items,
420
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule::ScheduleItem] }
421
-
422
- # @!attribute credit_type
423
- #
424
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule::CreditType, nil]
425
- optional :credit_type,
426
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule::CreditType }
427
-
428
- # @!method initialize(schedule_items:, credit_type: nil)
429
- # The schedule that the customer will gain access to the credits purposed with
430
- # this commit.
431
- #
432
- # @param schedule_items [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule::ScheduleItem>]
433
- # @param credit_type [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule::CreditType]
434
-
435
- class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
436
- # @!attribute id
437
- #
438
- # @return [String]
439
- required :id, String
440
-
441
- # @!attribute amount
442
- #
443
- # @return [Float]
444
- required :amount, Float
445
-
446
- # @!attribute ending_before
447
- #
448
- # @return [Time]
449
- required :ending_before, Time
450
-
451
- # @!attribute starting_at
452
- #
453
- # @return [Time]
454
- required :starting_at, Time
455
-
456
- # @!method initialize(id:, amount:, ending_before:, starting_at:)
457
- # @param id [String]
458
- # @param amount [Float]
459
- # @param ending_before [Time]
460
- # @param starting_at [Time]
461
- end
462
-
463
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::AccessSchedule#credit_type
464
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
465
- # @!attribute id
466
- #
467
- # @return [String]
468
- required :id, String
469
-
470
- # @!attribute name
471
- #
472
- # @return [String]
473
- required :name, String
474
-
475
- # @!method initialize(id:, name:)
476
- # @param id [String]
477
- # @param name [String]
478
- end
479
- end
480
-
481
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit#invoice_schedule
482
- class InvoiceSchedule < MetronomeSDK::Internal::Type::BaseModel
483
- # @!attribute credit_type
484
- #
485
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule::CreditType, nil]
486
- optional :credit_type,
487
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule::CreditType }
488
-
489
- # @!attribute schedule_items
490
- #
491
- # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule::ScheduleItem>, nil]
492
- optional :schedule_items,
493
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule::ScheduleItem] }
494
-
495
- # @!method initialize(credit_type: nil, schedule_items: nil)
496
- # The schedule that the customer will be invoiced for this commit.
497
- #
498
- # @param credit_type [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule::CreditType]
499
- # @param schedule_items [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule::ScheduleItem>]
500
-
501
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::InvoiceSchedule#credit_type
502
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
503
- # @!attribute id
504
- #
505
- # @return [String]
506
- required :id, String
507
-
508
- # @!attribute name
509
- #
510
- # @return [String]
511
- required :name, String
512
-
513
- # @!method initialize(id:, name:)
514
- # @param id [String]
515
- # @param name [String]
516
- end
517
-
518
- class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
519
- # @!attribute id
520
- #
521
- # @return [String]
522
- required :id, String
523
-
524
- # @!attribute amount
525
- #
526
- # @return [Float]
527
- required :amount, Float
528
-
529
- # @!attribute invoice_id
530
- #
531
- # @return [String]
532
- required :invoice_id, String
533
-
534
- # @!attribute quantity
535
- #
536
- # @return [Float]
537
- required :quantity, Float
538
-
539
- # @!attribute timestamp
540
- #
541
- # @return [Time]
542
- required :timestamp, Time
543
-
544
- # @!attribute unit_price
545
- #
546
- # @return [Float]
547
- required :unit_price, Float
548
-
549
- # @!method initialize(id:, amount:, invoice_id:, quantity:, timestamp:, unit_price:)
550
- # @param id [String]
551
- # @param amount [Float]
552
- # @param invoice_id [String]
553
- # @param quantity [Float]
554
- # @param timestamp [Time]
555
- # @param unit_price [Float]
556
- end
557
- end
558
-
559
423
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit#rate_type
560
424
  module RateType
561
425
  extend MetronomeSDK::Internal::Type::Enum
@@ -627,9 +491,8 @@ module MetronomeSDK
627
491
  # @!attribute access_schedule
628
492
  # The schedule that the customer will gain access to the credits.
629
493
  #
630
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule, nil]
631
- optional :access_schedule,
632
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule }
494
+ # @return [MetronomeSDK::Models::ScheduleDuration, nil]
495
+ optional :access_schedule, -> { MetronomeSDK::ScheduleDuration }
633
496
 
634
497
  # @!attribute applicable_product_ids
635
498
  #
@@ -691,7 +554,7 @@ module MetronomeSDK
691
554
  #
692
555
  # @param type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Type]
693
556
  #
694
- # @param access_schedule [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule] The schedule that the customer will gain access to the credits.
557
+ # @param access_schedule [MetronomeSDK::Models::ScheduleDuration] The schedule that the customer will gain access to the credits.
695
558
  #
696
559
  # @param applicable_product_ids [Array<String>]
697
560
  #
@@ -736,72 +599,6 @@ module MetronomeSDK
736
599
  # @return [Array<Symbol>]
737
600
  end
738
601
 
739
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit#access_schedule
740
- class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
741
- # @!attribute schedule_items
742
- #
743
- # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule::ScheduleItem>]
744
- required :schedule_items,
745
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule::ScheduleItem] }
746
-
747
- # @!attribute credit_type
748
- #
749
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule::CreditType, nil]
750
- optional :credit_type,
751
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule::CreditType }
752
-
753
- # @!method initialize(schedule_items:, credit_type: nil)
754
- # The schedule that the customer will gain access to the credits.
755
- #
756
- # @param schedule_items [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule::ScheduleItem>]
757
- # @param credit_type [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule::CreditType]
758
-
759
- class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
760
- # @!attribute id
761
- #
762
- # @return [String]
763
- required :id, String
764
-
765
- # @!attribute amount
766
- #
767
- # @return [Float]
768
- required :amount, Float
769
-
770
- # @!attribute ending_before
771
- #
772
- # @return [Time]
773
- required :ending_before, Time
774
-
775
- # @!attribute starting_at
776
- #
777
- # @return [Time]
778
- required :starting_at, Time
779
-
780
- # @!method initialize(id:, amount:, ending_before:, starting_at:)
781
- # @param id [String]
782
- # @param amount [Float]
783
- # @param ending_before [Time]
784
- # @param starting_at [Time]
785
- end
786
-
787
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::AccessSchedule#credit_type
788
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
789
- # @!attribute id
790
- #
791
- # @return [String]
792
- required :id, String
793
-
794
- # @!attribute name
795
- #
796
- # @return [String]
797
- required :name, String
798
-
799
- # @!method initialize(id:, name:)
800
- # @param id [String]
801
- # @param name [String]
802
- end
803
- end
804
-
805
602
  class Specifier < MetronomeSDK::Internal::Type::BaseModel
806
603
  # @!attribute presentation_group_values
807
604
  #
@@ -841,147 +638,6 @@ module MetronomeSDK
841
638
  end
842
639
  end
843
640
 
844
- class AddDiscount < MetronomeSDK::Internal::Type::BaseModel
845
- # @!attribute id
846
- #
847
- # @return [String]
848
- required :id, String
849
-
850
- # @!attribute product
851
- #
852
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Product]
853
- required :product,
854
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Product }
855
-
856
- # @!attribute schedule
857
- #
858
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule]
859
- required :schedule,
860
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule }
861
-
862
- # @!attribute custom_fields
863
- #
864
- # @return [Hash{Symbol=>String}, nil]
865
- optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
866
-
867
- # @!attribute name
868
- #
869
- # @return [String, nil]
870
- optional :name, String
871
-
872
- # @!attribute netsuite_sales_order_id
873
- # This field's availability is dependent on your client's configuration.
874
- #
875
- # @return [String, nil]
876
- optional :netsuite_sales_order_id, String
877
-
878
- # @!method initialize(id:, product:, schedule:, custom_fields: nil, name: nil, netsuite_sales_order_id: nil)
879
- # @param id [String]
880
- #
881
- # @param product [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Product]
882
- #
883
- # @param schedule [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule]
884
- #
885
- # @param custom_fields [Hash{Symbol=>String}]
886
- #
887
- # @param name [String]
888
- #
889
- # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
890
-
891
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount#product
892
- class Product < MetronomeSDK::Internal::Type::BaseModel
893
- # @!attribute id
894
- #
895
- # @return [String]
896
- required :id, String
897
-
898
- # @!attribute name
899
- #
900
- # @return [String]
901
- required :name, String
902
-
903
- # @!method initialize(id:, name:)
904
- # @param id [String]
905
- # @param name [String]
906
- end
907
-
908
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount#schedule
909
- class Schedule < MetronomeSDK::Internal::Type::BaseModel
910
- # @!attribute credit_type
911
- #
912
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule::CreditType, nil]
913
- optional :credit_type,
914
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule::CreditType }
915
-
916
- # @!attribute schedule_items
917
- #
918
- # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule::ScheduleItem>, nil]
919
- optional :schedule_items,
920
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule::ScheduleItem] }
921
-
922
- # @!method initialize(credit_type: nil, schedule_items: nil)
923
- # @param credit_type [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule::CreditType]
924
- # @param schedule_items [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule::ScheduleItem>]
925
-
926
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddDiscount::Schedule#credit_type
927
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
928
- # @!attribute id
929
- #
930
- # @return [String]
931
- required :id, String
932
-
933
- # @!attribute name
934
- #
935
- # @return [String]
936
- required :name, String
937
-
938
- # @!method initialize(id:, name:)
939
- # @param id [String]
940
- # @param name [String]
941
- end
942
-
943
- class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
944
- # @!attribute id
945
- #
946
- # @return [String]
947
- required :id, String
948
-
949
- # @!attribute amount
950
- #
951
- # @return [Float]
952
- required :amount, Float
953
-
954
- # @!attribute invoice_id
955
- #
956
- # @return [String]
957
- required :invoice_id, String
958
-
959
- # @!attribute quantity
960
- #
961
- # @return [Float]
962
- required :quantity, Float
963
-
964
- # @!attribute timestamp
965
- #
966
- # @return [Time]
967
- required :timestamp, Time
968
-
969
- # @!attribute unit_price
970
- #
971
- # @return [Float]
972
- required :unit_price, Float
973
-
974
- # @!method initialize(id:, amount:, invoice_id:, quantity:, timestamp:, unit_price:)
975
- # @param id [String]
976
- # @param amount [Float]
977
- # @param invoice_id [String]
978
- # @param quantity [Float]
979
- # @param timestamp [Time]
980
- # @param unit_price [Float]
981
- end
982
- end
983
- end
984
-
985
641
  class AddOverride < MetronomeSDK::Internal::Type::BaseModel
986
642
  # @!attribute id
987
643
  #
@@ -1167,9 +823,8 @@ module MetronomeSDK
1167
823
 
1168
824
  # @!attribute credit_type
1169
825
  #
1170
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::CreditType, nil]
1171
- optional :credit_type,
1172
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::CreditType }
826
+ # @return [MetronomeSDK::Models::CreditTypeData, nil]
827
+ optional :credit_type, -> { MetronomeSDK::CreditTypeData }
1173
828
 
1174
829
  # @!attribute custom_rate
1175
830
  # Only set for CUSTOM rate_type. This field is interpreted by custom rate
@@ -1202,9 +857,8 @@ module MetronomeSDK
1202
857
  # @!attribute tiers
1203
858
  # Only set for TIERED rate_type.
1204
859
  #
1205
- # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::Tier>, nil]
1206
- optional :tiers,
1207
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::Tier] }
860
+ # @return [Array<MetronomeSDK::Models::Tier>, nil]
861
+ optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
1208
862
 
1209
863
  # @!method initialize(rate_type:, credit_type: nil, custom_rate: nil, is_prorated: nil, price: nil, quantity: nil, tiers: nil)
1210
864
  # Some parameter documentations has been truncated, see
@@ -1213,7 +867,7 @@ module MetronomeSDK
1213
867
  #
1214
868
  # @param rate_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::RateType]
1215
869
  #
1216
- # @param credit_type [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::CreditType]
870
+ # @param credit_type [MetronomeSDK::Models::CreditTypeData]
1217
871
  #
1218
872
  # @param custom_rate [Hash{Symbol=>Object}] Only set for CUSTOM rate_type. This field is interpreted by custom rate processo
1219
873
  #
@@ -1223,7 +877,7 @@ module MetronomeSDK
1223
877
  #
1224
878
  # @param quantity [Float] Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
1225
879
  #
1226
- # @param tiers [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::Tier>] Only set for TIERED rate_type.
880
+ # @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
1227
881
 
1228
882
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate#rate_type
1229
883
  module RateType
@@ -1238,39 +892,6 @@ module MetronomeSDK
1238
892
  # @!method self.values
1239
893
  # @return [Array<Symbol>]
1240
894
  end
1241
-
1242
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate#credit_type
1243
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
1244
- # @!attribute id
1245
- #
1246
- # @return [String]
1247
- required :id, String
1248
-
1249
- # @!attribute name
1250
- #
1251
- # @return [String]
1252
- required :name, String
1253
-
1254
- # @!method initialize(id:, name:)
1255
- # @param id [String]
1256
- # @param name [String]
1257
- end
1258
-
1259
- class Tier < MetronomeSDK::Internal::Type::BaseModel
1260
- # @!attribute price
1261
- #
1262
- # @return [Float]
1263
- required :price, Float
1264
-
1265
- # @!attribute size
1266
- #
1267
- # @return [Float, nil]
1268
- optional :size, Float
1269
-
1270
- # @!method initialize(price:, size: nil)
1271
- # @param price [Float]
1272
- # @param size [Float]
1273
- end
1274
895
  end
1275
896
 
1276
897
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride#product
@@ -1349,7 +970,14 @@ module MetronomeSDK
1349
970
  # @return [Float]
1350
971
  required :threshold_amount, Float
1351
972
 
1352
- # @!method initialize(commit:, is_enabled:, payment_gate_config:, recharge_to_amount:, threshold_amount:)
973
+ # @!attribute custom_credit_type_id
974
+ # If provided, the threshold, recharge-to amount, and the resulting threshold
975
+ # commit amount will be in terms of this credit type instead of the fiat currency.
976
+ #
977
+ # @return [String, nil]
978
+ optional :custom_credit_type_id, String
979
+
980
+ # @!method initialize(commit:, is_enabled:, payment_gate_config:, recharge_to_amount:, threshold_amount:, custom_credit_type_id: nil)
1353
981
  # Some parameter documentations has been truncated, see
1354
982
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration}
1355
983
  # for more details.
@@ -1363,6 +991,8 @@ module MetronomeSDK
1363
991
  # @param recharge_to_amount [Float] Specify the amount the balance should be recharged to.
1364
992
  #
1365
993
  # @param threshold_amount [Float] Specify the threshold amount for the contract. Each time the contract's balance
994
+ #
995
+ # @param custom_credit_type_id [String] If provided, the threshold, recharge-to amount, and the resulting threshold comm
1366
996
 
1367
997
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration#commit
1368
998
  class Commit < MetronomeSDK::Internal::Type::BaseModel
@@ -1374,16 +1004,17 @@ module MetronomeSDK
1374
1004
  required :product_id, String
1375
1005
 
1376
1006
  # @!attribute applicable_product_ids
1377
- # Which products the threshold commit applies to. If both applicable_product_ids
1378
- # and applicable_product_tags are not provided, the commit applies to all
1379
- # products.
1007
+ # Which products the threshold commit applies to. If applicable_product_ids,
1008
+ # applicable_product_tags or specifiers are not provided, the commit applies to
1009
+ # all products.
1380
1010
  #
1381
1011
  # @return [Array<String>, nil]
1382
1012
  optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
1383
1013
 
1384
1014
  # @!attribute applicable_product_tags
1385
- # Which tags the threshold commit applies to. If both applicable_product_ids and
1386
- # applicable_product_tags are not provided, the commit applies to all products.
1015
+ # Which tags the threshold commit applies to. If applicable_product_ids,
1016
+ # applicable_product_tags or specifiers are not provided, the commit applies to
1017
+ # all products.
1387
1018
  #
1388
1019
  # @return [Array<String>, nil]
1389
1020
  optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
@@ -1421,9 +1052,9 @@ module MetronomeSDK
1421
1052
  #
1422
1053
  # @param product_id [String] The commit product that will be used to generate the line item for commit paymen
1423
1054
  #
1424
- # @param applicable_product_ids [Array<String>] Which products the threshold commit applies to. If both applicable_product_ids a
1055
+ # @param applicable_product_ids [Array<String>] Which products the threshold commit applies to. If applicable_product_ids, appli
1425
1056
  #
1426
- # @param applicable_product_tags [Array<String>] Which tags the threshold commit applies to. If both applicable_product_ids and a
1057
+ # @param applicable_product_tags [Array<String>] Which tags the threshold commit applies to. If applicable_product_ids, applicabl
1427
1058
  #
1428
1059
  # @param description [String]
1429
1060
  #
@@ -1482,8 +1113,15 @@ module MetronomeSDK
1482
1113
  required :payment_gate_type,
1483
1114
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType }
1484
1115
 
1116
+ # @!attribute precalculated_tax_config
1117
+ # Only applicable if using PRECALCULATED as your tax type.
1118
+ #
1119
+ # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig, nil]
1120
+ optional :precalculated_tax_config,
1121
+ -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig }
1122
+
1485
1123
  # @!attribute stripe_config
1486
- # Only applicable if using Stripe as your payment gateway through Metronome.
1124
+ # Only applicable if using STRIPE as your payment gateway type.
1487
1125
  #
1488
1126
  # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig, nil]
1489
1127
  optional :stripe_config,
@@ -1498,14 +1136,16 @@ module MetronomeSDK
1498
1136
  optional :tax_type,
1499
1137
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType }
1500
1138
 
1501
- # @!method initialize(payment_gate_type:, stripe_config: nil, tax_type: nil)
1139
+ # @!method initialize(payment_gate_type:, precalculated_tax_config: nil, stripe_config: nil, tax_type: nil)
1502
1140
  # Some parameter documentations has been truncated, see
1503
1141
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig}
1504
1142
  # for more details.
1505
1143
  #
1506
1144
  # @param payment_gate_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType] Gate access to the commit balance based on successful collection of payment. Sel
1507
1145
  #
1508
- # @param stripe_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using Stripe as your payment gateway through Metronome.
1146
+ # @param precalculated_tax_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig] Only applicable if using PRECALCULATED as your tax type.
1147
+ #
1148
+ # @param stripe_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using STRIPE as your payment gateway type.
1509
1149
  #
1510
1150
  # @param tax_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType] Stripe tax is only supported for Stripe payment gateway. Select NONE if you do n
1511
1151
 
@@ -1526,6 +1166,34 @@ module MetronomeSDK
1526
1166
  # @return [Array<Symbol>]
1527
1167
  end
1528
1168
 
1169
+ # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig#precalculated_tax_config
1170
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
1171
+ # @!attribute tax_amount
1172
+ # Amount of tax to be applied. This should be in the same currency and
1173
+ # denomination as the commit's invoice schedule
1174
+ #
1175
+ # @return [Float]
1176
+ required :tax_amount, Float
1177
+
1178
+ # @!attribute tax_name
1179
+ # Name of the tax to be applied. This may be used in an invoice line item
1180
+ # description.
1181
+ #
1182
+ # @return [String, nil]
1183
+ optional :tax_name, String
1184
+
1185
+ # @!method initialize(tax_amount:, tax_name: nil)
1186
+ # Some parameter documentations has been truncated, see
1187
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig}
1188
+ # for more details.
1189
+ #
1190
+ # Only applicable if using PRECALCULATED as your tax type.
1191
+ #
1192
+ # @param tax_amount [Float] Amount of tax to be applied. This should be in the same currency and denominatio
1193
+ #
1194
+ # @param tax_name [String] Name of the tax to be applied. This may be used in an invoice line item descript
1195
+ end
1196
+
1529
1197
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig#stripe_config
1530
1198
  class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
1531
1199
  # @!attribute payment_type
@@ -1535,10 +1203,23 @@ module MetronomeSDK
1535
1203
  required :payment_type,
1536
1204
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType }
1537
1205
 
1538
- # @!method initialize(payment_type:)
1539
- # Only applicable if using Stripe as your payment gateway through Metronome.
1206
+ # @!attribute invoice_metadata
1207
+ # Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
1208
+ # your payment type.
1209
+ #
1210
+ # @return [Hash{Symbol=>String}, nil]
1211
+ optional :invoice_metadata, MetronomeSDK::Internal::Type::HashOf[String]
1212
+
1213
+ # @!method initialize(payment_type:, invoice_metadata: nil)
1214
+ # Some parameter documentations has been truncated, see
1215
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig}
1216
+ # for more details.
1217
+ #
1218
+ # Only applicable if using STRIPE as your payment gateway type.
1540
1219
  #
1541
1220
  # @param payment_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
1221
+ #
1222
+ # @param invoice_metadata [Hash{Symbol=>String}] Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
1542
1223
 
1543
1224
  # If left blank, will default to INVOICE
1544
1225
  #
@@ -1564,6 +1245,8 @@ module MetronomeSDK
1564
1245
 
1565
1246
  NONE = :NONE
1566
1247
  STRIPE = :STRIPE
1248
+ ANROK = :ANROK
1249
+ PRECALCULATED = :PRECALCULATED
1567
1250
 
1568
1251
  # @!method self.values
1569
1252
  # @return [Array<Symbol>]
@@ -1571,75 +1254,6 @@ module MetronomeSDK
1571
1254
  end
1572
1255
  end
1573
1256
 
1574
- class AddProService < MetronomeSDK::Internal::Type::BaseModel
1575
- # @!attribute id
1576
- #
1577
- # @return [String]
1578
- required :id, String
1579
-
1580
- # @!attribute max_amount
1581
- # Maximum amount for the term.
1582
- #
1583
- # @return [Float]
1584
- required :max_amount, Float
1585
-
1586
- # @!attribute product_id
1587
- #
1588
- # @return [String]
1589
- required :product_id, String
1590
-
1591
- # @!attribute quantity
1592
- # Quantity for the charge. Will be multiplied by unit_price to determine the
1593
- # amount.
1594
- #
1595
- # @return [Float]
1596
- required :quantity, Float
1597
-
1598
- # @!attribute unit_price
1599
- # Unit price for the charge. Will be multiplied by quantity to determine the
1600
- # amount and must be specified.
1601
- #
1602
- # @return [Float]
1603
- required :unit_price, Float
1604
-
1605
- # @!attribute custom_fields
1606
- #
1607
- # @return [Hash{Symbol=>String}, nil]
1608
- optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
1609
-
1610
- # @!attribute description
1611
- #
1612
- # @return [String, nil]
1613
- optional :description, String
1614
-
1615
- # @!attribute netsuite_sales_order_id
1616
- # This field's availability is dependent on your client's configuration.
1617
- #
1618
- # @return [String, nil]
1619
- optional :netsuite_sales_order_id, String
1620
-
1621
- # @!method initialize(id:, max_amount:, product_id:, quantity:, unit_price:, custom_fields: nil, description: nil, netsuite_sales_order_id: nil)
1622
- # Some parameter documentations has been truncated, see
1623
- # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddProService}
1624
- # for more details.
1625
- #
1626
- # @param id [String]
1627
- #
1628
- # @param max_amount [Float] Maximum amount for the term.
1629
- #
1630
- # @param product_id [String]
1631
- #
1632
- # @param quantity [Float] Quantity for the charge. Will be multiplied by unit_price to determine the amoun
1633
- #
1634
- # @param unit_price [Float] Unit price for the charge. Will be multiplied by quantity to determine the amoun
1635
- #
1636
- # @param custom_fields [Hash{Symbol=>String}]
1637
- #
1638
- # @param description [String]
1639
- #
1640
- # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
1641
- end
1642
-
1643
1257
  class AddRecurringCommit < MetronomeSDK::Internal::Type::BaseModel
1644
1258
  # @!attribute id
1645
1259
  #
@@ -1737,6 +1351,7 @@ module MetronomeSDK
1737
1351
  # @!attribute proration
1738
1352
  # Determines whether the first and last commit will be prorated. If not provided,
1739
1353
  # the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
1354
+ # subscription_config:
1740
1355
  #
1741
1356
  # @return [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Proration, nil]
1742
1357
  optional :proration,
@@ -1820,22 +1435,22 @@ module MetronomeSDK
1820
1435
  # @return [String]
1821
1436
  required :credit_type_id, String
1822
1437
 
1823
- # @!attribute quantity
1824
- #
1825
- # @return [Float]
1826
- required :quantity, Float
1827
-
1828
1438
  # @!attribute unit_price
1829
1439
  #
1830
1440
  # @return [Float]
1831
1441
  required :unit_price, Float
1832
1442
 
1833
- # @!method initialize(credit_type_id:, quantity:, unit_price:)
1443
+ # @!attribute quantity
1444
+ #
1445
+ # @return [Float, nil]
1446
+ optional :quantity, Float
1447
+
1448
+ # @!method initialize(credit_type_id:, unit_price:, quantity: nil)
1834
1449
  # The amount of commit to grant.
1835
1450
  #
1836
1451
  # @param credit_type_id [String]
1837
- # @param quantity [Float]
1838
1452
  # @param unit_price [Float]
1453
+ # @param quantity [Float]
1839
1454
  end
1840
1455
 
1841
1456
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit#commit_duration
@@ -1936,6 +1551,7 @@ module MetronomeSDK
1936
1551
 
1937
1552
  # Determines whether the first and last commit will be prorated. If not provided,
1938
1553
  # the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
1554
+ # subscription_config:
1939
1555
  #
1940
1556
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit#proration
1941
1557
  module Proration
@@ -2098,6 +1714,7 @@ module MetronomeSDK
2098
1714
  # @!attribute proration
2099
1715
  # Determines whether the first and last commit will be prorated. If not provided,
2100
1716
  # the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
1717
+ # subscription_config:
2101
1718
  #
2102
1719
  # @return [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Proration, nil]
2103
1720
  optional :proration,
@@ -2179,22 +1796,22 @@ module MetronomeSDK
2179
1796
  # @return [String]
2180
1797
  required :credit_type_id, String
2181
1798
 
2182
- # @!attribute quantity
2183
- #
2184
- # @return [Float]
2185
- required :quantity, Float
2186
-
2187
1799
  # @!attribute unit_price
2188
1800
  #
2189
1801
  # @return [Float]
2190
1802
  required :unit_price, Float
2191
1803
 
2192
- # @!method initialize(credit_type_id:, quantity:, unit_price:)
1804
+ # @!attribute quantity
1805
+ #
1806
+ # @return [Float, nil]
1807
+ optional :quantity, Float
1808
+
1809
+ # @!method initialize(credit_type_id:, unit_price:, quantity: nil)
2193
1810
  # The amount of commit to grant.
2194
1811
  #
2195
1812
  # @param credit_type_id [String]
2196
- # @param quantity [Float]
2197
1813
  # @param unit_price [Float]
1814
+ # @param quantity [Float]
2198
1815
  end
2199
1816
 
2200
1817
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit#commit_duration
@@ -2270,6 +1887,7 @@ module MetronomeSDK
2270
1887
 
2271
1888
  # Determines whether the first and last commit will be prorated. If not provided,
2272
1889
  # the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
1890
+ # subscription_config:
2273
1891
  #
2274
1892
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit#proration
2275
1893
  module Proration
@@ -2452,9 +2070,8 @@ module MetronomeSDK
2452
2070
 
2453
2071
  # @!attribute schedule
2454
2072
  #
2455
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule]
2456
- required :schedule,
2457
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule }
2073
+ # @return [MetronomeSDK::Models::SchedulePointInTime]
2074
+ required :schedule, -> { MetronomeSDK::SchedulePointInTime }
2458
2075
 
2459
2076
  # @!attribute name
2460
2077
  # displayed on invoices
@@ -2473,7 +2090,7 @@ module MetronomeSDK
2473
2090
  #
2474
2091
  # @param product [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Product]
2475
2092
  #
2476
- # @param schedule [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule]
2093
+ # @param schedule [MetronomeSDK::Models::SchedulePointInTime]
2477
2094
  #
2478
2095
  # @param name [String] displayed on invoices
2479
2096
  #
@@ -2495,82 +2112,6 @@ module MetronomeSDK
2495
2112
  # @param id [String]
2496
2113
  # @param name [String]
2497
2114
  end
2498
-
2499
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge#schedule
2500
- class Schedule < MetronomeSDK::Internal::Type::BaseModel
2501
- # @!attribute credit_type
2502
- #
2503
- # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule::CreditType, nil]
2504
- optional :credit_type,
2505
- -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule::CreditType }
2506
-
2507
- # @!attribute schedule_items
2508
- #
2509
- # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule::ScheduleItem>, nil]
2510
- optional :schedule_items,
2511
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule::ScheduleItem] }
2512
-
2513
- # @!method initialize(credit_type: nil, schedule_items: nil)
2514
- # @param credit_type [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule::CreditType]
2515
- # @param schedule_items [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule::ScheduleItem>]
2516
-
2517
- # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Schedule#credit_type
2518
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
2519
- # @!attribute id
2520
- #
2521
- # @return [String]
2522
- required :id, String
2523
-
2524
- # @!attribute name
2525
- #
2526
- # @return [String]
2527
- required :name, String
2528
-
2529
- # @!method initialize(id:, name:)
2530
- # @param id [String]
2531
- # @param name [String]
2532
- end
2533
-
2534
- class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2535
- # @!attribute id
2536
- #
2537
- # @return [String]
2538
- required :id, String
2539
-
2540
- # @!attribute amount
2541
- #
2542
- # @return [Float]
2543
- required :amount, Float
2544
-
2545
- # @!attribute invoice_id
2546
- #
2547
- # @return [String]
2548
- required :invoice_id, String
2549
-
2550
- # @!attribute quantity
2551
- #
2552
- # @return [Float]
2553
- required :quantity, Float
2554
-
2555
- # @!attribute timestamp
2556
- #
2557
- # @return [Time]
2558
- required :timestamp, Time
2559
-
2560
- # @!attribute unit_price
2561
- #
2562
- # @return [Float]
2563
- required :unit_price, Float
2564
-
2565
- # @!method initialize(id:, amount:, invoice_id:, quantity:, timestamp:, unit_price:)
2566
- # @param id [String]
2567
- # @param amount [Float]
2568
- # @param invoice_id [String]
2569
- # @param quantity [Float]
2570
- # @param timestamp [Time]
2571
- # @param unit_price [Float]
2572
- end
2573
- end
2574
2115
  end
2575
2116
 
2576
2117
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data#add_spend_threshold_configuration
@@ -2660,8 +2201,15 @@ module MetronomeSDK
2660
2201
  required :payment_gate_type,
2661
2202
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PaymentGateType }
2662
2203
 
2204
+ # @!attribute precalculated_tax_config
2205
+ # Only applicable if using PRECALCULATED as your tax type.
2206
+ #
2207
+ # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig, nil]
2208
+ optional :precalculated_tax_config,
2209
+ -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig }
2210
+
2663
2211
  # @!attribute stripe_config
2664
- # Only applicable if using Stripe as your payment gateway through Metronome.
2212
+ # Only applicable if using STRIPE as your payment gateway type.
2665
2213
  #
2666
2214
  # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig, nil]
2667
2215
  optional :stripe_config,
@@ -2676,14 +2224,16 @@ module MetronomeSDK
2676
2224
  optional :tax_type,
2677
2225
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::TaxType }
2678
2226
 
2679
- # @!method initialize(payment_gate_type:, stripe_config: nil, tax_type: nil)
2227
+ # @!method initialize(payment_gate_type:, precalculated_tax_config: nil, stripe_config: nil, tax_type: nil)
2680
2228
  # Some parameter documentations has been truncated, see
2681
2229
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig}
2682
2230
  # for more details.
2683
2231
  #
2684
2232
  # @param payment_gate_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PaymentGateType] Gate access to the commit balance based on successful collection of payment. Sel
2685
2233
  #
2686
- # @param stripe_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using Stripe as your payment gateway through Metronome.
2234
+ # @param precalculated_tax_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig] Only applicable if using PRECALCULATED as your tax type.
2235
+ #
2236
+ # @param stripe_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using STRIPE as your payment gateway type.
2687
2237
  #
2688
2238
  # @param tax_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::TaxType] Stripe tax is only supported for Stripe payment gateway. Select NONE if you do n
2689
2239
 
@@ -2704,6 +2254,34 @@ module MetronomeSDK
2704
2254
  # @return [Array<Symbol>]
2705
2255
  end
2706
2256
 
2257
+ # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig#precalculated_tax_config
2258
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
2259
+ # @!attribute tax_amount
2260
+ # Amount of tax to be applied. This should be in the same currency and
2261
+ # denomination as the commit's invoice schedule
2262
+ #
2263
+ # @return [Float]
2264
+ required :tax_amount, Float
2265
+
2266
+ # @!attribute tax_name
2267
+ # Name of the tax to be applied. This may be used in an invoice line item
2268
+ # description.
2269
+ #
2270
+ # @return [String, nil]
2271
+ optional :tax_name, String
2272
+
2273
+ # @!method initialize(tax_amount:, tax_name: nil)
2274
+ # Some parameter documentations has been truncated, see
2275
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig}
2276
+ # for more details.
2277
+ #
2278
+ # Only applicable if using PRECALCULATED as your tax type.
2279
+ #
2280
+ # @param tax_amount [Float] Amount of tax to be applied. This should be in the same currency and denominatio
2281
+ #
2282
+ # @param tax_name [String] Name of the tax to be applied. This may be used in an invoice line item descript
2283
+ end
2284
+
2707
2285
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig#stripe_config
2708
2286
  class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
2709
2287
  # @!attribute payment_type
@@ -2713,10 +2291,23 @@ module MetronomeSDK
2713
2291
  required :payment_type,
2714
2292
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType }
2715
2293
 
2716
- # @!method initialize(payment_type:)
2717
- # Only applicable if using Stripe as your payment gateway through Metronome.
2294
+ # @!attribute invoice_metadata
2295
+ # Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
2296
+ # your payment type.
2297
+ #
2298
+ # @return [Hash{Symbol=>String}, nil]
2299
+ optional :invoice_metadata, MetronomeSDK::Internal::Type::HashOf[String]
2300
+
2301
+ # @!method initialize(payment_type:, invoice_metadata: nil)
2302
+ # Some parameter documentations has been truncated, see
2303
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig}
2304
+ # for more details.
2305
+ #
2306
+ # Only applicable if using STRIPE as your payment gateway type.
2718
2307
  #
2719
2308
  # @param payment_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
2309
+ #
2310
+ # @param invoice_metadata [Hash{Symbol=>String}] Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
2720
2311
 
2721
2312
  # If left blank, will default to INVOICE
2722
2313
  #
@@ -2742,6 +2333,8 @@ module MetronomeSDK
2742
2333
 
2743
2334
  NONE = :NONE
2744
2335
  STRIPE = :STRIPE
2336
+ ANROK = :ANROK
2337
+ PRECALCULATED = :PRECALCULATED
2745
2338
 
2746
2339
  # @!method self.values
2747
2340
  # @return [Array<Symbol>]
@@ -2763,6 +2356,8 @@ module MetronomeSDK
2763
2356
  -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration }
2764
2357
 
2765
2358
  # @!attribute quantity_schedule
2359
+ # List of quantity schedule items for the subscription. Only includes the current
2360
+ # quantity and future quantity changes.
2766
2361
  #
2767
2362
  # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::QuantitySchedule>]
2768
2363
  required :quantity_schedule,
@@ -2810,16 +2405,30 @@ module MetronomeSDK
2810
2405
  optional :name, String
2811
2406
 
2812
2407
  # @!method initialize(collection_schedule:, proration:, quantity_schedule:, starting_at:, subscription_rate:, id: nil, custom_fields: nil, description: nil, ending_before: nil, fiat_credit_type_id: nil, name: nil)
2408
+ # Some parameter documentations has been truncated, see
2409
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription}
2410
+ # for more details.
2411
+ #
2813
2412
  # @param collection_schedule [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::CollectionSchedule]
2413
+ #
2814
2414
  # @param proration [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration]
2815
- # @param quantity_schedule [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::QuantitySchedule>]
2415
+ #
2416
+ # @param quantity_schedule [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::QuantitySchedule>] List of quantity schedule items for the subscription. Only includes the current
2417
+ #
2816
2418
  # @param starting_at [Time]
2419
+ #
2817
2420
  # @param subscription_rate [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate]
2421
+ #
2818
2422
  # @param id [String]
2423
+ #
2819
2424
  # @param custom_fields [Hash{Symbol=>String}]
2425
+ #
2820
2426
  # @param description [String]
2427
+ #
2821
2428
  # @param ending_before [Time]
2429
+ #
2822
2430
  # @param fiat_credit_type_id [String]
2431
+ #
2823
2432
  # @param name [String]
2824
2433
 
2825
2434
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription#collection_schedule
@@ -3026,15 +2635,17 @@ module MetronomeSDK
3026
2635
  -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule }
3027
2636
 
3028
2637
  # @!attribute applicable_product_ids
3029
- # Which products the commit applies to. If both applicable_product_ids and
3030
- # applicable_product_tags are not provided, the commit applies to all products.
2638
+ # Which products the commit applies to. If applicable_product_ids,
2639
+ # applicable_product_tags or specifiers are not provided, the commit applies to
2640
+ # all products.
3031
2641
  #
3032
2642
  # @return [Array<String>, nil]
3033
2643
  optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String], nil?: true
3034
2644
 
3035
2645
  # @!attribute applicable_product_tags
3036
- # Which tags the commit applies to. If both applicable_product_ids and
3037
- # applicable_product_tags are not provided, the commit applies to all products.
2646
+ # Which tags the commit applies to. If applicable_product_ids,
2647
+ # applicable_product_tags or specifiers are not provided, the commit applies to
2648
+ # all products.
3038
2649
  #
3039
2650
  # @return [Array<String>, nil]
3040
2651
  optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String], nil?: true
@@ -3073,7 +2684,8 @@ module MetronomeSDK
3073
2684
  #
3074
2685
  # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier>, nil]
3075
2686
  optional :specifiers,
3076
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier] }
2687
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier] },
2688
+ nil?: true
3077
2689
 
3078
2690
  # @!method initialize(id:, access_schedule: nil, applicable_product_ids: nil, applicable_product_tags: nil, invoice_schedule: nil, name: nil, netsuite_sales_order_id: nil, product_id: nil, rollover_fraction: nil, specifiers: nil)
3079
2691
  # Some parameter documentations has been truncated, see
@@ -3084,9 +2696,9 @@ module MetronomeSDK
3084
2696
  #
3085
2697
  # @param access_schedule [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule]
3086
2698
  #
3087
- # @param applicable_product_ids [Array<String>, nil] Which products the commit applies to. If both applicable_product_ids and applica
2699
+ # @param applicable_product_ids [Array<String>, nil] Which products the commit applies to. If applicable_product_ids, applicable_prod
3088
2700
  #
3089
- # @param applicable_product_tags [Array<String>, nil] Which tags the commit applies to. If both applicable*product_ids and applicable*
2701
+ # @param applicable_product_tags [Array<String>, nil] Which tags the commit applies to. If applicable*product_ids, applicable_product*
3090
2702
  #
3091
2703
  # @param invoice_schedule [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule]
3092
2704
  #
@@ -3098,7 +2710,7 @@ module MetronomeSDK
3098
2710
  #
3099
2711
  # @param rollover_fraction [Float, nil]
3100
2712
  #
3101
- # @param specifiers [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier>] List of filters that determine what kind of customer usage draws down a commit o
2713
+ # @param specifiers [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier>, nil] List of filters that determine what kind of customer usage draws down a commit o
3102
2714
 
3103
2715
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit#access_schedule
3104
2716
  class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
@@ -3729,6 +3341,13 @@ module MetronomeSDK
3729
3341
  optional :commit,
3730
3342
  -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit }
3731
3343
 
3344
+ # @!attribute custom_credit_type_id
3345
+ # If provided, the threshold, recharge-to amount, and the resulting threshold
3346
+ # commit amount will be in terms of this credit type instead of the fiat currency.
3347
+ #
3348
+ # @return [String, nil]
3349
+ optional :custom_credit_type_id, String, nil?: true
3350
+
3732
3351
  # @!attribute is_enabled
3733
3352
  # When set to false, the contract will not be evaluated against the
3734
3353
  # threshold_amount. Toggling to true will result an immediate evaluation,
@@ -3756,13 +3375,15 @@ module MetronomeSDK
3756
3375
  # @return [Float, nil]
3757
3376
  optional :threshold_amount, Float
3758
3377
 
3759
- # @!method initialize(commit: nil, is_enabled: nil, payment_gate_config: nil, recharge_to_amount: nil, threshold_amount: nil)
3378
+ # @!method initialize(commit: nil, custom_credit_type_id: nil, is_enabled: nil, payment_gate_config: nil, recharge_to_amount: nil, threshold_amount: nil)
3760
3379
  # Some parameter documentations has been truncated, see
3761
3380
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration}
3762
3381
  # for more details.
3763
3382
  #
3764
3383
  # @param commit [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit]
3765
3384
  #
3385
+ # @param custom_credit_type_id [String, nil] If provided, the threshold, recharge-to amount, and the resulting threshold comm
3386
+ #
3766
3387
  # @param is_enabled [Boolean] When set to false, the contract will not be evaluated against the threshold_amou
3767
3388
  #
3768
3389
  # @param payment_gate_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig]
@@ -3779,14 +3400,14 @@ module MetronomeSDK
3779
3400
  # products.
3780
3401
  #
3781
3402
  # @return [Array<String>, nil]
3782
- optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
3403
+ optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String], nil?: true
3783
3404
 
3784
3405
  # @!attribute applicable_product_tags
3785
3406
  # Which tags the threshold commit applies to. If both applicable_product_ids and
3786
3407
  # applicable_product_tags are not provided, the commit applies to all products.
3787
3408
  #
3788
3409
  # @return [Array<String>, nil]
3789
- optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
3410
+ optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String], nil?: true
3790
3411
 
3791
3412
  # @!attribute description
3792
3413
  #
@@ -3819,16 +3440,17 @@ module MetronomeSDK
3819
3440
  MetronomeSDK::Internal::Type::ArrayOf[
3820
3441
  MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit::Specifier
3821
3442
  ]
3822
- end
3443
+ end,
3444
+ nil?: true
3823
3445
 
3824
3446
  # @!method initialize(applicable_product_ids: nil, applicable_product_tags: nil, description: nil, name: nil, product_id: nil, specifiers: nil)
3825
3447
  # Some parameter documentations has been truncated, see
3826
3448
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit}
3827
3449
  # for more details.
3828
3450
  #
3829
- # @param applicable_product_ids [Array<String>] Which products the threshold commit applies to. If both applicable_product_ids a
3451
+ # @param applicable_product_ids [Array<String>, nil] Which products the threshold commit applies to. If both applicable_product_ids a
3830
3452
  #
3831
- # @param applicable_product_tags [Array<String>] Which tags the threshold commit applies to. If both applicable_product_ids and a
3453
+ # @param applicable_product_tags [Array<String>, nil] Which tags the threshold commit applies to. If both applicable_product_ids and a
3832
3454
  #
3833
3455
  # @param description [String]
3834
3456
  #
@@ -3836,7 +3458,7 @@ module MetronomeSDK
3836
3458
  #
3837
3459
  # @param product_id [String] The commit product that will be used to generate the line item for commit paymen
3838
3460
  #
3839
- # @param specifiers [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit::Specifier>] List of filters that determine what kind of customer usage draws down a commit o
3461
+ # @param specifiers [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit::Specifier>, nil] List of filters that determine what kind of customer usage draws down a commit o
3840
3462
 
3841
3463
  class Specifier < MetronomeSDK::Internal::Type::BaseModel
3842
3464
  # @!attribute presentation_group_values
@@ -3889,8 +3511,15 @@ module MetronomeSDK
3889
3511
  required :payment_gate_type,
3890
3512
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType }
3891
3513
 
3514
+ # @!attribute precalculated_tax_config
3515
+ # Only applicable if using PRECALCULATED as your tax type.
3516
+ #
3517
+ # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig, nil]
3518
+ optional :precalculated_tax_config,
3519
+ -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig }
3520
+
3892
3521
  # @!attribute stripe_config
3893
- # Only applicable if using Stripe as your payment gateway through Metronome.
3522
+ # Only applicable if using STRIPE as your payment gateway type.
3894
3523
  #
3895
3524
  # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig, nil]
3896
3525
  optional :stripe_config,
@@ -3905,14 +3534,16 @@ module MetronomeSDK
3905
3534
  optional :tax_type,
3906
3535
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType }
3907
3536
 
3908
- # @!method initialize(payment_gate_type:, stripe_config: nil, tax_type: nil)
3537
+ # @!method initialize(payment_gate_type:, precalculated_tax_config: nil, stripe_config: nil, tax_type: nil)
3909
3538
  # Some parameter documentations has been truncated, see
3910
3539
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig}
3911
3540
  # for more details.
3912
3541
  #
3913
3542
  # @param payment_gate_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType] Gate access to the commit balance based on successful collection of payment. Sel
3914
3543
  #
3915
- # @param stripe_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using Stripe as your payment gateway through Metronome.
3544
+ # @param precalculated_tax_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig] Only applicable if using PRECALCULATED as your tax type.
3545
+ #
3546
+ # @param stripe_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using STRIPE as your payment gateway type.
3916
3547
  #
3917
3548
  # @param tax_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType] Stripe tax is only supported for Stripe payment gateway. Select NONE if you do n
3918
3549
 
@@ -3933,6 +3564,34 @@ module MetronomeSDK
3933
3564
  # @return [Array<Symbol>]
3934
3565
  end
3935
3566
 
3567
+ # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig#precalculated_tax_config
3568
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
3569
+ # @!attribute tax_amount
3570
+ # Amount of tax to be applied. This should be in the same currency and
3571
+ # denomination as the commit's invoice schedule
3572
+ #
3573
+ # @return [Float]
3574
+ required :tax_amount, Float
3575
+
3576
+ # @!attribute tax_name
3577
+ # Name of the tax to be applied. This may be used in an invoice line item
3578
+ # description.
3579
+ #
3580
+ # @return [String, nil]
3581
+ optional :tax_name, String
3582
+
3583
+ # @!method initialize(tax_amount:, tax_name: nil)
3584
+ # Some parameter documentations has been truncated, see
3585
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig}
3586
+ # for more details.
3587
+ #
3588
+ # Only applicable if using PRECALCULATED as your tax type.
3589
+ #
3590
+ # @param tax_amount [Float] Amount of tax to be applied. This should be in the same currency and denominatio
3591
+ #
3592
+ # @param tax_name [String] Name of the tax to be applied. This may be used in an invoice line item descript
3593
+ end
3594
+
3936
3595
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig#stripe_config
3937
3596
  class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
3938
3597
  # @!attribute payment_type
@@ -3942,10 +3601,23 @@ module MetronomeSDK
3942
3601
  required :payment_type,
3943
3602
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType }
3944
3603
 
3945
- # @!method initialize(payment_type:)
3946
- # Only applicable if using Stripe as your payment gateway through Metronome.
3604
+ # @!attribute invoice_metadata
3605
+ # Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
3606
+ # your payment type.
3607
+ #
3608
+ # @return [Hash{Symbol=>String}, nil]
3609
+ optional :invoice_metadata, MetronomeSDK::Internal::Type::HashOf[String]
3610
+
3611
+ # @!method initialize(payment_type:, invoice_metadata: nil)
3612
+ # Some parameter documentations has been truncated, see
3613
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig}
3614
+ # for more details.
3615
+ #
3616
+ # Only applicable if using STRIPE as your payment gateway type.
3947
3617
  #
3948
3618
  # @param payment_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
3619
+ #
3620
+ # @param invoice_metadata [Hash{Symbol=>String}] Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
3949
3621
 
3950
3622
  # If left blank, will default to INVOICE
3951
3623
  #
@@ -3971,6 +3643,8 @@ module MetronomeSDK
3971
3643
 
3972
3644
  NONE = :NONE
3973
3645
  STRIPE = :STRIPE
3646
+ ANROK = :ANROK
3647
+ PRECALCULATED = :PRECALCULATED
3974
3648
 
3975
3649
  # @!method self.values
3976
3650
  # @return [Array<Symbol>]
@@ -4324,8 +3998,15 @@ module MetronomeSDK
4324
3998
  required :payment_gate_type,
4325
3999
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PaymentGateType }
4326
4000
 
4001
+ # @!attribute precalculated_tax_config
4002
+ # Only applicable if using PRECALCULATED as your tax type.
4003
+ #
4004
+ # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig, nil]
4005
+ optional :precalculated_tax_config,
4006
+ -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig }
4007
+
4327
4008
  # @!attribute stripe_config
4328
- # Only applicable if using Stripe as your payment gateway through Metronome.
4009
+ # Only applicable if using STRIPE as your payment gateway type.
4329
4010
  #
4330
4011
  # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig, nil]
4331
4012
  optional :stripe_config,
@@ -4340,14 +4021,16 @@ module MetronomeSDK
4340
4021
  optional :tax_type,
4341
4022
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::TaxType }
4342
4023
 
4343
- # @!method initialize(payment_gate_type:, stripe_config: nil, tax_type: nil)
4024
+ # @!method initialize(payment_gate_type:, precalculated_tax_config: nil, stripe_config: nil, tax_type: nil)
4344
4025
  # Some parameter documentations has been truncated, see
4345
4026
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig}
4346
4027
  # for more details.
4347
4028
  #
4348
4029
  # @param payment_gate_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PaymentGateType] Gate access to the commit balance based on successful collection of payment. Sel
4349
4030
  #
4350
- # @param stripe_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using Stripe as your payment gateway through Metronome.
4031
+ # @param precalculated_tax_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig] Only applicable if using PRECALCULATED as your tax type.
4032
+ #
4033
+ # @param stripe_config [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using STRIPE as your payment gateway type.
4351
4034
  #
4352
4035
  # @param tax_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::TaxType] Stripe tax is only supported for Stripe payment gateway. Select NONE if you do n
4353
4036
 
@@ -4368,6 +4051,34 @@ module MetronomeSDK
4368
4051
  # @return [Array<Symbol>]
4369
4052
  end
4370
4053
 
4054
+ # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig#precalculated_tax_config
4055
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
4056
+ # @!attribute tax_amount
4057
+ # Amount of tax to be applied. This should be in the same currency and
4058
+ # denomination as the commit's invoice schedule
4059
+ #
4060
+ # @return [Float]
4061
+ required :tax_amount, Float
4062
+
4063
+ # @!attribute tax_name
4064
+ # Name of the tax to be applied. This may be used in an invoice line item
4065
+ # description.
4066
+ #
4067
+ # @return [String, nil]
4068
+ optional :tax_name, String
4069
+
4070
+ # @!method initialize(tax_amount:, tax_name: nil)
4071
+ # Some parameter documentations has been truncated, see
4072
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig}
4073
+ # for more details.
4074
+ #
4075
+ # Only applicable if using PRECALCULATED as your tax type.
4076
+ #
4077
+ # @param tax_amount [Float] Amount of tax to be applied. This should be in the same currency and denominatio
4078
+ #
4079
+ # @param tax_name [String] Name of the tax to be applied. This may be used in an invoice line item descript
4080
+ end
4081
+
4371
4082
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig#stripe_config
4372
4083
  class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
4373
4084
  # @!attribute payment_type
@@ -4377,10 +4088,23 @@ module MetronomeSDK
4377
4088
  required :payment_type,
4378
4089
  enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType }
4379
4090
 
4380
- # @!method initialize(payment_type:)
4381
- # Only applicable if using Stripe as your payment gateway through Metronome.
4091
+ # @!attribute invoice_metadata
4092
+ # Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
4093
+ # your payment type.
4094
+ #
4095
+ # @return [Hash{Symbol=>String}, nil]
4096
+ optional :invoice_metadata, MetronomeSDK::Internal::Type::HashOf[String]
4097
+
4098
+ # @!method initialize(payment_type:, invoice_metadata: nil)
4099
+ # Some parameter documentations has been truncated, see
4100
+ # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig}
4101
+ # for more details.
4102
+ #
4103
+ # Only applicable if using STRIPE as your payment gateway type.
4382
4104
  #
4383
4105
  # @param payment_type [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
4106
+ #
4107
+ # @param invoice_metadata [Hash{Symbol=>String}] Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
4384
4108
 
4385
4109
  # If left blank, will default to INVOICE
4386
4110
  #
@@ -4406,6 +4130,8 @@ module MetronomeSDK
4406
4130
 
4407
4131
  NONE = :NONE
4408
4132
  STRIPE = :STRIPE
4133
+ ANROK = :ANROK
4134
+ PRECALCULATED = :PRECALCULATED
4409
4135
 
4410
4136
  # @!method self.values
4411
4137
  # @return [Array<Symbol>]