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

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 (551) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +45 -0
  3. data/README.md +120 -74
  4. data/SECURITY.md +2 -2
  5. data/lib/metronome_sdk/client.rb +4 -4
  6. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +3 -1
  7. data/lib/metronome_sdk/internal/type/array_of.rb +8 -0
  8. data/lib/metronome_sdk/internal/type/base_model.rb +13 -0
  9. data/lib/metronome_sdk/internal/type/boolean.rb +8 -0
  10. data/lib/metronome_sdk/internal/type/enum.rb +12 -0
  11. data/lib/metronome_sdk/internal/type/file_input.rb +7 -0
  12. data/lib/metronome_sdk/internal/type/hash_of.rb +8 -0
  13. data/lib/metronome_sdk/internal/type/union.rb +12 -0
  14. data/lib/metronome_sdk/internal/type/unknown.rb +8 -0
  15. data/lib/metronome_sdk/internal/util.rb +54 -1
  16. data/lib/metronome_sdk/internal.rb +3 -0
  17. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +14 -3
  18. data/lib/metronome_sdk/models/v1/alert_create_params.rb +11 -11
  19. data/lib/metronome_sdk/models/v1/alert_create_response.rb +14 -3
  20. data/lib/metronome_sdk/models/v1/audit_log_list_params.rb +2 -2
  21. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +8 -2
  22. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +14 -3
  23. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +88 -8
  24. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +14 -3
  25. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +85 -6
  26. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +85 -8
  27. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +291 -143
  28. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +14 -3
  29. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +14 -3
  30. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +12 -12
  31. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +1276 -3
  32. data/lib/metronome_sdk/models/v1/contract_create_params.rb +827 -299
  33. data/lib/metronome_sdk/models/v1/contract_create_response.rb +14 -3
  34. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +1644 -8
  35. data/lib/metronome_sdk/models/v1/contract_list_response.rb +10879 -55
  36. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +33 -5
  37. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +317 -10
  38. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +10908 -55
  39. data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rb +34 -0
  40. data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rb +81 -0
  41. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +4 -4
  42. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +1276 -3
  43. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +14 -3
  44. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +14 -3
  45. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +99 -8
  46. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +14 -3
  47. data/lib/metronome_sdk/models/v1/contracts/product_list_params.rb +4 -4
  48. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +561 -12
  49. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +8 -2
  50. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +559 -14
  51. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +97 -6
  52. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +14 -3
  53. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +8 -2
  54. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +14 -3
  55. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -4
  56. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +14 -3
  57. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +42 -6
  58. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +8 -2
  59. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +33 -5
  60. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +181 -7
  61. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +42 -6
  62. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +2 -2
  63. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +14 -3
  64. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +14 -3
  65. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +2 -2
  66. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +14 -3
  67. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +86 -20
  68. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +16 -3
  69. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +76 -14
  70. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +61 -9
  71. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +33 -5
  72. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +180 -7
  73. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +85 -21
  74. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +14 -3
  75. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +14 -3
  76. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +153 -11
  77. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +175 -14
  78. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +14 -3
  79. data/lib/metronome_sdk/models/v1/custom_field_add_key_params.rb +2 -2
  80. data/lib/metronome_sdk/models/v1/custom_field_delete_values_params.rb +2 -2
  81. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +2 -2
  82. data/lib/metronome_sdk/models/v1/custom_field_remove_key_params.rb +2 -2
  83. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +2 -2
  84. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +8 -2
  85. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +14 -3
  86. data/lib/metronome_sdk/models/v1/customer_create_params.rb +20 -20
  87. data/lib/metronome_sdk/models/v1/customer_create_response.rb +50 -3
  88. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +86 -6
  89. data/lib/metronome_sdk/models/v1/{customer_detail.rb → customer_list_response.rb} +15 -14
  90. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +126 -3
  91. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +50 -3
  92. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +2 -2
  93. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +276 -5
  94. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +2 -2
  95. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +279 -3
  96. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -6
  97. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +2 -2
  98. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +2 -2
  99. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +78 -26
  100. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +14 -3
  101. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +1047 -3
  102. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +14 -3
  103. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +59 -7
  104. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +14 -3
  105. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +593 -3
  106. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +14 -3
  107. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +4 -4
  108. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +1271 -2
  109. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +2 -2
  110. data/lib/metronome_sdk/models/v1/customers/{invoice.rb → invoice_list_response.rb} +303 -118
  111. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +1276 -3
  112. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +16 -15
  113. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +14 -3
  114. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +21 -3
  115. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +13 -13
  116. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +286 -3
  117. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +20 -3
  118. data/lib/metronome_sdk/models/v1/plan_list_customers_params.rb +2 -2
  119. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +128 -3
  120. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +2 -2
  121. data/lib/metronome_sdk/models/v1/usage_list_params.rb +9 -8
  122. data/lib/metronome_sdk/models/v1/usage_list_with_groups_params.rb +5 -5
  123. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +69 -17
  124. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +14 -3
  125. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +61 -9
  126. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +14 -3
  127. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1147 -377
  128. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +14 -3
  129. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +2212 -119
  130. data/lib/metronome_sdk/models/v2/contract_list_response.rb +1233 -202
  131. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +1235 -201
  132. data/lib/metronome_sdk/models.rb +28 -49
  133. data/lib/metronome_sdk/resources/v1/alerts.rb +3 -3
  134. data/lib/metronome_sdk/resources/v1/audit_logs.rb +1 -1
  135. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +3 -3
  136. data/lib/metronome_sdk/resources/v1/contracts/products.rb +9 -6
  137. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +1 -1
  138. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +8 -6
  139. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +4 -4
  140. data/lib/metronome_sdk/resources/v1/contracts.rb +55 -28
  141. data/lib/metronome_sdk/resources/v1/credit_grants.rb +3 -3
  142. data/lib/metronome_sdk/resources/v1/custom_fields.rb +5 -5
  143. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +2 -2
  144. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +5 -5
  145. data/lib/metronome_sdk/resources/v1/customers/commits.rb +7 -5
  146. data/lib/metronome_sdk/resources/v1/customers/credits.rb +5 -3
  147. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +5 -5
  148. data/lib/metronome_sdk/resources/v1/customers/plans.rb +3 -3
  149. data/lib/metronome_sdk/resources/v1/customers.rb +6 -5
  150. data/lib/metronome_sdk/resources/v1/dashboards.rb +4 -4
  151. data/lib/metronome_sdk/resources/v1/plans.rb +1 -1
  152. data/lib/metronome_sdk/resources/v1/usage.rb +5 -5
  153. data/lib/metronome_sdk/resources/v2/contracts.rb +39 -27
  154. data/lib/metronome_sdk/version.rb +1 -1
  155. data/lib/metronome_sdk.rb +7 -28
  156. data/rbi/metronome_sdk/internal/transport/pooled_net_requester.rbi +5 -1
  157. data/rbi/metronome_sdk/internal/type/array_of.rbi +6 -0
  158. data/rbi/metronome_sdk/internal/type/base_model.rbi +5 -0
  159. data/rbi/metronome_sdk/internal/type/boolean.rbi +6 -0
  160. data/rbi/metronome_sdk/internal/type/enum.rbi +5 -0
  161. data/rbi/metronome_sdk/internal/type/file_input.rbi +5 -0
  162. data/rbi/metronome_sdk/internal/type/hash_of.rbi +6 -0
  163. data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
  164. data/rbi/metronome_sdk/internal/type/unknown.rbi +6 -0
  165. data/rbi/metronome_sdk/internal/util.rbi +34 -0
  166. data/rbi/metronome_sdk/internal.rbi +5 -0
  167. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +37 -4
  168. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +4 -4
  169. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +37 -4
  170. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +12 -6
  171. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +44 -4
  172. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +177 -8
  173. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +43 -4
  174. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +177 -8
  175. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +175 -8
  176. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +341 -7
  177. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +37 -4
  178. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +39 -4
  179. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +2595 -3
  180. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1230 -74
  181. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +37 -4
  182. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3375 -5
  183. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +23626 -686
  184. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbi +72 -0
  185. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +698 -12
  186. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +23626 -686
  187. data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbi +58 -0
  188. data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbi +212 -0
  189. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +2595 -3
  190. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +44 -4
  191. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +44 -4
  192. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +209 -8
  193. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +44 -4
  194. data/rbi/metronome_sdk/models/v1/contracts/product_list_params.rbi +3 -3
  195. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +1143 -76
  196. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +9 -3
  197. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +1137 -76
  198. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +209 -8
  199. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +44 -4
  200. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +9 -3
  201. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +44 -4
  202. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +44 -4
  203. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +74 -8
  204. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +9 -3
  205. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbi +72 -0
  206. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +410 -8
  207. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +74 -8
  208. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +44 -4
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +44 -4
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +44 -4
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +180 -8
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +45 -4
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +180 -8
  214. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +149 -12
  215. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbi +72 -0
  216. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +410 -8
  217. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +166 -8
  218. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +41 -4
  219. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +39 -4
  220. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +231 -10
  221. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +281 -14
  222. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +39 -4
  223. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +12 -6
  224. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +39 -4
  225. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +84 -6
  226. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +177 -8
  227. data/rbi/metronome_sdk/models/v1/{customer_detail.rbi → customer_list_response.rbi} +26 -19
  228. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +255 -6
  229. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +86 -6
  230. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +623 -3
  231. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +622 -4
  232. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +109 -0
  233. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +44 -4
  234. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +2164 -3
  235. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +44 -4
  236. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +109 -0
  237. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +44 -4
  238. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +1224 -3
  239. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +44 -4
  240. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +2561 -4
  241. data/rbi/metronome_sdk/models/v1/customers/{invoice.rbi → invoice_list_response.rbi} +589 -182
  242. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +2612 -6
  243. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +41 -4
  244. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +39 -4
  245. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +560 -6
  246. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +37 -4
  247. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +248 -4
  248. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +105 -0
  249. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +41 -4
  250. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +105 -0
  251. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +41 -4
  252. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1980 -285
  253. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +37 -4
  254. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +7604 -2906
  255. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +3855 -1534
  256. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +3855 -1534
  257. data/rbi/metronome_sdk/models.rbi +0 -32
  258. data/rbi/metronome_sdk/resources/v1/alerts.rbi +2 -2
  259. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +6 -2
  260. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +6 -5
  261. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +9 -1
  262. data/rbi/metronome_sdk/resources/v1/contracts.rbi +30 -1
  263. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +9 -0
  264. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +9 -0
  265. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
  266. data/rbi/metronome_sdk/resources/v1/customers.rbi +5 -2
  267. data/rbi/metronome_sdk/resources/v2/contracts.rbi +49 -1
  268. data/sig/metronome_sdk/internal/transport/pooled_net_requester.rbs +2 -0
  269. data/sig/metronome_sdk/internal/type/array_of.rbs +3 -0
  270. data/sig/metronome_sdk/internal/type/base_model.rbs +2 -0
  271. data/sig/metronome_sdk/internal/type/boolean.rbs +3 -0
  272. data/sig/metronome_sdk/internal/type/enum.rbs +2 -0
  273. data/sig/metronome_sdk/internal/type/file_input.rbs +2 -0
  274. data/sig/metronome_sdk/internal/type/hash_of.rbs +3 -0
  275. data/sig/metronome_sdk/internal/type/union.rbs +2 -0
  276. data/sig/metronome_sdk/internal/type/unknown.rbs +3 -0
  277. data/sig/metronome_sdk/internal/util.rbs +12 -0
  278. data/sig/metronome_sdk/internal.rbs +2 -0
  279. data/sig/metronome_sdk/models/v1/alert_archive_params.rbs +6 -0
  280. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +20 -3
  281. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +29 -4
  282. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +20 -3
  283. data/sig/metronome_sdk/models/v1/audit_log_list_params.rbs +11 -0
  284. data/sig/metronome_sdk/models/v1/audit_log_list_response.rbs +16 -0
  285. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +13 -3
  286. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +20 -3
  287. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +83 -10
  288. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +20 -3
  289. data/sig/metronome_sdk/models/v1/billable_metric_list_params.rbs +7 -0
  290. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +84 -10
  291. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_params.rbs +5 -0
  292. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +88 -10
  293. data/sig/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbs +11 -0
  294. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +456 -79
  295. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +20 -3
  296. data/sig/metronome_sdk/models/v1/contract_archive_params.rbs +7 -0
  297. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +20 -3
  298. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbs +47 -12
  299. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +1292 -3
  300. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +1087 -198
  301. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +20 -3
  302. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +14 -0
  303. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1647 -1
  304. data/sig/metronome_sdk/models/v1/contract_list_params.rbs +10 -0
  305. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +10802 -104
  306. data/sig/metronome_sdk/models/v1/contract_retrieve_params.rbs +8 -0
  307. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbs +39 -0
  308. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +316 -12
  309. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +10802 -104
  310. data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbs +34 -0
  311. data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbs +101 -0
  312. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rbs +21 -0
  313. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +1292 -3
  314. data/sig/metronome_sdk/models/v1/contract_set_usage_filter_params.rbs +9 -0
  315. data/sig/metronome_sdk/models/v1/contract_update_end_date_params.rbs +8 -0
  316. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +20 -3
  317. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_params.rbs +7 -0
  318. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_response.rbs +10 -0
  319. data/sig/metronome_sdk/models/v1/contracts/named_schedule_update_params.rbs +9 -0
  320. data/sig/metronome_sdk/models/v1/contracts/product_archive_params.rbs +5 -0
  321. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +22 -3
  322. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +98 -6
  323. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +22 -3
  324. data/sig/metronome_sdk/models/v1/contracts/product_list_params.rbs +7 -0
  325. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +491 -12
  326. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +13 -3
  327. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +495 -12
  328. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +99 -6
  329. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +22 -3
  330. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +13 -3
  331. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +22 -3
  332. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_params.rbs +21 -0
  333. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +22 -3
  334. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_params.rbs +7 -0
  335. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +55 -8
  336. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +13 -3
  337. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbs +38 -0
  338. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +188 -8
  339. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +59 -8
  340. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_params.rbs +14 -0
  341. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +22 -3
  342. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_params.rbs +8 -0
  343. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_response.rbs +10 -0
  344. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_update_params.rbs +10 -0
  345. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_params.rbs +6 -0
  346. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +22 -3
  347. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rbs +8 -0
  348. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +22 -3
  349. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +97 -18
  350. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +22 -3
  351. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +89 -14
  352. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +78 -15
  353. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbs +38 -0
  354. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +183 -8
  355. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +98 -6
  356. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +20 -3
  357. data/sig/metronome_sdk/models/v1/credit_grant_edit_params.rbs +8 -0
  358. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +20 -3
  359. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +9 -0
  360. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +145 -9
  361. data/sig/metronome_sdk/models/v1/credit_grant_list_params.rbs +11 -0
  362. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +174 -12
  363. data/sig/metronome_sdk/models/v1/credit_grant_void_params.rbs +7 -0
  364. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +20 -3
  365. data/sig/metronome_sdk/models/v1/custom_field_add_key_params.rbs +7 -0
  366. data/sig/metronome_sdk/models/v1/custom_field_delete_values_params.rbs +7 -0
  367. data/sig/metronome_sdk/models/v1/custom_field_list_keys_params.rbs +12 -6
  368. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +11 -0
  369. data/sig/metronome_sdk/models/v1/custom_field_remove_key_params.rbs +6 -0
  370. data/sig/metronome_sdk/models/v1/custom_field_set_values_params.rbs +7 -0
  371. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +13 -3
  372. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +20 -3
  373. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +52 -26
  374. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +49 -3
  375. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_params.rbs +9 -0
  376. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +88 -10
  377. data/sig/metronome_sdk/models/v1/customer_list_costs_params.rbs +9 -0
  378. data/sig/metronome_sdk/models/v1/customer_list_costs_response.rbs +19 -0
  379. data/sig/metronome_sdk/models/v1/customer_list_params.rbs +10 -0
  380. data/sig/metronome_sdk/models/v1/customer_list_response.rbs +109 -0
  381. data/sig/metronome_sdk/models/v1/customer_retrieve_params.rbs +5 -0
  382. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +113 -3
  383. data/sig/metronome_sdk/models/v1/customer_set_ingest_aliases_params.rbs +6 -0
  384. data/sig/metronome_sdk/models/v1/customer_set_name_params.rbs +6 -0
  385. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +49 -3
  386. data/sig/metronome_sdk/models/v1/customer_update_config_params.rbs +7 -0
  387. data/sig/metronome_sdk/models/v1/customers/alert_list_params.rbs +13 -6
  388. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +247 -3
  389. data/sig/metronome_sdk/models/v1/customers/alert_reset_params.rbs +6 -0
  390. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +7 -0
  391. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +248 -3
  392. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +10 -0
  393. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +6 -0
  394. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +6 -0
  395. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +16 -0
  396. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +116 -8
  397. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +22 -3
  398. data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +14 -0
  399. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +1061 -3
  400. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_params.rbs +8 -0
  401. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +22 -3
  402. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +82 -0
  403. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +22 -3
  404. data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +14 -0
  405. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +600 -3
  406. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_params.rbs +7 -0
  407. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +22 -3
  408. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_params.rbs +11 -0
  409. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_response.rbs +2 -0
  410. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rbs +14 -0
  411. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +1282 -7
  412. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +13 -0
  413. data/sig/metronome_sdk/models/v1/customers/invoice_list_response.rbs +1290 -0
  414. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_params.rbs +7 -0
  415. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +1295 -3
  416. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_params.rbs +7 -0
  417. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_response.rbs +10 -0
  418. data/sig/metronome_sdk/models/v1/customers/named_schedule_update_params.rbs +9 -0
  419. data/sig/metronome_sdk/models/v1/customers/plan_add_params.rbs +38 -4
  420. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +20 -3
  421. data/sig/metronome_sdk/models/v1/customers/plan_end_params.rbs +9 -0
  422. data/sig/metronome_sdk/models/v1/customers/plan_end_response.rbs +2 -0
  423. data/sig/metronome_sdk/models/v1/customers/plan_list_params.rbs +7 -0
  424. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_params.rbs +8 -0
  425. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbs +14 -0
  426. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +38 -3
  427. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +28 -6
  428. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_response.rbs +6 -0
  429. data/sig/metronome_sdk/models/v1/invoice_regenerate_params.rbs +5 -0
  430. data/sig/metronome_sdk/models/v1/invoice_regenerate_response.rbs +6 -0
  431. data/sig/metronome_sdk/models/v1/invoice_void_params.rbs +5 -0
  432. data/sig/metronome_sdk/models/v1/invoice_void_response.rbs +6 -0
  433. data/sig/metronome_sdk/models/v1/plan_get_details_params.rbs +5 -0
  434. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +268 -3
  435. data/sig/metronome_sdk/models/v1/plan_list_charges_params.rbs +7 -0
  436. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +43 -3
  437. data/sig/metronome_sdk/models/v1/plan_list_customers_params.rbs +8 -0
  438. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +121 -3
  439. data/sig/metronome_sdk/models/v1/plan_list_params.rbs +6 -0
  440. data/sig/metronome_sdk/models/v1/plan_list_response.rbs +7 -0
  441. data/sig/metronome_sdk/models/v1/pricing_unit_list_params.rbs +6 -0
  442. data/sig/metronome_sdk/models/v1/pricing_unit_list_response.rbs +2 -0
  443. data/sig/metronome_sdk/models/v1/service_list_params.rbs +2 -0
  444. data/sig/metronome_sdk/models/v1/service_list_response.rbs +10 -0
  445. data/sig/metronome_sdk/models/v1/usage_ingest_params.rbs +13 -0
  446. data/sig/metronome_sdk/models/v1/usage_list_params.rbs +17 -0
  447. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +15 -0
  448. data/sig/metronome_sdk/models/v1/usage_list_with_groups_params.rbs +15 -0
  449. data/sig/metronome_sdk/models/v1/usage_list_with_groups_response.rbs +8 -0
  450. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +110 -1
  451. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +20 -3
  452. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +85 -1
  453. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +20 -3
  454. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +1476 -212
  455. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +20 -3
  456. data/sig/metronome_sdk/models/v2/contract_get_edit_history_params.rbs +6 -0
  457. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +2855 -442
  458. data/sig/metronome_sdk/models/v2/contract_list_params.rbs +10 -0
  459. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +1743 -194
  460. data/sig/metronome_sdk/models/v2/contract_retrieve_params.rbs +9 -0
  461. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +1743 -194
  462. data/sig/metronome_sdk/models.rbs +0 -32
  463. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
  464. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
  465. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +2 -1
  466. data/sig/metronome_sdk/resources/v1/contracts.rbs +9 -1
  467. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  468. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -1
  469. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
  470. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
  471. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
  472. data/sig/metronome_sdk/resources/v1/customers.rbs +1 -1
  473. data/sig/metronome_sdk/resources/v2/contracts.rbs +7 -1
  474. metadata +14 -83
  475. data/lib/metronome_sdk/models/base_usage_filter.rb +0 -27
  476. data/lib/metronome_sdk/models/commit.rb +0 -867
  477. data/lib/metronome_sdk/models/contract_without_amendments.rb +0 -1437
  478. data/lib/metronome_sdk/models/credit.rb +0 -484
  479. data/lib/metronome_sdk/models/credit_type_data.rb +0 -21
  480. data/lib/metronome_sdk/models/discount.rb +0 -68
  481. data/lib/metronome_sdk/models/event_type_filter.rb +0 -33
  482. data/lib/metronome_sdk/models/id.rb +0 -15
  483. data/lib/metronome_sdk/models/override.rb +0 -362
  484. data/lib/metronome_sdk/models/pro_service.rb +0 -73
  485. data/lib/metronome_sdk/models/property_filter.rb +0 -52
  486. data/lib/metronome_sdk/models/rate.rb +0 -101
  487. data/lib/metronome_sdk/models/schedule_duration.rb +0 -50
  488. data/lib/metronome_sdk/models/schedule_point_in_time.rb +0 -62
  489. data/lib/metronome_sdk/models/scheduled_charge.rb +0 -76
  490. data/lib/metronome_sdk/models/tier.rb +0 -21
  491. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +0 -148
  492. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +0 -57
  493. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +0 -45
  494. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +0 -69
  495. data/lib/metronome_sdk/models/v1/customer.rb +0 -53
  496. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +0 -270
  497. data/lib/metronome_sdk/models/v1/plan_detail.rb +0 -200
  498. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +0 -38
  499. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +0 -38
  500. data/rbi/metronome_sdk/models/base_usage_filter.rbi +0 -46
  501. data/rbi/metronome_sdk/models/commit.rbi +0 -1625
  502. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +0 -2939
  503. data/rbi/metronome_sdk/models/credit.rbi +0 -879
  504. data/rbi/metronome_sdk/models/credit_type_data.rbi +0 -26
  505. data/rbi/metronome_sdk/models/discount.rbi +0 -106
  506. data/rbi/metronome_sdk/models/event_type_filter.rbi +0 -57
  507. data/rbi/metronome_sdk/models/id.rbi +0 -23
  508. data/rbi/metronome_sdk/models/override.rbi +0 -609
  509. data/rbi/metronome_sdk/models/pro_service.rbi +0 -98
  510. data/rbi/metronome_sdk/models/property_filter.rbi +0 -88
  511. data/rbi/metronome_sdk/models/rate.rbi +0 -155
  512. data/rbi/metronome_sdk/models/schedule_duration.rbi +0 -89
  513. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +0 -121
  514. data/rbi/metronome_sdk/models/scheduled_charge.rbi +0 -119
  515. data/rbi/metronome_sdk/models/tier.rbi +0 -29
  516. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +0 -237
  517. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +0 -111
  518. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +0 -94
  519. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +0 -90
  520. data/rbi/metronome_sdk/models/v1/customer.rbi +0 -74
  521. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +0 -572
  522. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +0 -349
  523. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +0 -79
  524. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +0 -80
  525. data/sig/metronome_sdk/models/base_usage_filter.rbs +0 -22
  526. data/sig/metronome_sdk/models/commit.rbs +0 -714
  527. data/sig/metronome_sdk/models/contract_without_amendments.rbs +0 -1072
  528. data/sig/metronome_sdk/models/credit.rbs +0 -397
  529. data/sig/metronome_sdk/models/credit_type_data.rbs +0 -13
  530. data/sig/metronome_sdk/models/discount.rbs +0 -52
  531. data/sig/metronome_sdk/models/event_type_filter.rbs +0 -21
  532. data/sig/metronome_sdk/models/id.rbs +0 -11
  533. data/sig/metronome_sdk/models/override.rbs +0 -329
  534. data/sig/metronome_sdk/models/pro_service.rbs +0 -50
  535. data/sig/metronome_sdk/models/property_filter.rbs +0 -34
  536. data/sig/metronome_sdk/models/rate.rbs +0 -82
  537. data/sig/metronome_sdk/models/schedule_duration.rbs +0 -44
  538. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +0 -61
  539. data/sig/metronome_sdk/models/scheduled_charge.rbs +0 -58
  540. data/sig/metronome_sdk/models/tier.rbs +0 -15
  541. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +0 -102
  542. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +0 -41
  543. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +0 -36
  544. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +0 -42
  545. data/sig/metronome_sdk/models/v1/customer.rbs +0 -36
  546. data/sig/metronome_sdk/models/v1/customer_detail.rbs +0 -90
  547. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +0 -205
  548. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +0 -977
  549. data/sig/metronome_sdk/models/v1/plan_detail.rbs +0 -165
  550. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +0 -29
  551. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +0 -32
@@ -11,6 +11,10 @@ module MetronomeSDK
11
11
  data: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data
12
12
  ) -> void
13
13
 
14
+ def to_hash: -> {
15
+ data: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data
16
+ }
17
+
14
18
  type data =
15
19
  {
16
20
  id: String,
@@ -19,7 +23,7 @@ module MetronomeSDK
19
23
  created_by: String,
20
24
  customer_id: String,
21
25
  overrides: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override],
22
- scheduled_charges: ::Array[MetronomeSDK::ScheduledCharge],
26
+ scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge],
23
27
  starting_at: Time,
24
28
  transitions: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Transition],
25
29
  usage_filter: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::UsageFilter],
@@ -28,14 +32,14 @@ module MetronomeSDK
28
32
  credits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit],
29
33
  custom_fields: ::Hash[Symbol, String],
30
34
  customer_billing_provider_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::CustomerBillingProviderConfiguration,
31
- discounts: ::Array[MetronomeSDK::Discount],
35
+ discounts: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount],
32
36
  ending_before: Time,
33
37
  multiplier_override_prioritization: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::multiplier_override_prioritization,
34
38
  name: String,
35
39
  net_payment_terms_days: Float,
36
40
  netsuite_sales_order_id: String,
37
41
  prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration,
38
- professional_services: ::Array[MetronomeSDK::ProService],
42
+ professional_services: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ProfessionalService],
39
43
  rate_card_id: String,
40
44
  recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit],
41
45
  recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit],
@@ -43,6 +47,7 @@ module MetronomeSDK
43
47
  salesforce_opportunity_id: String,
44
48
  scheduled_charges_on_usage_invoices: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::scheduled_charges_on_usage_invoices,
45
49
  spend_threshold_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration,
50
+ subscriptions: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription],
46
51
  total_contract_value: Float,
47
52
  uniqueness_key: String
48
53
  }
@@ -60,7 +65,7 @@ module MetronomeSDK
60
65
 
61
66
  attr_accessor overrides: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override]
62
67
 
63
- attr_accessor scheduled_charges: ::Array[MetronomeSDK::ScheduledCharge]
68
+ attr_accessor scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge]
64
69
 
65
70
  attr_accessor starting_at: Time
66
71
 
@@ -90,11 +95,11 @@ module MetronomeSDK
90
95
  MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::CustomerBillingProviderConfiguration
91
96
  ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::CustomerBillingProviderConfiguration
92
97
 
93
- attr_reader discounts: ::Array[MetronomeSDK::Discount]?
98
+ attr_reader discounts: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount]?
94
99
 
95
100
  def discounts=: (
96
- ::Array[MetronomeSDK::Discount]
97
- ) -> ::Array[MetronomeSDK::Discount]
101
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount]
102
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount]
98
103
 
99
104
  attr_reader ending_before: Time?
100
105
 
@@ -124,11 +129,11 @@ module MetronomeSDK
124
129
  MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration
125
130
  ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration
126
131
 
127
- attr_reader professional_services: ::Array[MetronomeSDK::ProService]?
132
+ attr_reader professional_services: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ProfessionalService]?
128
133
 
129
134
  def professional_services=: (
130
- ::Array[MetronomeSDK::ProService]
131
- ) -> ::Array[MetronomeSDK::ProService]
135
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ProfessionalService]
136
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ProfessionalService]
132
137
 
133
138
  attr_reader rate_card_id: String?
134
139
 
@@ -168,6 +173,12 @@ module MetronomeSDK
168
173
  MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration
169
174
  ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration
170
175
 
176
+ attr_reader subscriptions: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription]?
177
+
178
+ def subscriptions=: (
179
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription]
180
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription]
181
+
171
182
  attr_reader total_contract_value: Float?
172
183
 
173
184
  def total_contract_value=: (Float) -> Float
@@ -183,7 +194,7 @@ module MetronomeSDK
183
194
  created_by: String,
184
195
  customer_id: String,
185
196
  overrides: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override],
186
- scheduled_charges: ::Array[MetronomeSDK::ScheduledCharge],
197
+ scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge],
187
198
  starting_at: Time,
188
199
  transitions: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Transition],
189
200
  usage_filter: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::UsageFilter],
@@ -192,14 +203,14 @@ module MetronomeSDK
192
203
  ?credits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit],
193
204
  ?custom_fields: ::Hash[Symbol, String],
194
205
  ?customer_billing_provider_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::CustomerBillingProviderConfiguration,
195
- ?discounts: ::Array[MetronomeSDK::Discount],
206
+ ?discounts: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount],
196
207
  ?ending_before: Time,
197
208
  ?multiplier_override_prioritization: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::multiplier_override_prioritization,
198
209
  ?name: String,
199
210
  ?net_payment_terms_days: Float,
200
211
  ?netsuite_sales_order_id: String,
201
212
  ?prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration,
202
- ?professional_services: ::Array[MetronomeSDK::ProService],
213
+ ?professional_services: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ProfessionalService],
203
214
  ?rate_card_id: String,
204
215
  ?recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit],
205
216
  ?recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit],
@@ -207,16 +218,53 @@ module MetronomeSDK
207
218
  ?salesforce_opportunity_id: String,
208
219
  ?scheduled_charges_on_usage_invoices: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::scheduled_charges_on_usage_invoices,
209
220
  ?spend_threshold_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration,
221
+ ?subscriptions: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription],
210
222
  ?total_contract_value: Float,
211
223
  ?uniqueness_key: String
212
224
  ) -> void
213
225
 
226
+ def to_hash: -> {
227
+ id: String,
228
+ commits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit],
229
+ created_at: Time,
230
+ created_by: String,
231
+ customer_id: String,
232
+ overrides: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override],
233
+ scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge],
234
+ starting_at: Time,
235
+ transitions: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Transition],
236
+ usage_filter: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::UsageFilter],
237
+ usage_statement_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::UsageStatementSchedule,
238
+ archived_at: Time,
239
+ credits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit],
240
+ custom_fields: ::Hash[Symbol, String],
241
+ customer_billing_provider_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::CustomerBillingProviderConfiguration,
242
+ discounts: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount],
243
+ ending_before: Time,
244
+ multiplier_override_prioritization: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::multiplier_override_prioritization,
245
+ name: String,
246
+ net_payment_terms_days: Float,
247
+ netsuite_sales_order_id: String,
248
+ prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration,
249
+ professional_services: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ProfessionalService],
250
+ rate_card_id: String,
251
+ recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit],
252
+ recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit],
253
+ reseller_royalties: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ResellerRoyalty],
254
+ salesforce_opportunity_id: String,
255
+ scheduled_charges_on_usage_invoices: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::scheduled_charges_on_usage_invoices,
256
+ spend_threshold_configuration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration,
257
+ subscriptions: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription],
258
+ total_contract_value: Float,
259
+ uniqueness_key: String
260
+ }
261
+
214
262
  type commit =
215
263
  {
216
264
  id: String,
217
265
  product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Product,
218
266
  type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::type_,
219
- access_schedule: MetronomeSDK::ScheduleDuration,
267
+ access_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule,
220
268
  applicable_contract_ids: ::Array[String],
221
269
  applicable_product_ids: ::Array[String],
222
270
  applicable_product_tags: ::Array[String],
@@ -226,7 +274,7 @@ module MetronomeSDK
226
274
  custom_fields: ::Hash[Symbol, String],
227
275
  description: String,
228
276
  invoice_contract: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceContract,
229
- invoice_schedule: MetronomeSDK::SchedulePointInTime,
277
+ invoice_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule,
230
278
  ledger: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::ledger],
231
279
  name: String,
232
280
  netsuite_sales_order_id: String,
@@ -234,7 +282,8 @@ module MetronomeSDK
234
282
  rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::rate_type,
235
283
  rolled_over_from: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::RolledOverFrom,
236
284
  rollover_fraction: Float,
237
- salesforce_opportunity_id: String
285
+ salesforce_opportunity_id: String,
286
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Specifier]
238
287
  }
239
288
 
240
289
  class Commit < MetronomeSDK::Internal::Type::BaseModel
@@ -244,11 +293,11 @@ module MetronomeSDK
244
293
 
245
294
  attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::type_
246
295
 
247
- attr_reader access_schedule: MetronomeSDK::ScheduleDuration?
296
+ attr_reader access_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule?
248
297
 
249
298
  def access_schedule=: (
250
- MetronomeSDK::ScheduleDuration
251
- ) -> MetronomeSDK::ScheduleDuration
299
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule
300
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule
252
301
 
253
302
  attr_reader applicable_contract_ids: ::Array[String]?
254
303
 
@@ -292,11 +341,11 @@ module MetronomeSDK
292
341
  MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceContract
293
342
  ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceContract
294
343
 
295
- attr_reader invoice_schedule: MetronomeSDK::SchedulePointInTime?
344
+ attr_reader invoice_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule?
296
345
 
297
346
  def invoice_schedule=: (
298
- MetronomeSDK::SchedulePointInTime
299
- ) -> MetronomeSDK::SchedulePointInTime
347
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule
348
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule
300
349
 
301
350
  attr_reader ledger: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::ledger]?
302
351
 
@@ -336,11 +385,17 @@ module MetronomeSDK
336
385
 
337
386
  def salesforce_opportunity_id=: (String) -> String
338
387
 
388
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Specifier]?
389
+
390
+ def specifiers=: (
391
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Specifier]
392
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Specifier]
393
+
339
394
  def initialize: (
340
395
  id: String,
341
396
  product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Product,
342
397
  type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::type_,
343
- ?access_schedule: MetronomeSDK::ScheduleDuration,
398
+ ?access_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule,
344
399
  ?applicable_contract_ids: ::Array[String],
345
400
  ?applicable_product_ids: ::Array[String],
346
401
  ?applicable_product_tags: ::Array[String],
@@ -350,7 +405,7 @@ module MetronomeSDK
350
405
  ?custom_fields: ::Hash[Symbol, String],
351
406
  ?description: String,
352
407
  ?invoice_contract: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceContract,
353
- ?invoice_schedule: MetronomeSDK::SchedulePointInTime,
408
+ ?invoice_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule,
354
409
  ?ledger: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::ledger],
355
410
  ?name: String,
356
411
  ?netsuite_sales_order_id: String,
@@ -358,9 +413,36 @@ module MetronomeSDK
358
413
  ?rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::rate_type,
359
414
  ?rolled_over_from: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::RolledOverFrom,
360
415
  ?rollover_fraction: Float,
361
- ?salesforce_opportunity_id: String
416
+ ?salesforce_opportunity_id: String,
417
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Specifier]
362
418
  ) -> void
363
419
 
420
+ def to_hash: -> {
421
+ id: String,
422
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Product,
423
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::type_,
424
+ access_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule,
425
+ applicable_contract_ids: ::Array[String],
426
+ applicable_product_ids: ::Array[String],
427
+ applicable_product_tags: ::Array[String],
428
+ archived_at: Time,
429
+ balance: Float,
430
+ contract: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Contract,
431
+ custom_fields: ::Hash[Symbol, String],
432
+ description: String,
433
+ invoice_contract: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceContract,
434
+ invoice_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule,
435
+ ledger: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::ledger],
436
+ name: String,
437
+ netsuite_sales_order_id: String,
438
+ priority: Float,
439
+ rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::rate_type,
440
+ rolled_over_from: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::RolledOverFrom,
441
+ rollover_fraction: Float,
442
+ salesforce_opportunity_id: String,
443
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Specifier]
444
+ }
445
+
364
446
  type product = { id: String, name: String }
365
447
 
366
448
  class Product < MetronomeSDK::Internal::Type::BaseModel
@@ -369,6 +451,8 @@ module MetronomeSDK
369
451
  attr_accessor name: String
370
452
 
371
453
  def initialize: (id: String, name: String) -> void
454
+
455
+ def to_hash: -> { id: String, name: String }
372
456
  end
373
457
 
374
458
  type type_ = :PREPAID | :POSTPAID
@@ -382,12 +466,84 @@ module MetronomeSDK
382
466
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::type_]
383
467
  end
384
468
 
469
+ type access_schedule =
470
+ {
471
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::ScheduleItem],
472
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::CreditType
473
+ }
474
+
475
+ class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
476
+ attr_accessor schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::ScheduleItem]
477
+
478
+ attr_reader credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::CreditType?
479
+
480
+ def credit_type=: (
481
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::CreditType
482
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::CreditType
483
+
484
+ def initialize: (
485
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::ScheduleItem],
486
+ ?credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::CreditType
487
+ ) -> void
488
+
489
+ def to_hash: -> {
490
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::ScheduleItem],
491
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::AccessSchedule::CreditType
492
+ }
493
+
494
+ type schedule_item =
495
+ {
496
+ id: String,
497
+ amount: Float,
498
+ ending_before: Time,
499
+ starting_at: Time
500
+ }
501
+
502
+ class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
503
+ attr_accessor id: String
504
+
505
+ attr_accessor amount: Float
506
+
507
+ attr_accessor ending_before: Time
508
+
509
+ attr_accessor starting_at: Time
510
+
511
+ def initialize: (
512
+ id: String,
513
+ amount: Float,
514
+ ending_before: Time,
515
+ starting_at: Time
516
+ ) -> void
517
+
518
+ def to_hash: -> {
519
+ id: String,
520
+ amount: Float,
521
+ ending_before: Time,
522
+ starting_at: Time
523
+ }
524
+ end
525
+
526
+ type credit_type = { id: String, name: String }
527
+
528
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
529
+ attr_accessor id: String
530
+
531
+ attr_accessor name: String
532
+
533
+ def initialize: (id: String, name: String) -> void
534
+
535
+ def to_hash: -> { id: String, name: String }
536
+ end
537
+ end
538
+
385
539
  type contract = { id: String }
386
540
 
387
541
  class Contract < MetronomeSDK::Internal::Type::BaseModel
388
542
  attr_accessor id: String
389
543
 
390
544
  def initialize: (id: String) -> void
545
+
546
+ def to_hash: -> { id: String }
391
547
  end
392
548
 
393
549
  type invoice_contract = { id: String }
@@ -396,50 +552,143 @@ module MetronomeSDK
396
552
  attr_accessor id: String
397
553
 
398
554
  def initialize: (id: String) -> void
555
+
556
+ def to_hash: -> { id: String }
557
+ end
558
+
559
+ type invoice_schedule =
560
+ {
561
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::CreditType,
562
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::ScheduleItem]
563
+ }
564
+
565
+ class InvoiceSchedule < MetronomeSDK::Internal::Type::BaseModel
566
+ attr_reader credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::CreditType?
567
+
568
+ def credit_type=: (
569
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::CreditType
570
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::CreditType
571
+
572
+ attr_reader schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::ScheduleItem]?
573
+
574
+ def schedule_items=: (
575
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::ScheduleItem]
576
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::ScheduleItem]
577
+
578
+ def initialize: (
579
+ ?credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::CreditType,
580
+ ?schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::ScheduleItem]
581
+ ) -> void
582
+
583
+ def to_hash: -> {
584
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::CreditType,
585
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::InvoiceSchedule::ScheduleItem]
586
+ }
587
+
588
+ type credit_type = { id: String, name: String }
589
+
590
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
591
+ attr_accessor id: String
592
+
593
+ attr_accessor name: String
594
+
595
+ def initialize: (id: String, name: String) -> void
596
+
597
+ def to_hash: -> { id: String, name: String }
598
+ end
599
+
600
+ type schedule_item =
601
+ {
602
+ id: String,
603
+ amount: Float,
604
+ invoice_id: String,
605
+ quantity: Float,
606
+ timestamp: Time,
607
+ unit_price: Float
608
+ }
609
+
610
+ class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
611
+ attr_accessor id: String
612
+
613
+ attr_accessor amount: Float
614
+
615
+ attr_accessor invoice_id: String
616
+
617
+ attr_accessor quantity: Float
618
+
619
+ attr_accessor timestamp: Time
620
+
621
+ attr_accessor unit_price: Float
622
+
623
+ def initialize: (
624
+ id: String,
625
+ amount: Float,
626
+ invoice_id: String,
627
+ quantity: Float,
628
+ timestamp: Time,
629
+ unit_price: Float
630
+ ) -> void
631
+
632
+ def to_hash: -> {
633
+ id: String,
634
+ amount: Float,
635
+ invoice_id: String,
636
+ quantity: Float,
637
+ timestamp: Time,
638
+ unit_price: Float
639
+ }
640
+ end
399
641
  end
400
642
 
401
643
  type ledger =
402
- MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitSegmentStartLedgerEntry
403
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitAutomatedInvoiceDeductionLedgerEntry
404
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitRolloverLedgerEntry
405
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitExpirationLedgerEntry
406
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCanceledLedgerEntry
407
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCreditedLedgerEntry
408
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitInitialBalanceLedgerEntry
409
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitAutomatedInvoiceDeductionLedgerEntry
410
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitRolloverLedgerEntry
411
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitTrueupLedgerEntry
412
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitManualLedgerEntry
413
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitManualLedgerEntry
414
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitExpirationLedgerEntry
644
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember0
645
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember1
646
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember2
647
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember3
648
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember4
649
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember5
650
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember6
651
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember7
652
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember8
653
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember9
654
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember10
655
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember11
656
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember12
415
657
 
416
658
  module Ledger
417
659
  extend MetronomeSDK::Internal::Type::Union
418
660
 
419
- type prepaid_commit_segment_start_ledger_entry =
661
+ type union_member0 =
420
662
  {
421
663
  amount: Float,
422
664
  segment_id: String,
423
665
  timestamp: Time,
424
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitSegmentStartLedgerEntry::type_
666
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember0::type_
425
667
  }
426
668
 
427
- class PrepaidCommitSegmentStartLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
669
+ class UnionMember0 < MetronomeSDK::Internal::Type::BaseModel
428
670
  attr_accessor amount: Float
429
671
 
430
672
  attr_accessor segment_id: String
431
673
 
432
674
  attr_accessor timestamp: Time
433
675
 
434
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitSegmentStartLedgerEntry::type_
676
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember0::type_
435
677
 
436
678
  def initialize: (
437
679
  amount: Float,
438
680
  segment_id: String,
439
681
  timestamp: Time,
440
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitSegmentStartLedgerEntry::type_
682
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember0::type_
441
683
  ) -> void
442
684
 
685
+ def to_hash: -> {
686
+ amount: Float,
687
+ segment_id: String,
688
+ timestamp: Time,
689
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember0::type_
690
+ }
691
+
443
692
  type type_ = :PREPAID_COMMIT_SEGMENT_START
444
693
 
445
694
  module Type
@@ -447,20 +696,20 @@ module MetronomeSDK
447
696
 
448
697
  PREPAID_COMMIT_SEGMENT_START: :PREPAID_COMMIT_SEGMENT_START
449
698
 
450
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitSegmentStartLedgerEntry::type_]
699
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember0::type_]
451
700
  end
452
701
  end
453
702
 
454
- type prepaid_commit_automated_invoice_deduction_ledger_entry =
703
+ type union_member1 =
455
704
  {
456
705
  amount: Float,
457
706
  invoice_id: String,
458
707
  segment_id: String,
459
708
  timestamp: Time,
460
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitAutomatedInvoiceDeductionLedgerEntry::type_
709
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember1::type_
461
710
  }
462
711
 
463
- class PrepaidCommitAutomatedInvoiceDeductionLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
712
+ class UnionMember1 < MetronomeSDK::Internal::Type::BaseModel
464
713
  attr_accessor amount: Float
465
714
 
466
715
  attr_accessor invoice_id: String
@@ -469,16 +718,24 @@ module MetronomeSDK
469
718
 
470
719
  attr_accessor timestamp: Time
471
720
 
472
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitAutomatedInvoiceDeductionLedgerEntry::type_
721
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember1::type_
473
722
 
474
723
  def initialize: (
475
724
  amount: Float,
476
725
  invoice_id: String,
477
726
  segment_id: String,
478
727
  timestamp: Time,
479
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitAutomatedInvoiceDeductionLedgerEntry::type_
728
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember1::type_
480
729
  ) -> void
481
730
 
731
+ def to_hash: -> {
732
+ amount: Float,
733
+ invoice_id: String,
734
+ segment_id: String,
735
+ timestamp: Time,
736
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember1::type_
737
+ }
738
+
482
739
  type type_ = :PREPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION
483
740
 
484
741
  module Type
@@ -486,20 +743,20 @@ module MetronomeSDK
486
743
 
487
744
  PREPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION: :PREPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION
488
745
 
489
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitAutomatedInvoiceDeductionLedgerEntry::type_]
746
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember1::type_]
490
747
  end
491
748
  end
492
749
 
493
- type prepaid_commit_rollover_ledger_entry =
750
+ type union_member2 =
494
751
  {
495
752
  amount: Float,
496
753
  new_contract_id: String,
497
754
  segment_id: String,
498
755
  timestamp: Time,
499
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitRolloverLedgerEntry::type_
756
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember2::type_
500
757
  }
501
758
 
502
- class PrepaidCommitRolloverLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
759
+ class UnionMember2 < MetronomeSDK::Internal::Type::BaseModel
503
760
  attr_accessor amount: Float
504
761
 
505
762
  attr_accessor new_contract_id: String
@@ -508,16 +765,24 @@ module MetronomeSDK
508
765
 
509
766
  attr_accessor timestamp: Time
510
767
 
511
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitRolloverLedgerEntry::type_
768
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember2::type_
512
769
 
513
770
  def initialize: (
514
771
  amount: Float,
515
772
  new_contract_id: String,
516
773
  segment_id: String,
517
774
  timestamp: Time,
518
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitRolloverLedgerEntry::type_
775
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember2::type_
519
776
  ) -> void
520
777
 
778
+ def to_hash: -> {
779
+ amount: Float,
780
+ new_contract_id: String,
781
+ segment_id: String,
782
+ timestamp: Time,
783
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember2::type_
784
+ }
785
+
521
786
  type type_ = :PREPAID_COMMIT_ROLLOVER
522
787
 
523
788
  module Type
@@ -525,34 +790,41 @@ module MetronomeSDK
525
790
 
526
791
  PREPAID_COMMIT_ROLLOVER: :PREPAID_COMMIT_ROLLOVER
527
792
 
528
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitRolloverLedgerEntry::type_]
793
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember2::type_]
529
794
  end
530
795
  end
531
796
 
532
- type prepaid_commit_expiration_ledger_entry =
797
+ type union_member3 =
533
798
  {
534
799
  amount: Float,
535
800
  segment_id: String,
536
801
  timestamp: Time,
537
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitExpirationLedgerEntry::type_
802
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember3::type_
538
803
  }
539
804
 
540
- class PrepaidCommitExpirationLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
805
+ class UnionMember3 < MetronomeSDK::Internal::Type::BaseModel
541
806
  attr_accessor amount: Float
542
807
 
543
808
  attr_accessor segment_id: String
544
809
 
545
810
  attr_accessor timestamp: Time
546
811
 
547
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitExpirationLedgerEntry::type_
812
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember3::type_
548
813
 
549
814
  def initialize: (
550
815
  amount: Float,
551
816
  segment_id: String,
552
817
  timestamp: Time,
553
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitExpirationLedgerEntry::type_
818
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember3::type_
554
819
  ) -> void
555
820
 
821
+ def to_hash: -> {
822
+ amount: Float,
823
+ segment_id: String,
824
+ timestamp: Time,
825
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember3::type_
826
+ }
827
+
556
828
  type type_ = :PREPAID_COMMIT_EXPIRATION
557
829
 
558
830
  module Type
@@ -560,20 +832,20 @@ module MetronomeSDK
560
832
 
561
833
  PREPAID_COMMIT_EXPIRATION: :PREPAID_COMMIT_EXPIRATION
562
834
 
563
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitExpirationLedgerEntry::type_]
835
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember3::type_]
564
836
  end
565
837
  end
566
838
 
567
- type prepaid_commit_canceled_ledger_entry =
839
+ type union_member4 =
568
840
  {
569
841
  amount: Float,
570
842
  invoice_id: String,
571
843
  segment_id: String,
572
844
  timestamp: Time,
573
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCanceledLedgerEntry::type_
845
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember4::type_
574
846
  }
575
847
 
576
- class PrepaidCommitCanceledLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
848
+ class UnionMember4 < MetronomeSDK::Internal::Type::BaseModel
577
849
  attr_accessor amount: Float
578
850
 
579
851
  attr_accessor invoice_id: String
@@ -582,16 +854,24 @@ module MetronomeSDK
582
854
 
583
855
  attr_accessor timestamp: Time
584
856
 
585
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCanceledLedgerEntry::type_
857
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember4::type_
586
858
 
587
859
  def initialize: (
588
860
  amount: Float,
589
861
  invoice_id: String,
590
862
  segment_id: String,
591
863
  timestamp: Time,
592
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCanceledLedgerEntry::type_
864
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember4::type_
593
865
  ) -> void
594
866
 
867
+ def to_hash: -> {
868
+ amount: Float,
869
+ invoice_id: String,
870
+ segment_id: String,
871
+ timestamp: Time,
872
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember4::type_
873
+ }
874
+
595
875
  type type_ = :PREPAID_COMMIT_CANCELED
596
876
 
597
877
  module Type
@@ -599,20 +879,20 @@ module MetronomeSDK
599
879
 
600
880
  PREPAID_COMMIT_CANCELED: :PREPAID_COMMIT_CANCELED
601
881
 
602
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCanceledLedgerEntry::type_]
882
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember4::type_]
603
883
  end
604
884
  end
605
885
 
606
- type prepaid_commit_credited_ledger_entry =
886
+ type union_member5 =
607
887
  {
608
888
  amount: Float,
609
889
  invoice_id: String,
610
890
  segment_id: String,
611
891
  timestamp: Time,
612
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCreditedLedgerEntry::type_
892
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember5::type_
613
893
  }
614
894
 
615
- class PrepaidCommitCreditedLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
895
+ class UnionMember5 < MetronomeSDK::Internal::Type::BaseModel
616
896
  attr_accessor amount: Float
617
897
 
618
898
  attr_accessor invoice_id: String
@@ -621,16 +901,24 @@ module MetronomeSDK
621
901
 
622
902
  attr_accessor timestamp: Time
623
903
 
624
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCreditedLedgerEntry::type_
904
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember5::type_
625
905
 
626
906
  def initialize: (
627
907
  amount: Float,
628
908
  invoice_id: String,
629
909
  segment_id: String,
630
910
  timestamp: Time,
631
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCreditedLedgerEntry::type_
911
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember5::type_
632
912
  ) -> void
633
913
 
914
+ def to_hash: -> {
915
+ amount: Float,
916
+ invoice_id: String,
917
+ segment_id: String,
918
+ timestamp: Time,
919
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember5::type_
920
+ }
921
+
634
922
  type type_ = :PREPAID_COMMIT_CREDITED
635
923
 
636
924
  module Type
@@ -638,30 +926,36 @@ module MetronomeSDK
638
926
 
639
927
  PREPAID_COMMIT_CREDITED: :PREPAID_COMMIT_CREDITED
640
928
 
641
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitCreditedLedgerEntry::type_]
929
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember5::type_]
642
930
  end
643
931
  end
644
932
 
645
- type postpaid_commit_initial_balance_ledger_entry =
933
+ type union_member6 =
646
934
  {
647
935
  amount: Float,
648
936
  timestamp: Time,
649
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitInitialBalanceLedgerEntry::type_
937
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember6::type_
650
938
  }
651
939
 
652
- class PostpaidCommitInitialBalanceLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
940
+ class UnionMember6 < MetronomeSDK::Internal::Type::BaseModel
653
941
  attr_accessor amount: Float
654
942
 
655
943
  attr_accessor timestamp: Time
656
944
 
657
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitInitialBalanceLedgerEntry::type_
945
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember6::type_
658
946
 
659
947
  def initialize: (
660
948
  amount: Float,
661
949
  timestamp: Time,
662
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitInitialBalanceLedgerEntry::type_
950
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember6::type_
663
951
  ) -> void
664
952
 
953
+ def to_hash: -> {
954
+ amount: Float,
955
+ timestamp: Time,
956
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember6::type_
957
+ }
958
+
665
959
  type type_ = :POSTPAID_COMMIT_INITIAL_BALANCE
666
960
 
667
961
  module Type
@@ -669,20 +963,20 @@ module MetronomeSDK
669
963
 
670
964
  POSTPAID_COMMIT_INITIAL_BALANCE: :POSTPAID_COMMIT_INITIAL_BALANCE
671
965
 
672
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitInitialBalanceLedgerEntry::type_]
966
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember6::type_]
673
967
  end
674
968
  end
675
969
 
676
- type postpaid_commit_automated_invoice_deduction_ledger_entry =
970
+ type union_member7 =
677
971
  {
678
972
  amount: Float,
679
973
  invoice_id: String,
680
974
  segment_id: String,
681
975
  timestamp: Time,
682
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitAutomatedInvoiceDeductionLedgerEntry::type_
976
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember7::type_
683
977
  }
684
978
 
685
- class PostpaidCommitAutomatedInvoiceDeductionLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
979
+ class UnionMember7 < MetronomeSDK::Internal::Type::BaseModel
686
980
  attr_accessor amount: Float
687
981
 
688
982
  attr_accessor invoice_id: String
@@ -691,16 +985,24 @@ module MetronomeSDK
691
985
 
692
986
  attr_accessor timestamp: Time
693
987
 
694
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitAutomatedInvoiceDeductionLedgerEntry::type_
988
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember7::type_
695
989
 
696
990
  def initialize: (
697
991
  amount: Float,
698
992
  invoice_id: String,
699
993
  segment_id: String,
700
994
  timestamp: Time,
701
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitAutomatedInvoiceDeductionLedgerEntry::type_
995
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember7::type_
702
996
  ) -> void
703
997
 
998
+ def to_hash: -> {
999
+ amount: Float,
1000
+ invoice_id: String,
1001
+ segment_id: String,
1002
+ timestamp: Time,
1003
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember7::type_
1004
+ }
1005
+
704
1006
  type type_ = :POSTPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION
705
1007
 
706
1008
  module Type
@@ -708,20 +1010,20 @@ module MetronomeSDK
708
1010
 
709
1011
  POSTPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION: :POSTPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION
710
1012
 
711
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitAutomatedInvoiceDeductionLedgerEntry::type_]
1013
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember7::type_]
712
1014
  end
713
1015
  end
714
1016
 
715
- type postpaid_commit_rollover_ledger_entry =
1017
+ type union_member8 =
716
1018
  {
717
1019
  amount: Float,
718
1020
  new_contract_id: String,
719
1021
  segment_id: String,
720
1022
  timestamp: Time,
721
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitRolloverLedgerEntry::type_
1023
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember8::type_
722
1024
  }
723
1025
 
724
- class PostpaidCommitRolloverLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
1026
+ class UnionMember8 < MetronomeSDK::Internal::Type::BaseModel
725
1027
  attr_accessor amount: Float
726
1028
 
727
1029
  attr_accessor new_contract_id: String
@@ -730,16 +1032,24 @@ module MetronomeSDK
730
1032
 
731
1033
  attr_accessor timestamp: Time
732
1034
 
733
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitRolloverLedgerEntry::type_
1035
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember8::type_
734
1036
 
735
1037
  def initialize: (
736
1038
  amount: Float,
737
1039
  new_contract_id: String,
738
1040
  segment_id: String,
739
1041
  timestamp: Time,
740
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitRolloverLedgerEntry::type_
1042
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember8::type_
741
1043
  ) -> void
742
1044
 
1045
+ def to_hash: -> {
1046
+ amount: Float,
1047
+ new_contract_id: String,
1048
+ segment_id: String,
1049
+ timestamp: Time,
1050
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember8::type_
1051
+ }
1052
+
743
1053
  type type_ = :POSTPAID_COMMIT_ROLLOVER
744
1054
 
745
1055
  module Type
@@ -747,34 +1057,41 @@ module MetronomeSDK
747
1057
 
748
1058
  POSTPAID_COMMIT_ROLLOVER: :POSTPAID_COMMIT_ROLLOVER
749
1059
 
750
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitRolloverLedgerEntry::type_]
1060
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember8::type_]
751
1061
  end
752
1062
  end
753
1063
 
754
- type postpaid_commit_trueup_ledger_entry =
1064
+ type union_member9 =
755
1065
  {
756
1066
  amount: Float,
757
1067
  invoice_id: String,
758
1068
  timestamp: Time,
759
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitTrueupLedgerEntry::type_
1069
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember9::type_
760
1070
  }
761
1071
 
762
- class PostpaidCommitTrueupLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
1072
+ class UnionMember9 < MetronomeSDK::Internal::Type::BaseModel
763
1073
  attr_accessor amount: Float
764
1074
 
765
1075
  attr_accessor invoice_id: String
766
1076
 
767
1077
  attr_accessor timestamp: Time
768
1078
 
769
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitTrueupLedgerEntry::type_
1079
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember9::type_
770
1080
 
771
1081
  def initialize: (
772
1082
  amount: Float,
773
1083
  invoice_id: String,
774
1084
  timestamp: Time,
775
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitTrueupLedgerEntry::type_
1085
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember9::type_
776
1086
  ) -> void
777
1087
 
1088
+ def to_hash: -> {
1089
+ amount: Float,
1090
+ invoice_id: String,
1091
+ timestamp: Time,
1092
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember9::type_
1093
+ }
1094
+
778
1095
  type type_ = :POSTPAID_COMMIT_TRUEUP
779
1096
 
780
1097
  module Type
@@ -782,34 +1099,41 @@ module MetronomeSDK
782
1099
 
783
1100
  POSTPAID_COMMIT_TRUEUP: :POSTPAID_COMMIT_TRUEUP
784
1101
 
785
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitTrueupLedgerEntry::type_]
1102
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember9::type_]
786
1103
  end
787
1104
  end
788
1105
 
789
- type prepaid_commit_manual_ledger_entry =
1106
+ type union_member10 =
790
1107
  {
791
1108
  amount: Float,
792
1109
  reason: String,
793
1110
  timestamp: Time,
794
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitManualLedgerEntry::type_
1111
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember10::type_
795
1112
  }
796
1113
 
797
- class PrepaidCommitManualLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
1114
+ class UnionMember10 < MetronomeSDK::Internal::Type::BaseModel
798
1115
  attr_accessor amount: Float
799
1116
 
800
1117
  attr_accessor reason: String
801
1118
 
802
1119
  attr_accessor timestamp: Time
803
1120
 
804
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitManualLedgerEntry::type_
1121
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember10::type_
805
1122
 
806
1123
  def initialize: (
807
1124
  amount: Float,
808
1125
  reason: String,
809
1126
  timestamp: Time,
810
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitManualLedgerEntry::type_
1127
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember10::type_
811
1128
  ) -> void
812
1129
 
1130
+ def to_hash: -> {
1131
+ amount: Float,
1132
+ reason: String,
1133
+ timestamp: Time,
1134
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember10::type_
1135
+ }
1136
+
813
1137
  type type_ = :PREPAID_COMMIT_MANUAL
814
1138
 
815
1139
  module Type
@@ -817,34 +1141,41 @@ module MetronomeSDK
817
1141
 
818
1142
  PREPAID_COMMIT_MANUAL: :PREPAID_COMMIT_MANUAL
819
1143
 
820
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PrepaidCommitManualLedgerEntry::type_]
1144
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember10::type_]
821
1145
  end
822
1146
  end
823
1147
 
824
- type postpaid_commit_manual_ledger_entry =
1148
+ type union_member11 =
825
1149
  {
826
1150
  amount: Float,
827
1151
  reason: String,
828
1152
  timestamp: Time,
829
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitManualLedgerEntry::type_
1153
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember11::type_
830
1154
  }
831
1155
 
832
- class PostpaidCommitManualLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
1156
+ class UnionMember11 < MetronomeSDK::Internal::Type::BaseModel
833
1157
  attr_accessor amount: Float
834
1158
 
835
1159
  attr_accessor reason: String
836
1160
 
837
1161
  attr_accessor timestamp: Time
838
1162
 
839
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitManualLedgerEntry::type_
1163
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember11::type_
840
1164
 
841
1165
  def initialize: (
842
1166
  amount: Float,
843
1167
  reason: String,
844
1168
  timestamp: Time,
845
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitManualLedgerEntry::type_
1169
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember11::type_
846
1170
  ) -> void
847
1171
 
1172
+ def to_hash: -> {
1173
+ amount: Float,
1174
+ reason: String,
1175
+ timestamp: Time,
1176
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember11::type_
1177
+ }
1178
+
848
1179
  type type_ = :POSTPAID_COMMIT_MANUAL
849
1180
 
850
1181
  module Type
@@ -852,30 +1183,36 @@ module MetronomeSDK
852
1183
 
853
1184
  POSTPAID_COMMIT_MANUAL: :POSTPAID_COMMIT_MANUAL
854
1185
 
855
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitManualLedgerEntry::type_]
1186
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember11::type_]
856
1187
  end
857
1188
  end
858
1189
 
859
- type postpaid_commit_expiration_ledger_entry =
1190
+ type union_member12 =
860
1191
  {
861
1192
  amount: Float,
862
1193
  timestamp: Time,
863
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitExpirationLedgerEntry::type_
1194
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember12::type_
864
1195
  }
865
1196
 
866
- class PostpaidCommitExpirationLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
1197
+ class UnionMember12 < MetronomeSDK::Internal::Type::BaseModel
867
1198
  attr_accessor amount: Float
868
1199
 
869
1200
  attr_accessor timestamp: Time
870
1201
 
871
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitExpirationLedgerEntry::type_
1202
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember12::type_
872
1203
 
873
1204
  def initialize: (
874
1205
  amount: Float,
875
1206
  timestamp: Time,
876
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitExpirationLedgerEntry::type_
1207
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember12::type_
877
1208
  ) -> void
878
1209
 
1210
+ def to_hash: -> {
1211
+ amount: Float,
1212
+ timestamp: Time,
1213
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember12::type_
1214
+ }
1215
+
879
1216
  type type_ = :POSTPAID_COMMIT_EXPIRATION
880
1217
 
881
1218
  module Type
@@ -883,7 +1220,7 @@ module MetronomeSDK
883
1220
 
884
1221
  POSTPAID_COMMIT_EXPIRATION: :POSTPAID_COMMIT_EXPIRATION
885
1222
 
886
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::PostpaidCommitExpirationLedgerEntry::type_]
1223
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Commit::Ledger::UnionMember12::type_]
887
1224
  end
888
1225
  end
889
1226
 
@@ -909,6 +1246,52 @@ module MetronomeSDK
909
1246
  attr_accessor contract_id: String
910
1247
 
911
1248
  def initialize: (commit_id: String, contract_id: String) -> void
1249
+
1250
+ def to_hash: -> { commit_id: String, contract_id: String }
1251
+ end
1252
+
1253
+ type specifier =
1254
+ {
1255
+ presentation_group_values: ::Hash[Symbol, String],
1256
+ pricing_group_values: ::Hash[Symbol, String],
1257
+ product_id: String,
1258
+ product_tags: ::Array[String]
1259
+ }
1260
+
1261
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
1262
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
1263
+
1264
+ def presentation_group_values=: (
1265
+ ::Hash[Symbol, String]
1266
+ ) -> ::Hash[Symbol, String]
1267
+
1268
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
1269
+
1270
+ def pricing_group_values=: (
1271
+ ::Hash[Symbol, String]
1272
+ ) -> ::Hash[Symbol, String]
1273
+
1274
+ attr_reader product_id: String?
1275
+
1276
+ def product_id=: (String) -> String
1277
+
1278
+ attr_reader product_tags: ::Array[String]?
1279
+
1280
+ def product_tags=: (::Array[String]) -> ::Array[String]
1281
+
1282
+ def initialize: (
1283
+ ?presentation_group_values: ::Hash[Symbol, String],
1284
+ ?pricing_group_values: ::Hash[Symbol, String],
1285
+ ?product_id: String,
1286
+ ?product_tags: ::Array[String]
1287
+ ) -> void
1288
+
1289
+ def to_hash: -> {
1290
+ presentation_group_values: ::Hash[Symbol, String],
1291
+ pricing_group_values: ::Hash[Symbol, String],
1292
+ product_id: String,
1293
+ product_tags: ::Array[String]
1294
+ }
912
1295
  end
913
1296
  end
914
1297
 
@@ -1012,18 +1395,42 @@ module MetronomeSDK
1012
1395
  ?type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::type_
1013
1396
  ) -> void
1014
1397
 
1015
- type override_specifier =
1016
- {
1017
- commit_ids: ::Array[String],
1018
- presentation_group_values: ::Hash[Symbol, String?],
1019
- pricing_group_values: ::Hash[Symbol, String],
1020
- product_id: String,
1021
- product_tags: ::Array[String],
1022
- recurring_commit_ids: ::Array[String],
1398
+ def to_hash: -> {
1399
+ id: String,
1400
+ starting_at: Time,
1401
+ applicable_product_tags: ::Array[String],
1402
+ ending_before: Time,
1403
+ entitled: bool,
1404
+ is_commit_specific: bool,
1405
+ multiplier: Float,
1406
+ override_specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideSpecifier],
1407
+ override_tiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideTier],
1408
+ overwrite_rate: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate,
1409
+ priority: Float,
1410
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::Product,
1411
+ target: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::target,
1412
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::type_
1413
+ }
1414
+
1415
+ type override_specifier =
1416
+ {
1417
+ billing_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency,
1418
+ commit_ids: ::Array[String],
1419
+ presentation_group_values: ::Hash[Symbol, String?],
1420
+ pricing_group_values: ::Hash[Symbol, String],
1421
+ product_id: String,
1422
+ product_tags: ::Array[String],
1423
+ recurring_commit_ids: ::Array[String],
1023
1424
  recurring_credit_ids: ::Array[String]
1024
1425
  }
1025
1426
 
1026
1427
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
1428
+ attr_reader billing_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency?
1429
+
1430
+ def billing_frequency=: (
1431
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency
1432
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency
1433
+
1027
1434
  attr_reader commit_ids: ::Array[String]?
1028
1435
 
1029
1436
  def commit_ids=: (::Array[String]) -> ::Array[String]
@@ -1057,6 +1464,7 @@ module MetronomeSDK
1057
1464
  def recurring_credit_ids=: (::Array[String]) -> ::Array[String]
1058
1465
 
1059
1466
  def initialize: (
1467
+ ?billing_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency,
1060
1468
  ?commit_ids: ::Array[String],
1061
1469
  ?presentation_group_values: ::Hash[Symbol, String?],
1062
1470
  ?pricing_group_values: ::Hash[Symbol, String],
@@ -1065,6 +1473,30 @@ module MetronomeSDK
1065
1473
  ?recurring_commit_ids: ::Array[String],
1066
1474
  ?recurring_credit_ids: ::Array[String]
1067
1475
  ) -> void
1476
+
1477
+ def to_hash: -> {
1478
+ billing_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency,
1479
+ commit_ids: ::Array[String],
1480
+ presentation_group_values: ::Hash[Symbol, String?],
1481
+ pricing_group_values: ::Hash[Symbol, String],
1482
+ product_id: String,
1483
+ product_tags: ::Array[String],
1484
+ recurring_commit_ids: ::Array[String],
1485
+ recurring_credit_ids: ::Array[String]
1486
+ }
1487
+
1488
+ type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
1489
+
1490
+ module BillingFrequency
1491
+ extend MetronomeSDK::Internal::Type::Enum
1492
+
1493
+ MONTHLY: :MONTHLY
1494
+ QUARTERLY: :QUARTERLY
1495
+ ANNUAL: :ANNUAL
1496
+ WEEKLY: :WEEKLY
1497
+
1498
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency]
1499
+ end
1068
1500
  end
1069
1501
 
1070
1502
  type override_tier = { multiplier: Float, size: Float }
@@ -1077,27 +1509,29 @@ module MetronomeSDK
1077
1509
  def size=: (Float) -> Float
1078
1510
 
1079
1511
  def initialize: (multiplier: Float, ?size: Float) -> void
1512
+
1513
+ def to_hash: -> { multiplier: Float, size: Float }
1080
1514
  end
1081
1515
 
1082
1516
  type overwrite_rate =
1083
1517
  {
1084
1518
  rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::rate_type,
1085
- credit_type: MetronomeSDK::CreditTypeData,
1519
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::CreditType,
1086
1520
  custom_rate: ::Hash[Symbol, top],
1087
1521
  is_prorated: bool,
1088
1522
  price: Float,
1089
1523
  quantity: Float,
1090
- tiers: ::Array[MetronomeSDK::Tier]
1524
+ tiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::Tier]
1091
1525
  }
1092
1526
 
1093
1527
  class OverwriteRate < MetronomeSDK::Internal::Type::BaseModel
1094
1528
  attr_accessor rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::rate_type
1095
1529
 
1096
- attr_reader credit_type: MetronomeSDK::CreditTypeData?
1530
+ attr_reader credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::CreditType?
1097
1531
 
1098
1532
  def credit_type=: (
1099
- MetronomeSDK::CreditTypeData
1100
- ) -> MetronomeSDK::CreditTypeData
1533
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::CreditType
1534
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::CreditType
1101
1535
 
1102
1536
  attr_reader custom_rate: ::Hash[Symbol, top]?
1103
1537
 
@@ -1115,22 +1549,32 @@ module MetronomeSDK
1115
1549
 
1116
1550
  def quantity=: (Float) -> Float
1117
1551
 
1118
- attr_reader tiers: ::Array[MetronomeSDK::Tier]?
1552
+ attr_reader tiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::Tier]?
1119
1553
 
1120
1554
  def tiers=: (
1121
- ::Array[MetronomeSDK::Tier]
1122
- ) -> ::Array[MetronomeSDK::Tier]
1555
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::Tier]
1556
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::Tier]
1123
1557
 
1124
1558
  def initialize: (
1125
1559
  rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::rate_type,
1126
- ?credit_type: MetronomeSDK::CreditTypeData,
1560
+ ?credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::CreditType,
1127
1561
  ?custom_rate: ::Hash[Symbol, top],
1128
1562
  ?is_prorated: bool,
1129
1563
  ?price: Float,
1130
1564
  ?quantity: Float,
1131
- ?tiers: ::Array[MetronomeSDK::Tier]
1565
+ ?tiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::Tier]
1132
1566
  ) -> void
1133
1567
 
1568
+ def to_hash: -> {
1569
+ rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::rate_type,
1570
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::CreditType,
1571
+ custom_rate: ::Hash[Symbol, top],
1572
+ is_prorated: bool,
1573
+ price: Float,
1574
+ quantity: Float,
1575
+ tiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::Tier]
1576
+ }
1577
+
1134
1578
  type rate_type =
1135
1579
  :FLAT | :PERCENTAGE | :SUBSCRIPTION | :TIERED | :CUSTOM
1136
1580
 
@@ -1145,6 +1589,32 @@ module MetronomeSDK
1145
1589
 
1146
1590
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Override::OverwriteRate::rate_type]
1147
1591
  end
1592
+
1593
+ type credit_type = { id: String, name: String }
1594
+
1595
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
1596
+ attr_accessor id: String
1597
+
1598
+ attr_accessor name: String
1599
+
1600
+ def initialize: (id: String, name: String) -> void
1601
+
1602
+ def to_hash: -> { id: String, name: String }
1603
+ end
1604
+
1605
+ type tier = { price: Float, size: Float }
1606
+
1607
+ class Tier < MetronomeSDK::Internal::Type::BaseModel
1608
+ attr_accessor price: Float
1609
+
1610
+ attr_reader size: Float?
1611
+
1612
+ def size=: (Float) -> Float
1613
+
1614
+ def initialize: (price: Float, ?size: Float) -> void
1615
+
1616
+ def to_hash: -> { price: Float, size: Float }
1617
+ end
1148
1618
  end
1149
1619
 
1150
1620
  type product = { id: String, name: String }
@@ -1155,6 +1625,8 @@ module MetronomeSDK
1155
1625
  attr_accessor name: String
1156
1626
 
1157
1627
  def initialize: (id: String, name: String) -> void
1628
+
1629
+ def to_hash: -> { id: String, name: String }
1158
1630
  end
1159
1631
 
1160
1632
  type target = :COMMIT_RATE | :LIST_RATE
@@ -1181,6 +1653,159 @@ module MetronomeSDK
1181
1653
  end
1182
1654
  end
1183
1655
 
1656
+ type scheduled_charge =
1657
+ {
1658
+ id: String,
1659
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Product,
1660
+ schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule,
1661
+ archived_at: Time,
1662
+ custom_fields: ::Hash[Symbol, String],
1663
+ name: String,
1664
+ netsuite_sales_order_id: String
1665
+ }
1666
+
1667
+ class ScheduledCharge < MetronomeSDK::Internal::Type::BaseModel
1668
+ attr_accessor id: String
1669
+
1670
+ attr_accessor product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Product
1671
+
1672
+ attr_accessor schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule
1673
+
1674
+ attr_reader archived_at: Time?
1675
+
1676
+ def archived_at=: (Time) -> Time
1677
+
1678
+ attr_reader custom_fields: ::Hash[Symbol, String]?
1679
+
1680
+ def custom_fields=: (
1681
+ ::Hash[Symbol, String]
1682
+ ) -> ::Hash[Symbol, String]
1683
+
1684
+ attr_reader name: String?
1685
+
1686
+ def name=: (String) -> String
1687
+
1688
+ attr_reader netsuite_sales_order_id: String?
1689
+
1690
+ def netsuite_sales_order_id=: (String) -> String
1691
+
1692
+ def initialize: (
1693
+ id: String,
1694
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Product,
1695
+ schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule,
1696
+ ?archived_at: Time,
1697
+ ?custom_fields: ::Hash[Symbol, String],
1698
+ ?name: String,
1699
+ ?netsuite_sales_order_id: String
1700
+ ) -> void
1701
+
1702
+ def to_hash: -> {
1703
+ id: String,
1704
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Product,
1705
+ schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule,
1706
+ archived_at: Time,
1707
+ custom_fields: ::Hash[Symbol, String],
1708
+ name: String,
1709
+ netsuite_sales_order_id: String
1710
+ }
1711
+
1712
+ type product = { id: String, name: String }
1713
+
1714
+ class Product < MetronomeSDK::Internal::Type::BaseModel
1715
+ attr_accessor id: String
1716
+
1717
+ attr_accessor name: String
1718
+
1719
+ def initialize: (id: String, name: String) -> void
1720
+
1721
+ def to_hash: -> { id: String, name: String }
1722
+ end
1723
+
1724
+ type schedule =
1725
+ {
1726
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::CreditType,
1727
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::ScheduleItem]
1728
+ }
1729
+
1730
+ class Schedule < MetronomeSDK::Internal::Type::BaseModel
1731
+ attr_reader credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::CreditType?
1732
+
1733
+ def credit_type=: (
1734
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::CreditType
1735
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::CreditType
1736
+
1737
+ attr_reader schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::ScheduleItem]?
1738
+
1739
+ def schedule_items=: (
1740
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::ScheduleItem]
1741
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::ScheduleItem]
1742
+
1743
+ def initialize: (
1744
+ ?credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::CreditType,
1745
+ ?schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::ScheduleItem]
1746
+ ) -> void
1747
+
1748
+ def to_hash: -> {
1749
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::CreditType,
1750
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ScheduledCharge::Schedule::ScheduleItem]
1751
+ }
1752
+
1753
+ type credit_type = { id: String, name: String }
1754
+
1755
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
1756
+ attr_accessor id: String
1757
+
1758
+ attr_accessor name: String
1759
+
1760
+ def initialize: (id: String, name: String) -> void
1761
+
1762
+ def to_hash: -> { id: String, name: String }
1763
+ end
1764
+
1765
+ type schedule_item =
1766
+ {
1767
+ id: String,
1768
+ amount: Float,
1769
+ invoice_id: String,
1770
+ quantity: Float,
1771
+ timestamp: Time,
1772
+ unit_price: Float
1773
+ }
1774
+
1775
+ class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1776
+ attr_accessor id: String
1777
+
1778
+ attr_accessor amount: Float
1779
+
1780
+ attr_accessor invoice_id: String
1781
+
1782
+ attr_accessor quantity: Float
1783
+
1784
+ attr_accessor timestamp: Time
1785
+
1786
+ attr_accessor unit_price: Float
1787
+
1788
+ def initialize: (
1789
+ id: String,
1790
+ amount: Float,
1791
+ invoice_id: String,
1792
+ quantity: Float,
1793
+ timestamp: Time,
1794
+ unit_price: Float
1795
+ ) -> void
1796
+
1797
+ def to_hash: -> {
1798
+ id: String,
1799
+ amount: Float,
1800
+ invoice_id: String,
1801
+ quantity: Float,
1802
+ timestamp: Time,
1803
+ unit_price: Float
1804
+ }
1805
+ end
1806
+ end
1807
+ end
1808
+
1184
1809
  type transition =
1185
1810
  {
1186
1811
  from_contract_id: String,
@@ -1201,6 +1826,12 @@ module MetronomeSDK
1201
1826
  type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Transition::type_
1202
1827
  ) -> void
1203
1828
 
1829
+ def to_hash: -> {
1830
+ from_contract_id: String,
1831
+ to_contract_id: String,
1832
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Transition::type_
1833
+ }
1834
+
1204
1835
  type type_ = :SUPERSEDE | :RENEWAL
1205
1836
 
1206
1837
  module Type
@@ -1238,6 +1869,13 @@ module MetronomeSDK
1238
1869
  starting_at: Time,
1239
1870
  ?ending_before: Time
1240
1871
  ) -> void
1872
+
1873
+ def to_hash: -> {
1874
+ group_key: String,
1875
+ group_values: ::Array[String],
1876
+ starting_at: Time,
1877
+ ending_before: Time
1878
+ }
1241
1879
  end
1242
1880
 
1243
1881
  type usage_statement_schedule =
@@ -1256,6 +1894,11 @@ module MetronomeSDK
1256
1894
  frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::UsageStatementSchedule::frequency
1257
1895
  ) -> void
1258
1896
 
1897
+ def to_hash: -> {
1898
+ billing_anchor_date: Time,
1899
+ frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::UsageStatementSchedule::frequency
1900
+ }
1901
+
1259
1902
  type frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
1260
1903
 
1261
1904
  module Frequency
@@ -1275,7 +1918,7 @@ module MetronomeSDK
1275
1918
  id: String,
1276
1919
  product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Product,
1277
1920
  type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::type_,
1278
- access_schedule: MetronomeSDK::ScheduleDuration,
1921
+ access_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule,
1279
1922
  applicable_contract_ids: ::Array[String],
1280
1923
  applicable_product_ids: ::Array[String],
1281
1924
  applicable_product_tags: ::Array[String],
@@ -1287,7 +1930,8 @@ module MetronomeSDK
1287
1930
  name: String,
1288
1931
  netsuite_sales_order_id: String,
1289
1932
  priority: Float,
1290
- salesforce_opportunity_id: String
1933
+ salesforce_opportunity_id: String,
1934
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Specifier]
1291
1935
  }
1292
1936
 
1293
1937
  class Credit < MetronomeSDK::Internal::Type::BaseModel
@@ -1297,11 +1941,11 @@ module MetronomeSDK
1297
1941
 
1298
1942
  attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::type_
1299
1943
 
1300
- attr_reader access_schedule: MetronomeSDK::ScheduleDuration?
1944
+ attr_reader access_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule?
1301
1945
 
1302
1946
  def access_schedule=: (
1303
- MetronomeSDK::ScheduleDuration
1304
- ) -> MetronomeSDK::ScheduleDuration
1947
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule
1948
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule
1305
1949
 
1306
1950
  attr_reader applicable_contract_ids: ::Array[String]?
1307
1951
 
@@ -1357,11 +2001,17 @@ module MetronomeSDK
1357
2001
 
1358
2002
  def salesforce_opportunity_id=: (String) -> String
1359
2003
 
2004
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Specifier]?
2005
+
2006
+ def specifiers=: (
2007
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Specifier]
2008
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Specifier]
2009
+
1360
2010
  def initialize: (
1361
2011
  id: String,
1362
2012
  product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Product,
1363
2013
  type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::type_,
1364
- ?access_schedule: MetronomeSDK::ScheduleDuration,
2014
+ ?access_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule,
1365
2015
  ?applicable_contract_ids: ::Array[String],
1366
2016
  ?applicable_product_ids: ::Array[String],
1367
2017
  ?applicable_product_tags: ::Array[String],
@@ -1373,9 +2023,30 @@ module MetronomeSDK
1373
2023
  ?name: String,
1374
2024
  ?netsuite_sales_order_id: String,
1375
2025
  ?priority: Float,
1376
- ?salesforce_opportunity_id: String
2026
+ ?salesforce_opportunity_id: String,
2027
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Specifier]
1377
2028
  ) -> void
1378
2029
 
2030
+ def to_hash: -> {
2031
+ id: String,
2032
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Product,
2033
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::type_,
2034
+ access_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule,
2035
+ applicable_contract_ids: ::Array[String],
2036
+ applicable_product_ids: ::Array[String],
2037
+ applicable_product_tags: ::Array[String],
2038
+ balance: Float,
2039
+ contract: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Contract,
2040
+ custom_fields: ::Hash[Symbol, String],
2041
+ description: String,
2042
+ ledger: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::ledger],
2043
+ name: String,
2044
+ netsuite_sales_order_id: String,
2045
+ priority: Float,
2046
+ salesforce_opportunity_id: String,
2047
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Specifier]
2048
+ }
2049
+
1379
2050
  type product = { id: String, name: String }
1380
2051
 
1381
2052
  class Product < MetronomeSDK::Internal::Type::BaseModel
@@ -1384,6 +2055,8 @@ module MetronomeSDK
1384
2055
  attr_accessor name: String
1385
2056
 
1386
2057
  def initialize: (id: String, name: String) -> void
2058
+
2059
+ def to_hash: -> { id: String, name: String }
1387
2060
  end
1388
2061
 
1389
2062
  type type_ = :CREDIT
@@ -1396,49 +2069,128 @@ module MetronomeSDK
1396
2069
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::type_]
1397
2070
  end
1398
2071
 
2072
+ type access_schedule =
2073
+ {
2074
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::ScheduleItem],
2075
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::CreditType
2076
+ }
2077
+
2078
+ class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
2079
+ attr_accessor schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::ScheduleItem]
2080
+
2081
+ attr_reader credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::CreditType?
2082
+
2083
+ def credit_type=: (
2084
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::CreditType
2085
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::CreditType
2086
+
2087
+ def initialize: (
2088
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::ScheduleItem],
2089
+ ?credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::CreditType
2090
+ ) -> void
2091
+
2092
+ def to_hash: -> {
2093
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::ScheduleItem],
2094
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::AccessSchedule::CreditType
2095
+ }
2096
+
2097
+ type schedule_item =
2098
+ {
2099
+ id: String,
2100
+ amount: Float,
2101
+ ending_before: Time,
2102
+ starting_at: Time
2103
+ }
2104
+
2105
+ class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2106
+ attr_accessor id: String
2107
+
2108
+ attr_accessor amount: Float
2109
+
2110
+ attr_accessor ending_before: Time
2111
+
2112
+ attr_accessor starting_at: Time
2113
+
2114
+ def initialize: (
2115
+ id: String,
2116
+ amount: Float,
2117
+ ending_before: Time,
2118
+ starting_at: Time
2119
+ ) -> void
2120
+
2121
+ def to_hash: -> {
2122
+ id: String,
2123
+ amount: Float,
2124
+ ending_before: Time,
2125
+ starting_at: Time
2126
+ }
2127
+ end
2128
+
2129
+ type credit_type = { id: String, name: String }
2130
+
2131
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
2132
+ attr_accessor id: String
2133
+
2134
+ attr_accessor name: String
2135
+
2136
+ def initialize: (id: String, name: String) -> void
2137
+
2138
+ def to_hash: -> { id: String, name: String }
2139
+ end
2140
+ end
2141
+
1399
2142
  type contract = { id: String }
1400
2143
 
1401
2144
  class Contract < MetronomeSDK::Internal::Type::BaseModel
1402
2145
  attr_accessor id: String
1403
2146
 
1404
2147
  def initialize: (id: String) -> void
2148
+
2149
+ def to_hash: -> { id: String }
1405
2150
  end
1406
2151
 
1407
2152
  type ledger =
1408
- MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry
1409
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry
1410
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry
1411
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry
1412
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry
1413
- | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditManualLedgerEntry
2153
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember0
2154
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember1
2155
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember2
2156
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember3
2157
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember4
2158
+ | MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember5
1414
2159
 
1415
2160
  module Ledger
1416
2161
  extend MetronomeSDK::Internal::Type::Union
1417
2162
 
1418
- type credit_segment_start_ledger_entry =
2163
+ type union_member0 =
1419
2164
  {
1420
2165
  amount: Float,
1421
2166
  segment_id: String,
1422
2167
  timestamp: Time,
1423
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::type_
2168
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember0::type_
1424
2169
  }
1425
2170
 
1426
- class CreditSegmentStartLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
2171
+ class UnionMember0 < MetronomeSDK::Internal::Type::BaseModel
1427
2172
  attr_accessor amount: Float
1428
2173
 
1429
2174
  attr_accessor segment_id: String
1430
2175
 
1431
2176
  attr_accessor timestamp: Time
1432
2177
 
1433
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::type_
2178
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember0::type_
1434
2179
 
1435
2180
  def initialize: (
1436
2181
  amount: Float,
1437
2182
  segment_id: String,
1438
2183
  timestamp: Time,
1439
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::type_
2184
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember0::type_
1440
2185
  ) -> void
1441
2186
 
2187
+ def to_hash: -> {
2188
+ amount: Float,
2189
+ segment_id: String,
2190
+ timestamp: Time,
2191
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember0::type_
2192
+ }
2193
+
1442
2194
  type type_ = :CREDIT_SEGMENT_START
1443
2195
 
1444
2196
  module Type
@@ -1446,20 +2198,20 @@ module MetronomeSDK
1446
2198
 
1447
2199
  CREDIT_SEGMENT_START: :CREDIT_SEGMENT_START
1448
2200
 
1449
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::type_]
2201
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember0::type_]
1450
2202
  end
1451
2203
  end
1452
2204
 
1453
- type credit_automated_invoice_deduction_ledger_entry =
2205
+ type union_member1 =
1454
2206
  {
1455
2207
  amount: Float,
1456
2208
  invoice_id: String,
1457
2209
  segment_id: String,
1458
2210
  timestamp: Time,
1459
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry::type_
2211
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember1::type_
1460
2212
  }
1461
2213
 
1462
- class CreditAutomatedInvoiceDeductionLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
2214
+ class UnionMember1 < MetronomeSDK::Internal::Type::BaseModel
1463
2215
  attr_accessor amount: Float
1464
2216
 
1465
2217
  attr_accessor invoice_id: String
@@ -1468,16 +2220,24 @@ module MetronomeSDK
1468
2220
 
1469
2221
  attr_accessor timestamp: Time
1470
2222
 
1471
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry::type_
2223
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember1::type_
1472
2224
 
1473
2225
  def initialize: (
1474
2226
  amount: Float,
1475
2227
  invoice_id: String,
1476
2228
  segment_id: String,
1477
2229
  timestamp: Time,
1478
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry::type_
2230
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember1::type_
1479
2231
  ) -> void
1480
2232
 
2233
+ def to_hash: -> {
2234
+ amount: Float,
2235
+ invoice_id: String,
2236
+ segment_id: String,
2237
+ timestamp: Time,
2238
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember1::type_
2239
+ }
2240
+
1481
2241
  type type_ = :CREDIT_AUTOMATED_INVOICE_DEDUCTION
1482
2242
 
1483
2243
  module Type
@@ -1485,34 +2245,41 @@ module MetronomeSDK
1485
2245
 
1486
2246
  CREDIT_AUTOMATED_INVOICE_DEDUCTION: :CREDIT_AUTOMATED_INVOICE_DEDUCTION
1487
2247
 
1488
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry::type_]
2248
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember1::type_]
1489
2249
  end
1490
2250
  end
1491
2251
 
1492
- type credit_expiration_ledger_entry =
2252
+ type union_member2 =
1493
2253
  {
1494
2254
  amount: Float,
1495
2255
  segment_id: String,
1496
2256
  timestamp: Time,
1497
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry::type_
2257
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember2::type_
1498
2258
  }
1499
2259
 
1500
- class CreditExpirationLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
2260
+ class UnionMember2 < MetronomeSDK::Internal::Type::BaseModel
1501
2261
  attr_accessor amount: Float
1502
2262
 
1503
2263
  attr_accessor segment_id: String
1504
2264
 
1505
2265
  attr_accessor timestamp: Time
1506
2266
 
1507
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry::type_
2267
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember2::type_
1508
2268
 
1509
2269
  def initialize: (
1510
2270
  amount: Float,
1511
2271
  segment_id: String,
1512
2272
  timestamp: Time,
1513
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry::type_
2273
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember2::type_
1514
2274
  ) -> void
1515
2275
 
2276
+ def to_hash: -> {
2277
+ amount: Float,
2278
+ segment_id: String,
2279
+ timestamp: Time,
2280
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember2::type_
2281
+ }
2282
+
1516
2283
  type type_ = :CREDIT_EXPIRATION
1517
2284
 
1518
2285
  module Type
@@ -1520,20 +2287,20 @@ module MetronomeSDK
1520
2287
 
1521
2288
  CREDIT_EXPIRATION: :CREDIT_EXPIRATION
1522
2289
 
1523
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry::type_]
2290
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember2::type_]
1524
2291
  end
1525
2292
  end
1526
2293
 
1527
- type credit_canceled_ledger_entry =
2294
+ type union_member3 =
1528
2295
  {
1529
2296
  amount: Float,
1530
2297
  invoice_id: String,
1531
2298
  segment_id: String,
1532
2299
  timestamp: Time,
1533
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry::type_
2300
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember3::type_
1534
2301
  }
1535
2302
 
1536
- class CreditCanceledLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
2303
+ class UnionMember3 < MetronomeSDK::Internal::Type::BaseModel
1537
2304
  attr_accessor amount: Float
1538
2305
 
1539
2306
  attr_accessor invoice_id: String
@@ -1542,37 +2309,45 @@ module MetronomeSDK
1542
2309
 
1543
2310
  attr_accessor timestamp: Time
1544
2311
 
1545
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry::type_
2312
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember3::type_
1546
2313
 
1547
2314
  def initialize: (
1548
2315
  amount: Float,
1549
2316
  invoice_id: String,
1550
2317
  segment_id: String,
1551
2318
  timestamp: Time,
1552
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry::type_
2319
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember3::type_
1553
2320
  ) -> void
1554
2321
 
1555
- type type_ = :CREDIT_CANCELED
1556
-
1557
- module Type
1558
- extend MetronomeSDK::Internal::Type::Enum
1559
-
2322
+ def to_hash: -> {
2323
+ amount: Float,
2324
+ invoice_id: String,
2325
+ segment_id: String,
2326
+ timestamp: Time,
2327
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember3::type_
2328
+ }
2329
+
2330
+ type type_ = :CREDIT_CANCELED
2331
+
2332
+ module Type
2333
+ extend MetronomeSDK::Internal::Type::Enum
2334
+
1560
2335
  CREDIT_CANCELED: :CREDIT_CANCELED
1561
2336
 
1562
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry::type_]
2337
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember3::type_]
1563
2338
  end
1564
2339
  end
1565
2340
 
1566
- type credit_credited_ledger_entry =
2341
+ type union_member4 =
1567
2342
  {
1568
2343
  amount: Float,
1569
2344
  invoice_id: String,
1570
2345
  segment_id: String,
1571
2346
  timestamp: Time,
1572
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry::type_
2347
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember4::type_
1573
2348
  }
1574
2349
 
1575
- class CreditCreditedLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
2350
+ class UnionMember4 < MetronomeSDK::Internal::Type::BaseModel
1576
2351
  attr_accessor amount: Float
1577
2352
 
1578
2353
  attr_accessor invoice_id: String
@@ -1581,16 +2356,24 @@ module MetronomeSDK
1581
2356
 
1582
2357
  attr_accessor timestamp: Time
1583
2358
 
1584
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry::type_
2359
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember4::type_
1585
2360
 
1586
2361
  def initialize: (
1587
2362
  amount: Float,
1588
2363
  invoice_id: String,
1589
2364
  segment_id: String,
1590
2365
  timestamp: Time,
1591
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry::type_
2366
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember4::type_
1592
2367
  ) -> void
1593
2368
 
2369
+ def to_hash: -> {
2370
+ amount: Float,
2371
+ invoice_id: String,
2372
+ segment_id: String,
2373
+ timestamp: Time,
2374
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember4::type_
2375
+ }
2376
+
1594
2377
  type type_ = :CREDIT_CREDITED
1595
2378
 
1596
2379
  module Type
@@ -1598,34 +2381,41 @@ module MetronomeSDK
1598
2381
 
1599
2382
  CREDIT_CREDITED: :CREDIT_CREDITED
1600
2383
 
1601
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry::type_]
2384
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember4::type_]
1602
2385
  end
1603
2386
  end
1604
2387
 
1605
- type credit_manual_ledger_entry =
2388
+ type union_member5 =
1606
2389
  {
1607
2390
  amount: Float,
1608
2391
  reason: String,
1609
2392
  timestamp: Time,
1610
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditManualLedgerEntry::type_
2393
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember5::type_
1611
2394
  }
1612
2395
 
1613
- class CreditManualLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
2396
+ class UnionMember5 < MetronomeSDK::Internal::Type::BaseModel
1614
2397
  attr_accessor amount: Float
1615
2398
 
1616
2399
  attr_accessor reason: String
1617
2400
 
1618
2401
  attr_accessor timestamp: Time
1619
2402
 
1620
- attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditManualLedgerEntry::type_
2403
+ attr_accessor type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember5::type_
1621
2404
 
1622
2405
  def initialize: (
1623
2406
  amount: Float,
1624
2407
  reason: String,
1625
2408
  timestamp: Time,
1626
- type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditManualLedgerEntry::type_
2409
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember5::type_
1627
2410
  ) -> void
1628
2411
 
2412
+ def to_hash: -> {
2413
+ amount: Float,
2414
+ reason: String,
2415
+ timestamp: Time,
2416
+ type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember5::type_
2417
+ }
2418
+
1629
2419
  type type_ = :CREDIT_MANUAL
1630
2420
 
1631
2421
  module Type
@@ -1633,12 +2423,56 @@ module MetronomeSDK
1633
2423
 
1634
2424
  CREDIT_MANUAL: :CREDIT_MANUAL
1635
2425
 
1636
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::CreditManualLedgerEntry::type_]
2426
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::Ledger::UnionMember5::type_]
1637
2427
  end
1638
2428
  end
1639
2429
 
1640
2430
  def self?.variants: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Credit::ledger]
1641
2431
  end
2432
+
2433
+ type specifier =
2434
+ {
2435
+ presentation_group_values: ::Hash[Symbol, String],
2436
+ pricing_group_values: ::Hash[Symbol, String],
2437
+ product_id: String,
2438
+ product_tags: ::Array[String]
2439
+ }
2440
+
2441
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
2442
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
2443
+
2444
+ def presentation_group_values=: (
2445
+ ::Hash[Symbol, String]
2446
+ ) -> ::Hash[Symbol, String]
2447
+
2448
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
2449
+
2450
+ def pricing_group_values=: (
2451
+ ::Hash[Symbol, String]
2452
+ ) -> ::Hash[Symbol, String]
2453
+
2454
+ attr_reader product_id: String?
2455
+
2456
+ def product_id=: (String) -> String
2457
+
2458
+ attr_reader product_tags: ::Array[String]?
2459
+
2460
+ def product_tags=: (::Array[String]) -> ::Array[String]
2461
+
2462
+ def initialize: (
2463
+ ?presentation_group_values: ::Hash[Symbol, String],
2464
+ ?pricing_group_values: ::Hash[Symbol, String],
2465
+ ?product_id: String,
2466
+ ?product_tags: ::Array[String]
2467
+ ) -> void
2468
+
2469
+ def to_hash: -> {
2470
+ presentation_group_values: ::Hash[Symbol, String],
2471
+ pricing_group_values: ::Hash[Symbol, String],
2472
+ product_id: String,
2473
+ product_tags: ::Array[String]
2474
+ }
2475
+ end
1642
2476
  end
1643
2477
 
1644
2478
  type customer_billing_provider_configuration =
@@ -1657,6 +2491,11 @@ module MetronomeSDK
1657
2491
  delivery_method: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::CustomerBillingProviderConfiguration::delivery_method
1658
2492
  ) -> void
1659
2493
 
2494
+ def to_hash: -> {
2495
+ billing_provider: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::CustomerBillingProviderConfiguration::billing_provider,
2496
+ delivery_method: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::CustomerBillingProviderConfiguration::delivery_method
2497
+ }
2498
+
1660
2499
  type billing_provider =
1661
2500
  :aws_marketplace
1662
2501
  | :stripe
@@ -1697,6 +2536,152 @@ module MetronomeSDK
1697
2536
  end
1698
2537
  end
1699
2538
 
2539
+ type discount =
2540
+ {
2541
+ id: String,
2542
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Product,
2543
+ schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule,
2544
+ custom_fields: ::Hash[Symbol, String],
2545
+ name: String,
2546
+ netsuite_sales_order_id: String
2547
+ }
2548
+
2549
+ class Discount < MetronomeSDK::Internal::Type::BaseModel
2550
+ attr_accessor id: String
2551
+
2552
+ attr_accessor product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Product
2553
+
2554
+ attr_accessor schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule
2555
+
2556
+ attr_reader custom_fields: ::Hash[Symbol, String]?
2557
+
2558
+ def custom_fields=: (
2559
+ ::Hash[Symbol, String]
2560
+ ) -> ::Hash[Symbol, String]
2561
+
2562
+ attr_reader name: String?
2563
+
2564
+ def name=: (String) -> String
2565
+
2566
+ attr_reader netsuite_sales_order_id: String?
2567
+
2568
+ def netsuite_sales_order_id=: (String) -> String
2569
+
2570
+ def initialize: (
2571
+ id: String,
2572
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Product,
2573
+ schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule,
2574
+ ?custom_fields: ::Hash[Symbol, String],
2575
+ ?name: String,
2576
+ ?netsuite_sales_order_id: String
2577
+ ) -> void
2578
+
2579
+ def to_hash: -> {
2580
+ id: String,
2581
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Product,
2582
+ schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule,
2583
+ custom_fields: ::Hash[Symbol, String],
2584
+ name: String,
2585
+ netsuite_sales_order_id: String
2586
+ }
2587
+
2588
+ type product = { id: String, name: String }
2589
+
2590
+ class Product < MetronomeSDK::Internal::Type::BaseModel
2591
+ attr_accessor id: String
2592
+
2593
+ attr_accessor name: String
2594
+
2595
+ def initialize: (id: String, name: String) -> void
2596
+
2597
+ def to_hash: -> { id: String, name: String }
2598
+ end
2599
+
2600
+ type schedule =
2601
+ {
2602
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::CreditType,
2603
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::ScheduleItem]
2604
+ }
2605
+
2606
+ class Schedule < MetronomeSDK::Internal::Type::BaseModel
2607
+ attr_reader credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::CreditType?
2608
+
2609
+ def credit_type=: (
2610
+ MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::CreditType
2611
+ ) -> MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::CreditType
2612
+
2613
+ attr_reader schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::ScheduleItem]?
2614
+
2615
+ def schedule_items=: (
2616
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::ScheduleItem]
2617
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::ScheduleItem]
2618
+
2619
+ def initialize: (
2620
+ ?credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::CreditType,
2621
+ ?schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::ScheduleItem]
2622
+ ) -> void
2623
+
2624
+ def to_hash: -> {
2625
+ credit_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::CreditType,
2626
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Discount::Schedule::ScheduleItem]
2627
+ }
2628
+
2629
+ type credit_type = { id: String, name: String }
2630
+
2631
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
2632
+ attr_accessor id: String
2633
+
2634
+ attr_accessor name: String
2635
+
2636
+ def initialize: (id: String, name: String) -> void
2637
+
2638
+ def to_hash: -> { id: String, name: String }
2639
+ end
2640
+
2641
+ type schedule_item =
2642
+ {
2643
+ id: String,
2644
+ amount: Float,
2645
+ invoice_id: String,
2646
+ quantity: Float,
2647
+ timestamp: Time,
2648
+ unit_price: Float
2649
+ }
2650
+
2651
+ class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2652
+ attr_accessor id: String
2653
+
2654
+ attr_accessor amount: Float
2655
+
2656
+ attr_accessor invoice_id: String
2657
+
2658
+ attr_accessor quantity: Float
2659
+
2660
+ attr_accessor timestamp: Time
2661
+
2662
+ attr_accessor unit_price: Float
2663
+
2664
+ def initialize: (
2665
+ id: String,
2666
+ amount: Float,
2667
+ invoice_id: String,
2668
+ quantity: Float,
2669
+ timestamp: Time,
2670
+ unit_price: Float
2671
+ ) -> void
2672
+
2673
+ def to_hash: -> {
2674
+ id: String,
2675
+ amount: Float,
2676
+ invoice_id: String,
2677
+ quantity: Float,
2678
+ timestamp: Time,
2679
+ unit_price: Float
2680
+ }
2681
+ end
2682
+ end
2683
+ end
2684
+
1700
2685
  type multiplier_override_prioritization =
1701
2686
  :LOWEST_MULTIPLIER | :EXPLICIT
1702
2687
 
@@ -1737,13 +2722,22 @@ module MetronomeSDK
1737
2722
  threshold_amount: Float
1738
2723
  ) -> void
1739
2724
 
2725
+ def to_hash: -> {
2726
+ commit: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::Commit,
2727
+ is_enabled: bool,
2728
+ payment_gate_config: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig,
2729
+ recharge_to_amount: Float,
2730
+ threshold_amount: Float
2731
+ }
2732
+
1740
2733
  type commit =
1741
2734
  {
1742
2735
  product_id: String,
1743
2736
  applicable_product_ids: ::Array[String],
1744
2737
  applicable_product_tags: ::Array[String],
1745
2738
  description: String,
1746
- name: String
2739
+ name: String,
2740
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
1747
2741
  }
1748
2742
 
1749
2743
  class Commit < MetronomeSDK::Internal::Type::BaseModel
@@ -1765,13 +2759,73 @@ module MetronomeSDK
1765
2759
 
1766
2760
  def name=: (String) -> String
1767
2761
 
2762
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier]?
2763
+
2764
+ def specifiers=: (
2765
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
2766
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
2767
+
1768
2768
  def initialize: (
1769
2769
  product_id: String,
1770
2770
  ?applicable_product_ids: ::Array[String],
1771
2771
  ?applicable_product_tags: ::Array[String],
1772
2772
  ?description: String,
1773
- ?name: String
2773
+ ?name: String,
2774
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
1774
2775
  ) -> void
2776
+
2777
+ def to_hash: -> {
2778
+ product_id: String,
2779
+ applicable_product_ids: ::Array[String],
2780
+ applicable_product_tags: ::Array[String],
2781
+ description: String,
2782
+ name: String,
2783
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
2784
+ }
2785
+
2786
+ type specifier =
2787
+ {
2788
+ presentation_group_values: ::Hash[Symbol, String],
2789
+ pricing_group_values: ::Hash[Symbol, String],
2790
+ product_id: String,
2791
+ product_tags: ::Array[String]
2792
+ }
2793
+
2794
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
2795
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
2796
+
2797
+ def presentation_group_values=: (
2798
+ ::Hash[Symbol, String]
2799
+ ) -> ::Hash[Symbol, String]
2800
+
2801
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
2802
+
2803
+ def pricing_group_values=: (
2804
+ ::Hash[Symbol, String]
2805
+ ) -> ::Hash[Symbol, String]
2806
+
2807
+ attr_reader product_id: String?
2808
+
2809
+ def product_id=: (String) -> String
2810
+
2811
+ attr_reader product_tags: ::Array[String]?
2812
+
2813
+ def product_tags=: (::Array[String]) -> ::Array[String]
2814
+
2815
+ def initialize: (
2816
+ ?presentation_group_values: ::Hash[Symbol, String],
2817
+ ?pricing_group_values: ::Hash[Symbol, String],
2818
+ ?product_id: String,
2819
+ ?product_tags: ::Array[String]
2820
+ ) -> void
2821
+
2822
+ def to_hash: -> {
2823
+ presentation_group_values: ::Hash[Symbol, String],
2824
+ pricing_group_values: ::Hash[Symbol, String],
2825
+ product_id: String,
2826
+ product_tags: ::Array[String]
2827
+ }
2828
+ end
1775
2829
  end
1776
2830
 
1777
2831
  type payment_gate_config =
@@ -1802,6 +2856,12 @@ module MetronomeSDK
1802
2856
  ?tax_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
1803
2857
  ) -> void
1804
2858
 
2859
+ def to_hash: -> {
2860
+ payment_gate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
2861
+ stripe_config: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
2862
+ tax_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
2863
+ }
2864
+
1805
2865
  type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
1806
2866
 
1807
2867
  module PaymentGateType
@@ -1826,6 +2886,10 @@ module MetronomeSDK
1826
2886
  payment_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
1827
2887
  ) -> void
1828
2888
 
2889
+ def to_hash: -> {
2890
+ payment_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
2891
+ }
2892
+
1829
2893
  type payment_type = :INVOICE | :PAYMENT_INTENT
1830
2894
 
1831
2895
  module PaymentType
@@ -1851,6 +2915,66 @@ module MetronomeSDK
1851
2915
  end
1852
2916
  end
1853
2917
 
2918
+ type professional_service =
2919
+ {
2920
+ id: String,
2921
+ max_amount: Float,
2922
+ product_id: String,
2923
+ quantity: Float,
2924
+ unit_price: Float,
2925
+ custom_fields: ::Hash[Symbol, String],
2926
+ description: String,
2927
+ netsuite_sales_order_id: String
2928
+ }
2929
+
2930
+ class ProfessionalService < MetronomeSDK::Internal::Type::BaseModel
2931
+ attr_accessor id: String
2932
+
2933
+ attr_accessor max_amount: Float
2934
+
2935
+ attr_accessor product_id: String
2936
+
2937
+ attr_accessor quantity: Float
2938
+
2939
+ attr_accessor unit_price: Float
2940
+
2941
+ attr_reader custom_fields: ::Hash[Symbol, String]?
2942
+
2943
+ def custom_fields=: (
2944
+ ::Hash[Symbol, String]
2945
+ ) -> ::Hash[Symbol, String]
2946
+
2947
+ attr_reader description: String?
2948
+
2949
+ def description=: (String) -> String
2950
+
2951
+ attr_reader netsuite_sales_order_id: String?
2952
+
2953
+ def netsuite_sales_order_id=: (String) -> String
2954
+
2955
+ def initialize: (
2956
+ id: String,
2957
+ max_amount: Float,
2958
+ product_id: String,
2959
+ quantity: Float,
2960
+ unit_price: Float,
2961
+ ?custom_fields: ::Hash[Symbol, String],
2962
+ ?description: String,
2963
+ ?netsuite_sales_order_id: String
2964
+ ) -> void
2965
+
2966
+ def to_hash: -> {
2967
+ id: String,
2968
+ max_amount: Float,
2969
+ product_id: String,
2970
+ quantity: Float,
2971
+ unit_price: Float,
2972
+ custom_fields: ::Hash[Symbol, String],
2973
+ description: String,
2974
+ netsuite_sales_order_id: String
2975
+ }
2976
+ end
2977
+
1854
2978
  type recurring_commit =
1855
2979
  {
1856
2980
  id: String,
@@ -1870,7 +2994,8 @@ module MetronomeSDK
1870
2994
  netsuite_sales_order_id: String,
1871
2995
  proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::proration,
1872
2996
  recurrence_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::recurrence_frequency,
1873
- rollover_fraction: Float
2997
+ rollover_fraction: Float,
2998
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::Specifier]
1874
2999
  }
1875
3000
 
1876
3001
  class RecurringCommit < MetronomeSDK::Internal::Type::BaseModel
@@ -1940,6 +3065,12 @@ module MetronomeSDK
1940
3065
 
1941
3066
  def rollover_fraction=: (Float) -> Float
1942
3067
 
3068
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::Specifier]?
3069
+
3070
+ def specifiers=: (
3071
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::Specifier]
3072
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::Specifier]
3073
+
1943
3074
  def initialize: (
1944
3075
  id: String,
1945
3076
  access_amount: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::AccessAmount,
@@ -1958,9 +3089,32 @@ module MetronomeSDK
1958
3089
  ?netsuite_sales_order_id: String,
1959
3090
  ?proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::proration,
1960
3091
  ?recurrence_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::recurrence_frequency,
1961
- ?rollover_fraction: Float
3092
+ ?rollover_fraction: Float,
3093
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::Specifier]
1962
3094
  ) -> void
1963
3095
 
3096
+ def to_hash: -> {
3097
+ id: String,
3098
+ access_amount: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::AccessAmount,
3099
+ commit_duration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::CommitDuration,
3100
+ priority: Float,
3101
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::Product,
3102
+ rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::rate_type,
3103
+ starting_at: Time,
3104
+ applicable_product_ids: ::Array[String],
3105
+ applicable_product_tags: ::Array[String],
3106
+ contract: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::Contract,
3107
+ description: String,
3108
+ ending_before: Time,
3109
+ invoice_amount: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::InvoiceAmount,
3110
+ name: String,
3111
+ netsuite_sales_order_id: String,
3112
+ proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::proration,
3113
+ recurrence_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::recurrence_frequency,
3114
+ rollover_fraction: Float,
3115
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::Specifier]
3116
+ }
3117
+
1964
3118
  type access_amount =
1965
3119
  { credit_type_id: String, quantity: Float, unit_price: Float }
1966
3120
 
@@ -1976,6 +3130,12 @@ module MetronomeSDK
1976
3130
  quantity: Float,
1977
3131
  unit_price: Float
1978
3132
  ) -> void
3133
+
3134
+ def to_hash: -> {
3135
+ credit_type_id: String,
3136
+ quantity: Float,
3137
+ unit_price: Float
3138
+ }
1979
3139
  end
1980
3140
 
1981
3141
  type commit_duration =
@@ -1998,6 +3158,11 @@ module MetronomeSDK
1998
3158
  ?unit: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::CommitDuration::unit
1999
3159
  ) -> void
2000
3160
 
3161
+ def to_hash: -> {
3162
+ value: Float,
3163
+ unit: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::CommitDuration::unit
3164
+ }
3165
+
2001
3166
  type unit = :PERIODS
2002
3167
 
2003
3168
  module Unit
@@ -2017,6 +3182,8 @@ module MetronomeSDK
2017
3182
  attr_accessor name: String
2018
3183
 
2019
3184
  def initialize: (id: String, name: String) -> void
3185
+
3186
+ def to_hash: -> { id: String, name: String }
2020
3187
  end
2021
3188
 
2022
3189
  type rate_type = :COMMIT_RATE | :LIST_RATE
@@ -2036,6 +3203,8 @@ module MetronomeSDK
2036
3203
  attr_accessor id: String
2037
3204
 
2038
3205
  def initialize: (id: String) -> void
3206
+
3207
+ def to_hash: -> { id: String }
2039
3208
  end
2040
3209
 
2041
3210
  type invoice_amount =
@@ -2053,6 +3222,12 @@ module MetronomeSDK
2053
3222
  quantity: Float,
2054
3223
  unit_price: Float
2055
3224
  ) -> void
3225
+
3226
+ def to_hash: -> {
3227
+ credit_type_id: String,
3228
+ quantity: Float,
3229
+ unit_price: Float
3230
+ }
2056
3231
  end
2057
3232
 
2058
3233
  type proration = :NONE | :FIRST | :LAST | :FIRST_AND_LAST
@@ -2081,6 +3256,50 @@ module MetronomeSDK
2081
3256
 
2082
3257
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCommit::recurrence_frequency]
2083
3258
  end
3259
+
3260
+ type specifier =
3261
+ {
3262
+ presentation_group_values: ::Hash[Symbol, String],
3263
+ pricing_group_values: ::Hash[Symbol, String],
3264
+ product_id: String,
3265
+ product_tags: ::Array[String]
3266
+ }
3267
+
3268
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
3269
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
3270
+
3271
+ def presentation_group_values=: (
3272
+ ::Hash[Symbol, String]
3273
+ ) -> ::Hash[Symbol, String]
3274
+
3275
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
3276
+
3277
+ def pricing_group_values=: (
3278
+ ::Hash[Symbol, String]
3279
+ ) -> ::Hash[Symbol, String]
3280
+
3281
+ attr_reader product_id: String?
3282
+
3283
+ def product_id=: (String) -> String
3284
+
3285
+ attr_reader product_tags: ::Array[String]?
3286
+
3287
+ def product_tags=: (::Array[String]) -> ::Array[String]
3288
+
3289
+ def initialize: (
3290
+ ?presentation_group_values: ::Hash[Symbol, String],
3291
+ ?pricing_group_values: ::Hash[Symbol, String],
3292
+ ?product_id: String,
3293
+ ?product_tags: ::Array[String]
3294
+ ) -> void
3295
+
3296
+ def to_hash: -> {
3297
+ presentation_group_values: ::Hash[Symbol, String],
3298
+ pricing_group_values: ::Hash[Symbol, String],
3299
+ product_id: String,
3300
+ product_tags: ::Array[String]
3301
+ }
3302
+ end
2084
3303
  end
2085
3304
 
2086
3305
  type recurring_credit =
@@ -2101,7 +3320,8 @@ module MetronomeSDK
2101
3320
  netsuite_sales_order_id: String,
2102
3321
  proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::proration,
2103
3322
  recurrence_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::recurrence_frequency,
2104
- rollover_fraction: Float
3323
+ rollover_fraction: Float,
3324
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::Specifier]
2105
3325
  }
2106
3326
 
2107
3327
  class RecurringCredit < MetronomeSDK::Internal::Type::BaseModel
@@ -2165,6 +3385,12 @@ module MetronomeSDK
2165
3385
 
2166
3386
  def rollover_fraction=: (Float) -> Float
2167
3387
 
3388
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::Specifier]?
3389
+
3390
+ def specifiers=: (
3391
+ ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::Specifier]
3392
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::Specifier]
3393
+
2168
3394
  def initialize: (
2169
3395
  id: String,
2170
3396
  access_amount: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::AccessAmount,
@@ -2182,9 +3408,31 @@ module MetronomeSDK
2182
3408
  ?netsuite_sales_order_id: String,
2183
3409
  ?proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::proration,
2184
3410
  ?recurrence_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::recurrence_frequency,
2185
- ?rollover_fraction: Float
3411
+ ?rollover_fraction: Float,
3412
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::Specifier]
2186
3413
  ) -> void
2187
3414
 
3415
+ def to_hash: -> {
3416
+ id: String,
3417
+ access_amount: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::AccessAmount,
3418
+ commit_duration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::CommitDuration,
3419
+ priority: Float,
3420
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::Product,
3421
+ rate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::rate_type,
3422
+ starting_at: Time,
3423
+ applicable_product_ids: ::Array[String],
3424
+ applicable_product_tags: ::Array[String],
3425
+ contract: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::Contract,
3426
+ description: String,
3427
+ ending_before: Time,
3428
+ name: String,
3429
+ netsuite_sales_order_id: String,
3430
+ proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::proration,
3431
+ recurrence_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::recurrence_frequency,
3432
+ rollover_fraction: Float,
3433
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::Specifier]
3434
+ }
3435
+
2188
3436
  type access_amount =
2189
3437
  { credit_type_id: String, quantity: Float, unit_price: Float }
2190
3438
 
@@ -2200,6 +3448,12 @@ module MetronomeSDK
2200
3448
  quantity: Float,
2201
3449
  unit_price: Float
2202
3450
  ) -> void
3451
+
3452
+ def to_hash: -> {
3453
+ credit_type_id: String,
3454
+ quantity: Float,
3455
+ unit_price: Float
3456
+ }
2203
3457
  end
2204
3458
 
2205
3459
  type commit_duration =
@@ -2222,6 +3476,11 @@ module MetronomeSDK
2222
3476
  ?unit: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::CommitDuration::unit
2223
3477
  ) -> void
2224
3478
 
3479
+ def to_hash: -> {
3480
+ value: Float,
3481
+ unit: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::CommitDuration::unit
3482
+ }
3483
+
2225
3484
  type unit = :PERIODS
2226
3485
 
2227
3486
  module Unit
@@ -2241,6 +3500,8 @@ module MetronomeSDK
2241
3500
  attr_accessor name: String
2242
3501
 
2243
3502
  def initialize: (id: String, name: String) -> void
3503
+
3504
+ def to_hash: -> { id: String, name: String }
2244
3505
  end
2245
3506
 
2246
3507
  type rate_type = :COMMIT_RATE | :LIST_RATE
@@ -2260,6 +3521,8 @@ module MetronomeSDK
2260
3521
  attr_accessor id: String
2261
3522
 
2262
3523
  def initialize: (id: String) -> void
3524
+
3525
+ def to_hash: -> { id: String }
2263
3526
  end
2264
3527
 
2265
3528
  type proration = :NONE | :FIRST | :LAST | :FIRST_AND_LAST
@@ -2288,6 +3551,50 @@ module MetronomeSDK
2288
3551
 
2289
3552
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::RecurringCredit::recurrence_frequency]
2290
3553
  end
3554
+
3555
+ type specifier =
3556
+ {
3557
+ presentation_group_values: ::Hash[Symbol, String],
3558
+ pricing_group_values: ::Hash[Symbol, String],
3559
+ product_id: String,
3560
+ product_tags: ::Array[String]
3561
+ }
3562
+
3563
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
3564
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
3565
+
3566
+ def presentation_group_values=: (
3567
+ ::Hash[Symbol, String]
3568
+ ) -> ::Hash[Symbol, String]
3569
+
3570
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
3571
+
3572
+ def pricing_group_values=: (
3573
+ ::Hash[Symbol, String]
3574
+ ) -> ::Hash[Symbol, String]
3575
+
3576
+ attr_reader product_id: String?
3577
+
3578
+ def product_id=: (String) -> String
3579
+
3580
+ attr_reader product_tags: ::Array[String]?
3581
+
3582
+ def product_tags=: (::Array[String]) -> ::Array[String]
3583
+
3584
+ def initialize: (
3585
+ ?presentation_group_values: ::Hash[Symbol, String],
3586
+ ?pricing_group_values: ::Hash[Symbol, String],
3587
+ ?product_id: String,
3588
+ ?product_tags: ::Array[String]
3589
+ ) -> void
3590
+
3591
+ def to_hash: -> {
3592
+ presentation_group_values: ::Hash[Symbol, String],
3593
+ pricing_group_values: ::Hash[Symbol, String],
3594
+ product_id: String,
3595
+ product_tags: ::Array[String]
3596
+ }
3597
+ end
2291
3598
  end
2292
3599
 
2293
3600
  type reseller_royalty =
@@ -2306,6 +3613,11 @@ module MetronomeSDK
2306
3613
  segments: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ResellerRoyalty::Segment]
2307
3614
  ) -> void
2308
3615
 
3616
+ def to_hash: -> {
3617
+ reseller_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ResellerRoyalty::reseller_type,
3618
+ segments: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ResellerRoyalty::Segment]
3619
+ }
3620
+
2309
3621
  type reseller_type =
2310
3622
  :AWS | :AWS_PRO_SERVICE | :GCP | :GCP_PRO_SERVICE
2311
3623
 
@@ -2398,6 +3710,22 @@ module MetronomeSDK
2398
3710
  ?reseller_contract_value: Float
2399
3711
  ) -> void
2400
3712
 
3713
+ def to_hash: -> {
3714
+ fraction: Float,
3715
+ netsuite_reseller_id: String,
3716
+ reseller_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::ResellerRoyalty::Segment::reseller_type,
3717
+ starting_at: Time,
3718
+ applicable_product_ids: ::Array[String],
3719
+ applicable_product_tags: ::Array[String],
3720
+ aws_account_number: String,
3721
+ aws_offer_id: String,
3722
+ aws_payer_reference_id: String,
3723
+ ending_before: Time,
3724
+ gcp_account_id: String,
3725
+ gcp_offer_id: String,
3726
+ reseller_contract_value: Float
3727
+ }
3728
+
2401
3729
  type reseller_type =
2402
3730
  :AWS | :AWS_PRO_SERVICE | :GCP | :GCP_PRO_SERVICE
2403
3731
 
@@ -2448,6 +3776,13 @@ module MetronomeSDK
2448
3776
  threshold_amount: Float
2449
3777
  ) -> void
2450
3778
 
3779
+ def to_hash: -> {
3780
+ commit: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration::Commit,
3781
+ is_enabled: bool,
3782
+ payment_gate_config: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration::PaymentGateConfig,
3783
+ threshold_amount: Float
3784
+ }
3785
+
2451
3786
  type commit =
2452
3787
  { product_id: String, description: String, name: String }
2453
3788
 
@@ -2467,6 +3802,12 @@ module MetronomeSDK
2467
3802
  ?description: String,
2468
3803
  ?name: String
2469
3804
  ) -> void
3805
+
3806
+ def to_hash: -> {
3807
+ product_id: String,
3808
+ description: String,
3809
+ name: String
3810
+ }
2470
3811
  end
2471
3812
 
2472
3813
  type payment_gate_config =
@@ -2497,6 +3838,12 @@ module MetronomeSDK
2497
3838
  ?tax_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::tax_type
2498
3839
  ) -> void
2499
3840
 
3841
+ def to_hash: -> {
3842
+ payment_gate_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3843
+ stripe_config: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
3844
+ tax_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::tax_type
3845
+ }
3846
+
2500
3847
  type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
2501
3848
 
2502
3849
  module PaymentGateType
@@ -2521,6 +3868,10 @@ module MetronomeSDK
2521
3868
  payment_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
2522
3869
  ) -> void
2523
3870
 
3871
+ def to_hash: -> {
3872
+ payment_type: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
3873
+ }
3874
+
2524
3875
  type payment_type = :INVOICE | :PAYMENT_INTENT
2525
3876
 
2526
3877
  module PaymentType
@@ -2545,6 +3896,204 @@ module MetronomeSDK
2545
3896
  end
2546
3897
  end
2547
3898
  end
3899
+
3900
+ type subscription =
3901
+ {
3902
+ collection_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::collection_schedule,
3903
+ proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration,
3904
+ quantity_schedule: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::QuantitySchedule],
3905
+ starting_at: Time,
3906
+ subscription_rate: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate,
3907
+ id: String,
3908
+ custom_fields: ::Hash[Symbol, String],
3909
+ description: String,
3910
+ ending_before: Time,
3911
+ fiat_credit_type_id: String,
3912
+ name: String
3913
+ }
3914
+
3915
+ class Subscription < MetronomeSDK::Internal::Type::BaseModel
3916
+ attr_accessor collection_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::collection_schedule
3917
+
3918
+ attr_accessor proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration
3919
+
3920
+ attr_accessor quantity_schedule: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::QuantitySchedule]
3921
+
3922
+ attr_accessor starting_at: Time
3923
+
3924
+ attr_accessor subscription_rate: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate
3925
+
3926
+ attr_reader id: String?
3927
+
3928
+ def id=: (String) -> String
3929
+
3930
+ attr_reader custom_fields: ::Hash[Symbol, String]?
3931
+
3932
+ def custom_fields=: (
3933
+ ::Hash[Symbol, String]
3934
+ ) -> ::Hash[Symbol, String]
3935
+
3936
+ attr_reader description: String?
3937
+
3938
+ def description=: (String) -> String
3939
+
3940
+ attr_reader ending_before: Time?
3941
+
3942
+ def ending_before=: (Time) -> Time
3943
+
3944
+ attr_reader fiat_credit_type_id: String?
3945
+
3946
+ def fiat_credit_type_id=: (String) -> String
3947
+
3948
+ attr_reader name: String?
3949
+
3950
+ def name=: (String) -> String
3951
+
3952
+ def initialize: (
3953
+ collection_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::collection_schedule,
3954
+ proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration,
3955
+ quantity_schedule: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::QuantitySchedule],
3956
+ starting_at: Time,
3957
+ subscription_rate: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate,
3958
+ ?id: String,
3959
+ ?custom_fields: ::Hash[Symbol, String],
3960
+ ?description: String,
3961
+ ?ending_before: Time,
3962
+ ?fiat_credit_type_id: String,
3963
+ ?name: String
3964
+ ) -> void
3965
+
3966
+ def to_hash: -> {
3967
+ collection_schedule: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::collection_schedule,
3968
+ proration: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration,
3969
+ quantity_schedule: ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::QuantitySchedule],
3970
+ starting_at: Time,
3971
+ subscription_rate: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate,
3972
+ id: String,
3973
+ custom_fields: ::Hash[Symbol, String],
3974
+ description: String,
3975
+ ending_before: Time,
3976
+ fiat_credit_type_id: String,
3977
+ name: String
3978
+ }
3979
+
3980
+ type collection_schedule = :ADVANCE | :ARREARS
3981
+
3982
+ module CollectionSchedule
3983
+ extend MetronomeSDK::Internal::Type::Enum
3984
+
3985
+ ADVANCE: :ADVANCE
3986
+ ARREARS: :ARREARS
3987
+
3988
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::collection_schedule]
3989
+ end
3990
+
3991
+ type proration =
3992
+ {
3993
+ invoice_behavior: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration::invoice_behavior,
3994
+ is_prorated: bool
3995
+ }
3996
+
3997
+ class Proration < MetronomeSDK::Internal::Type::BaseModel
3998
+ attr_accessor invoice_behavior: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration::invoice_behavior
3999
+
4000
+ attr_accessor is_prorated: bool
4001
+
4002
+ def initialize: (
4003
+ invoice_behavior: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration::invoice_behavior,
4004
+ is_prorated: bool
4005
+ ) -> void
4006
+
4007
+ def to_hash: -> {
4008
+ invoice_behavior: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration::invoice_behavior,
4009
+ is_prorated: bool
4010
+ }
4011
+
4012
+ type invoice_behavior =
4013
+ :BILL_IMMEDIATELY | :BILL_ON_NEXT_COLLECTION_DATE
4014
+
4015
+ module InvoiceBehavior
4016
+ extend MetronomeSDK::Internal::Type::Enum
4017
+
4018
+ BILL_IMMEDIATELY: :BILL_IMMEDIATELY
4019
+ BILL_ON_NEXT_COLLECTION_DATE: :BILL_ON_NEXT_COLLECTION_DATE
4020
+
4021
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::Proration::invoice_behavior]
4022
+ end
4023
+ end
4024
+
4025
+ type quantity_schedule =
4026
+ { quantity: Float, starting_at: Time, ending_before: Time }
4027
+
4028
+ class QuantitySchedule < MetronomeSDK::Internal::Type::BaseModel
4029
+ attr_accessor quantity: Float
4030
+
4031
+ attr_accessor starting_at: Time
4032
+
4033
+ attr_reader ending_before: Time?
4034
+
4035
+ def ending_before=: (Time) -> Time
4036
+
4037
+ def initialize: (
4038
+ quantity: Float,
4039
+ starting_at: Time,
4040
+ ?ending_before: Time
4041
+ ) -> void
4042
+
4043
+ def to_hash: -> {
4044
+ quantity: Float,
4045
+ starting_at: Time,
4046
+ ending_before: Time
4047
+ }
4048
+ end
4049
+
4050
+ type subscription_rate =
4051
+ {
4052
+ billing_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::billing_frequency,
4053
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::Product
4054
+ }
4055
+
4056
+ class SubscriptionRate < MetronomeSDK::Internal::Type::BaseModel
4057
+ attr_accessor billing_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::billing_frequency
4058
+
4059
+ attr_accessor product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::Product
4060
+
4061
+ def initialize: (
4062
+ billing_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::billing_frequency,
4063
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::Product
4064
+ ) -> void
4065
+
4066
+ def to_hash: -> {
4067
+ billing_frequency: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::billing_frequency,
4068
+ product: MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::Product
4069
+ }
4070
+
4071
+ type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
4072
+
4073
+ module BillingFrequency
4074
+ extend MetronomeSDK::Internal::Type::Enum
4075
+
4076
+ MONTHLY: :MONTHLY
4077
+ QUARTERLY: :QUARTERLY
4078
+ ANNUAL: :ANNUAL
4079
+ WEEKLY: :WEEKLY
4080
+
4081
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractRetrieveResponse::Data::Subscription::SubscriptionRate::billing_frequency]
4082
+ end
4083
+
4084
+ type product = { id: String, name: String }
4085
+
4086
+ class Product < MetronomeSDK::Internal::Type::BaseModel
4087
+ attr_accessor id: String
4088
+
4089
+ attr_accessor name: String
4090
+
4091
+ def initialize: (id: String, name: String) -> void
4092
+
4093
+ def to_hash: -> { id: String, name: String }
4094
+ end
4095
+ end
4096
+ end
2548
4097
  end
2549
4098
  end
2550
4099
  end