metronome-sdk 0.2.0 → 1.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 (321) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +61 -0
  3. data/README.md +9 -9
  4. data/lib/metronome_sdk/internal/body_cursor_page.rb +86 -0
  5. data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +86 -0
  6. data/lib/metronome_sdk/internal/transport/base_client.rb +1 -4
  7. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +1 -9
  8. data/lib/metronome_sdk/internal/type/array_of.rb +1 -0
  9. data/lib/metronome_sdk/internal/type/base_model.rb +9 -14
  10. data/lib/metronome_sdk/internal/type/converter.rb +27 -0
  11. data/lib/metronome_sdk/internal/type/hash_of.rb +1 -0
  12. data/lib/metronome_sdk/internal/type/union.rb +20 -7
  13. data/lib/metronome_sdk/internal/util.rb +1 -1
  14. data/lib/metronome_sdk/models/base_threshold_commit.rb +36 -0
  15. data/lib/metronome_sdk/models/commit.rb +26 -170
  16. data/lib/metronome_sdk/models/commit_hierarchy_configuration.rb +98 -0
  17. data/lib/metronome_sdk/models/commit_rate.rb +48 -0
  18. data/lib/metronome_sdk/models/commit_specifier.rb +42 -0
  19. data/lib/metronome_sdk/models/commit_specifier_input.rb +42 -0
  20. data/lib/metronome_sdk/models/contract.rb +404 -0
  21. data/lib/metronome_sdk/models/contract_v2.rb +2919 -0
  22. data/lib/metronome_sdk/models/contract_without_amendments.rb +36 -1126
  23. data/lib/metronome_sdk/models/credit.rb +9 -156
  24. data/lib/metronome_sdk/models/discount.rb +2 -1
  25. data/lib/metronome_sdk/models/hierarchy_configuration.rb +76 -0
  26. data/lib/metronome_sdk/models/override.rb +6 -101
  27. data/lib/metronome_sdk/models/override_tier.rb +21 -0
  28. data/lib/metronome_sdk/models/overwrite_rate.rb +82 -0
  29. data/lib/metronome_sdk/models/payment_gate_config.rb +149 -0
  30. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +149 -0
  31. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +100 -0
  32. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +102 -0
  33. data/lib/metronome_sdk/models/pro_service.rb +2 -1
  34. data/lib/metronome_sdk/models/recurring_commit_subscription_config.rb +51 -0
  35. data/lib/metronome_sdk/models/schedule_point_in_time.rb +14 -1
  36. data/lib/metronome_sdk/models/scheduled_charge.rb +2 -1
  37. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +44 -0
  38. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +44 -0
  39. data/lib/metronome_sdk/models/subscription.rb +227 -0
  40. data/lib/metronome_sdk/models/update_base_threshold_commit.rb +36 -0
  41. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -6
  42. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +1 -2
  43. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +3 -3
  44. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -7
  45. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +110 -415
  46. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +7 -16
  47. data/lib/metronome_sdk/models/v1/contract_create_params.rb +287 -1480
  48. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +6 -23
  49. data/lib/metronome_sdk/models/v1/contract_list_response.rb +3 -1153
  50. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +2 -6
  51. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +5 -50
  52. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +3 -1154
  53. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +1 -3
  54. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +9 -1
  55. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -1
  56. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -1
  57. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +1 -4
  58. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -7
  59. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +10 -1
  60. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +2 -6
  61. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +5 -50
  62. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +10 -1
  63. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +1 -3
  64. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +1 -3
  65. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -61
  66. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +3 -49
  67. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +4 -51
  68. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +2 -6
  69. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +5 -49
  70. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +103 -123
  71. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +3 -5
  72. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +1 -3
  73. data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +41 -58
  74. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +5 -1
  75. data/lib/metronome_sdk/models/v1/customer.rb +2 -1
  76. data/lib/metronome_sdk/models/v1/customer_create_params.rb +37 -11
  77. data/lib/metronome_sdk/models/v1/customer_detail.rb +2 -1
  78. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +3 -3
  79. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +1 -3
  80. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rb +28 -0
  81. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +128 -0
  82. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +143 -0
  83. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +1 -3
  84. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +30 -1
  85. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +2 -0
  86. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +2 -0
  87. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +20 -61
  88. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +6 -48
  89. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +8 -16
  90. data/lib/metronome_sdk/models/v1/customers/invoice.rb +68 -43
  91. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +1 -4
  92. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +2 -6
  93. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -1
  94. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +4 -11
  95. data/lib/metronome_sdk/models/v1/plan_detail.rb +9 -5
  96. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -1
  97. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -1
  98. data/lib/metronome_sdk/models/v1/plan_list_response.rb +5 -1
  99. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +1 -4
  100. data/lib/metronome_sdk/models/v1/usage_list_params.rb +1 -3
  101. data/lib/metronome_sdk/models/v1/usage_list_response.rb +45 -62
  102. data/lib/metronome_sdk/models/v1/usage_search_response.rb +4 -7
  103. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +38 -58
  104. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +35 -49
  105. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +469 -2302
  106. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +358 -2414
  107. data/lib/metronome_sdk/models/v2/contract_list_response.rb +3 -4520
  108. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +3 -4528
  109. data/lib/metronome_sdk/models.rb +38 -0
  110. data/lib/metronome_sdk/resources/v1/alerts.rb +72 -2
  111. data/lib/metronome_sdk/resources/v1/audit_logs.rb +39 -4
  112. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +54 -4
  113. data/lib/metronome_sdk/resources/v1/contracts/products.rb +27 -6
  114. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +7 -2
  115. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +10 -2
  116. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +109 -10
  117. data/lib/metronome_sdk/resources/v1/contracts.rb +254 -18
  118. data/lib/metronome_sdk/resources/v1/credit_grants.rb +2 -1
  119. data/lib/metronome_sdk/resources/v1/custom_fields.rb +51 -14
  120. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +103 -8
  121. data/lib/metronome_sdk/resources/v1/customers/commits.rb +119 -9
  122. data/lib/metronome_sdk/resources/v1/customers/credits.rb +104 -8
  123. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +124 -8
  124. data/lib/metronome_sdk/resources/v1/customers.rb +169 -12
  125. data/lib/metronome_sdk/resources/v1/dashboards.rb +29 -3
  126. data/lib/metronome_sdk/resources/v1/invoices.rb +23 -2
  127. data/lib/metronome_sdk/resources/v1/pricing_units.rb +6 -1
  128. data/lib/metronome_sdk/resources/v1/services.rb +6 -4
  129. data/lib/metronome_sdk/resources/v1/usage.rb +185 -12
  130. data/lib/metronome_sdk/resources/v2/contracts.rb +118 -18
  131. data/lib/metronome_sdk/version.rb +1 -1
  132. data/lib/metronome_sdk.rb +24 -3
  133. data/rbi/metronome_sdk/errors.rbi +2 -2
  134. data/rbi/metronome_sdk/internal/body_cursor_page.rbi +22 -0
  135. data/rbi/metronome_sdk/internal/cursor_page_without_limit.rbi +22 -0
  136. data/rbi/metronome_sdk/internal/type/converter.rbi +58 -0
  137. data/rbi/metronome_sdk/internal/type/union.rbi +9 -2
  138. data/rbi/metronome_sdk/models/base_threshold_commit.rbi +58 -0
  139. data/rbi/metronome_sdk/models/commit.rbi +26 -348
  140. data/rbi/metronome_sdk/models/commit_hierarchy_configuration.rbi +280 -0
  141. data/rbi/metronome_sdk/models/commit_rate.rbi +85 -0
  142. data/rbi/metronome_sdk/models/commit_specifier.rbi +71 -0
  143. data/rbi/metronome_sdk/models/commit_specifier_input.rbi +74 -0
  144. data/rbi/metronome_sdk/models/contract.rbi +768 -0
  145. data/rbi/metronome_sdk/models/contract_v2.rbi +5822 -0
  146. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +184 -2507
  147. data/rbi/metronome_sdk/models/credit.rbi +10 -348
  148. data/rbi/metronome_sdk/models/discount.rbi +2 -0
  149. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +180 -0
  150. data/rbi/metronome_sdk/models/override.rbi +8 -193
  151. data/rbi/metronome_sdk/models/override_tier.rbi +29 -0
  152. data/rbi/metronome_sdk/models/overwrite_rate.rbi +137 -0
  153. data/rbi/metronome_sdk/models/payment_gate_config.rbi +312 -0
  154. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +321 -0
  155. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +183 -0
  156. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +188 -0
  157. data/rbi/metronome_sdk/models/pro_service.rbi +2 -0
  158. data/rbi/metronome_sdk/models/recurring_commit_subscription_config.rbi +125 -0
  159. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +17 -1
  160. data/rbi/metronome_sdk/models/scheduled_charge.rbi +2 -0
  161. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +76 -0
  162. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -0
  163. data/rbi/metronome_sdk/models/subscription.rbi +460 -0
  164. data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +61 -0
  165. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -3
  166. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +2 -0
  167. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +2 -0
  168. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +120 -771
  169. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +2 -0
  170. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1613 -4069
  171. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +8 -59
  172. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +5 -2420
  173. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +6 -129
  174. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +4 -2419
  175. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +11 -0
  176. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +2 -0
  177. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +2 -0
  178. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_params.rbi +2 -0
  179. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +2 -0
  180. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +6 -129
  181. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +2 -0
  182. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +4 -129
  183. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +4 -129
  184. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +4 -129
  185. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +6 -129
  186. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +147 -198
  187. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +2 -0
  188. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +117 -165
  189. data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +8 -1
  190. data/rbi/metronome_sdk/models/v1/customer.rbi +2 -0
  191. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +88 -3
  192. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +2 -0
  193. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +2 -0
  194. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbi +51 -0
  195. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +265 -0
  196. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +348 -0
  197. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +60 -0
  198. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +10 -0
  199. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +10 -0
  200. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +19 -90
  201. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +6 -90
  202. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +6 -3
  203. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +76 -0
  204. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +2 -0
  205. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +2 -0
  206. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +2 -0
  207. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +2 -0
  208. data/rbi/metronome_sdk/models/v1/plan_list_response.rbi +8 -1
  209. data/rbi/metronome_sdk/models/v1/usage_list_response.rbi +45 -86
  210. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +2 -0
  211. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +66 -76
  212. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +66 -76
  213. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3563 -7329
  214. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1181 -6070
  215. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +5 -9867
  216. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +6 -9866
  217. data/rbi/metronome_sdk/models.rbi +44 -0
  218. data/rbi/metronome_sdk/resources/v1/alerts.rbi +72 -2
  219. data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +39 -4
  220. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +54 -4
  221. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +27 -5
  222. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +7 -2
  223. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +10 -3
  224. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +109 -9
  225. data/rbi/metronome_sdk/resources/v1/contracts.rbi +257 -16
  226. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +5 -1
  227. data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +57 -14
  228. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +108 -5
  229. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +119 -10
  230. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +104 -9
  231. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +123 -7
  232. data/rbi/metronome_sdk/resources/v1/customers.rbi +156 -11
  233. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +29 -3
  234. data/rbi/metronome_sdk/resources/v1/invoices.rbi +23 -2
  235. data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +6 -1
  236. data/rbi/metronome_sdk/resources/v1/services.rbi +6 -4
  237. data/rbi/metronome_sdk/resources/v1/usage.rbi +188 -12
  238. data/rbi/metronome_sdk/resources/v2/contracts.rbi +128 -23
  239. data/sig/metronome_sdk/internal/body_cursor_page.rbs +13 -0
  240. data/sig/metronome_sdk/internal/cursor_page_without_limit.rbs +13 -0
  241. data/sig/metronome_sdk/internal/type/converter.rbs +17 -0
  242. data/sig/metronome_sdk/internal/type/union.rbs +2 -2
  243. data/sig/metronome_sdk/models/base_threshold_commit.rbs +26 -0
  244. data/sig/metronome_sdk/models/commit.rbs +17 -170
  245. data/sig/metronome_sdk/models/commit_hierarchy_configuration.rbs +117 -0
  246. data/sig/metronome_sdk/models/commit_rate.rbs +48 -0
  247. data/sig/metronome_sdk/models/commit_specifier.rbs +47 -0
  248. data/sig/metronome_sdk/models/commit_specifier_input.rbs +47 -0
  249. data/sig/metronome_sdk/models/contract.rbs +398 -0
  250. data/sig/metronome_sdk/models/contract_v2.rbs +2881 -0
  251. data/sig/metronome_sdk/models/contract_without_amendments.rbs +54 -976
  252. data/sig/metronome_sdk/models/credit.rbs +12 -170
  253. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +71 -0
  254. data/sig/metronome_sdk/models/override.rbs +12 -101
  255. data/sig/metronome_sdk/models/override_tier.rbs +17 -0
  256. data/sig/metronome_sdk/models/overwrite_rate.rbs +78 -0
  257. data/sig/metronome_sdk/models/payment_gate_config.rbs +123 -0
  258. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +123 -0
  259. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +82 -0
  260. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +82 -0
  261. data/sig/metronome_sdk/models/recurring_commit_subscription_config.rbs +51 -0
  262. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +7 -0
  263. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +35 -0
  264. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +35 -0
  265. data/sig/metronome_sdk/models/subscription.rbs +215 -0
  266. data/sig/metronome_sdk/models/update_base_threshold_commit.rbs +28 -0
  267. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +4 -2
  268. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +62 -343
  269. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +218 -1234
  270. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +4 -25
  271. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +4 -1041
  272. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +6 -54
  273. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +4 -1041
  274. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +7 -0
  275. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +6 -54
  276. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +6 -54
  277. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +6 -54
  278. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +6 -54
  279. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +6 -54
  280. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +72 -94
  281. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +53 -75
  282. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +31 -4
  283. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbs +32 -0
  284. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +113 -0
  285. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +133 -0
  286. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +21 -0
  287. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +7 -1
  288. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +6 -1
  289. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +13 -50
  290. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +6 -50
  291. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +4 -2
  292. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +5 -0
  293. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +33 -55
  294. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +24 -43
  295. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +24 -43
  296. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +400 -1911
  297. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +256 -2249
  298. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +4 -4426
  299. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +4 -4426
  300. data/sig/metronome_sdk/models.rbs +38 -0
  301. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +1 -0
  302. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  303. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -3
  304. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -1
  305. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  306. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +2 -1
  307. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +2 -2
  308. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +2 -2
  309. data/sig/metronome_sdk/resources/v1/customers.rbs +11 -0
  310. data/sig/metronome_sdk/resources/v1/usage.rbs +1 -1
  311. data/sig/metronome_sdk/resources/v2/contracts.rbs +9 -4
  312. metadata +74 -11
  313. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +0 -29
  314. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +0 -26
  315. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +0 -26
  316. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +0 -46
  317. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +0 -45
  318. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +0 -45
  319. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +0 -29
  320. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +0 -26
  321. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +0 -26
@@ -0,0 +1,123 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type payment_gate_config_v2 =
4
+ {
5
+ payment_gate_type: MetronomeSDK::Models::PaymentGateConfigV2::payment_gate_type,
6
+ precalculated_tax_config: MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig,
7
+ stripe_config: MetronomeSDK::PaymentGateConfigV2::StripeConfig,
8
+ tax_type: MetronomeSDK::Models::PaymentGateConfigV2::tax_type
9
+ }
10
+
11
+ class PaymentGateConfigV2 < MetronomeSDK::Internal::Type::BaseModel
12
+ attr_accessor payment_gate_type: MetronomeSDK::Models::PaymentGateConfigV2::payment_gate_type
13
+
14
+ attr_reader precalculated_tax_config: MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig?
15
+
16
+ def precalculated_tax_config=: (
17
+ MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig
18
+ ) -> MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig
19
+
20
+ attr_reader stripe_config: MetronomeSDK::PaymentGateConfigV2::StripeConfig?
21
+
22
+ def stripe_config=: (
23
+ MetronomeSDK::PaymentGateConfigV2::StripeConfig
24
+ ) -> MetronomeSDK::PaymentGateConfigV2::StripeConfig
25
+
26
+ attr_reader tax_type: MetronomeSDK::Models::PaymentGateConfigV2::tax_type?
27
+
28
+ def tax_type=: (
29
+ MetronomeSDK::Models::PaymentGateConfigV2::tax_type
30
+ ) -> MetronomeSDK::Models::PaymentGateConfigV2::tax_type
31
+
32
+ def initialize: (
33
+ payment_gate_type: MetronomeSDK::Models::PaymentGateConfigV2::payment_gate_type,
34
+ ?precalculated_tax_config: MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig,
35
+ ?stripe_config: MetronomeSDK::PaymentGateConfigV2::StripeConfig,
36
+ ?tax_type: MetronomeSDK::Models::PaymentGateConfigV2::tax_type
37
+ ) -> void
38
+
39
+ def to_hash: -> {
40
+ payment_gate_type: MetronomeSDK::Models::PaymentGateConfigV2::payment_gate_type,
41
+ precalculated_tax_config: MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig,
42
+ stripe_config: MetronomeSDK::PaymentGateConfigV2::StripeConfig,
43
+ tax_type: MetronomeSDK::Models::PaymentGateConfigV2::tax_type
44
+ }
45
+
46
+ type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
47
+
48
+ module PaymentGateType
49
+ extend MetronomeSDK::Internal::Type::Enum
50
+
51
+ NONE: :NONE
52
+ STRIPE: :STRIPE
53
+ EXTERNAL: :EXTERNAL
54
+
55
+ def self?.values: -> ::Array[MetronomeSDK::Models::PaymentGateConfigV2::payment_gate_type]
56
+ end
57
+
58
+ type precalculated_tax_config = { tax_amount: Float, tax_name: String }
59
+
60
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
61
+ attr_accessor tax_amount: Float
62
+
63
+ attr_reader tax_name: String?
64
+
65
+ def tax_name=: (String) -> String
66
+
67
+ def initialize: (tax_amount: Float, ?tax_name: String) -> void
68
+
69
+ def to_hash: -> { tax_amount: Float, tax_name: String }
70
+ end
71
+
72
+ type stripe_config =
73
+ {
74
+ payment_type: MetronomeSDK::Models::PaymentGateConfigV2::StripeConfig::payment_type,
75
+ invoice_metadata: ::Hash[Symbol, String]
76
+ }
77
+
78
+ class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
79
+ attr_accessor payment_type: MetronomeSDK::Models::PaymentGateConfigV2::StripeConfig::payment_type
80
+
81
+ attr_reader invoice_metadata: ::Hash[Symbol, String]?
82
+
83
+ def invoice_metadata=: (
84
+ ::Hash[Symbol, String]
85
+ ) -> ::Hash[Symbol, String]
86
+
87
+ def initialize: (
88
+ payment_type: MetronomeSDK::Models::PaymentGateConfigV2::StripeConfig::payment_type,
89
+ ?invoice_metadata: ::Hash[Symbol, String]
90
+ ) -> void
91
+
92
+ def to_hash: -> {
93
+ payment_type: MetronomeSDK::Models::PaymentGateConfigV2::StripeConfig::payment_type,
94
+ invoice_metadata: ::Hash[Symbol, String]
95
+ }
96
+
97
+ type payment_type = :INVOICE | :PAYMENT_INTENT
98
+
99
+ module PaymentType
100
+ extend MetronomeSDK::Internal::Type::Enum
101
+
102
+ INVOICE: :INVOICE
103
+ PAYMENT_INTENT: :PAYMENT_INTENT
104
+
105
+ def self?.values: -> ::Array[MetronomeSDK::Models::PaymentGateConfigV2::StripeConfig::payment_type]
106
+ end
107
+ end
108
+
109
+ type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
110
+
111
+ module TaxType
112
+ extend MetronomeSDK::Internal::Type::Enum
113
+
114
+ NONE: :NONE
115
+ STRIPE: :STRIPE
116
+ ANROK: :ANROK
117
+ PRECALCULATED: :PRECALCULATED
118
+
119
+ def self?.values: -> ::Array[MetronomeSDK::Models::PaymentGateConfigV2::tax_type]
120
+ end
121
+ end
122
+ end
123
+ end
@@ -0,0 +1,82 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type prepaid_balance_threshold_configuration =
4
+ {
5
+ commit: MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit,
6
+ is_enabled: bool,
7
+ payment_gate_config: MetronomeSDK::PaymentGateConfig,
8
+ recharge_to_amount: Float,
9
+ threshold_amount: Float,
10
+ custom_credit_type_id: String
11
+ }
12
+
13
+ class PrepaidBalanceThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
14
+ attr_accessor commit: MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit
15
+
16
+ attr_accessor is_enabled: bool
17
+
18
+ attr_accessor payment_gate_config: MetronomeSDK::PaymentGateConfig
19
+
20
+ attr_accessor recharge_to_amount: Float
21
+
22
+ attr_accessor threshold_amount: Float
23
+
24
+ attr_reader custom_credit_type_id: String?
25
+
26
+ def custom_credit_type_id=: (String) -> String
27
+
28
+ def initialize: (
29
+ commit: MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit,
30
+ is_enabled: bool,
31
+ payment_gate_config: MetronomeSDK::PaymentGateConfig,
32
+ recharge_to_amount: Float,
33
+ threshold_amount: Float,
34
+ ?custom_credit_type_id: String
35
+ ) -> void
36
+
37
+ def to_hash: -> {
38
+ commit: MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit,
39
+ is_enabled: bool,
40
+ payment_gate_config: MetronomeSDK::PaymentGateConfig,
41
+ recharge_to_amount: Float,
42
+ threshold_amount: Float,
43
+ custom_credit_type_id: String
44
+ }
45
+
46
+ type commit =
47
+ {
48
+ applicable_product_ids: ::Array[String],
49
+ applicable_product_tags: ::Array[String],
50
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
51
+ }
52
+
53
+ class Commit < MetronomeSDK::Models::BaseThresholdCommit
54
+ def applicable_product_ids: -> ::Array[String]?
55
+
56
+ def applicable_product_ids=: (::Array[String] _) -> ::Array[String]
57
+
58
+ def applicable_product_tags: -> ::Array[String]?
59
+
60
+ def applicable_product_tags=: (::Array[String] _) -> ::Array[String]
61
+
62
+ def specifiers: -> ::Array[MetronomeSDK::CommitSpecifierInput]?
63
+
64
+ def specifiers=: (
65
+ ::Array[MetronomeSDK::CommitSpecifierInput] _
66
+ ) -> ::Array[MetronomeSDK::CommitSpecifierInput]
67
+
68
+ def initialize: (
69
+ ?applicable_product_ids: ::Array[String],
70
+ ?applicable_product_tags: ::Array[String],
71
+ ?specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
72
+ ) -> void
73
+
74
+ def to_hash: -> {
75
+ applicable_product_ids: ::Array[String],
76
+ applicable_product_tags: ::Array[String],
77
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
78
+ }
79
+ end
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,82 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type prepaid_balance_threshold_configuration_v2 =
4
+ {
5
+ commit: MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit,
6
+ is_enabled: bool,
7
+ payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
8
+ recharge_to_amount: Float,
9
+ threshold_amount: Float,
10
+ custom_credit_type_id: String
11
+ }
12
+
13
+ class PrepaidBalanceThresholdConfigurationV2 < MetronomeSDK::Internal::Type::BaseModel
14
+ attr_accessor commit: MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit
15
+
16
+ attr_accessor is_enabled: bool
17
+
18
+ attr_accessor payment_gate_config: MetronomeSDK::PaymentGateConfigV2
19
+
20
+ attr_accessor recharge_to_amount: Float
21
+
22
+ attr_accessor threshold_amount: Float
23
+
24
+ attr_reader custom_credit_type_id: String?
25
+
26
+ def custom_credit_type_id=: (String) -> String
27
+
28
+ def initialize: (
29
+ commit: MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit,
30
+ is_enabled: bool,
31
+ payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
32
+ recharge_to_amount: Float,
33
+ threshold_amount: Float,
34
+ ?custom_credit_type_id: String
35
+ ) -> void
36
+
37
+ def to_hash: -> {
38
+ commit: MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit,
39
+ is_enabled: bool,
40
+ payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
41
+ recharge_to_amount: Float,
42
+ threshold_amount: Float,
43
+ custom_credit_type_id: String
44
+ }
45
+
46
+ type commit =
47
+ {
48
+ applicable_product_ids: ::Array[String],
49
+ applicable_product_tags: ::Array[String],
50
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
51
+ }
52
+
53
+ class Commit < MetronomeSDK::Models::UpdateBaseThresholdCommit
54
+ def applicable_product_ids: -> ::Array[String]?
55
+
56
+ def applicable_product_ids=: (::Array[String] _) -> ::Array[String]
57
+
58
+ def applicable_product_tags: -> ::Array[String]?
59
+
60
+ def applicable_product_tags=: (::Array[String] _) -> ::Array[String]
61
+
62
+ def specifiers: -> ::Array[MetronomeSDK::CommitSpecifierInput]?
63
+
64
+ def specifiers=: (
65
+ ::Array[MetronomeSDK::CommitSpecifierInput] _
66
+ ) -> ::Array[MetronomeSDK::CommitSpecifierInput]
67
+
68
+ def initialize: (
69
+ ?applicable_product_ids: ::Array[String],
70
+ ?applicable_product_tags: ::Array[String],
71
+ ?specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
72
+ ) -> void
73
+
74
+ def to_hash: -> {
75
+ applicable_product_ids: ::Array[String],
76
+ applicable_product_tags: ::Array[String],
77
+ specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]
78
+ }
79
+ end
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,51 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type recurring_commit_subscription_config =
4
+ {
5
+ allocation: MetronomeSDK::Models::RecurringCommitSubscriptionConfig::allocation,
6
+ apply_seat_increase_config: MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig,
7
+ subscription_id: String
8
+ }
9
+
10
+ class RecurringCommitSubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
11
+ attr_accessor allocation: MetronomeSDK::Models::RecurringCommitSubscriptionConfig::allocation
12
+
13
+ attr_accessor apply_seat_increase_config: MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig
14
+
15
+ attr_accessor subscription_id: String
16
+
17
+ def initialize: (
18
+ allocation: MetronomeSDK::Models::RecurringCommitSubscriptionConfig::allocation,
19
+ apply_seat_increase_config: MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig,
20
+ subscription_id: String
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ allocation: MetronomeSDK::Models::RecurringCommitSubscriptionConfig::allocation,
25
+ apply_seat_increase_config: MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig,
26
+ subscription_id: String
27
+ }
28
+
29
+ type allocation = :INDIVIDUAL | :POOLED
30
+
31
+ module Allocation
32
+ extend MetronomeSDK::Internal::Type::Enum
33
+
34
+ INDIVIDUAL: :INDIVIDUAL
35
+ POOLED: :POOLED
36
+
37
+ def self?.values: -> ::Array[MetronomeSDK::Models::RecurringCommitSubscriptionConfig::allocation]
38
+ end
39
+
40
+ type apply_seat_increase_config = { is_prorated: bool }
41
+
42
+ class ApplySeatIncreaseConfig < MetronomeSDK::Internal::Type::BaseModel
43
+ attr_accessor is_prorated: bool
44
+
45
+ def initialize: (is_prorated: bool) -> void
46
+
47
+ def to_hash: -> { is_prorated: bool }
48
+ end
49
+ end
50
+ end
51
+ end
@@ -3,6 +3,7 @@ module MetronomeSDK
3
3
  type schedule_point_in_time =
4
4
  {
5
5
  credit_type: MetronomeSDK::CreditTypeData,
6
+ do_not_invoice: bool,
6
7
  schedule_items: ::Array[MetronomeSDK::SchedulePointInTime::ScheduleItem]
7
8
  }
8
9
 
@@ -13,6 +14,10 @@ module MetronomeSDK
13
14
  MetronomeSDK::CreditTypeData
14
15
  ) -> MetronomeSDK::CreditTypeData
15
16
 
17
+ attr_reader do_not_invoice: bool?
18
+
19
+ def do_not_invoice=: (bool) -> bool
20
+
16
21
  attr_reader schedule_items: ::Array[MetronomeSDK::SchedulePointInTime::ScheduleItem]?
17
22
 
18
23
  def schedule_items=: (
@@ -21,11 +26,13 @@ module MetronomeSDK
21
26
 
22
27
  def initialize: (
23
28
  ?credit_type: MetronomeSDK::CreditTypeData,
29
+ ?do_not_invoice: bool,
24
30
  ?schedule_items: ::Array[MetronomeSDK::SchedulePointInTime::ScheduleItem]
25
31
  ) -> void
26
32
 
27
33
  def to_hash: -> {
28
34
  credit_type: MetronomeSDK::CreditTypeData,
35
+ do_not_invoice: bool,
29
36
  schedule_items: ::Array[MetronomeSDK::SchedulePointInTime::ScheduleItem]
30
37
  }
31
38
 
@@ -0,0 +1,35 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type spend_threshold_configuration =
4
+ {
5
+ commit: MetronomeSDK::BaseThresholdCommit,
6
+ is_enabled: bool,
7
+ payment_gate_config: MetronomeSDK::PaymentGateConfig,
8
+ threshold_amount: Float
9
+ }
10
+
11
+ class SpendThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
12
+ attr_accessor commit: MetronomeSDK::BaseThresholdCommit
13
+
14
+ attr_accessor is_enabled: bool
15
+
16
+ attr_accessor payment_gate_config: MetronomeSDK::PaymentGateConfig
17
+
18
+ attr_accessor threshold_amount: Float
19
+
20
+ def initialize: (
21
+ commit: MetronomeSDK::BaseThresholdCommit,
22
+ is_enabled: bool,
23
+ payment_gate_config: MetronomeSDK::PaymentGateConfig,
24
+ threshold_amount: Float
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ commit: MetronomeSDK::BaseThresholdCommit,
29
+ is_enabled: bool,
30
+ payment_gate_config: MetronomeSDK::PaymentGateConfig,
31
+ threshold_amount: Float
32
+ }
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,35 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type spend_threshold_configuration_v2 =
4
+ {
5
+ commit: MetronomeSDK::UpdateBaseThresholdCommit,
6
+ is_enabled: bool,
7
+ payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
8
+ threshold_amount: Float
9
+ }
10
+
11
+ class SpendThresholdConfigurationV2 < MetronomeSDK::Internal::Type::BaseModel
12
+ attr_accessor commit: MetronomeSDK::UpdateBaseThresholdCommit
13
+
14
+ attr_accessor is_enabled: bool
15
+
16
+ attr_accessor payment_gate_config: MetronomeSDK::PaymentGateConfigV2
17
+
18
+ attr_accessor threshold_amount: Float
19
+
20
+ def initialize: (
21
+ commit: MetronomeSDK::UpdateBaseThresholdCommit,
22
+ is_enabled: bool,
23
+ payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
24
+ threshold_amount: Float
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ commit: MetronomeSDK::UpdateBaseThresholdCommit,
29
+ is_enabled: bool,
30
+ payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
31
+ threshold_amount: Float
32
+ }
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,215 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type subscription =
4
+ {
5
+ collection_schedule: MetronomeSDK::Models::Subscription::collection_schedule,
6
+ proration: MetronomeSDK::Subscription::Proration,
7
+ quantity_management_mode: MetronomeSDK::Models::Subscription::quantity_management_mode,
8
+ quantity_schedule: ::Array[MetronomeSDK::Subscription::QuantitySchedule],
9
+ starting_at: Time,
10
+ subscription_rate: MetronomeSDK::Subscription::SubscriptionRate,
11
+ id: String,
12
+ custom_fields: ::Hash[Symbol, String],
13
+ description: String,
14
+ ending_before: Time,
15
+ fiat_credit_type_id: String,
16
+ name: String
17
+ }
18
+
19
+ class Subscription < MetronomeSDK::Internal::Type::BaseModel
20
+ attr_accessor collection_schedule: MetronomeSDK::Models::Subscription::collection_schedule
21
+
22
+ attr_accessor proration: MetronomeSDK::Subscription::Proration
23
+
24
+ attr_accessor quantity_management_mode: MetronomeSDK::Models::Subscription::quantity_management_mode
25
+
26
+ attr_accessor quantity_schedule: ::Array[MetronomeSDK::Subscription::QuantitySchedule]
27
+
28
+ attr_accessor starting_at: Time
29
+
30
+ attr_accessor subscription_rate: MetronomeSDK::Subscription::SubscriptionRate
31
+
32
+ attr_reader id: String?
33
+
34
+ def id=: (String) -> String
35
+
36
+ attr_reader custom_fields: ::Hash[Symbol, String]?
37
+
38
+ def custom_fields=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
39
+
40
+ attr_reader description: String?
41
+
42
+ def description=: (String) -> String
43
+
44
+ attr_reader ending_before: Time?
45
+
46
+ def ending_before=: (Time) -> Time
47
+
48
+ attr_reader fiat_credit_type_id: String?
49
+
50
+ def fiat_credit_type_id=: (String) -> String
51
+
52
+ attr_reader name: String?
53
+
54
+ def name=: (String) -> String
55
+
56
+ def initialize: (
57
+ collection_schedule: MetronomeSDK::Models::Subscription::collection_schedule,
58
+ proration: MetronomeSDK::Subscription::Proration,
59
+ quantity_management_mode: MetronomeSDK::Models::Subscription::quantity_management_mode,
60
+ quantity_schedule: ::Array[MetronomeSDK::Subscription::QuantitySchedule],
61
+ starting_at: Time,
62
+ subscription_rate: MetronomeSDK::Subscription::SubscriptionRate,
63
+ ?id: String,
64
+ ?custom_fields: ::Hash[Symbol, String],
65
+ ?description: String,
66
+ ?ending_before: Time,
67
+ ?fiat_credit_type_id: String,
68
+ ?name: String
69
+ ) -> void
70
+
71
+ def to_hash: -> {
72
+ collection_schedule: MetronomeSDK::Models::Subscription::collection_schedule,
73
+ proration: MetronomeSDK::Subscription::Proration,
74
+ quantity_management_mode: MetronomeSDK::Models::Subscription::quantity_management_mode,
75
+ quantity_schedule: ::Array[MetronomeSDK::Subscription::QuantitySchedule],
76
+ starting_at: Time,
77
+ subscription_rate: MetronomeSDK::Subscription::SubscriptionRate,
78
+ id: String,
79
+ custom_fields: ::Hash[Symbol, String],
80
+ description: String,
81
+ ending_before: Time,
82
+ fiat_credit_type_id: String,
83
+ name: String
84
+ }
85
+
86
+ type collection_schedule = :ADVANCE | :ARREARS
87
+
88
+ module CollectionSchedule
89
+ extend MetronomeSDK::Internal::Type::Enum
90
+
91
+ ADVANCE: :ADVANCE
92
+ ARREARS: :ARREARS
93
+
94
+ def self?.values: -> ::Array[MetronomeSDK::Models::Subscription::collection_schedule]
95
+ end
96
+
97
+ type proration =
98
+ {
99
+ invoice_behavior: MetronomeSDK::Models::Subscription::Proration::invoice_behavior,
100
+ is_prorated: bool
101
+ }
102
+
103
+ class Proration < MetronomeSDK::Internal::Type::BaseModel
104
+ attr_accessor invoice_behavior: MetronomeSDK::Models::Subscription::Proration::invoice_behavior
105
+
106
+ attr_accessor is_prorated: bool
107
+
108
+ def initialize: (
109
+ invoice_behavior: MetronomeSDK::Models::Subscription::Proration::invoice_behavior,
110
+ is_prorated: bool
111
+ ) -> void
112
+
113
+ def to_hash: -> {
114
+ invoice_behavior: MetronomeSDK::Models::Subscription::Proration::invoice_behavior,
115
+ is_prorated: bool
116
+ }
117
+
118
+ type invoice_behavior =
119
+ :BILL_IMMEDIATELY | :BILL_ON_NEXT_COLLECTION_DATE
120
+
121
+ module InvoiceBehavior
122
+ extend MetronomeSDK::Internal::Type::Enum
123
+
124
+ BILL_IMMEDIATELY: :BILL_IMMEDIATELY
125
+ BILL_ON_NEXT_COLLECTION_DATE: :BILL_ON_NEXT_COLLECTION_DATE
126
+
127
+ def self?.values: -> ::Array[MetronomeSDK::Models::Subscription::Proration::invoice_behavior]
128
+ end
129
+ end
130
+
131
+ type quantity_management_mode = :SEAT_BASED | :QUANTITY_ONLY
132
+
133
+ module QuantityManagementMode
134
+ extend MetronomeSDK::Internal::Type::Enum
135
+
136
+ SEAT_BASED: :SEAT_BASED
137
+ QUANTITY_ONLY: :QUANTITY_ONLY
138
+
139
+ def self?.values: -> ::Array[MetronomeSDK::Models::Subscription::quantity_management_mode]
140
+ end
141
+
142
+ type quantity_schedule =
143
+ { quantity: Float, starting_at: Time, ending_before: Time }
144
+
145
+ class QuantitySchedule < MetronomeSDK::Internal::Type::BaseModel
146
+ attr_accessor quantity: Float
147
+
148
+ attr_accessor starting_at: Time
149
+
150
+ attr_reader ending_before: Time?
151
+
152
+ def ending_before=: (Time) -> Time
153
+
154
+ def initialize: (
155
+ quantity: Float,
156
+ starting_at: Time,
157
+ ?ending_before: Time
158
+ ) -> void
159
+
160
+ def to_hash: -> {
161
+ quantity: Float,
162
+ starting_at: Time,
163
+ ending_before: Time
164
+ }
165
+ end
166
+
167
+ type subscription_rate =
168
+ {
169
+ billing_frequency: MetronomeSDK::Models::Subscription::SubscriptionRate::billing_frequency,
170
+ product: MetronomeSDK::Subscription::SubscriptionRate::Product
171
+ }
172
+
173
+ class SubscriptionRate < MetronomeSDK::Internal::Type::BaseModel
174
+ attr_accessor billing_frequency: MetronomeSDK::Models::Subscription::SubscriptionRate::billing_frequency
175
+
176
+ attr_accessor product: MetronomeSDK::Subscription::SubscriptionRate::Product
177
+
178
+ def initialize: (
179
+ billing_frequency: MetronomeSDK::Models::Subscription::SubscriptionRate::billing_frequency,
180
+ product: MetronomeSDK::Subscription::SubscriptionRate::Product
181
+ ) -> void
182
+
183
+ def to_hash: -> {
184
+ billing_frequency: MetronomeSDK::Models::Subscription::SubscriptionRate::billing_frequency,
185
+ product: MetronomeSDK::Subscription::SubscriptionRate::Product
186
+ }
187
+
188
+ type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
189
+
190
+ module BillingFrequency
191
+ extend MetronomeSDK::Internal::Type::Enum
192
+
193
+ MONTHLY: :MONTHLY
194
+ QUARTERLY: :QUARTERLY
195
+ ANNUAL: :ANNUAL
196
+ WEEKLY: :WEEKLY
197
+
198
+ def self?.values: -> ::Array[MetronomeSDK::Models::Subscription::SubscriptionRate::billing_frequency]
199
+ end
200
+
201
+ type product = { id: String, name: String }
202
+
203
+ class Product < MetronomeSDK::Internal::Type::BaseModel
204
+ attr_accessor id: String
205
+
206
+ attr_accessor name: String
207
+
208
+ def initialize: (id: String, name: String) -> void
209
+
210
+ def to_hash: -> { id: String, name: String }
211
+ end
212
+ end
213
+ end
214
+ end
215
+ end
@@ -0,0 +1,28 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type update_base_threshold_commit =
4
+ { description: String, name: String, product_id: String }
5
+
6
+ class UpdateBaseThresholdCommit < MetronomeSDK::Internal::Type::BaseModel
7
+ attr_reader description: String?
8
+
9
+ def description=: (String) -> String
10
+
11
+ attr_reader name: String?
12
+
13
+ def name=: (String) -> String
14
+
15
+ attr_reader product_id: String?
16
+
17
+ def product_id=: (String) -> String
18
+
19
+ def initialize: (
20
+ ?description: String,
21
+ ?name: String,
22
+ ?product_id: String
23
+ ) -> void
24
+
25
+ def to_hash: -> { description: String, name: String, product_id: String }
26
+ end
27
+ end
28
+ end