metronome-sdk 0.1.0.pre.alpha.3 → 0.1.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 (417) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +56 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/errors.rb +22 -0
  5. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  6. data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
  7. data/lib/metronome_sdk/internal/type/array_of.rb +6 -1
  8. data/lib/metronome_sdk/internal/type/base_model.rb +82 -26
  9. data/lib/metronome_sdk/internal/type/boolean.rb +7 -1
  10. data/lib/metronome_sdk/internal/type/converter.rb +42 -34
  11. data/lib/metronome_sdk/internal/type/enum.rb +16 -5
  12. data/lib/metronome_sdk/internal/type/file_input.rb +6 -1
  13. data/lib/metronome_sdk/internal/type/hash_of.rb +6 -1
  14. data/lib/metronome_sdk/internal/type/union.rb +17 -9
  15. data/lib/metronome_sdk/internal/type/unknown.rb +7 -1
  16. data/lib/metronome_sdk/internal/util.rb +8 -9
  17. data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
  18. data/lib/metronome_sdk/models/commit.rb +1053 -0
  19. data/lib/metronome_sdk/models/contract_without_amendments.rb +2043 -0
  20. data/lib/metronome_sdk/models/credit.rb +677 -0
  21. data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
  22. data/lib/metronome_sdk/models/discount.rb +68 -0
  23. data/lib/metronome_sdk/models/event_type_filter.rb +33 -0
  24. data/lib/metronome_sdk/models/id.rb +15 -0
  25. data/lib/metronome_sdk/models/override.rb +381 -0
  26. data/lib/metronome_sdk/models/pro_service.rb +73 -0
  27. data/lib/metronome_sdk/models/property_filter.rb +52 -0
  28. data/lib/metronome_sdk/models/rate.rb +101 -0
  29. data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
  30. data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
  31. data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
  32. data/lib/metronome_sdk/models/tier.rb +21 -0
  33. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +3 -14
  34. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -1
  35. data/lib/metronome_sdk/models/v1/alert_create_response.rb +3 -14
  36. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +2 -8
  37. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +3 -14
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -86
  39. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +3 -14
  40. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +6 -85
  41. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +8 -85
  42. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +312 -35
  43. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +3 -14
  44. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +3 -14
  45. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +3 -1276
  46. data/lib/metronome_sdk/models/v1/contract_create_params.rb +792 -104
  47. data/lib/metronome_sdk/models/v1/contract_create_response.rb +3 -14
  48. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
  49. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +5 -1645
  50. data/lib/metronome_sdk/models/v1/contract_list_response.rb +253 -10692
  51. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +9 -295
  52. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +254 -10721
  53. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +3 -1276
  54. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +3 -14
  55. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +3 -14
  56. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -97
  57. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +3 -14
  58. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +148 -0
  59. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +12 -561
  60. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +2 -8
  61. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +14 -559
  62. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +6 -97
  63. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +3 -14
  64. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
  65. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +45 -0
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +2 -8
  67. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +3 -14
  68. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +3 -14
  69. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +6 -42
  70. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +2 -8
  71. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +6 -159
  72. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +6 -42
  73. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +3 -14
  74. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +3 -14
  75. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +3 -14
  76. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -44
  77. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +3 -16
  78. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +6 -44
  79. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +9 -61
  80. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +6 -158
  81. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +5 -77
  82. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +3 -14
  83. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +3 -14
  84. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
  85. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +11 -153
  86. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +14 -175
  87. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +3 -14
  88. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +69 -0
  89. data/lib/metronome_sdk/models/v1/customer.rb +53 -0
  90. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +2 -8
  91. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +3 -14
  92. data/lib/metronome_sdk/models/v1/customer_create_response.rb +3 -50
  93. data/lib/metronome_sdk/models/v1/{customer_list_response.rb → customer_detail.rb} +14 -15
  94. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +6 -86
  95. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
  96. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
  97. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +3 -126
  98. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +3 -50
  99. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +5 -276
  100. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +3 -279
  101. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
  102. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +8 -6
  103. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +3 -14
  104. data/lib/metronome_sdk/models/v1/customers/commit_list_params.rb +9 -1
  105. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +3 -1047
  106. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +3 -14
  107. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +3 -14
  108. data/lib/metronome_sdk/models/v1/customers/credit_list_params.rb +9 -1
  109. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +3 -593
  110. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +3 -14
  111. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +270 -0
  112. data/lib/metronome_sdk/models/v1/customers/{invoice_list_response.rb → invoice.rb} +119 -303
  113. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +2 -1271
  114. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +3 -1276
  115. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +3 -14
  116. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +3 -21
  117. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +1 -0
  118. data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
  119. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +3 -286
  120. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +3 -20
  121. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +3 -128
  122. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
  123. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
  124. data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
  125. data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
  126. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -8
  127. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +3 -14
  128. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +3 -2
  129. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +3 -14
  130. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1127 -105
  131. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3 -14
  132. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +577 -643
  133. data/lib/metronome_sdk/models/v2/contract_list_response.rb +917 -746
  134. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +917 -748
  135. data/lib/metronome_sdk/models.rb +36 -4
  136. data/lib/metronome_sdk/resources/v1/alerts.rb +1 -1
  137. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +2 -2
  138. data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -4
  139. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -1
  140. data/lib/metronome_sdk/resources/v1/contracts.rb +11 -5
  141. data/lib/metronome_sdk/resources/v1/credit_grants.rb +4 -2
  142. data/lib/metronome_sdk/resources/v1/customers/commits.rb +5 -3
  143. data/lib/metronome_sdk/resources/v1/customers/credits.rb +3 -1
  144. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -2
  145. data/lib/metronome_sdk/resources/v1/customers.rb +40 -2
  146. data/lib/metronome_sdk/resources/v1/usage.rb +25 -0
  147. data/lib/metronome_sdk/resources/v2/contracts.rb +11 -9
  148. data/lib/metronome_sdk/version.rb +1 -1
  149. data/lib/metronome_sdk.rb +31 -2
  150. data/rbi/metronome_sdk/errors.rbi +16 -0
  151. data/rbi/metronome_sdk/internal/type/boolean.rbi +2 -0
  152. data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
  153. data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
  154. data/rbi/metronome_sdk/internal/type/unknown.rbi +2 -0
  155. data/rbi/metronome_sdk/internal/util.rbi +2 -0
  156. data/rbi/metronome_sdk/models/base_usage_filter.rbi +46 -0
  157. data/rbi/metronome_sdk/models/commit.rbi +2046 -0
  158. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +4260 -0
  159. data/rbi/metronome_sdk/models/credit.rbi +1314 -0
  160. data/rbi/metronome_sdk/models/credit_type_data.rbi +26 -0
  161. data/rbi/metronome_sdk/models/discount.rbi +106 -0
  162. data/rbi/metronome_sdk/models/event_type_filter.rbi +57 -0
  163. data/rbi/metronome_sdk/models/id.rbi +23 -0
  164. data/rbi/metronome_sdk/models/override.rbi +675 -0
  165. data/rbi/metronome_sdk/models/pro_service.rbi +98 -0
  166. data/rbi/metronome_sdk/models/property_filter.rbi +88 -0
  167. data/rbi/metronome_sdk/models/rate.rbi +155 -0
  168. data/rbi/metronome_sdk/models/schedule_duration.rbi +89 -0
  169. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +121 -0
  170. data/rbi/metronome_sdk/models/scheduled_charge.rbi +119 -0
  171. data/rbi/metronome_sdk/models/tier.rbi +29 -0
  172. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +4 -37
  173. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -0
  174. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +4 -37
  175. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +6 -12
  176. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +4 -44
  177. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +8 -177
  178. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +4 -43
  179. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +8 -177
  180. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +8 -175
  181. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +712 -68
  182. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +4 -37
  183. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +4 -39
  184. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +3 -2595
  185. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1738 -210
  186. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +4 -37
  187. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
  188. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3 -3366
  189. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +375 -22523
  190. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +12 -632
  191. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +375 -22523
  192. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +3 -2595
  193. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +4 -44
  194. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +4 -44
  195. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +8 -209
  196. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +4 -44
  197. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +237 -0
  198. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +76 -1143
  199. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +3 -9
  200. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +76 -1137
  201. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +8 -209
  202. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +4 -44
  203. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +111 -0
  204. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +94 -0
  205. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +3 -9
  206. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +4 -44
  207. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +4 -44
  208. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +8 -74
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +3 -9
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +8 -344
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +8 -74
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +4 -44
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +4 -44
  214. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +4 -44
  215. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +8 -108
  216. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +4 -45
  217. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +8 -108
  218. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +12 -149
  219. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +8 -344
  220. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +8 -166
  221. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +4 -41
  222. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +4 -39
  223. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
  224. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +10 -231
  225. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +14 -281
  226. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +4 -39
  227. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +90 -0
  228. data/rbi/metronome_sdk/models/v1/customer.rbi +74 -0
  229. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +6 -12
  230. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +4 -39
  231. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +6 -84
  232. data/rbi/metronome_sdk/models/v1/{customer_list_response.rbi → customer_detail.rbi} +19 -26
  233. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +8 -177
  234. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
  235. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
  236. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +6 -255
  237. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +6 -86
  238. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +3 -623
  239. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +4 -622
  240. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
  241. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +12 -8
  242. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +4 -44
  243. data/rbi/metronome_sdk/models/v1/customers/commit_list_params.rbi +11 -0
  244. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +3 -2164
  245. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +4 -44
  246. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +4 -44
  247. data/rbi/metronome_sdk/models/v1/customers/credit_list_params.rbi +11 -0
  248. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +3 -1224
  249. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +4 -44
  250. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +572 -0
  251. data/rbi/metronome_sdk/models/v1/customers/{invoice_list_response.rbi → invoice.rbi} +182 -589
  252. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +4 -2561
  253. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +6 -2612
  254. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +4 -41
  255. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +4 -39
  256. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
  257. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +349 -0
  258. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +6 -560
  259. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +4 -37
  260. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +4 -248
  261. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +79 -0
  262. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +80 -0
  263. data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
  264. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
  265. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +23 -23
  266. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +4 -41
  267. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +11 -15
  268. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +4 -41
  269. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +2463 -206
  270. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +4 -37
  271. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1381 -1550
  272. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +2017 -1466
  273. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +2017 -1466
  274. data/rbi/metronome_sdk/models.rbi +32 -0
  275. data/rbi/metronome_sdk/resources/v1/alerts.rbi +3 -0
  276. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +2 -6
  277. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +4 -4
  278. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +1 -4
  279. data/rbi/metronome_sdk/resources/v1/contracts.rbi +13 -4
  280. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
  281. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +9 -4
  282. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +3 -0
  283. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
  284. data/rbi/metronome_sdk/resources/v1/customers.rbi +34 -3
  285. data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
  286. data/rbi/metronome_sdk/resources/v2/contracts.rbi +24 -14
  287. data/sig/metronome_sdk/errors.rbs +9 -0
  288. data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
  289. data/sig/metronome_sdk/models/base_usage_filter.rbs +28 -0
  290. data/sig/metronome_sdk/models/commit.rbs +1063 -0
  291. data/sig/metronome_sdk/models/contract_without_amendments.rbs +1828 -0
  292. data/sig/metronome_sdk/models/credit.rbs +686 -0
  293. data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
  294. data/sig/metronome_sdk/models/discount.rbs +63 -0
  295. data/sig/metronome_sdk/models/event_type_filter.rbs +26 -0
  296. data/sig/metronome_sdk/models/id.rbs +13 -0
  297. data/sig/metronome_sdk/models/override.rbs +399 -0
  298. data/sig/metronome_sdk/models/pro_service.rbs +61 -0
  299. data/sig/metronome_sdk/models/property_filter.rbs +41 -0
  300. data/sig/metronome_sdk/models/rate.rbs +94 -0
  301. data/sig/metronome_sdk/models/schedule_duration.rbs +56 -0
  302. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +75 -0
  303. data/sig/metronome_sdk/models/scheduled_charge.rbs +70 -0
  304. data/sig/metronome_sdk/models/tier.rbs +17 -0
  305. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +4 -19
  306. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +4 -19
  307. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +4 -12
  308. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +4 -19
  309. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -73
  310. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +4 -19
  311. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +12 -73
  312. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +12 -73
  313. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +291 -24
  314. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +4 -19
  315. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +4 -19
  316. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +4 -1291
  317. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +694 -84
  318. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +4 -19
  319. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
  320. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1 -1642
  321. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +188 -10437
  322. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +15 -271
  323. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +188 -10437
  324. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +4 -1291
  325. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +4 -19
  326. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +4 -21
  327. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +8 -82
  328. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +4 -21
  329. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +121 -0
  330. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +16 -466
  331. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +4 -12
  332. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +16 -466
  333. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +8 -82
  334. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +4 -21
  335. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +47 -0
  336. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +41 -0
  337. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +4 -12
  338. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +4 -21
  339. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +4 -21
  340. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +10 -34
  341. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +4 -12
  342. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +10 -144
  343. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +10 -34
  344. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +4 -21
  345. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +4 -21
  346. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +4 -21
  347. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +12 -40
  348. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +4 -21
  349. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +12 -40
  350. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +18 -58
  351. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +10 -144
  352. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +2 -66
  353. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +4 -19
  354. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +4 -19
  355. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +20 -0
  356. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +12 -118
  357. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +16 -140
  358. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +4 -19
  359. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +52 -0
  360. data/sig/metronome_sdk/models/v1/customer.rbs +44 -0
  361. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +4 -12
  362. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +4 -19
  363. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +4 -48
  364. data/sig/metronome_sdk/models/v1/{customer_list_response.rbs → customer_detail.rbs} +17 -17
  365. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +12 -73
  366. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
  367. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
  368. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +4 -112
  369. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +4 -48
  370. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +4 -243
  371. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +4 -247
  372. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +7 -0
  373. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +4 -21
  374. data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +7 -0
  375. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +4 -1057
  376. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +4 -21
  377. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +4 -21
  378. data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +7 -0
  379. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +4 -596
  380. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +4 -21
  381. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +234 -0
  382. data/sig/metronome_sdk/models/v1/customers/{invoice_list_response.rbs → invoice.rbs} +147 -305
  383. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +8 -1278
  384. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +4 -1294
  385. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +4 -19
  386. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +4 -16
  387. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +2 -1
  388. data/sig/metronome_sdk/models/v1/plan_detail.rbs +203 -0
  389. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +4 -267
  390. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +4 -16
  391. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +4 -108
  392. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +37 -0
  393. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +37 -0
  394. data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
  395. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
  396. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +4 -8
  397. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +4 -19
  398. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +4 -8
  399. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +4 -19
  400. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +989 -77
  401. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4 -19
  402. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +510 -655
  403. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +970 -809
  404. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +970 -809
  405. data/sig/metronome_sdk/models.rbs +32 -0
  406. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
  407. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
  408. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  409. data/sig/metronome_sdk/resources/v1/contracts.rbs +4 -1
  410. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
  411. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
  412. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
  413. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
  414. data/sig/metronome_sdk/resources/v1/customers.rbs +9 -1
  415. data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
  416. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -2
  417. metadata +97 -10
@@ -0,0 +1,68 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ class Discount < MetronomeSDK::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ #
8
+ # @return [String]
9
+ required :id, String
10
+
11
+ # @!attribute product
12
+ #
13
+ # @return [MetronomeSDK::Models::Discount::Product]
14
+ required :product, -> { MetronomeSDK::Discount::Product }
15
+
16
+ # @!attribute schedule
17
+ #
18
+ # @return [MetronomeSDK::Models::SchedulePointInTime]
19
+ required :schedule, -> { MetronomeSDK::SchedulePointInTime }
20
+
21
+ # @!attribute custom_fields
22
+ #
23
+ # @return [Hash{Symbol=>String}, nil]
24
+ optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
25
+
26
+ # @!attribute name
27
+ #
28
+ # @return [String, nil]
29
+ optional :name, String
30
+
31
+ # @!attribute netsuite_sales_order_id
32
+ # This field's availability is dependent on your client's configuration.
33
+ #
34
+ # @return [String, nil]
35
+ optional :netsuite_sales_order_id, String
36
+
37
+ # @!method initialize(id:, product:, schedule:, custom_fields: nil, name: nil, netsuite_sales_order_id: nil)
38
+ # @param id [String]
39
+ #
40
+ # @param product [MetronomeSDK::Models::Discount::Product]
41
+ #
42
+ # @param schedule [MetronomeSDK::Models::SchedulePointInTime]
43
+ #
44
+ # @param custom_fields [Hash{Symbol=>String}]
45
+ #
46
+ # @param name [String]
47
+ #
48
+ # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
49
+
50
+ # @see MetronomeSDK::Models::Discount#product
51
+ class Product < MetronomeSDK::Internal::Type::BaseModel
52
+ # @!attribute id
53
+ #
54
+ # @return [String]
55
+ required :id, String
56
+
57
+ # @!attribute name
58
+ #
59
+ # @return [String]
60
+ required :name, String
61
+
62
+ # @!method initialize(id:, name:)
63
+ # @param id [String]
64
+ # @param name [String]
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ class EventTypeFilter < MetronomeSDK::Internal::Type::BaseModel
6
+ # @!attribute in_values
7
+ # A list of event types that are explicitly included in the billable metric. If
8
+ # specified, only events of these types will match the billable metric. Must be
9
+ # non-empty if present.
10
+ #
11
+ # @return [Array<String>, nil]
12
+ optional :in_values, MetronomeSDK::Internal::Type::ArrayOf[String]
13
+
14
+ # @!attribute not_in_values
15
+ # A list of event types that are explicitly excluded from the billable metric. If
16
+ # specified, events of these types will not match the billable metric. Must be
17
+ # non-empty if present.
18
+ #
19
+ # @return [Array<String>, nil]
20
+ optional :not_in_values, MetronomeSDK::Internal::Type::ArrayOf[String]
21
+
22
+ # @!method initialize(in_values: nil, not_in_values: nil)
23
+ # Some parameter documentations has been truncated, see
24
+ # {MetronomeSDK::Models::EventTypeFilter} for more details.
25
+ #
26
+ # An optional filtering rule to match the 'event_type' property of an event.
27
+ #
28
+ # @param in_values [Array<String>] A list of event types that are explicitly included in the billable metric. If sp
29
+ #
30
+ # @param not_in_values [Array<String>] A list of event types that are explicitly excluded from the billable metric. If
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ class ID < MetronomeSDK::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ #
8
+ # @return [String]
9
+ required :id, String
10
+
11
+ # @!method initialize(id:)
12
+ # @param id [String]
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,381 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ class Override < MetronomeSDK::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ #
8
+ # @return [String]
9
+ required :id, String
10
+
11
+ # @!attribute starting_at
12
+ #
13
+ # @return [Time]
14
+ required :starting_at, Time
15
+
16
+ # @!attribute applicable_product_tags
17
+ #
18
+ # @return [Array<String>, nil]
19
+ optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
20
+
21
+ # @!attribute credit_type
22
+ #
23
+ # @return [MetronomeSDK::Models::CreditTypeData, nil]
24
+ optional :credit_type, -> { MetronomeSDK::CreditTypeData }
25
+
26
+ # @!attribute ending_before
27
+ #
28
+ # @return [Time, nil]
29
+ optional :ending_before, Time
30
+
31
+ # @!attribute entitled
32
+ #
33
+ # @return [Boolean, nil]
34
+ optional :entitled, MetronomeSDK::Internal::Type::Boolean
35
+
36
+ # @!attribute is_commit_specific
37
+ #
38
+ # @return [Boolean, nil]
39
+ optional :is_commit_specific, MetronomeSDK::Internal::Type::Boolean
40
+
41
+ # @!attribute is_prorated
42
+ # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
43
+ # set to true.
44
+ #
45
+ # @return [Boolean, nil]
46
+ optional :is_prorated, MetronomeSDK::Internal::Type::Boolean
47
+
48
+ # @!attribute multiplier
49
+ #
50
+ # @return [Float, nil]
51
+ optional :multiplier, Float
52
+
53
+ # @!attribute override_specifiers
54
+ #
55
+ # @return [Array<MetronomeSDK::Models::Override::OverrideSpecifier>, nil]
56
+ optional :override_specifiers,
57
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Override::OverrideSpecifier] }
58
+
59
+ # @!attribute override_tiers
60
+ #
61
+ # @return [Array<MetronomeSDK::Models::Override::OverrideTier>, nil]
62
+ optional :override_tiers,
63
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Override::OverrideTier] }
64
+
65
+ # @!attribute overwrite_rate
66
+ #
67
+ # @return [MetronomeSDK::Models::Override::OverwriteRate, nil]
68
+ optional :overwrite_rate, -> { MetronomeSDK::Override::OverwriteRate }
69
+
70
+ # @!attribute price
71
+ # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
72
+ # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
73
+ #
74
+ # @return [Float, nil]
75
+ optional :price, Float
76
+
77
+ # @!attribute priority
78
+ #
79
+ # @return [Float, nil]
80
+ optional :priority, Float
81
+
82
+ # @!attribute product
83
+ #
84
+ # @return [MetronomeSDK::Models::Override::Product, nil]
85
+ optional :product, -> { MetronomeSDK::Override::Product }
86
+
87
+ # @!attribute quantity
88
+ # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
89
+ #
90
+ # @return [Float, nil]
91
+ optional :quantity, Float
92
+
93
+ # @!attribute rate_type
94
+ #
95
+ # @return [Symbol, MetronomeSDK::Models::Override::RateType, nil]
96
+ optional :rate_type, enum: -> { MetronomeSDK::Override::RateType }
97
+
98
+ # @!attribute target
99
+ #
100
+ # @return [Symbol, MetronomeSDK::Models::Override::Target, nil]
101
+ optional :target, enum: -> { MetronomeSDK::Override::Target }
102
+
103
+ # @!attribute tiers
104
+ # Only set for TIERED rate_type.
105
+ #
106
+ # @return [Array<MetronomeSDK::Models::Tier>, nil]
107
+ optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
108
+
109
+ # @!attribute type
110
+ #
111
+ # @return [Symbol, MetronomeSDK::Models::Override::Type, nil]
112
+ optional :type, enum: -> { MetronomeSDK::Override::Type }
113
+
114
+ # @!attribute value
115
+ # Only set for CUSTOM rate_type. This field is interpreted by custom rate
116
+ # processors.
117
+ #
118
+ # @return [Hash{Symbol=>Object}, nil]
119
+ optional :value, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
120
+
121
+ # @!method initialize(id:, starting_at:, applicable_product_tags: nil, credit_type: nil, ending_before: nil, entitled: nil, is_commit_specific: nil, is_prorated: nil, multiplier: nil, override_specifiers: nil, override_tiers: nil, overwrite_rate: nil, price: nil, priority: nil, product: nil, quantity: nil, rate_type: nil, target: nil, tiers: nil, type: nil, value: nil)
122
+ # Some parameter documentations has been truncated, see
123
+ # {MetronomeSDK::Models::Override} for more details.
124
+ #
125
+ # @param id [String]
126
+ #
127
+ # @param starting_at [Time]
128
+ #
129
+ # @param applicable_product_tags [Array<String>]
130
+ #
131
+ # @param credit_type [MetronomeSDK::Models::CreditTypeData]
132
+ #
133
+ # @param ending_before [Time]
134
+ #
135
+ # @param entitled [Boolean]
136
+ #
137
+ # @param is_commit_specific [Boolean]
138
+ #
139
+ # @param is_prorated [Boolean] Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
140
+ #
141
+ # @param multiplier [Float]
142
+ #
143
+ # @param override_specifiers [Array<MetronomeSDK::Models::Override::OverrideSpecifier>]
144
+ #
145
+ # @param override_tiers [Array<MetronomeSDK::Models::Override::OverrideTier>]
146
+ #
147
+ # @param overwrite_rate [MetronomeSDK::Models::Override::OverwriteRate]
148
+ #
149
+ # @param price [Float] Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type, t
150
+ #
151
+ # @param priority [Float]
152
+ #
153
+ # @param product [MetronomeSDK::Models::Override::Product]
154
+ #
155
+ # @param quantity [Float] Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
156
+ #
157
+ # @param rate_type [Symbol, MetronomeSDK::Models::Override::RateType]
158
+ #
159
+ # @param target [Symbol, MetronomeSDK::Models::Override::Target]
160
+ #
161
+ # @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
162
+ #
163
+ # @param type [Symbol, MetronomeSDK::Models::Override::Type]
164
+ #
165
+ # @param value [Hash{Symbol=>Object}] Only set for CUSTOM rate_type. This field is interpreted by custom rate processo
166
+
167
+ class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
168
+ # @!attribute billing_frequency
169
+ #
170
+ # @return [Symbol, MetronomeSDK::Models::Override::OverrideSpecifier::BillingFrequency, nil]
171
+ optional :billing_frequency, enum: -> { MetronomeSDK::Override::OverrideSpecifier::BillingFrequency }
172
+
173
+ # @!attribute commit_ids
174
+ #
175
+ # @return [Array<String>, nil]
176
+ optional :commit_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
177
+
178
+ # @!attribute presentation_group_values
179
+ #
180
+ # @return [Hash{Symbol=>String, nil}, nil]
181
+ optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String, nil?: true]
182
+
183
+ # @!attribute pricing_group_values
184
+ #
185
+ # @return [Hash{Symbol=>String}, nil]
186
+ optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
187
+
188
+ # @!attribute product_id
189
+ #
190
+ # @return [String, nil]
191
+ optional :product_id, String
192
+
193
+ # @!attribute product_tags
194
+ #
195
+ # @return [Array<String>, nil]
196
+ optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
197
+
198
+ # @!attribute recurring_commit_ids
199
+ #
200
+ # @return [Array<String>, nil]
201
+ optional :recurring_commit_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
202
+
203
+ # @!attribute recurring_credit_ids
204
+ #
205
+ # @return [Array<String>, nil]
206
+ optional :recurring_credit_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
207
+
208
+ # @!method initialize(billing_frequency: nil, commit_ids: nil, presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil, recurring_commit_ids: nil, recurring_credit_ids: nil)
209
+ # @param billing_frequency [Symbol, MetronomeSDK::Models::Override::OverrideSpecifier::BillingFrequency]
210
+ # @param commit_ids [Array<String>]
211
+ # @param presentation_group_values [Hash{Symbol=>String, nil}]
212
+ # @param pricing_group_values [Hash{Symbol=>String}]
213
+ # @param product_id [String]
214
+ # @param product_tags [Array<String>]
215
+ # @param recurring_commit_ids [Array<String>]
216
+ # @param recurring_credit_ids [Array<String>]
217
+
218
+ # @see MetronomeSDK::Models::Override::OverrideSpecifier#billing_frequency
219
+ module BillingFrequency
220
+ extend MetronomeSDK::Internal::Type::Enum
221
+
222
+ MONTHLY = :MONTHLY
223
+ QUARTERLY = :QUARTERLY
224
+ ANNUAL = :ANNUAL
225
+ WEEKLY = :WEEKLY
226
+
227
+ # @!method self.values
228
+ # @return [Array<Symbol>]
229
+ end
230
+ end
231
+
232
+ class OverrideTier < MetronomeSDK::Internal::Type::BaseModel
233
+ # @!attribute multiplier
234
+ #
235
+ # @return [Float]
236
+ required :multiplier, Float
237
+
238
+ # @!attribute size
239
+ #
240
+ # @return [Float, nil]
241
+ optional :size, Float
242
+
243
+ # @!method initialize(multiplier:, size: nil)
244
+ # @param multiplier [Float]
245
+ # @param size [Float]
246
+ end
247
+
248
+ # @see MetronomeSDK::Models::Override#overwrite_rate
249
+ class OverwriteRate < MetronomeSDK::Internal::Type::BaseModel
250
+ # @!attribute rate_type
251
+ #
252
+ # @return [Symbol, MetronomeSDK::Models::Override::OverwriteRate::RateType]
253
+ required :rate_type, enum: -> { MetronomeSDK::Override::OverwriteRate::RateType }
254
+
255
+ # @!attribute credit_type
256
+ #
257
+ # @return [MetronomeSDK::Models::CreditTypeData, nil]
258
+ optional :credit_type, -> { MetronomeSDK::CreditTypeData }
259
+
260
+ # @!attribute custom_rate
261
+ # Only set for CUSTOM rate_type. This field is interpreted by custom rate
262
+ # processors.
263
+ #
264
+ # @return [Hash{Symbol=>Object}, nil]
265
+ optional :custom_rate, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
266
+
267
+ # @!attribute is_prorated
268
+ # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
269
+ # set to true.
270
+ #
271
+ # @return [Boolean, nil]
272
+ optional :is_prorated, MetronomeSDK::Internal::Type::Boolean
273
+
274
+ # @!attribute price
275
+ # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
276
+ # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
277
+ #
278
+ # @return [Float, nil]
279
+ optional :price, Float
280
+
281
+ # @!attribute quantity
282
+ # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
283
+ #
284
+ # @return [Float, nil]
285
+ optional :quantity, Float
286
+
287
+ # @!attribute tiers
288
+ # Only set for TIERED rate_type.
289
+ #
290
+ # @return [Array<MetronomeSDK::Models::Tier>, nil]
291
+ optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
292
+
293
+ # @!method initialize(rate_type:, credit_type: nil, custom_rate: nil, is_prorated: nil, price: nil, quantity: nil, tiers: nil)
294
+ # Some parameter documentations has been truncated, see
295
+ # {MetronomeSDK::Models::Override::OverwriteRate} for more details.
296
+ #
297
+ # @param rate_type [Symbol, MetronomeSDK::Models::Override::OverwriteRate::RateType]
298
+ #
299
+ # @param credit_type [MetronomeSDK::Models::CreditTypeData]
300
+ #
301
+ # @param custom_rate [Hash{Symbol=>Object}] Only set for CUSTOM rate_type. This field is interpreted by custom rate processo
302
+ #
303
+ # @param is_prorated [Boolean] Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
304
+ #
305
+ # @param price [Float] Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type, t
306
+ #
307
+ # @param quantity [Float] Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
308
+ #
309
+ # @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
310
+
311
+ # @see MetronomeSDK::Models::Override::OverwriteRate#rate_type
312
+ module RateType
313
+ extend MetronomeSDK::Internal::Type::Enum
314
+
315
+ FLAT = :FLAT
316
+ PERCENTAGE = :PERCENTAGE
317
+ SUBSCRIPTION = :SUBSCRIPTION
318
+ TIERED = :TIERED
319
+ CUSTOM = :CUSTOM
320
+
321
+ # @!method self.values
322
+ # @return [Array<Symbol>]
323
+ end
324
+ end
325
+
326
+ # @see MetronomeSDK::Models::Override#product
327
+ class Product < MetronomeSDK::Internal::Type::BaseModel
328
+ # @!attribute id
329
+ #
330
+ # @return [String]
331
+ required :id, String
332
+
333
+ # @!attribute name
334
+ #
335
+ # @return [String]
336
+ required :name, String
337
+
338
+ # @!method initialize(id:, name:)
339
+ # @param id [String]
340
+ # @param name [String]
341
+ end
342
+
343
+ # @see MetronomeSDK::Models::Override#rate_type
344
+ module RateType
345
+ extend MetronomeSDK::Internal::Type::Enum
346
+
347
+ FLAT = :FLAT
348
+ PERCENTAGE = :PERCENTAGE
349
+ SUBSCRIPTION = :SUBSCRIPTION
350
+ TIERED = :TIERED
351
+ CUSTOM = :CUSTOM
352
+
353
+ # @!method self.values
354
+ # @return [Array<Symbol>]
355
+ end
356
+
357
+ # @see MetronomeSDK::Models::Override#target
358
+ module Target
359
+ extend MetronomeSDK::Internal::Type::Enum
360
+
361
+ COMMIT_RATE = :COMMIT_RATE
362
+ LIST_RATE = :LIST_RATE
363
+
364
+ # @!method self.values
365
+ # @return [Array<Symbol>]
366
+ end
367
+
368
+ # @see MetronomeSDK::Models::Override#type
369
+ module Type
370
+ extend MetronomeSDK::Internal::Type::Enum
371
+
372
+ OVERWRITE = :OVERWRITE
373
+ MULTIPLIER = :MULTIPLIER
374
+ TIERED = :TIERED
375
+
376
+ # @!method self.values
377
+ # @return [Array<Symbol>]
378
+ end
379
+ end
380
+ end
381
+ end
@@ -0,0 +1,73 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ class ProService < MetronomeSDK::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ #
8
+ # @return [String]
9
+ required :id, String
10
+
11
+ # @!attribute max_amount
12
+ # Maximum amount for the term.
13
+ #
14
+ # @return [Float]
15
+ required :max_amount, Float
16
+
17
+ # @!attribute product_id
18
+ #
19
+ # @return [String]
20
+ required :product_id, String
21
+
22
+ # @!attribute quantity
23
+ # Quantity for the charge. Will be multiplied by unit_price to determine the
24
+ # amount.
25
+ #
26
+ # @return [Float]
27
+ required :quantity, Float
28
+
29
+ # @!attribute unit_price
30
+ # Unit price for the charge. Will be multiplied by quantity to determine the
31
+ # amount and must be specified.
32
+ #
33
+ # @return [Float]
34
+ required :unit_price, Float
35
+
36
+ # @!attribute custom_fields
37
+ #
38
+ # @return [Hash{Symbol=>String}, nil]
39
+ optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
40
+
41
+ # @!attribute description
42
+ #
43
+ # @return [String, nil]
44
+ optional :description, String
45
+
46
+ # @!attribute netsuite_sales_order_id
47
+ # This field's availability is dependent on your client's configuration.
48
+ #
49
+ # @return [String, nil]
50
+ optional :netsuite_sales_order_id, String
51
+
52
+ # @!method initialize(id:, max_amount:, product_id:, quantity:, unit_price:, custom_fields: nil, description: nil, netsuite_sales_order_id: nil)
53
+ # Some parameter documentations has been truncated, see
54
+ # {MetronomeSDK::Models::ProService} for more details.
55
+ #
56
+ # @param id [String]
57
+ #
58
+ # @param max_amount [Float] Maximum amount for the term.
59
+ #
60
+ # @param product_id [String]
61
+ #
62
+ # @param quantity [Float] Quantity for the charge. Will be multiplied by unit_price to determine the amoun
63
+ #
64
+ # @param unit_price [Float] Unit price for the charge. Will be multiplied by quantity to determine the amoun
65
+ #
66
+ # @param custom_fields [Hash{Symbol=>String}]
67
+ #
68
+ # @param description [String]
69
+ #
70
+ # @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ class PropertyFilter < MetronomeSDK::Internal::Type::BaseModel
6
+ # @!attribute name
7
+ # The name of the event property.
8
+ #
9
+ # @return [String]
10
+ required :name, String
11
+
12
+ # @!attribute exists
13
+ # Determines whether the property must exist in the event. If true, only events
14
+ # with this property will pass the filter. If false, only events without this
15
+ # property will pass the filter. If null or omitted, the existence of the property
16
+ # is optional.
17
+ #
18
+ # @return [Boolean, nil]
19
+ optional :exists, MetronomeSDK::Internal::Type::Boolean
20
+
21
+ # @!attribute in_values
22
+ # Specifies the allowed values for the property to match an event. An event will
23
+ # pass the filter only if its property value is included in this list. If
24
+ # undefined, all property values will pass the filter. Must be non-empty if
25
+ # present.
26
+ #
27
+ # @return [Array<String>, nil]
28
+ optional :in_values, MetronomeSDK::Internal::Type::ArrayOf[String]
29
+
30
+ # @!attribute not_in_values
31
+ # Specifies the values that prevent an event from matching the filter. An event
32
+ # will not pass the filter if its property value is included in this list. If null
33
+ # or empty, all property values will pass the filter. Must be non-empty if
34
+ # present.
35
+ #
36
+ # @return [Array<String>, nil]
37
+ optional :not_in_values, MetronomeSDK::Internal::Type::ArrayOf[String]
38
+
39
+ # @!method initialize(name:, exists: nil, in_values: nil, not_in_values: nil)
40
+ # Some parameter documentations has been truncated, see
41
+ # {MetronomeSDK::Models::PropertyFilter} for more details.
42
+ #
43
+ # @param name [String] The name of the event property.
44
+ #
45
+ # @param exists [Boolean] Determines whether the property must exist in the event. If true, only events wi
46
+ #
47
+ # @param in_values [Array<String>] Specifies the allowed values for the property to match an event. An event will p
48
+ #
49
+ # @param not_in_values [Array<String>] Specifies the values that prevent an event from matching the filter. An event wi
50
+ end
51
+ end
52
+ end