metronome-sdk 0.3.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +91 -0
  3. data/README.md +9 -9
  4. data/lib/metronome_sdk/errors.rb +25 -11
  5. data/lib/metronome_sdk/file_part.rb +10 -7
  6. data/lib/metronome_sdk/internal/body_cursor_page.rb +86 -0
  7. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  8. data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +86 -0
  9. data/lib/metronome_sdk/internal/transport/base_client.rb +12 -11
  10. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +8 -19
  11. data/lib/metronome_sdk/internal/type/base_model.rb +6 -13
  12. data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
  13. data/lib/metronome_sdk/internal/type/enum.rb +25 -0
  14. data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
  15. data/lib/metronome_sdk/internal/type/union.rb +11 -0
  16. data/lib/metronome_sdk/internal/util.rb +9 -8
  17. data/lib/metronome_sdk/models/base_threshold_commit.rb +36 -0
  18. data/lib/metronome_sdk/models/commit.rb +26 -170
  19. data/lib/metronome_sdk/models/commit_hierarchy_configuration.rb +98 -0
  20. data/lib/metronome_sdk/models/commit_rate.rb +48 -0
  21. data/lib/metronome_sdk/models/commit_specifier.rb +42 -0
  22. data/lib/metronome_sdk/models/commit_specifier_input.rb +42 -0
  23. data/lib/metronome_sdk/models/contract.rb +404 -0
  24. data/lib/metronome_sdk/models/contract_v2.rb +3169 -0
  25. data/lib/metronome_sdk/models/contract_without_amendments.rb +38 -1128
  26. data/lib/metronome_sdk/models/credit.rb +9 -156
  27. data/lib/metronome_sdk/models/discount.rb +2 -1
  28. data/lib/metronome_sdk/models/hierarchy_configuration.rb +173 -0
  29. data/lib/metronome_sdk/models/override.rb +6 -101
  30. data/lib/metronome_sdk/models/override_tier.rb +21 -0
  31. data/lib/metronome_sdk/models/overwrite_rate.rb +82 -0
  32. data/lib/metronome_sdk/models/payment_gate_config.rb +150 -0
  33. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +150 -0
  34. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +100 -0
  35. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +102 -0
  36. data/lib/metronome_sdk/models/pro_service.rb +2 -1
  37. data/lib/metronome_sdk/models/recurring_commit_subscription_config.rb +51 -0
  38. data/lib/metronome_sdk/models/scheduled_charge.rb +2 -1
  39. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +44 -0
  40. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +44 -0
  41. data/lib/metronome_sdk/models/subscription.rb +311 -0
  42. data/lib/metronome_sdk/models/update_base_threshold_commit.rb +36 -0
  43. data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
  44. data/lib/metronome_sdk/models/v1/alert_create_params.rb +42 -42
  45. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +1 -2
  46. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +3 -3
  47. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -7
  48. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +58 -411
  49. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +7 -16
  50. data/lib/metronome_sdk/models/v1/contract_create_params.rb +315 -1459
  51. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +6 -23
  52. data/lib/metronome_sdk/models/v1/contract_list_response.rb +3 -1153
  53. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +2 -6
  54. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +5 -50
  55. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +3 -1154
  56. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +1 -3
  57. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +2 -1
  58. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -1
  59. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -1
  60. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +1 -4
  61. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -7
  62. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +10 -1
  63. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +2 -6
  64. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +5 -50
  65. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +10 -1
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +1 -3
  67. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +1 -3
  68. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -61
  69. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +3 -49
  70. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +4 -51
  71. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +2 -6
  72. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +5 -49
  73. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +103 -123
  74. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +3 -5
  75. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +1 -3
  76. data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +41 -58
  77. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +5 -1
  78. data/lib/metronome_sdk/models/v1/customer.rb +2 -1
  79. data/lib/metronome_sdk/models/v1/customer_create_params.rb +37 -11
  80. data/lib/metronome_sdk/models/v1/customer_detail.rb +11 -2
  81. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +3 -3
  82. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +6 -18
  83. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
  84. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rb +28 -0
  85. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +128 -0
  86. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +143 -0
  87. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +4 -6
  88. data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
  89. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +37 -8
  90. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +2 -0
  91. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +2 -0
  92. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +10 -60
  93. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +6 -48
  94. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +48 -54
  95. data/lib/metronome_sdk/models/v1/customers/invoice.rb +197 -66
  96. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +1 -4
  97. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
  98. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +2 -6
  99. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -1
  100. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +4 -11
  101. data/lib/metronome_sdk/models/v1/payment.rb +151 -0
  102. data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
  103. data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
  104. data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
  105. data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
  106. data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
  107. data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
  108. data/lib/metronome_sdk/models/v1/plan_detail.rb +9 -5
  109. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -1
  110. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -1
  111. data/lib/metronome_sdk/models/v1/plan_list_response.rb +5 -1
  112. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +1 -4
  113. data/lib/metronome_sdk/models/v1/usage_list_params.rb +1 -3
  114. data/lib/metronome_sdk/models/v1/usage_list_response.rb +45 -62
  115. data/lib/metronome_sdk/models/v1/usage_search_response.rb +4 -7
  116. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +37 -58
  117. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +34 -49
  118. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +552 -2265
  119. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +417 -2317
  120. data/lib/metronome_sdk/models/v2/contract_list_response.rb +3 -4520
  121. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +3 -4528
  122. data/lib/metronome_sdk/models.rb +38 -0
  123. data/lib/metronome_sdk/resources/v1/alerts.rb +90 -16
  124. data/lib/metronome_sdk/resources/v1/audit_logs.rb +39 -4
  125. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +54 -4
  126. data/lib/metronome_sdk/resources/v1/contracts/products.rb +25 -6
  127. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +7 -2
  128. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +10 -2
  129. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +109 -10
  130. data/lib/metronome_sdk/resources/v1/contracts.rb +255 -18
  131. data/lib/metronome_sdk/resources/v1/credit_grants.rb +2 -1
  132. data/lib/metronome_sdk/resources/v1/custom_fields.rb +51 -14
  133. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +127 -13
  134. data/lib/metronome_sdk/resources/v1/customers/commits.rb +119 -9
  135. data/lib/metronome_sdk/resources/v1/customers/credits.rb +104 -8
  136. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +179 -8
  137. data/lib/metronome_sdk/resources/v1/customers.rb +175 -15
  138. data/lib/metronome_sdk/resources/v1/dashboards.rb +29 -3
  139. data/lib/metronome_sdk/resources/v1/invoices.rb +23 -2
  140. data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
  141. data/lib/metronome_sdk/resources/v1/pricing_units.rb +6 -1
  142. data/lib/metronome_sdk/resources/v1/services.rb +6 -4
  143. data/lib/metronome_sdk/resources/v1/usage.rb +188 -13
  144. data/lib/metronome_sdk/resources/v1.rb +4 -0
  145. data/lib/metronome_sdk/resources/v2/contracts.rb +120 -18
  146. data/lib/metronome_sdk/version.rb +1 -1
  147. data/lib/metronome_sdk.rb +33 -3
  148. data/rbi/metronome_sdk/errors.rbi +31 -4
  149. data/rbi/metronome_sdk/file_part.rbi +1 -1
  150. data/rbi/metronome_sdk/internal/body_cursor_page.rbi +22 -0
  151. data/rbi/metronome_sdk/internal/cursor_page_without_limit.rbi +22 -0
  152. data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
  153. data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
  154. data/rbi/metronome_sdk/internal/util.rbi +1 -1
  155. data/rbi/metronome_sdk/models/base_threshold_commit.rbi +58 -0
  156. data/rbi/metronome_sdk/models/commit.rbi +26 -348
  157. data/rbi/metronome_sdk/models/commit_hierarchy_configuration.rbi +280 -0
  158. data/rbi/metronome_sdk/models/commit_rate.rbi +85 -0
  159. data/rbi/metronome_sdk/models/commit_specifier.rbi +71 -0
  160. data/rbi/metronome_sdk/models/commit_specifier_input.rbi +74 -0
  161. data/rbi/metronome_sdk/models/contract.rbi +768 -0
  162. data/rbi/metronome_sdk/models/contract_v2.rbi +6415 -0
  163. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +186 -2509
  164. data/rbi/metronome_sdk/models/credit.rbi +10 -348
  165. data/rbi/metronome_sdk/models/discount.rbi +2 -0
  166. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +424 -0
  167. data/rbi/metronome_sdk/models/override.rbi +8 -193
  168. data/rbi/metronome_sdk/models/override_tier.rbi +29 -0
  169. data/rbi/metronome_sdk/models/overwrite_rate.rbi +137 -0
  170. data/rbi/metronome_sdk/models/payment_gate_config.rbi +317 -0
  171. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +326 -0
  172. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +183 -0
  173. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +188 -0
  174. data/rbi/metronome_sdk/models/pro_service.rbi +2 -0
  175. data/rbi/metronome_sdk/models/recurring_commit_subscription_config.rbi +125 -0
  176. data/rbi/metronome_sdk/models/scheduled_charge.rbi +2 -0
  177. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +76 -0
  178. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -0
  179. data/rbi/metronome_sdk/models/subscription.rbi +635 -0
  180. data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +61 -0
  181. data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
  182. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +57 -50
  183. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +2 -0
  184. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +2 -0
  185. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +49 -768
  186. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +2 -0
  187. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1843 -4119
  188. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +8 -59
  189. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +5 -2420
  190. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +6 -129
  191. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +4 -2419
  192. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +2 -0
  193. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +2 -0
  194. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +2 -0
  195. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_params.rbi +2 -0
  196. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +2 -0
  197. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +6 -129
  198. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +2 -0
  199. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +4 -129
  200. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +4 -129
  201. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +4 -129
  202. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +6 -129
  203. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +147 -198
  204. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +2 -0
  205. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +117 -165
  206. data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +8 -1
  207. data/rbi/metronome_sdk/models/v1/customer.rbi +2 -0
  208. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +88 -3
  209. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +10 -0
  210. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +2 -0
  211. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +6 -21
  212. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
  213. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbi +51 -0
  214. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +265 -0
  215. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +348 -0
  216. data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
  217. data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
  218. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +68 -8
  219. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +10 -0
  220. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +10 -0
  221. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +6 -90
  222. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +6 -90
  223. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +54 -47
  224. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +316 -68
  225. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
  226. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +2 -0
  227. data/rbi/metronome_sdk/models/v1/payment.rbi +316 -0
  228. data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
  229. data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
  230. data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
  231. data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
  232. data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
  233. data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
  234. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +2 -0
  235. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +2 -0
  236. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +2 -0
  237. data/rbi/metronome_sdk/models/v1/plan_list_response.rbi +8 -1
  238. data/rbi/metronome_sdk/models/v1/usage_list_response.rbi +45 -86
  239. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +2 -0
  240. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +74 -76
  241. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +74 -76
  242. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3875 -7234
  243. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1733 -6207
  244. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +5 -9867
  245. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +6 -9866
  246. data/rbi/metronome_sdk/models.rbi +44 -0
  247. data/rbi/metronome_sdk/resources/v1/alerts.rbi +101 -27
  248. data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +39 -4
  249. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +54 -4
  250. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +25 -5
  251. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +7 -2
  252. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +10 -3
  253. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +109 -9
  254. data/rbi/metronome_sdk/resources/v1/contracts.rbi +258 -16
  255. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +5 -1
  256. data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +57 -14
  257. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +133 -11
  258. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +119 -10
  259. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +104 -9
  260. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +159 -7
  261. data/rbi/metronome_sdk/resources/v1/customers.rbi +162 -14
  262. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +29 -3
  263. data/rbi/metronome_sdk/resources/v1/invoices.rbi +23 -2
  264. data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
  265. data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +6 -1
  266. data/rbi/metronome_sdk/resources/v1/services.rbi +6 -4
  267. data/rbi/metronome_sdk/resources/v1/usage.rbi +191 -13
  268. data/rbi/metronome_sdk/resources/v1.rbi +3 -0
  269. data/rbi/metronome_sdk/resources/v2/contracts.rbi +134 -23
  270. data/sig/metronome_sdk/errors.rbs +7 -0
  271. data/sig/metronome_sdk/file_part.rbs +1 -1
  272. data/sig/metronome_sdk/internal/body_cursor_page.rbs +13 -0
  273. data/sig/metronome_sdk/internal/cursor_page_without_limit.rbs +13 -0
  274. data/sig/metronome_sdk/models/base_threshold_commit.rbs +26 -0
  275. data/sig/metronome_sdk/models/commit.rbs +17 -170
  276. data/sig/metronome_sdk/models/commit_hierarchy_configuration.rbs +117 -0
  277. data/sig/metronome_sdk/models/commit_rate.rbs +48 -0
  278. data/sig/metronome_sdk/models/commit_specifier.rbs +47 -0
  279. data/sig/metronome_sdk/models/commit_specifier_input.rbs +47 -0
  280. data/sig/metronome_sdk/models/contract.rbs +398 -0
  281. data/sig/metronome_sdk/models/contract_v2.rbs +3108 -0
  282. data/sig/metronome_sdk/models/contract_without_amendments.rbs +54 -976
  283. data/sig/metronome_sdk/models/credit.rbs +12 -170
  284. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +152 -0
  285. data/sig/metronome_sdk/models/override.rbs +12 -101
  286. data/sig/metronome_sdk/models/override_tier.rbs +17 -0
  287. data/sig/metronome_sdk/models/overwrite_rate.rbs +78 -0
  288. data/sig/metronome_sdk/models/payment_gate_config.rbs +124 -0
  289. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +124 -0
  290. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +82 -0
  291. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +82 -0
  292. data/sig/metronome_sdk/models/recurring_commit_subscription_config.rbs +51 -0
  293. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +35 -0
  294. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +35 -0
  295. data/sig/metronome_sdk/models/subscription.rbs +295 -0
  296. data/sig/metronome_sdk/models/update_base_threshold_commit.rbs +28 -0
  297. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +4 -2
  298. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +26 -341
  299. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +219 -1184
  300. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +4 -25
  301. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +4 -1041
  302. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +6 -54
  303. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +4 -1041
  304. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +6 -54
  305. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +6 -54
  306. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +6 -54
  307. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +6 -54
  308. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +6 -54
  309. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +72 -94
  310. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +53 -75
  311. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +31 -4
  312. data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
  313. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
  314. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
  315. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbs +32 -0
  316. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +113 -0
  317. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +133 -0
  318. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +21 -0
  319. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +7 -1
  320. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +6 -1
  321. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +6 -50
  322. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +6 -50
  323. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +4 -2
  324. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +137 -24
  325. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
  326. data/sig/metronome_sdk/models/v1/payment.rbs +191 -0
  327. data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
  328. data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
  329. data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
  330. data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
  331. data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
  332. data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
  333. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +33 -55
  334. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +28 -43
  335. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +28 -43
  336. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +412 -1793
  337. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +342 -2149
  338. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +4 -4426
  339. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +4 -4426
  340. data/sig/metronome_sdk/models.rbs +38 -0
  341. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  342. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -3
  343. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -1
  344. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  345. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +2 -1
  346. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +2 -2
  347. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +2 -2
  348. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
  349. data/sig/metronome_sdk/resources/v1/customers.rbs +11 -0
  350. data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
  351. data/sig/metronome_sdk/resources/v1/usage.rbs +1 -1
  352. data/sig/metronome_sdk/resources/v1.rbs +2 -0
  353. data/sig/metronome_sdk/resources/v2/contracts.rbs +10 -4
  354. metadata +101 -11
  355. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +0 -29
  356. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +0 -26
  357. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +0 -26
  358. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +0 -46
  359. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +0 -45
  360. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +0 -45
  361. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +0 -29
  362. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +0 -26
  363. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +0 -26
@@ -29,9 +29,7 @@ module MetronomeSDK
29
29
  #
30
30
  # @return [Array<MetronomeSDK::Models::V1::ContractScheduleProServicesInvoiceParams::LineItem>]
31
31
  required :line_items,
32
- -> {
33
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractScheduleProServicesInvoiceParams::LineItem]
34
- }
32
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractScheduleProServicesInvoiceParams::LineItem] }
35
33
 
36
34
  # @!attribute netsuite_invoice_header_end
37
35
  # The end date of the invoice header in Netsuite
@@ -39,6 +39,7 @@ module MetronomeSDK
39
39
  optional :composite_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
40
40
 
41
41
  # @!attribute custom_fields
42
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
42
43
  #
43
44
  # @return [Hash{Symbol=>String}, nil]
44
45
  optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
@@ -126,7 +127,7 @@ module MetronomeSDK
126
127
  #
127
128
  # @param composite_tags [Array<String>] Required for COMPOSITE products
128
129
  #
129
- # @param custom_fields [Hash{Symbol=>String}]
130
+ # @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
130
131
  #
131
132
  # @param exclude_free_usage [Boolean] Beta feature only available for composite products. If true, products with $0 wi
132
133
  #
@@ -38,18 +38,25 @@ module MetronomeSDK
38
38
  optional :archived_at, Time, nil?: true
39
39
 
40
40
  # @!attribute custom_fields
41
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
41
42
  #
42
43
  # @return [Hash{Symbol=>String}, nil]
43
44
  optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
44
45
 
45
46
  # @!method initialize(id:, current:, initial:, type:, updates:, archived_at: nil, custom_fields: nil)
46
47
  # @param id [String]
48
+ #
47
49
  # @param current [MetronomeSDK::Models::V1::Contracts::ProductListItemState]
50
+ #
48
51
  # @param initial [MetronomeSDK::Models::V1::Contracts::ProductListItemState]
52
+ #
49
53
  # @param type [Symbol, MetronomeSDK::Models::V1::Contracts::ProductListResponse::Type]
54
+ #
50
55
  # @param updates [Array<MetronomeSDK::Models::V1::Contracts::ProductListResponse::Update>]
56
+ #
51
57
  # @param archived_at [Time, nil]
52
- # @param custom_fields [Hash{Symbol=>String}]
58
+ #
59
+ # @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
53
60
 
54
61
  # @see MetronomeSDK::Models::V1::Contracts::ProductListResponse#type
55
62
  module Type
@@ -48,18 +48,25 @@ module MetronomeSDK
48
48
  optional :archived_at, Time, nil?: true
49
49
 
50
50
  # @!attribute custom_fields
51
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
51
52
  #
52
53
  # @return [Hash{Symbol=>String}, nil]
53
54
  optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
54
55
 
55
56
  # @!method initialize(id:, current:, initial:, type:, updates:, archived_at: nil, custom_fields: nil)
56
57
  # @param id [String]
58
+ #
57
59
  # @param current [MetronomeSDK::Models::V1::Contracts::ProductListItemState]
60
+ #
58
61
  # @param initial [MetronomeSDK::Models::V1::Contracts::ProductListItemState]
62
+ #
59
63
  # @param type [Symbol, MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type]
64
+ #
60
65
  # @param updates [Array<MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update>]
66
+ #
61
67
  # @param archived_at [Time, nil]
62
- # @param custom_fields [Hash{Symbol=>String}]
68
+ #
69
+ # @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
63
70
 
64
71
  # @see MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data#type
65
72
  module Type
@@ -13,10 +13,7 @@ module MetronomeSDK
13
13
  # @!attribute rounding_method
14
14
  #
15
15
  # @return [Symbol, MetronomeSDK::Models::V1::Contracts::QuantityRounding::RoundingMethod]
16
- required :rounding_method,
17
- enum: -> {
18
- MetronomeSDK::V1::Contracts::QuantityRounding::RoundingMethod
19
- }
16
+ required :rounding_method, enum: -> { MetronomeSDK::V1::Contracts::QuantityRounding::RoundingMethod }
20
17
 
21
18
  # @!method initialize(decimal_places:, rounding_method:)
22
19
  # Optional. Only valid for USAGE products. If provided, the quantity will be
@@ -22,20 +22,17 @@ module MetronomeSDK
22
22
  #
23
23
  # @return [Array<MetronomeSDK::Models::V1::Contracts::RateCardCreateParams::Alias>, nil]
24
24
  optional :aliases,
25
- -> {
26
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCardCreateParams::Alias]
27
- }
25
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCardCreateParams::Alias] }
28
26
 
29
27
  # @!attribute credit_type_conversions
30
28
  # Required when using custom pricing units in rates.
31
29
  #
32
30
  # @return [Array<MetronomeSDK::Models::V1::Contracts::RateCardCreateParams::CreditTypeConversion>, nil]
33
31
  optional :credit_type_conversions,
34
- -> {
35
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCardCreateParams::CreditTypeConversion]
36
- }
32
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCardCreateParams::CreditTypeConversion] }
37
33
 
38
34
  # @!attribute custom_fields
35
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
39
36
  #
40
37
  # @return [Hash{Symbol=>String}, nil]
41
38
  optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
@@ -62,7 +59,7 @@ module MetronomeSDK
62
59
  #
63
60
  # @param credit_type_conversions [Array<MetronomeSDK::Models::V1::Contracts::RateCardCreateParams::CreditTypeConversion>] Required when using custom pricing units in rates.
64
61
  #
65
- # @param custom_fields [Hash{Symbol=>String}]
62
+ # @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
66
63
  #
67
64
  # @param description [String]
68
65
  #
@@ -39,6 +39,7 @@ module MetronomeSDK
39
39
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V1::Contracts::RateCardListResponse::CreditTypeConversion] }
40
40
 
41
41
  # @!attribute custom_fields
42
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
42
43
  #
43
44
  # @return [Hash{Symbol=>String}, nil]
44
45
  optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
@@ -55,13 +56,21 @@ module MetronomeSDK
55
56
 
56
57
  # @!method initialize(id:, created_at:, created_by:, name:, aliases: nil, credit_type_conversions: nil, custom_fields: nil, description: nil, fiat_credit_type: nil)
57
58
  # @param id [String]
59
+ #
58
60
  # @param created_at [Time]
61
+ #
59
62
  # @param created_by [String]
63
+ #
60
64
  # @param name [String]
65
+ #
61
66
  # @param aliases [Array<MetronomeSDK::Models::V1::Contracts::RateCardListResponse::Alias>]
67
+ #
62
68
  # @param credit_type_conversions [Array<MetronomeSDK::Models::V1::Contracts::RateCardListResponse::CreditTypeConversion>]
63
- # @param custom_fields [Hash{Symbol=>String}]
69
+ #
70
+ # @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
71
+ #
64
72
  # @param description [String]
73
+ #
65
74
  # @param fiat_credit_type [MetronomeSDK::Models::CreditTypeData]
66
75
 
67
76
  class Alias < MetronomeSDK::Internal::Type::BaseModel
@@ -46,9 +46,7 @@ module MetronomeSDK
46
46
  #
47
47
  # @return [Array<MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleParams::Selector>, nil]
48
48
  optional :selectors,
49
- -> {
50
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCardRetrieveRateScheduleParams::Selector]
51
- }
49
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCardRetrieveRateScheduleParams::Selector] }
52
50
 
53
51
  # @!method initialize(rate_card_id:, starting_at:, limit: nil, next_page: nil, ending_before: nil, selectors: nil, request_options: {})
54
52
  # Some parameter documentations has been truncated, see
@@ -76,9 +74,7 @@ module MetronomeSDK
76
74
  #
77
75
  # @return [Symbol, MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleParams::Selector::BillingFrequency, nil]
78
76
  optional :billing_frequency,
79
- enum: -> {
80
- MetronomeSDK::V1::Contracts::RateCardRetrieveRateScheduleParams::Selector::BillingFrequency
81
- }
77
+ enum: -> { MetronomeSDK::V1::Contracts::RateCardRetrieveRateScheduleParams::Selector::BillingFrequency }
82
78
 
83
79
  # @!attribute partial_pricing_group_values
84
80
  # List of pricing group key value pairs, rates containing the matching key / value
@@ -28,6 +28,7 @@ module MetronomeSDK
28
28
  required :entitled, MetronomeSDK::Internal::Type::Boolean
29
29
 
30
30
  # @!attribute product_custom_fields
31
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
31
32
  #
32
33
  # @return [Hash{Symbol=>String}]
33
34
  required :product_custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
@@ -67,9 +68,8 @@ module MetronomeSDK
67
68
  # A distinct rate on the rate card. You can choose to use this rate rather than
68
69
  # list rate when consuming a credit or commit.
69
70
  #
70
- # @return [MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate, nil]
71
- optional :commit_rate,
72
- -> { MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate }
71
+ # @return [MetronomeSDK::Models::CommitRate, nil]
72
+ optional :commit_rate, -> { MetronomeSDK::CommitRate }
73
73
 
74
74
  # @!attribute ending_before
75
75
  #
@@ -88,7 +88,7 @@ module MetronomeSDK
88
88
  #
89
89
  # @param entitled [Boolean]
90
90
  #
91
- # @param product_custom_fields [Hash{Symbol=>String}]
91
+ # @param product_custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
92
92
  #
93
93
  # @param product_id [String]
94
94
  #
@@ -102,7 +102,7 @@ module MetronomeSDK
102
102
  #
103
103
  # @param billing_frequency [Symbol, MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::BillingFrequency]
104
104
  #
105
- # @param commit_rate [MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
105
+ # @param commit_rate [MetronomeSDK::Models::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
106
106
  #
107
107
  # @param ending_before [Time]
108
108
  #
@@ -120,51 +120,6 @@ module MetronomeSDK
120
120
  # @!method self.values
121
121
  # @return [Array<Symbol>]
122
122
  end
123
-
124
- # @see MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data#commit_rate
125
- class CommitRate < MetronomeSDK::Internal::Type::BaseModel
126
- # @!attribute rate_type
127
- #
128
- # @return [Symbol, MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::RateType]
129
- required :rate_type,
130
- enum: -> { MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::RateType }
131
-
132
- # @!attribute price
133
- # Commit rate price. For FLAT rate_type, this must be >=0.
134
- #
135
- # @return [Float, nil]
136
- optional :price, Float
137
-
138
- # @!attribute tiers
139
- # Only set for TIERED rate_type.
140
- #
141
- # @return [Array<MetronomeSDK::Models::Tier>, nil]
142
- optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
143
-
144
- # @!method initialize(rate_type:, price: nil, tiers: nil)
145
- # A distinct rate on the rate card. You can choose to use this rate rather than
146
- # list rate when consuming a credit or commit.
147
- #
148
- # @param rate_type [Symbol, MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::RateType]
149
- #
150
- # @param price [Float] Commit rate price. For FLAT rate_type, this must be >=0.
151
- #
152
- # @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
153
-
154
- # @see MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate#rate_type
155
- module RateType
156
- extend MetronomeSDK::Internal::Type::Enum
157
-
158
- FLAT = :FLAT
159
- PERCENTAGE = :PERCENTAGE
160
- SUBSCRIPTION = :SUBSCRIPTION
161
- TIERED = :TIERED
162
- CUSTOM = :CUSTOM
163
-
164
- # @!method self.values
165
- # @return [Array<Symbol>]
166
- end
167
- end
168
123
  end
169
124
  end
170
125
  end
@@ -49,6 +49,7 @@ module MetronomeSDK
49
49
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V1::Contracts::RateCardRetrieveResponse::Data::CreditTypeConversion] }
50
50
 
51
51
  # @!attribute custom_fields
52
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
52
53
  #
53
54
  # @return [Hash{Symbol=>String}, nil]
54
55
  optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
@@ -65,13 +66,21 @@ module MetronomeSDK
65
66
 
66
67
  # @!method initialize(id:, created_at:, created_by:, name:, aliases: nil, credit_type_conversions: nil, custom_fields: nil, description: nil, fiat_credit_type: nil)
67
68
  # @param id [String]
69
+ #
68
70
  # @param created_at [Time]
71
+ #
69
72
  # @param created_by [String]
73
+ #
70
74
  # @param name [String]
75
+ #
71
76
  # @param aliases [Array<MetronomeSDK::Models::V1::Contracts::RateCardRetrieveResponse::Data::Alias>]
77
+ #
72
78
  # @param credit_type_conversions [Array<MetronomeSDK::Models::V1::Contracts::RateCardRetrieveResponse::Data::CreditTypeConversion>]
73
- # @param custom_fields [Hash{Symbol=>String}]
79
+ #
80
+ # @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
81
+ #
74
82
  # @param description [String]
83
+ #
75
84
  # @param fiat_credit_type [MetronomeSDK::Models::CreditTypeData]
76
85
 
77
86
  class Alias < MetronomeSDK::Internal::Type::BaseModel
@@ -22,9 +22,7 @@ module MetronomeSDK
22
22
  #
23
23
  # @return [Array<MetronomeSDK::Models::V1::Contracts::RateCardUpdateParams::Alias>, nil]
24
24
  optional :aliases,
25
- -> {
26
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCardUpdateParams::Alias]
27
- }
25
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCardUpdateParams::Alias] }
28
26
 
29
27
  # @!attribute description
30
28
  #
@@ -14,9 +14,7 @@ module MetronomeSDK
14
14
  #
15
15
  # @return [Array<MetronomeSDK::Models::V1::Contracts::RateCards::ProductOrderUpdateParams::ProductMove>]
16
16
  required :product_moves,
17
- -> {
18
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCards::ProductOrderUpdateParams::ProductMove]
19
- }
17
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCards::ProductOrderUpdateParams::ProductMove] }
20
18
 
21
19
  # @!attribute rate_card_id
22
20
  # ID of the rate card to update
@@ -19,9 +19,7 @@ module MetronomeSDK
19
19
  #
20
20
  # @return [Array<MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate>]
21
21
  required :rates,
22
- -> {
23
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate]
24
- }
22
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate] }
25
23
 
26
24
  # @!method initialize(rate_card_id:, rates:, request_options: {})
27
25
  # @param rate_card_id [String]
@@ -58,19 +56,14 @@ module MetronomeSDK
58
56
  #
59
57
  # @return [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate::BillingFrequency, nil]
60
58
  optional :billing_frequency,
61
- enum: -> {
62
- MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::BillingFrequency
63
- }
59
+ enum: -> { MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::BillingFrequency }
64
60
 
65
61
  # @!attribute commit_rate
66
62
  # A distinct rate on the rate card. You can choose to use this rate rather than
67
63
  # list rate when consuming a credit or commit.
68
64
  #
69
- # @return [MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate::CommitRate, nil]
70
- optional :commit_rate,
71
- -> {
72
- MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::CommitRate
73
- }
65
+ # @return [MetronomeSDK::Models::CommitRate, nil]
66
+ optional :commit_rate, -> { MetronomeSDK::CommitRate }
74
67
 
75
68
  # @!attribute credit_type_id
76
69
  # "The Metronome ID of the credit type to associate with price, defaults to USD
@@ -85,8 +78,7 @@ module MetronomeSDK
85
78
  # processors.
86
79
  #
87
80
  # @return [Hash{Symbol=>Object}, nil]
88
- optional :custom_rate,
89
- MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
81
+ optional :custom_rate, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
90
82
 
91
83
  # @!attribute ending_before
92
84
  # exclusive end date
@@ -151,7 +143,7 @@ module MetronomeSDK
151
143
  #
152
144
  # @param billing_frequency [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate::BillingFrequency] Optional. Frequency to bill subscriptions with. Required for subscription type p
153
145
  #
154
- # @param commit_rate [MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
146
+ # @param commit_rate [MetronomeSDK::Models::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
155
147
  #
156
148
  # @param credit_type_id [String] "The Metronome ID of the credit type to associate with price, defaults to USD (c
157
149
  #
@@ -200,53 +192,6 @@ module MetronomeSDK
200
192
  # @!method self.values
201
193
  # @return [Array<Symbol>]
202
194
  end
203
-
204
- # @see MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate#commit_rate
205
- class CommitRate < MetronomeSDK::Internal::Type::BaseModel
206
- # @!attribute rate_type
207
- #
208
- # @return [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate::CommitRate::RateType]
209
- required :rate_type,
210
- enum: -> {
211
- MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::CommitRate::RateType
212
- }
213
-
214
- # @!attribute price
215
- # Commit rate price. For FLAT rate_type, this must be >=0.
216
- #
217
- # @return [Float, nil]
218
- optional :price, Float
219
-
220
- # @!attribute tiers
221
- # Only set for TIERED rate_type.
222
- #
223
- # @return [Array<MetronomeSDK::Models::Tier>, nil]
224
- optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
225
-
226
- # @!method initialize(rate_type:, price: nil, tiers: nil)
227
- # A distinct rate on the rate card. You can choose to use this rate rather than
228
- # list rate when consuming a credit or commit.
229
- #
230
- # @param rate_type [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate::CommitRate::RateType]
231
- #
232
- # @param price [Float] Commit rate price. For FLAT rate_type, this must be >=0.
233
- #
234
- # @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
235
-
236
- # @see MetronomeSDK::Models::V1::Contracts::RateCards::RateAddManyParams::Rate::CommitRate#rate_type
237
- module RateType
238
- extend MetronomeSDK::Internal::Type::Enum
239
-
240
- FLAT = :FLAT
241
- PERCENTAGE = :PERCENTAGE
242
- SUBSCRIPTION = :SUBSCRIPTION
243
- TIERED = :TIERED
244
- CUSTOM = :CUSTOM
245
-
246
- # @!method self.values
247
- # @return [Array<Symbol>]
248
- end
249
- end
250
195
  end
251
196
  end
252
197
  end
@@ -50,8 +50,8 @@ module MetronomeSDK
50
50
  # A distinct rate on the rate card. You can choose to use this rate rather than
51
51
  # list rate when consuming a credit or commit.
52
52
  #
53
- # @return [MetronomeSDK::Models::V1::Contracts::RateCards::RateAddParams::CommitRate, nil]
54
- optional :commit_rate, -> { MetronomeSDK::V1::Contracts::RateCards::RateAddParams::CommitRate }
53
+ # @return [MetronomeSDK::Models::CommitRate, nil]
54
+ optional :commit_rate, -> { MetronomeSDK::CommitRate }
55
55
 
56
56
  # @!attribute credit_type_id
57
57
  # The Metronome ID of the credit type to associate with price, defaults to USD
@@ -133,7 +133,7 @@ module MetronomeSDK
133
133
  #
134
134
  # @param billing_frequency [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddParams::BillingFrequency] Optional. Frequency to bill subscriptions with. Required for subscription type p
135
135
  #
136
- # @param commit_rate [MetronomeSDK::Models::V1::Contracts::RateCards::RateAddParams::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
136
+ # @param commit_rate [MetronomeSDK::Models::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
137
137
  #
138
138
  # @param credit_type_id [String] The Metronome ID of the credit type to associate with price, defaults to USD (ce
139
139
  #
@@ -181,52 +181,6 @@ module MetronomeSDK
181
181
  # @!method self.values
182
182
  # @return [Array<Symbol>]
183
183
  end
184
-
185
- class CommitRate < MetronomeSDK::Internal::Type::BaseModel
186
- # @!attribute rate_type
187
- #
188
- # @return [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddParams::CommitRate::RateType]
189
- required :rate_type,
190
- enum: -> {
191
- MetronomeSDK::V1::Contracts::RateCards::RateAddParams::CommitRate::RateType
192
- }
193
-
194
- # @!attribute price
195
- # Commit rate price. For FLAT rate_type, this must be >=0.
196
- #
197
- # @return [Float, nil]
198
- optional :price, Float
199
-
200
- # @!attribute tiers
201
- # Only set for TIERED rate_type.
202
- #
203
- # @return [Array<MetronomeSDK::Models::Tier>, nil]
204
- optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
205
-
206
- # @!method initialize(rate_type:, price: nil, tiers: nil)
207
- # A distinct rate on the rate card. You can choose to use this rate rather than
208
- # list rate when consuming a credit or commit.
209
- #
210
- # @param rate_type [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddParams::CommitRate::RateType]
211
- #
212
- # @param price [Float] Commit rate price. For FLAT rate_type, this must be >=0.
213
- #
214
- # @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
215
-
216
- # @see MetronomeSDK::Models::V1::Contracts::RateCards::RateAddParams::CommitRate#rate_type
217
- module RateType
218
- extend MetronomeSDK::Internal::Type::Enum
219
-
220
- FLAT = :FLAT
221
- PERCENTAGE = :PERCENTAGE
222
- SUBSCRIPTION = :SUBSCRIPTION
223
- TIERED = :TIERED
224
- CUSTOM = :CUSTOM
225
-
226
- # @!method self.values
227
- # @return [Array<Symbol>]
228
- end
229
- end
230
184
  end
231
185
  end
232
186
  end
@@ -27,9 +27,8 @@ module MetronomeSDK
27
27
  # A distinct rate on the rate card. You can choose to use this rate rather than
28
28
  # list rate when consuming a credit or commit.
29
29
  #
30
- # @return [MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data::CommitRate, nil]
31
- optional :commit_rate,
32
- -> { MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data::CommitRate }
30
+ # @return [MetronomeSDK::Models::CommitRate, nil]
31
+ optional :commit_rate, -> { MetronomeSDK::CommitRate }
33
32
 
34
33
  # @!attribute credit_type
35
34
  #
@@ -41,8 +40,7 @@ module MetronomeSDK
41
40
  # processors.
42
41
  #
43
42
  # @return [Hash{Symbol=>Object}, nil]
44
- optional :custom_rate,
45
- MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
43
+ optional :custom_rate, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
46
44
 
47
45
  # @!attribute is_prorated
48
46
  # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
@@ -92,7 +90,7 @@ module MetronomeSDK
92
90
  #
93
91
  # @param rate_type [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data::RateType]
94
92
  #
95
- # @param commit_rate [MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
93
+ # @param commit_rate [MetronomeSDK::Models::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
96
94
  #
97
95
  # @param credit_type [MetronomeSDK::Models::CreditTypeData]
98
96
  #
@@ -123,51 +121,6 @@ module MetronomeSDK
123
121
  # @!method self.values
124
122
  # @return [Array<Symbol>]
125
123
  end
126
-
127
- # @see MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data#commit_rate
128
- class CommitRate < MetronomeSDK::Internal::Type::BaseModel
129
- # @!attribute rate_type
130
- #
131
- # @return [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data::CommitRate::RateType]
132
- required :rate_type,
133
- enum: -> { MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data::CommitRate::RateType }
134
-
135
- # @!attribute price
136
- # Commit rate price. For FLAT rate_type, this must be >=0.
137
- #
138
- # @return [Float, nil]
139
- optional :price, Float
140
-
141
- # @!attribute tiers
142
- # Only set for TIERED rate_type.
143
- #
144
- # @return [Array<MetronomeSDK::Models::Tier>, nil]
145
- optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
146
-
147
- # @!method initialize(rate_type:, price: nil, tiers: nil)
148
- # A distinct rate on the rate card. You can choose to use this rate rather than
149
- # list rate when consuming a credit or commit.
150
- #
151
- # @param rate_type [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data::CommitRate::RateType]
152
- #
153
- # @param price [Float] Commit rate price. For FLAT rate_type, this must be >=0.
154
- #
155
- # @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
156
-
157
- # @see MetronomeSDK::Models::V1::Contracts::RateCards::RateAddResponse::Data::CommitRate#rate_type
158
- module RateType
159
- extend MetronomeSDK::Internal::Type::Enum
160
-
161
- FLAT = :FLAT
162
- PERCENTAGE = :PERCENTAGE
163
- SUBSCRIPTION = :SUBSCRIPTION
164
- TIERED = :TIERED
165
- CUSTOM = :CUSTOM
166
-
167
- # @!method self.values
168
- # @return [Array<Symbol>]
169
- end
170
- end
171
124
  end
172
125
  end
173
126
  end
@@ -40,9 +40,7 @@ module MetronomeSDK
40
40
  #
41
41
  # @return [Array<MetronomeSDK::Models::V1::Contracts::RateCards::RateListParams::Selector>, nil]
42
42
  optional :selectors,
43
- -> {
44
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCards::RateListParams::Selector]
45
- }
43
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Contracts::RateCards::RateListParams::Selector] }
46
44
 
47
45
  # @!method initialize(at:, rate_card_id:, limit: nil, next_page: nil, selectors: nil, request_options: {})
48
46
  # Some parameter documentations has been truncated, see
@@ -68,9 +66,7 @@ module MetronomeSDK
68
66
  #
69
67
  # @return [Symbol, MetronomeSDK::Models::V1::Contracts::RateCards::RateListParams::Selector::BillingFrequency, nil]
70
68
  optional :billing_frequency,
71
- enum: -> {
72
- MetronomeSDK::V1::Contracts::RateCards::RateListParams::Selector::BillingFrequency
73
- }
69
+ enum: -> { MetronomeSDK::V1::Contracts::RateCards::RateListParams::Selector::BillingFrequency }
74
70
 
75
71
  # @!attribute partial_pricing_group_values
76
72
  # List of pricing group key value pairs, rates containing the matching key / value