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
@@ -3,135 +3,113 @@ module MetronomeSDK
3
3
  module V1
4
4
  type credit_grant_list_entries_response =
5
5
  {
6
- data: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data],
7
- next_page: String?
6
+ customer_id: String,
7
+ ledgers: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger]
8
8
  }
9
9
 
10
10
  class CreditGrantListEntriesResponse < MetronomeSDK::Internal::Type::BaseModel
11
- attr_accessor data: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data]
11
+ attr_accessor customer_id: String
12
12
 
13
- attr_accessor next_page: String?
13
+ attr_accessor ledgers: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger]
14
14
 
15
15
  def initialize: (
16
- data: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data],
17
- next_page: String?
16
+ customer_id: String,
17
+ ledgers: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger]
18
18
  ) -> void
19
19
 
20
20
  def to_hash: -> {
21
- data: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data],
22
- next_page: String?
21
+ customer_id: String,
22
+ ledgers: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger]
23
23
  }
24
24
 
25
- type data =
25
+ type ledger =
26
26
  {
27
- customer_id: String,
28
- ledgers: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger]
27
+ credit_type: MetronomeSDK::CreditTypeData,
28
+ ending_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance,
29
+ entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
30
+ pending_entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
31
+ starting_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance
29
32
  }
30
33
 
31
- class Data < MetronomeSDK::Internal::Type::BaseModel
32
- attr_accessor customer_id: String
34
+ class Ledger < MetronomeSDK::Internal::Type::BaseModel
35
+ attr_accessor credit_type: MetronomeSDK::CreditTypeData
33
36
 
34
- attr_accessor ledgers: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger]
37
+ attr_accessor ending_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance
38
+
39
+ attr_accessor entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry]
40
+
41
+ attr_accessor pending_entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry]
42
+
43
+ attr_accessor starting_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance
35
44
 
36
45
  def initialize: (
37
- customer_id: String,
38
- ledgers: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger]
46
+ credit_type: MetronomeSDK::CreditTypeData,
47
+ ending_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance,
48
+ entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
49
+ pending_entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
50
+ starting_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance
39
51
  ) -> void
40
52
 
41
53
  def to_hash: -> {
42
- customer_id: String,
43
- ledgers: ::Array[MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger]
54
+ credit_type: MetronomeSDK::CreditTypeData,
55
+ ending_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance,
56
+ entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
57
+ pending_entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
58
+ starting_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance
44
59
  }
45
60
 
46
- type ledger =
61
+ type ending_balance =
47
62
  {
48
- credit_type: MetronomeSDK::CreditTypeData,
49
- ending_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance,
50
- entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
51
- pending_entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
52
- starting_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance
63
+ effective_at: Time,
64
+ excluding_pending: Float,
65
+ including_pending: Float
53
66
  }
54
67
 
55
- class Ledger < MetronomeSDK::Internal::Type::BaseModel
56
- attr_accessor credit_type: MetronomeSDK::CreditTypeData
68
+ class EndingBalance < MetronomeSDK::Internal::Type::BaseModel
69
+ attr_accessor effective_at: Time
57
70
 
58
- attr_accessor ending_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance
71
+ attr_accessor excluding_pending: Float
59
72
 
60
- attr_accessor entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry]
73
+ attr_accessor including_pending: Float
61
74
 
62
- attr_accessor pending_entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry]
75
+ def initialize: (
76
+ effective_at: Time,
77
+ excluding_pending: Float,
78
+ including_pending: Float
79
+ ) -> void
63
80
 
64
- attr_accessor starting_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance
81
+ def to_hash: -> {
82
+ effective_at: Time,
83
+ excluding_pending: Float,
84
+ including_pending: Float
85
+ }
86
+ end
87
+
88
+ type starting_balance =
89
+ {
90
+ effective_at: Time,
91
+ excluding_pending: Float,
92
+ including_pending: Float
93
+ }
94
+
95
+ class StartingBalance < MetronomeSDK::Internal::Type::BaseModel
96
+ attr_accessor effective_at: Time
97
+
98
+ attr_accessor excluding_pending: Float
99
+
100
+ attr_accessor including_pending: Float
65
101
 
66
102
  def initialize: (
67
- credit_type: MetronomeSDK::CreditTypeData,
68
- ending_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance,
69
- entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
70
- pending_entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
71
- starting_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance
103
+ effective_at: Time,
104
+ excluding_pending: Float,
105
+ including_pending: Float
72
106
  ) -> void
73
107
 
74
108
  def to_hash: -> {
75
- credit_type: MetronomeSDK::CreditTypeData,
76
- ending_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance,
77
- entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
78
- pending_entries: ::Array[MetronomeSDK::V1::CreditLedgerEntry],
79
- starting_balance: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance
109
+ effective_at: Time,
110
+ excluding_pending: Float,
111
+ including_pending: Float
80
112
  }
81
-
82
- type ending_balance =
83
- {
84
- effective_at: Time,
85
- excluding_pending: Float,
86
- including_pending: Float
87
- }
88
-
89
- class EndingBalance < MetronomeSDK::Internal::Type::BaseModel
90
- attr_accessor effective_at: Time
91
-
92
- attr_accessor excluding_pending: Float
93
-
94
- attr_accessor including_pending: Float
95
-
96
- def initialize: (
97
- effective_at: Time,
98
- excluding_pending: Float,
99
- including_pending: Float
100
- ) -> void
101
-
102
- def to_hash: -> {
103
- effective_at: Time,
104
- excluding_pending: Float,
105
- including_pending: Float
106
- }
107
- end
108
-
109
- type starting_balance =
110
- {
111
- effective_at: Time,
112
- excluding_pending: Float,
113
- including_pending: Float
114
- }
115
-
116
- class StartingBalance < MetronomeSDK::Internal::Type::BaseModel
117
- attr_accessor effective_at: Time
118
-
119
- attr_accessor excluding_pending: Float
120
-
121
- attr_accessor including_pending: Float
122
-
123
- def initialize: (
124
- effective_at: Time,
125
- excluding_pending: Float,
126
- including_pending: Float
127
- ) -> void
128
-
129
- def to_hash: -> {
130
- effective_at: Time,
131
- excluding_pending: Float,
132
- including_pending: Float
133
- }
134
- end
135
113
  end
136
114
  end
137
115
  end
@@ -3,95 +3,73 @@ module MetronomeSDK
3
3
  module V1
4
4
  type custom_field_list_keys_response =
5
5
  {
6
- data: ::Array[MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data],
7
- next_page: String?
6
+ enforce_uniqueness: bool,
7
+ entity: MetronomeSDK::Models::V1::CustomFieldListKeysResponse::entity,
8
+ key: String
8
9
  }
9
10
 
10
11
  class CustomFieldListKeysResponse < MetronomeSDK::Internal::Type::BaseModel
11
- attr_accessor data: ::Array[MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data]
12
+ attr_accessor enforce_uniqueness: bool
12
13
 
13
- attr_accessor next_page: String?
14
+ attr_accessor entity: MetronomeSDK::Models::V1::CustomFieldListKeysResponse::entity
15
+
16
+ attr_accessor key: String
14
17
 
15
18
  def initialize: (
16
- data: ::Array[MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data],
17
- next_page: String?
19
+ enforce_uniqueness: bool,
20
+ entity: MetronomeSDK::Models::V1::CustomFieldListKeysResponse::entity,
21
+ key: String
18
22
  ) -> void
19
23
 
20
24
  def to_hash: -> {
21
- data: ::Array[MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data],
22
- next_page: String?
25
+ enforce_uniqueness: bool,
26
+ entity: MetronomeSDK::Models::V1::CustomFieldListKeysResponse::entity,
27
+ key: String
23
28
  }
24
29
 
25
- type data =
26
- {
27
- enforce_uniqueness: bool,
28
- entity: MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data::entity,
29
- key: String
30
- }
31
-
32
- class Data < MetronomeSDK::Internal::Type::BaseModel
33
- attr_accessor enforce_uniqueness: bool
34
-
35
- attr_accessor entity: MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data::entity
36
-
37
- attr_accessor key: String
38
-
39
- def initialize: (
40
- enforce_uniqueness: bool,
41
- entity: MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data::entity,
42
- key: String
43
- ) -> void
44
-
45
- def to_hash: -> {
46
- enforce_uniqueness: bool,
47
- entity: MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data::entity,
48
- key: String
49
- }
50
-
51
- type entity =
52
- :alert
53
- | :billable_metric
54
- | :charge
55
- | :commit
56
- | :contract_credit
57
- | :contract_product
58
- | :contract
59
- | :credit_grant
60
- | :customer_plan
61
- | :customer
62
- | :discount
63
- | :invoice
64
- | :plan
65
- | :professional_service
66
- | :product
67
- | :rate_card
68
- | :scheduled_charge
69
- | :subscription
30
+ type entity =
31
+ :alert
32
+ | :billable_metric
33
+ | :charge
34
+ | :commit
35
+ | :contract_credit
36
+ | :contract_product
37
+ | :contract
38
+ | :credit_grant
39
+ | :customer_plan
40
+ | :customer
41
+ | :discount
42
+ | :invoice
43
+ | :plan
44
+ | :professional_service
45
+ | :product
46
+ | :rate_card
47
+ | :scheduled_charge
48
+ | :subscription
70
49
 
71
- module Entity
72
- extend MetronomeSDK::Internal::Type::Enum
50
+ module Entity
51
+ extend MetronomeSDK::Internal::Type::Enum
73
52
 
74
- ALERT: :alert
75
- BILLABLE_METRIC: :billable_metric
76
- CHARGE: :charge
77
- COMMIT: :commit
78
- CONTRACT_CREDIT: :contract_credit
79
- CONTRACT_PRODUCT: :contract_product
80
- CONTRACT: :contract
81
- CREDIT_GRANT: :credit_grant
82
- CUSTOMER_PLAN: :customer_plan
83
- CUSTOMER: :customer
84
- DISCOUNT: :discount
85
- INVOICE: :invoice
86
- PLAN: :plan
87
- PROFESSIONAL_SERVICE: :professional_service
88
- PRODUCT: :product
89
- RATE_CARD: :rate_card
90
- SCHEDULED_CHARGE: :scheduled_charge
91
- SUBSCRIPTION: :subscription
53
+ ALERT: :alert
54
+ BILLABLE_METRIC: :billable_metric
55
+ CHARGE: :charge
56
+ COMMIT: :commit
57
+ CONTRACT_CREDIT: :contract_credit
58
+ CONTRACT_PRODUCT: :contract_product
59
+ CONTRACT: :contract
60
+ CREDIT_GRANT: :credit_grant
61
+ CUSTOMER_PLAN: :customer_plan
62
+ CUSTOMER: :customer
63
+ DISCOUNT: :discount
64
+ INVOICE: :invoice
65
+ PLAN: :plan
66
+ PROFESSIONAL_SERVICE: :professional_service
67
+ PRODUCT: :product
68
+ RATE_CARD: :rate_card
69
+ SCHEDULED_CHARGE: :scheduled_charge
70
+ SUBSCRIPTION: :subscription
92
71
 
93
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::CustomFieldListKeysResponse::Data::entity]
94
- end
72
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::CustomFieldListKeysResponse::entity]
95
73
  end
96
74
  end
97
75
  end
@@ -199,13 +199,19 @@ module MetronomeSDK
199
199
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::aws_region]
200
200
  end
201
201
 
202
- type stripe_collection_method = :charge_automatically | :send_invoice
202
+ type stripe_collection_method =
203
+ :charge_automatically
204
+ | :send_invoice
205
+ | :auto_charge_payment_intent
206
+ | :manually_charge_payment_intent
203
207
 
204
208
  module StripeCollectionMethod
205
209
  extend MetronomeSDK::Internal::Type::Enum
206
210
 
207
211
  CHARGE_AUTOMATICALLY: :charge_automatically
208
212
  SEND_INVOICE: :send_invoice
213
+ AUTO_CHARGE_PAYMENT_INTENT: :auto_charge_payment_intent
214
+ MANUALLY_CHARGE_PAYMENT_INTENT: :manually_charge_payment_intent
209
215
 
210
216
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::stripe_collection_method]
211
217
  end
@@ -216,7 +222,8 @@ module MetronomeSDK
216
222
  billing_provider: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::billing_provider,
217
223
  configuration: ::Hash[Symbol, top],
218
224
  delivery_method: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::delivery_method,
219
- delivery_method_id: String
225
+ delivery_method_id: String,
226
+ tax_provider: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::tax_provider
220
227
  }
221
228
 
222
229
  class CustomerBillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
@@ -236,18 +243,26 @@ module MetronomeSDK
236
243
 
237
244
  def delivery_method_id=: (String) -> String
238
245
 
246
+ attr_reader tax_provider: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::tax_provider?
247
+
248
+ def tax_provider=: (
249
+ MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::tax_provider
250
+ ) -> MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::tax_provider
251
+
239
252
  def initialize: (
240
253
  billing_provider: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::billing_provider,
241
254
  ?configuration: ::Hash[Symbol, top],
242
255
  ?delivery_method: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::delivery_method,
243
- ?delivery_method_id: String
256
+ ?delivery_method_id: String,
257
+ ?tax_provider: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::tax_provider
244
258
  ) -> void
245
259
 
246
260
  def to_hash: -> {
247
261
  billing_provider: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::billing_provider,
248
262
  configuration: ::Hash[Symbol, top],
249
263
  delivery_method: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::delivery_method,
250
- delivery_method_id: String
264
+ delivery_method_id: String,
265
+ tax_provider: MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::tax_provider
251
266
  }
252
267
 
253
268
  type billing_provider =
@@ -282,6 +297,18 @@ module MetronomeSDK
282
297
 
283
298
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::delivery_method]
284
299
  end
300
+
301
+ type tax_provider = :anrok | :avalara | :stripe
302
+
303
+ module TaxProvider
304
+ extend MetronomeSDK::Internal::Type::Enum
305
+
306
+ ANROK: :anrok
307
+ AVALARA: :avalara
308
+ STRIPE: :stripe
309
+
310
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::tax_provider]
311
+ end
285
312
  end
286
313
  end
287
314
  end
@@ -10,6 +10,7 @@ module MetronomeSDK
10
10
  external_id: String,
11
11
  ingest_aliases: ::Array[String],
12
12
  name: String,
13
+ updated_at: Time,
13
14
  archived_at: Time?,
14
15
  current_billable_status: MetronomeSDK::V1::CustomerDetail::CurrentBillableStatus
15
16
  }
@@ -29,6 +30,8 @@ module MetronomeSDK
29
30
 
30
31
  attr_accessor name: String
31
32
 
33
+ attr_accessor updated_at: Time
34
+
32
35
  attr_accessor archived_at: Time?
33
36
 
34
37
  attr_reader current_billable_status: MetronomeSDK::V1::CustomerDetail::CurrentBillableStatus?
@@ -45,6 +48,7 @@ module MetronomeSDK
45
48
  external_id: String,
46
49
  ingest_aliases: ::Array[String],
47
50
  name: String,
51
+ updated_at: Time,
48
52
  ?archived_at: Time?,
49
53
  ?current_billable_status: MetronomeSDK::V1::CustomerDetail::CurrentBillableStatus
50
54
  ) -> void
@@ -57,6 +61,7 @@ module MetronomeSDK
57
61
  external_id: String,
58
62
  ingest_aliases: ::Array[String],
59
63
  name: String,
64
+ updated_at: Time,
60
65
  archived_at: Time?,
61
66
  current_billable_status: MetronomeSDK::V1::CustomerDetail::CurrentBillableStatus
62
67
  }
@@ -47,7 +47,6 @@ module MetronomeSDK
47
47
  type event =
48
48
  {
49
49
  event_type: String,
50
- customer_id: String,
51
50
  properties: ::Hash[Symbol, top],
52
51
  timestamp: String,
53
52
  transaction_id: String
@@ -56,10 +55,6 @@ module MetronomeSDK
56
55
  class Event < MetronomeSDK::Internal::Type::BaseModel
57
56
  attr_accessor event_type: String
58
57
 
59
- attr_reader customer_id: String?
60
-
61
- def customer_id=: (String) -> String
62
-
63
58
  attr_reader properties: ::Hash[Symbol, top]?
64
59
 
65
60
  def properties=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
@@ -74,7 +69,6 @@ module MetronomeSDK
74
69
 
75
70
  def initialize: (
76
71
  event_type: String,
77
- ?customer_id: String,
78
72
  ?properties: ::Hash[Symbol, top],
79
73
  ?timestamp: String,
80
74
  ?transaction_id: String
@@ -82,7 +76,6 @@ module MetronomeSDK
82
76
 
83
77
  def to_hash: -> {
84
78
  event_type: String,
85
- customer_id: String,
86
79
  properties: ::Hash[Symbol, top],
87
80
  timestamp: String,
88
81
  transaction_id: String
@@ -2,14 +2,16 @@ module MetronomeSDK
2
2
  module Models
3
3
  module V1
4
4
  type customer_preview_events_response =
5
- { data: MetronomeSDK::V1::Customers::Invoice }
5
+ { data: ::Array[MetronomeSDK::V1::Customers::Invoice] }
6
6
 
7
7
  class CustomerPreviewEventsResponse < MetronomeSDK::Internal::Type::BaseModel
8
- attr_accessor data: MetronomeSDK::V1::Customers::Invoice
8
+ attr_accessor data: ::Array[MetronomeSDK::V1::Customers::Invoice]
9
9
 
10
- def initialize: (data: MetronomeSDK::V1::Customers::Invoice) -> void
10
+ def initialize: (
11
+ data: ::Array[MetronomeSDK::V1::Customers::Invoice]
12
+ ) -> void
11
13
 
12
- def to_hash: -> { data: MetronomeSDK::V1::Customers::Invoice }
14
+ def to_hash: -> { data: ::Array[MetronomeSDK::V1::Customers::Invoice] }
13
15
  end
14
16
  end
15
17
  end
@@ -0,0 +1,32 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type customer_retrieve_billing_configurations_params =
5
+ { customer_id: String, include_archived: bool }
6
+ & MetronomeSDK::Internal::Type::request_parameters
7
+
8
+ class CustomerRetrieveBillingConfigurationsParams < MetronomeSDK::Internal::Type::BaseModel
9
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
10
+ include MetronomeSDK::Internal::Type::RequestParameters
11
+
12
+ attr_accessor customer_id: String
13
+
14
+ attr_reader include_archived: bool?
15
+
16
+ def include_archived=: (bool) -> bool
17
+
18
+ def initialize: (
19
+ customer_id: String,
20
+ ?include_archived: bool,
21
+ ?request_options: MetronomeSDK::request_opts
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ customer_id: String,
26
+ include_archived: bool,
27
+ request_options: MetronomeSDK::RequestOptions
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,113 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type customer_retrieve_billing_configurations_response =
5
+ {
6
+ data: ::Array[MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data]
7
+ }
8
+
9
+ class CustomerRetrieveBillingConfigurationsResponse < MetronomeSDK::Internal::Type::BaseModel
10
+ attr_accessor data: ::Array[MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data]
11
+
12
+ def initialize: (
13
+ data: ::Array[MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data]
14
+ ) -> void
15
+
16
+ def to_hash: -> {
17
+ data: ::Array[MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data]
18
+ }
19
+
20
+ type data =
21
+ {
22
+ id: String,
23
+ archived_at: Time?,
24
+ billing_provider: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::billing_provider,
25
+ configuration: ::Hash[Symbol, top],
26
+ customer_id: String,
27
+ delivery_method: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::delivery_method,
28
+ delivery_method_configuration: ::Hash[Symbol, top],
29
+ delivery_method_id: String
30
+ }
31
+
32
+ class Data < MetronomeSDK::Internal::Type::BaseModel
33
+ attr_accessor id: String
34
+
35
+ attr_accessor archived_at: Time?
36
+
37
+ attr_accessor billing_provider: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::billing_provider
38
+
39
+ attr_accessor configuration: ::Hash[Symbol, top]
40
+
41
+ attr_accessor customer_id: String
42
+
43
+ attr_accessor delivery_method: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::delivery_method
44
+
45
+ attr_accessor delivery_method_configuration: ::Hash[Symbol, top]
46
+
47
+ attr_accessor delivery_method_id: String
48
+
49
+ def initialize: (
50
+ id: String,
51
+ archived_at: Time?,
52
+ billing_provider: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::billing_provider,
53
+ configuration: ::Hash[Symbol, top],
54
+ customer_id: String,
55
+ delivery_method: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::delivery_method,
56
+ delivery_method_configuration: ::Hash[Symbol, top],
57
+ delivery_method_id: String
58
+ ) -> void
59
+
60
+ def to_hash: -> {
61
+ id: String,
62
+ archived_at: Time?,
63
+ billing_provider: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::billing_provider,
64
+ configuration: ::Hash[Symbol, top],
65
+ customer_id: String,
66
+ delivery_method: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::delivery_method,
67
+ delivery_method_configuration: ::Hash[Symbol, top],
68
+ delivery_method_id: String
69
+ }
70
+
71
+ type billing_provider =
72
+ :aws_marketplace
73
+ | :stripe
74
+ | :netsuite
75
+ | :custom
76
+ | :azure_marketplace
77
+ | :quickbooks_online
78
+ | :workday
79
+ | :gcp_marketplace
80
+
81
+ module BillingProvider
82
+ extend MetronomeSDK::Internal::Type::Enum
83
+
84
+ AWS_MARKETPLACE: :aws_marketplace
85
+ STRIPE: :stripe
86
+ NETSUITE: :netsuite
87
+ CUSTOM: :custom
88
+ AZURE_MARKETPLACE: :azure_marketplace
89
+ QUICKBOOKS_ONLINE: :quickbooks_online
90
+ WORKDAY: :workday
91
+ GCP_MARKETPLACE: :gcp_marketplace
92
+
93
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::billing_provider]
94
+ end
95
+
96
+ type delivery_method =
97
+ :direct_to_billing_provider | :aws_sqs | :tackle | :aws_sns
98
+
99
+ module DeliveryMethod
100
+ extend MetronomeSDK::Internal::Type::Enum
101
+
102
+ DIRECT_TO_BILLING_PROVIDER: :direct_to_billing_provider
103
+ AWS_SQS: :aws_sqs
104
+ TACKLE: :tackle
105
+ AWS_SNS: :aws_sns
106
+
107
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::delivery_method]
108
+ end
109
+ end
110
+ end
111
+ end
112
+ end
113
+ end