metronome-sdk 0.1.0.pre.alpha.3 → 0.1.0.pre.alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +40 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/errors.rb +22 -0
  5. data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
  6. data/lib/metronome_sdk/internal/type/array_of.rb +6 -1
  7. data/lib/metronome_sdk/internal/type/base_model.rb +82 -26
  8. data/lib/metronome_sdk/internal/type/boolean.rb +7 -1
  9. data/lib/metronome_sdk/internal/type/converter.rb +42 -34
  10. data/lib/metronome_sdk/internal/type/enum.rb +16 -5
  11. data/lib/metronome_sdk/internal/type/file_input.rb +6 -1
  12. data/lib/metronome_sdk/internal/type/hash_of.rb +6 -1
  13. data/lib/metronome_sdk/internal/type/union.rb +17 -9
  14. data/lib/metronome_sdk/internal/type/unknown.rb +7 -1
  15. data/lib/metronome_sdk/internal/util.rb +8 -9
  16. data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
  17. data/lib/metronome_sdk/models/commit.rb +1010 -0
  18. data/lib/metronome_sdk/models/contract_without_amendments.rb +1803 -0
  19. data/lib/metronome_sdk/models/credit.rb +634 -0
  20. data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
  21. data/lib/metronome_sdk/models/discount.rb +68 -0
  22. data/lib/metronome_sdk/models/event_type_filter.rb +33 -0
  23. data/lib/metronome_sdk/models/id.rb +15 -0
  24. data/lib/metronome_sdk/models/override.rb +381 -0
  25. data/lib/metronome_sdk/models/pro_service.rb +73 -0
  26. data/lib/metronome_sdk/models/property_filter.rb +52 -0
  27. data/lib/metronome_sdk/models/rate.rb +101 -0
  28. data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
  29. data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
  30. data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
  31. data/lib/metronome_sdk/models/tier.rb +21 -0
  32. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +3 -14
  33. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -1
  34. data/lib/metronome_sdk/models/v1/alert_create_response.rb +3 -14
  35. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +2 -8
  36. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +3 -14
  37. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -86
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +3 -14
  39. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +6 -85
  40. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +8 -85
  41. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +312 -35
  42. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +3 -14
  43. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +3 -14
  44. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +3 -1276
  45. data/lib/metronome_sdk/models/v1/contract_create_params.rb +550 -102
  46. data/lib/metronome_sdk/models/v1/contract_create_response.rb +3 -14
  47. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +5 -1645
  48. data/lib/metronome_sdk/models/v1/contract_list_response.rb +253 -10692
  49. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +9 -295
  50. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +254 -10721
  51. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +3 -1276
  52. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +3 -14
  53. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +3 -14
  54. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -97
  55. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +3 -14
  56. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +148 -0
  57. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +12 -561
  58. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +2 -8
  59. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +14 -559
  60. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +6 -97
  61. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +3 -14
  62. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
  63. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +45 -0
  64. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +2 -8
  65. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +3 -14
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +3 -14
  67. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +6 -42
  68. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +2 -8
  69. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +6 -159
  70. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +6 -42
  71. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +3 -14
  72. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +3 -14
  73. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +3 -14
  74. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -44
  75. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +3 -16
  76. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +6 -44
  77. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +9 -61
  78. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +6 -158
  79. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +5 -77
  80. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +3 -14
  81. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +3 -14
  82. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
  83. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +11 -153
  84. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +14 -175
  85. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +3 -14
  86. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +69 -0
  87. data/lib/metronome_sdk/models/v1/customer.rb +53 -0
  88. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +2 -8
  89. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +3 -14
  90. data/lib/metronome_sdk/models/v1/customer_create_response.rb +3 -50
  91. data/lib/metronome_sdk/models/v1/{customer_list_response.rb → customer_detail.rb} +14 -15
  92. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +6 -86
  93. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
  94. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
  95. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +3 -126
  96. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +3 -50
  97. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +5 -276
  98. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +3 -279
  99. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
  100. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +8 -6
  101. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +3 -14
  102. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +3 -1047
  103. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +3 -14
  104. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +3 -14
  105. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +3 -593
  106. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +3 -14
  107. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +270 -0
  108. data/lib/metronome_sdk/models/v1/customers/{invoice_list_response.rb → invoice.rb} +119 -303
  109. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +2 -1271
  110. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +3 -1276
  111. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +3 -14
  112. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +3 -21
  113. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +1 -0
  114. data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
  115. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +3 -286
  116. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +3 -20
  117. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +3 -128
  118. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
  119. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
  120. data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
  121. data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
  122. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -8
  123. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +3 -14
  124. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +3 -2
  125. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +3 -14
  126. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +885 -103
  127. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3 -14
  128. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +351 -625
  129. data/lib/metronome_sdk/models/v2/contract_list_response.rb +590 -749
  130. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +590 -751
  131. data/lib/metronome_sdk/models.rb +36 -4
  132. data/lib/metronome_sdk/resources/v1/alerts.rb +1 -1
  133. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +2 -2
  134. data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -4
  135. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -1
  136. data/lib/metronome_sdk/resources/v1/contracts.rb +8 -4
  137. data/lib/metronome_sdk/resources/v1/credit_grants.rb +4 -2
  138. data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -2
  139. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -2
  140. data/lib/metronome_sdk/resources/v1/customers.rb +40 -2
  141. data/lib/metronome_sdk/resources/v1/usage.rb +25 -0
  142. data/lib/metronome_sdk/resources/v2/contracts.rb +11 -9
  143. data/lib/metronome_sdk/version.rb +1 -1
  144. data/lib/metronome_sdk.rb +31 -2
  145. data/rbi/metronome_sdk/errors.rbi +16 -0
  146. data/rbi/metronome_sdk/internal/type/boolean.rbi +2 -0
  147. data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
  148. data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
  149. data/rbi/metronome_sdk/internal/type/unknown.rbi +2 -0
  150. data/rbi/metronome_sdk/internal/util.rbi +2 -0
  151. data/rbi/metronome_sdk/models/base_usage_filter.rbi +46 -0
  152. data/rbi/metronome_sdk/models/commit.rbi +1962 -0
  153. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +3676 -0
  154. data/rbi/metronome_sdk/models/credit.rbi +1230 -0
  155. data/rbi/metronome_sdk/models/credit_type_data.rbi +26 -0
  156. data/rbi/metronome_sdk/models/discount.rbi +106 -0
  157. data/rbi/metronome_sdk/models/event_type_filter.rbi +57 -0
  158. data/rbi/metronome_sdk/models/id.rbi +23 -0
  159. data/rbi/metronome_sdk/models/override.rbi +675 -0
  160. data/rbi/metronome_sdk/models/pro_service.rbi +98 -0
  161. data/rbi/metronome_sdk/models/property_filter.rbi +88 -0
  162. data/rbi/metronome_sdk/models/rate.rbi +155 -0
  163. data/rbi/metronome_sdk/models/schedule_duration.rbi +89 -0
  164. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +121 -0
  165. data/rbi/metronome_sdk/models/scheduled_charge.rbi +119 -0
  166. data/rbi/metronome_sdk/models/tier.rbi +29 -0
  167. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +4 -37
  168. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -0
  169. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +4 -37
  170. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +6 -12
  171. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +4 -44
  172. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +8 -177
  173. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +4 -43
  174. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +8 -177
  175. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +8 -175
  176. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +712 -68
  177. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +4 -37
  178. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +4 -39
  179. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +3 -2595
  180. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1100 -172
  181. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +4 -37
  182. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3 -3366
  183. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +375 -22523
  184. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +12 -632
  185. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +375 -22523
  186. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +3 -2595
  187. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +4 -44
  188. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +4 -44
  189. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +8 -209
  190. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +4 -44
  191. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +237 -0
  192. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +76 -1143
  193. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +3 -9
  194. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +76 -1137
  195. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +8 -209
  196. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +4 -44
  197. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +111 -0
  198. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +94 -0
  199. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +3 -9
  200. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +4 -44
  201. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +4 -44
  202. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +8 -74
  203. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +3 -9
  204. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +8 -344
  205. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +8 -74
  206. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +4 -44
  207. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +4 -44
  208. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +4 -44
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +8 -108
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +4 -45
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +8 -108
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +12 -149
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +8 -344
  214. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +8 -166
  215. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +4 -41
  216. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +4 -39
  217. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
  218. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +10 -231
  219. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +14 -281
  220. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +4 -39
  221. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +90 -0
  222. data/rbi/metronome_sdk/models/v1/customer.rbi +74 -0
  223. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +6 -12
  224. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +4 -39
  225. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +6 -84
  226. data/rbi/metronome_sdk/models/v1/{customer_list_response.rbi → customer_detail.rbi} +19 -26
  227. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +8 -177
  228. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
  229. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
  230. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +6 -255
  231. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +6 -86
  232. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +3 -623
  233. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +4 -622
  234. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
  235. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +12 -8
  236. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +4 -44
  237. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +3 -2164
  238. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +4 -44
  239. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +4 -44
  240. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +3 -1224
  241. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +4 -44
  242. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +572 -0
  243. data/rbi/metronome_sdk/models/v1/customers/{invoice_list_response.rbi → invoice.rbi} +182 -589
  244. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +4 -2561
  245. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +6 -2612
  246. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +4 -41
  247. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +4 -39
  248. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
  249. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +349 -0
  250. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +6 -560
  251. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +4 -37
  252. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +4 -248
  253. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +79 -0
  254. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +80 -0
  255. data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
  256. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
  257. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +23 -23
  258. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +4 -41
  259. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +11 -15
  260. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +4 -41
  261. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1859 -202
  262. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +4 -37
  263. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +700 -1447
  264. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +1204 -1472
  265. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +1204 -1472
  266. data/rbi/metronome_sdk/models.rbi +32 -0
  267. data/rbi/metronome_sdk/resources/v1/alerts.rbi +3 -0
  268. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +2 -6
  269. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +4 -4
  270. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +1 -4
  271. data/rbi/metronome_sdk/resources/v1/contracts.rbi +10 -4
  272. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
  273. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +6 -4
  274. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
  275. data/rbi/metronome_sdk/resources/v1/customers.rbi +34 -3
  276. data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
  277. data/rbi/metronome_sdk/resources/v2/contracts.rbi +24 -14
  278. data/sig/metronome_sdk/errors.rbs +9 -0
  279. data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
  280. data/sig/metronome_sdk/models/base_usage_filter.rbs +28 -0
  281. data/sig/metronome_sdk/models/commit.rbs +1020 -0
  282. data/sig/metronome_sdk/models/contract_without_amendments.rbs +1582 -0
  283. data/sig/metronome_sdk/models/credit.rbs +643 -0
  284. data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
  285. data/sig/metronome_sdk/models/discount.rbs +63 -0
  286. data/sig/metronome_sdk/models/event_type_filter.rbs +26 -0
  287. data/sig/metronome_sdk/models/id.rbs +13 -0
  288. data/sig/metronome_sdk/models/override.rbs +399 -0
  289. data/sig/metronome_sdk/models/pro_service.rbs +61 -0
  290. data/sig/metronome_sdk/models/property_filter.rbs +41 -0
  291. data/sig/metronome_sdk/models/rate.rbs +94 -0
  292. data/sig/metronome_sdk/models/schedule_duration.rbs +56 -0
  293. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +75 -0
  294. data/sig/metronome_sdk/models/scheduled_charge.rbs +70 -0
  295. data/sig/metronome_sdk/models/tier.rbs +17 -0
  296. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +4 -19
  297. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +4 -19
  298. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +4 -12
  299. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +4 -19
  300. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -73
  301. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +4 -19
  302. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +12 -73
  303. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +12 -73
  304. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +291 -24
  305. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +4 -19
  306. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +4 -19
  307. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +4 -1291
  308. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +448 -84
  309. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +4 -19
  310. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1 -1642
  311. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +188 -10437
  312. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +15 -271
  313. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +188 -10437
  314. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +4 -1291
  315. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +4 -19
  316. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +4 -21
  317. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +8 -82
  318. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +4 -21
  319. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +121 -0
  320. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +16 -466
  321. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +4 -12
  322. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +16 -466
  323. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +8 -82
  324. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +4 -21
  325. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +47 -0
  326. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +41 -0
  327. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +4 -12
  328. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +4 -21
  329. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +4 -21
  330. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +10 -34
  331. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +4 -12
  332. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +10 -144
  333. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +10 -34
  334. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +4 -21
  335. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +4 -21
  336. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +4 -21
  337. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +12 -40
  338. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +4 -21
  339. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +12 -40
  340. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +18 -58
  341. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +10 -144
  342. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +2 -66
  343. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +4 -19
  344. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +4 -19
  345. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +20 -0
  346. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +12 -118
  347. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +16 -140
  348. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +4 -19
  349. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +52 -0
  350. data/sig/metronome_sdk/models/v1/customer.rbs +44 -0
  351. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +4 -12
  352. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +4 -19
  353. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +4 -48
  354. data/sig/metronome_sdk/models/v1/{customer_list_response.rbs → customer_detail.rbs} +17 -17
  355. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +12 -73
  356. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
  357. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
  358. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +4 -112
  359. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +4 -48
  360. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +4 -243
  361. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +4 -247
  362. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +7 -0
  363. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +4 -21
  364. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +4 -1057
  365. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +4 -21
  366. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +4 -21
  367. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +4 -596
  368. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +4 -21
  369. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +234 -0
  370. data/sig/metronome_sdk/models/v1/customers/{invoice_list_response.rbs → invoice.rbs} +147 -305
  371. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +8 -1278
  372. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +4 -1294
  373. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +4 -19
  374. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +4 -16
  375. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +2 -1
  376. data/sig/metronome_sdk/models/v1/plan_detail.rbs +203 -0
  377. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +4 -267
  378. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +4 -16
  379. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +4 -108
  380. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +37 -0
  381. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +37 -0
  382. data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
  383. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
  384. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +4 -8
  385. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +4 -19
  386. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +4 -8
  387. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +4 -19
  388. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +743 -77
  389. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4 -19
  390. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +274 -665
  391. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +567 -759
  392. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +567 -759
  393. data/sig/metronome_sdk/models.rbs +32 -0
  394. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
  395. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
  396. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  397. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -1
  398. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
  399. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
  400. data/sig/metronome_sdk/resources/v1/customers.rbs +9 -1
  401. data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
  402. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -2
  403. metadata +95 -8
@@ -7,8 +7,8 @@ module MetronomeSDK
7
7
  class PlanListCustomersResponse < MetronomeSDK::Internal::Type::BaseModel
8
8
  # @!attribute customer_details
9
9
  #
10
- # @return [MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails]
11
- required :customer_details, -> { MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails }
10
+ # @return [MetronomeSDK::Models::V1::CustomerDetail]
11
+ required :customer_details, -> { MetronomeSDK::V1::CustomerDetail }
12
12
 
13
13
  # @!attribute plan_details
14
14
  #
@@ -16,134 +16,9 @@ module MetronomeSDK
16
16
  required :plan_details, -> { MetronomeSDK::Models::V1::PlanListCustomersResponse::PlanDetails }
17
17
 
18
18
  # @!method initialize(customer_details:, plan_details:)
19
- # @param customer_details [MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails]
19
+ # @param customer_details [MetronomeSDK::Models::V1::CustomerDetail]
20
20
  # @param plan_details [MetronomeSDK::Models::V1::PlanListCustomersResponse::PlanDetails]
21
21
 
22
- # @see MetronomeSDK::Models::V1::PlanListCustomersResponse#customer_details
23
- class CustomerDetails < MetronomeSDK::Internal::Type::BaseModel
24
- # @!attribute id
25
- # the Metronome ID of the customer
26
- #
27
- # @return [String]
28
- required :id, String
29
-
30
- # @!attribute created_at
31
- # RFC 3339 timestamp indicating when the customer was created.
32
- #
33
- # @return [Time]
34
- required :created_at, Time
35
-
36
- # @!attribute custom_fields
37
- #
38
- # @return [Hash{Symbol=>String}]
39
- required :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
40
-
41
- # @!attribute customer_config
42
- #
43
- # @return [MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CustomerConfig]
44
- required :customer_config,
45
- -> { MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CustomerConfig }
46
-
47
- # @!attribute external_id
48
- # (deprecated, use ingest_aliases instead) the first ID (Metronome or ingest
49
- # alias) that can be used in usage events
50
- #
51
- # @return [String]
52
- required :external_id, String
53
-
54
- # @!attribute ingest_aliases
55
- # aliases for this customer that can be used instead of the Metronome customer ID
56
- # in usage events
57
- #
58
- # @return [Array<String>]
59
- required :ingest_aliases, MetronomeSDK::Internal::Type::ArrayOf[String]
60
-
61
- # @!attribute name
62
- #
63
- # @return [String]
64
- required :name, String
65
-
66
- # @!attribute archived_at
67
- # RFC 3339 timestamp indicating when the customer was archived. Null if the
68
- # customer is active.
69
- #
70
- # @return [Time, nil]
71
- optional :archived_at, Time, nil?: true
72
-
73
- # @!attribute current_billable_status
74
- # This field's availability is dependent on your client's configuration.
75
- #
76
- # @return [MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CurrentBillableStatus, nil]
77
- optional :current_billable_status,
78
- -> { MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CurrentBillableStatus }
79
-
80
- # @!method initialize(id:, created_at:, custom_fields:, customer_config:, external_id:, ingest_aliases:, name:, archived_at: nil, current_billable_status: nil)
81
- # Some parameter documentations has been truncated, see
82
- # {MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails} for more
83
- # details.
84
- #
85
- # @param id [String] the Metronome ID of the customer
86
- #
87
- # @param created_at [Time] RFC 3339 timestamp indicating when the customer was created.
88
- #
89
- # @param custom_fields [Hash{Symbol=>String}]
90
- #
91
- # @param customer_config [MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CustomerConfig]
92
- #
93
- # @param external_id [String] (deprecated, use ingest_aliases instead) the first ID (Metronome or ingest alias
94
- #
95
- # @param ingest_aliases [Array<String>] aliases for this customer that can be used instead of the Metronome customer ID
96
- #
97
- # @param name [String]
98
- #
99
- # @param archived_at [Time, nil] RFC 3339 timestamp indicating when the customer was archived. Null if the custom
100
- #
101
- # @param current_billable_status [MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CurrentBillableStatus] This field's availability is dependent on your client's configuration.
102
-
103
- # @see MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails#customer_config
104
- class CustomerConfig < MetronomeSDK::Internal::Type::BaseModel
105
- # @!attribute salesforce_account_id
106
- # The Salesforce account ID for the customer
107
- #
108
- # @return [String, nil]
109
- required :salesforce_account_id, String, nil?: true
110
-
111
- # @!method initialize(salesforce_account_id:)
112
- # @param salesforce_account_id [String, nil] The Salesforce account ID for the customer
113
- end
114
-
115
- # @see MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails#current_billable_status
116
- class CurrentBillableStatus < MetronomeSDK::Internal::Type::BaseModel
117
- # @!attribute value
118
- #
119
- # @return [Symbol, MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CurrentBillableStatus::Value]
120
- required :value,
121
- enum: -> { MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CurrentBillableStatus::Value }
122
-
123
- # @!attribute effective_at
124
- #
125
- # @return [Time, nil]
126
- optional :effective_at, Time, nil?: true
127
-
128
- # @!method initialize(value:, effective_at: nil)
129
- # This field's availability is dependent on your client's configuration.
130
- #
131
- # @param value [Symbol, MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CurrentBillableStatus::Value]
132
- # @param effective_at [Time, nil]
133
-
134
- # @see MetronomeSDK::Models::V1::PlanListCustomersResponse::CustomerDetails::CurrentBillableStatus#value
135
- module Value
136
- extend MetronomeSDK::Internal::Type::Enum
137
-
138
- BILLABLE = :billable
139
- UNBILLABLE = :unbillable
140
-
141
- # @!method self.values
142
- # @return [Array<Symbol>]
143
- end
144
- end
145
- end
146
-
147
22
  # @see MetronomeSDK::Models::V1::PlanListCustomersResponse#plan_details
148
23
  class PlanDetails < MetronomeSDK::Internal::Type::BaseModel
149
24
  # @!attribute id
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class RolloverAmountMaxAmount < MetronomeSDK::Internal::Type::BaseModel
7
+ # @!attribute type
8
+ # Rollover up to a fixed amount of the original credit grant amount.
9
+ #
10
+ # @return [Symbol, MetronomeSDK::Models::V1::RolloverAmountMaxAmount::Type]
11
+ required :type, enum: -> { MetronomeSDK::V1::RolloverAmountMaxAmount::Type }
12
+
13
+ # @!attribute value
14
+ # The maximum amount to rollover.
15
+ #
16
+ # @return [Float]
17
+ required :value, Float
18
+
19
+ # @!method initialize(type:, value:)
20
+ # @param type [Symbol, MetronomeSDK::Models::V1::RolloverAmountMaxAmount::Type] Rollover up to a fixed amount of the original credit grant amount.
21
+ #
22
+ # @param value [Float] The maximum amount to rollover.
23
+
24
+ # Rollover up to a fixed amount of the original credit grant amount.
25
+ #
26
+ # @see MetronomeSDK::Models::V1::RolloverAmountMaxAmount#type
27
+ module Type
28
+ extend MetronomeSDK::Internal::Type::Enum
29
+
30
+ MAX_AMOUNT = :MAX_AMOUNT
31
+
32
+ # @!method self.values
33
+ # @return [Array<Symbol>]
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class RolloverAmountMaxPercentage < MetronomeSDK::Internal::Type::BaseModel
7
+ # @!attribute type
8
+ # Rollover up to a percentage of the original credit grant amount.
9
+ #
10
+ # @return [Symbol, MetronomeSDK::Models::V1::RolloverAmountMaxPercentage::Type]
11
+ required :type, enum: -> { MetronomeSDK::V1::RolloverAmountMaxPercentage::Type }
12
+
13
+ # @!attribute value
14
+ # The maximum percentage (0-1) of the original credit grant to rollover.
15
+ #
16
+ # @return [Float]
17
+ required :value, Float
18
+
19
+ # @!method initialize(type:, value:)
20
+ # @param type [Symbol, MetronomeSDK::Models::V1::RolloverAmountMaxPercentage::Type] Rollover up to a percentage of the original credit grant amount.
21
+ #
22
+ # @param value [Float] The maximum percentage (0-1) of the original credit grant to rollover.
23
+
24
+ # Rollover up to a percentage of the original credit grant amount.
25
+ #
26
+ # @see MetronomeSDK::Models::V1::RolloverAmountMaxPercentage#type
27
+ module Type
28
+ extend MetronomeSDK::Internal::Type::Enum
29
+
30
+ MAX_PERCENTAGE = :MAX_PERCENTAGE
31
+
32
+ # @!method self.values
33
+ # @return [Array<Symbol>]
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ # @see MetronomeSDK::Resources::V1::Usage#search
7
+ class UsageSearchParams < MetronomeSDK::Internal::Type::BaseModel
8
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
9
+ include MetronomeSDK::Internal::Type::RequestParameters
10
+
11
+ # @!attribute transaction_ids
12
+ # The transaction IDs of the events to retrieve
13
+ #
14
+ # @return [Array<String>]
15
+ required :transaction_ids, MetronomeSDK::Internal::Type::ArrayOf[String], api_name: :transactionIds
16
+
17
+ # @!method initialize(transaction_ids:, request_options: {})
18
+ # @param transaction_ids [Array<String>] The transaction IDs of the events to retrieve
19
+ #
20
+ # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,249 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class UsageSearchResponseItem < MetronomeSDK::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute customer_id
13
+ # The ID of the customer in the ingest event body
14
+ #
15
+ # @return [String]
16
+ required :customer_id, String
17
+
18
+ # @!attribute event_type
19
+ #
20
+ # @return [String]
21
+ required :event_type, String
22
+
23
+ # @!attribute timestamp
24
+ #
25
+ # @return [Time]
26
+ required :timestamp, Time
27
+
28
+ # @!attribute transaction_id
29
+ #
30
+ # @return [String]
31
+ required :transaction_id, String
32
+
33
+ # @!attribute is_duplicate
34
+ #
35
+ # @return [Boolean, nil]
36
+ optional :is_duplicate, MetronomeSDK::Internal::Type::Boolean
37
+
38
+ # @!attribute matched_billable_metrics
39
+ #
40
+ # @return [Array<MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedBillableMetric>, nil]
41
+ optional :matched_billable_metrics,
42
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedBillableMetric] }
43
+
44
+ # @!attribute matched_customer
45
+ # The customer the event was matched to if a match was found
46
+ #
47
+ # @return [MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedCustomer, nil]
48
+ optional :matched_customer, -> { MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedCustomer }
49
+
50
+ # @!attribute processed_at
51
+ #
52
+ # @return [Time, nil]
53
+ optional :processed_at, Time
54
+
55
+ # @!attribute properties
56
+ #
57
+ # @return [Hash{Symbol=>Object}, nil]
58
+ optional :properties, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
59
+
60
+ # @!method initialize(id:, customer_id:, event_type:, timestamp:, transaction_id:, is_duplicate: nil, matched_billable_metrics: nil, matched_customer: nil, processed_at: nil, properties: nil)
61
+ # @param id [String]
62
+ #
63
+ # @param customer_id [String] The ID of the customer in the ingest event body
64
+ #
65
+ # @param event_type [String]
66
+ #
67
+ # @param timestamp [Time]
68
+ #
69
+ # @param transaction_id [String]
70
+ #
71
+ # @param is_duplicate [Boolean]
72
+ #
73
+ # @param matched_billable_metrics [Array<MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedBillableMetric>]
74
+ #
75
+ # @param matched_customer [MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedCustomer] The customer the event was matched to if a match was found
76
+ #
77
+ # @param processed_at [Time]
78
+ #
79
+ # @param properties [Hash{Symbol=>Object}]
80
+
81
+ class MatchedBillableMetric < MetronomeSDK::Internal::Type::BaseModel
82
+ # @!attribute id
83
+ #
84
+ # @return [String]
85
+ required :id, String
86
+
87
+ # @!attribute name
88
+ #
89
+ # @return [String]
90
+ required :name, String
91
+
92
+ # @!attribute aggregate
93
+ # (DEPRECATED) use aggregation_type instead
94
+ #
95
+ # @return [String, nil]
96
+ optional :aggregate, String
97
+
98
+ # @!attribute aggregate_keys
99
+ # (DEPRECATED) use aggregation_key instead
100
+ #
101
+ # @return [Array<String>, nil]
102
+ optional :aggregate_keys, MetronomeSDK::Internal::Type::ArrayOf[String]
103
+
104
+ # @!attribute aggregation_key
105
+ # A key that specifies which property of the event is used to aggregate data. This
106
+ # key must be one of the property filter names and is not applicable when the
107
+ # aggregation type is 'count'.
108
+ #
109
+ # @return [String, nil]
110
+ optional :aggregation_key, String
111
+
112
+ # @!attribute aggregation_type
113
+ # Specifies the type of aggregation performed on matching events.
114
+ #
115
+ # @return [Symbol, MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedBillableMetric::AggregationType, nil]
116
+ optional :aggregation_type,
117
+ enum: -> { MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedBillableMetric::AggregationType }
118
+
119
+ # @!attribute archived_at
120
+ # RFC 3339 timestamp indicating when the billable metric was archived. If not
121
+ # provided, the billable metric is not archived.
122
+ #
123
+ # @return [Time, nil]
124
+ optional :archived_at, Time
125
+
126
+ # @!attribute custom_fields
127
+ #
128
+ # @return [Hash{Symbol=>String}, nil]
129
+ optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
130
+
131
+ # @!attribute event_type_filter
132
+ # An optional filtering rule to match the 'event_type' property of an event.
133
+ #
134
+ # @return [MetronomeSDK::Models::EventTypeFilter, nil]
135
+ optional :event_type_filter, -> { MetronomeSDK::EventTypeFilter }
136
+
137
+ # @!attribute filter
138
+ # (DEPRECATED) use property_filters & event_type_filter instead
139
+ #
140
+ # @return [Hash{Symbol=>Object}, nil]
141
+ optional :filter, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
142
+
143
+ # @!attribute group_by
144
+ # (DEPRECATED) use group_keys instead
145
+ #
146
+ # @return [Array<String>, nil]
147
+ optional :group_by, MetronomeSDK::Internal::Type::ArrayOf[String]
148
+
149
+ # @!attribute group_keys
150
+ # Property names that are used to group usage costs on an invoice. Each entry
151
+ # represents a set of properties used to slice events into distinct buckets.
152
+ #
153
+ # @return [Array<Array<String>>, nil]
154
+ optional :group_keys,
155
+ MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
156
+
157
+ # @!attribute property_filters
158
+ # A list of filters to match events to this billable metric. Each filter defines a
159
+ # rule on an event property. All rules must pass for the event to match the
160
+ # billable metric.
161
+ #
162
+ # @return [Array<MetronomeSDK::Models::PropertyFilter>, nil]
163
+ optional :property_filters,
164
+ -> {
165
+ MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::PropertyFilter]
166
+ }
167
+
168
+ # @!attribute sql
169
+ # The SQL query associated with the billable metric
170
+ #
171
+ # @return [String, nil]
172
+ optional :sql, String
173
+
174
+ # @!method initialize(id:, name:, aggregate: nil, aggregate_keys: nil, aggregation_key: nil, aggregation_type: nil, archived_at: nil, custom_fields: nil, event_type_filter: nil, filter: nil, group_by: nil, group_keys: nil, property_filters: nil, sql: nil)
175
+ # Some parameter documentations has been truncated, see
176
+ # {MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedBillableMetric} for
177
+ # more details.
178
+ #
179
+ # @param id [String]
180
+ #
181
+ # @param name [String]
182
+ #
183
+ # @param aggregate [String] (DEPRECATED) use aggregation_type instead
184
+ #
185
+ # @param aggregate_keys [Array<String>] (DEPRECATED) use aggregation_key instead
186
+ #
187
+ # @param aggregation_key [String] A key that specifies which property of the event is used to aggregate data. This
188
+ #
189
+ # @param aggregation_type [Symbol, MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedBillableMetric::AggregationType] Specifies the type of aggregation performed on matching events.
190
+ #
191
+ # @param archived_at [Time] RFC 3339 timestamp indicating when the billable metric was archived. If not prov
192
+ #
193
+ # @param custom_fields [Hash{Symbol=>String}]
194
+ #
195
+ # @param event_type_filter [MetronomeSDK::Models::EventTypeFilter] An optional filtering rule to match the 'event_type' property of an event.
196
+ #
197
+ # @param filter [Hash{Symbol=>Object}] (DEPRECATED) use property_filters & event_type_filter instead
198
+ #
199
+ # @param group_by [Array<String>] (DEPRECATED) use group_keys instead
200
+ #
201
+ # @param group_keys [Array<Array<String>>] Property names that are used to group usage costs on an invoice. Each entry repr
202
+ #
203
+ # @param property_filters [Array<MetronomeSDK::Models::PropertyFilter>] A list of filters to match events to this billable metric. Each filter defines a
204
+ #
205
+ # @param sql [String] The SQL query associated with the billable metric
206
+
207
+ # Specifies the type of aggregation performed on matching events.
208
+ #
209
+ # @see MetronomeSDK::Models::V1::UsageSearchResponseItem::MatchedBillableMetric#aggregation_type
210
+ module AggregationType
211
+ extend MetronomeSDK::Internal::Type::Enum
212
+
213
+ COUNT = :COUNT
214
+ LATEST = :LATEST
215
+ MAX = :MAX
216
+ SUM = :SUM
217
+ UNIQUE = :UNIQUE
218
+
219
+ # @!method self.values
220
+ # @return [Array<Symbol>]
221
+ end
222
+ end
223
+
224
+ # @see MetronomeSDK::Models::V1::UsageSearchResponseItem#matched_customer
225
+ class MatchedCustomer < MetronomeSDK::Internal::Type::BaseModel
226
+ # @!attribute id
227
+ #
228
+ # @return [String, nil]
229
+ optional :id, String
230
+
231
+ # @!attribute name
232
+ #
233
+ # @return [String, nil]
234
+ optional :name, String
235
+
236
+ # @!method initialize(id: nil, name: nil)
237
+ # The customer the event was matched to if a match was found
238
+ #
239
+ # @param id [String]
240
+ # @param name [String]
241
+ end
242
+ end
243
+
244
+ # @type [MetronomeSDK::Internal::Type::Converter]
245
+ UsageSearchResponse =
246
+ MetronomeSDK::Internal::Type::ArrayOf[-> { MetronomeSDK::Models::V1::UsageSearchResponseItem }]
247
+ end
248
+ end
249
+ end
@@ -26,15 +26,17 @@ module MetronomeSDK
26
26
  optional :access_schedule, -> { MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule }
27
27
 
28
28
  # @!attribute applicable_product_ids
29
- # Which products the commit applies to. If both applicable_product_ids and
30
- # applicable_product_tags are not provided, the commit applies to all products.
29
+ # Which products the commit applies to. If applicable_product_ids,
30
+ # applicable_product_tags or specifiers are not provided, the commit applies to
31
+ # all products.
31
32
  #
32
33
  # @return [Array<String>, nil]
33
34
  optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String], nil?: true
34
35
 
35
36
  # @!attribute applicable_product_tags
36
- # Which tags the commit applies to. If both applicable_product_ids and
37
- # applicable_product_tags are not provided, the commit applies to all products.
37
+ # Which tags the commit applies to. If applicable_product_ids,
38
+ # applicable_product_tags or specifiers are not provided, the commit applies to
39
+ # all products.
38
40
  #
39
41
  # @return [Array<String>, nil]
40
42
  optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String], nil?: true
@@ -65,7 +67,8 @@ module MetronomeSDK
65
67
  optional :specifiers,
66
68
  -> {
67
69
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::Specifier]
68
- }
70
+ },
71
+ nil?: true
69
72
 
70
73
  # @!method initialize(commit_id:, customer_id:, access_schedule: nil, applicable_product_ids: nil, applicable_product_tags: nil, invoice_contract_id: nil, invoice_schedule: nil, product_id: nil, specifiers: nil, request_options: {})
71
74
  # Some parameter documentations has been truncated, see
@@ -77,9 +80,9 @@ module MetronomeSDK
77
80
  #
78
81
  # @param access_schedule [MetronomeSDK::Models::V2::ContractEditCommitParams::AccessSchedule]
79
82
  #
80
- # @param applicable_product_ids [Array<String>, nil] Which products the commit applies to. If both applicable_product_ids and applica
83
+ # @param applicable_product_ids [Array<String>, nil] Which products the commit applies to. If applicable_product_ids, applicable_prod
81
84
  #
82
- # @param applicable_product_tags [Array<String>, nil] Which tags the commit applies to. If both applicable*product_ids and applicable*
85
+ # @param applicable_product_tags [Array<String>, nil] Which tags the commit applies to. If applicable*product_ids, applicable_product*
83
86
  #
84
87
  # @param invoice_contract_id [String] ID of contract to use for invoicing
85
88
  #
@@ -87,7 +90,7 @@ module MetronomeSDK
87
90
  #
88
91
  # @param product_id [String]
89
92
  #
90
- # @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::Specifier>] List of filters that determine what kind of customer usage draws down a commit o
93
+ # @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::Specifier>, nil] List of filters that determine what kind of customer usage draws down a commit o
91
94
  #
92
95
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
93
96
 
@@ -7,22 +7,11 @@ module MetronomeSDK
7
7
  class ContractEditCommitResponse < MetronomeSDK::Internal::Type::BaseModel
8
8
  # @!attribute data
9
9
  #
10
- # @return [MetronomeSDK::Models::V2::ContractEditCommitResponse::Data]
11
- required :data, -> { MetronomeSDK::Models::V2::ContractEditCommitResponse::Data }
10
+ # @return [MetronomeSDK::Models::ID]
11
+ required :data, -> { MetronomeSDK::ID }
12
12
 
13
13
  # @!method initialize(data:)
14
- # @param data [MetronomeSDK::Models::V2::ContractEditCommitResponse::Data]
15
-
16
- # @see MetronomeSDK::Models::V2::ContractEditCommitResponse#data
17
- class Data < MetronomeSDK::Internal::Type::BaseModel
18
- # @!attribute id
19
- #
20
- # @return [String]
21
- required :id, String
22
-
23
- # @!method initialize(id:)
24
- # @param id [String]
25
- end
14
+ # @param data [MetronomeSDK::Models::ID]
26
15
  end
27
16
  end
28
17
  end
@@ -54,7 +54,8 @@ module MetronomeSDK
54
54
  optional :specifiers,
55
55
  -> {
56
56
  MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCreditParams::Specifier]
57
- }
57
+ },
58
+ nil?: true
58
59
 
59
60
  # @!method initialize(credit_id:, customer_id:, access_schedule: nil, applicable_product_ids: nil, applicable_product_tags: nil, product_id: nil, specifiers: nil, request_options: {})
60
61
  # Some parameter documentations has been truncated, see
@@ -72,7 +73,7 @@ module MetronomeSDK
72
73
  #
73
74
  # @param product_id [String]
74
75
  #
75
- # @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::Specifier>] List of filters that determine what kind of customer usage draws down a commit o
76
+ # @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::Specifier>, nil] List of filters that determine what kind of customer usage draws down a commit o
76
77
  #
77
78
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
78
79
 
@@ -7,22 +7,11 @@ module MetronomeSDK
7
7
  class ContractEditCreditResponse < MetronomeSDK::Internal::Type::BaseModel
8
8
  # @!attribute data
9
9
  #
10
- # @return [MetronomeSDK::Models::V2::ContractEditCreditResponse::Data]
11
- required :data, -> { MetronomeSDK::Models::V2::ContractEditCreditResponse::Data }
10
+ # @return [MetronomeSDK::Models::ID]
11
+ required :data, -> { MetronomeSDK::ID }
12
12
 
13
13
  # @!method initialize(data:)
14
- # @param data [MetronomeSDK::Models::V2::ContractEditCreditResponse::Data]
15
-
16
- # @see MetronomeSDK::Models::V2::ContractEditCreditResponse#data
17
- class Data < MetronomeSDK::Internal::Type::BaseModel
18
- # @!attribute id
19
- #
20
- # @return [String]
21
- required :id, String
22
-
23
- # @!method initialize(id:)
24
- # @param id [String]
25
- end
14
+ # @param data [MetronomeSDK::Models::ID]
26
15
  end
27
16
  end
28
17
  end