metronome-sdk 0.3.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +91 -0
  3. data/README.md +9 -9
  4. data/lib/metronome_sdk/errors.rb +25 -11
  5. data/lib/metronome_sdk/file_part.rb +10 -7
  6. data/lib/metronome_sdk/internal/body_cursor_page.rb +86 -0
  7. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  8. data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +86 -0
  9. data/lib/metronome_sdk/internal/transport/base_client.rb +12 -11
  10. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +8 -19
  11. data/lib/metronome_sdk/internal/type/base_model.rb +6 -13
  12. data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
  13. data/lib/metronome_sdk/internal/type/enum.rb +25 -0
  14. data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
  15. data/lib/metronome_sdk/internal/type/union.rb +11 -0
  16. data/lib/metronome_sdk/internal/util.rb +9 -8
  17. data/lib/metronome_sdk/models/base_threshold_commit.rb +36 -0
  18. data/lib/metronome_sdk/models/commit.rb +26 -170
  19. data/lib/metronome_sdk/models/commit_hierarchy_configuration.rb +98 -0
  20. data/lib/metronome_sdk/models/commit_rate.rb +48 -0
  21. data/lib/metronome_sdk/models/commit_specifier.rb +42 -0
  22. data/lib/metronome_sdk/models/commit_specifier_input.rb +42 -0
  23. data/lib/metronome_sdk/models/contract.rb +404 -0
  24. data/lib/metronome_sdk/models/contract_v2.rb +3169 -0
  25. data/lib/metronome_sdk/models/contract_without_amendments.rb +38 -1128
  26. data/lib/metronome_sdk/models/credit.rb +9 -156
  27. data/lib/metronome_sdk/models/discount.rb +2 -1
  28. data/lib/metronome_sdk/models/hierarchy_configuration.rb +173 -0
  29. data/lib/metronome_sdk/models/override.rb +6 -101
  30. data/lib/metronome_sdk/models/override_tier.rb +21 -0
  31. data/lib/metronome_sdk/models/overwrite_rate.rb +82 -0
  32. data/lib/metronome_sdk/models/payment_gate_config.rb +150 -0
  33. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +150 -0
  34. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +100 -0
  35. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +102 -0
  36. data/lib/metronome_sdk/models/pro_service.rb +2 -1
  37. data/lib/metronome_sdk/models/recurring_commit_subscription_config.rb +51 -0
  38. data/lib/metronome_sdk/models/scheduled_charge.rb +2 -1
  39. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +44 -0
  40. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +44 -0
  41. data/lib/metronome_sdk/models/subscription.rb +311 -0
  42. data/lib/metronome_sdk/models/update_base_threshold_commit.rb +36 -0
  43. data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
  44. data/lib/metronome_sdk/models/v1/alert_create_params.rb +42 -42
  45. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +1 -2
  46. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +3 -3
  47. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -7
  48. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +58 -411
  49. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +7 -16
  50. data/lib/metronome_sdk/models/v1/contract_create_params.rb +315 -1459
  51. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +6 -23
  52. data/lib/metronome_sdk/models/v1/contract_list_response.rb +3 -1153
  53. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +2 -6
  54. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +5 -50
  55. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +3 -1154
  56. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +1 -3
  57. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +2 -1
  58. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -1
  59. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -1
  60. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +1 -4
  61. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -7
  62. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +10 -1
  63. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +2 -6
  64. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +5 -50
  65. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +10 -1
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +1 -3
  67. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +1 -3
  68. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -61
  69. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +3 -49
  70. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +4 -51
  71. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +2 -6
  72. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +5 -49
  73. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +103 -123
  74. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +3 -5
  75. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +1 -3
  76. data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +41 -58
  77. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +5 -1
  78. data/lib/metronome_sdk/models/v1/customer.rb +2 -1
  79. data/lib/metronome_sdk/models/v1/customer_create_params.rb +37 -11
  80. data/lib/metronome_sdk/models/v1/customer_detail.rb +11 -2
  81. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +3 -3
  82. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +6 -18
  83. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
  84. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rb +28 -0
  85. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +128 -0
  86. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +143 -0
  87. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +4 -6
  88. data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
  89. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +37 -8
  90. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +2 -0
  91. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +2 -0
  92. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +10 -60
  93. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +6 -48
  94. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +48 -54
  95. data/lib/metronome_sdk/models/v1/customers/invoice.rb +197 -66
  96. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +1 -4
  97. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
  98. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +2 -6
  99. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -1
  100. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +4 -11
  101. data/lib/metronome_sdk/models/v1/payment.rb +151 -0
  102. data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
  103. data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
  104. data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
  105. data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
  106. data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
  107. data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
  108. data/lib/metronome_sdk/models/v1/plan_detail.rb +9 -5
  109. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -1
  110. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -1
  111. data/lib/metronome_sdk/models/v1/plan_list_response.rb +5 -1
  112. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +1 -4
  113. data/lib/metronome_sdk/models/v1/usage_list_params.rb +1 -3
  114. data/lib/metronome_sdk/models/v1/usage_list_response.rb +45 -62
  115. data/lib/metronome_sdk/models/v1/usage_search_response.rb +4 -7
  116. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +37 -58
  117. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +34 -49
  118. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +552 -2265
  119. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +417 -2317
  120. data/lib/metronome_sdk/models/v2/contract_list_response.rb +3 -4520
  121. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +3 -4528
  122. data/lib/metronome_sdk/models.rb +38 -0
  123. data/lib/metronome_sdk/resources/v1/alerts.rb +90 -16
  124. data/lib/metronome_sdk/resources/v1/audit_logs.rb +39 -4
  125. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +54 -4
  126. data/lib/metronome_sdk/resources/v1/contracts/products.rb +25 -6
  127. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +7 -2
  128. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +10 -2
  129. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +109 -10
  130. data/lib/metronome_sdk/resources/v1/contracts.rb +255 -18
  131. data/lib/metronome_sdk/resources/v1/credit_grants.rb +2 -1
  132. data/lib/metronome_sdk/resources/v1/custom_fields.rb +51 -14
  133. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +127 -13
  134. data/lib/metronome_sdk/resources/v1/customers/commits.rb +119 -9
  135. data/lib/metronome_sdk/resources/v1/customers/credits.rb +104 -8
  136. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +179 -8
  137. data/lib/metronome_sdk/resources/v1/customers.rb +175 -15
  138. data/lib/metronome_sdk/resources/v1/dashboards.rb +29 -3
  139. data/lib/metronome_sdk/resources/v1/invoices.rb +23 -2
  140. data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
  141. data/lib/metronome_sdk/resources/v1/pricing_units.rb +6 -1
  142. data/lib/metronome_sdk/resources/v1/services.rb +6 -4
  143. data/lib/metronome_sdk/resources/v1/usage.rb +188 -13
  144. data/lib/metronome_sdk/resources/v1.rb +4 -0
  145. data/lib/metronome_sdk/resources/v2/contracts.rb +120 -18
  146. data/lib/metronome_sdk/version.rb +1 -1
  147. data/lib/metronome_sdk.rb +33 -3
  148. data/rbi/metronome_sdk/errors.rbi +31 -4
  149. data/rbi/metronome_sdk/file_part.rbi +1 -1
  150. data/rbi/metronome_sdk/internal/body_cursor_page.rbi +22 -0
  151. data/rbi/metronome_sdk/internal/cursor_page_without_limit.rbi +22 -0
  152. data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
  153. data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
  154. data/rbi/metronome_sdk/internal/util.rbi +1 -1
  155. data/rbi/metronome_sdk/models/base_threshold_commit.rbi +58 -0
  156. data/rbi/metronome_sdk/models/commit.rbi +26 -348
  157. data/rbi/metronome_sdk/models/commit_hierarchy_configuration.rbi +280 -0
  158. data/rbi/metronome_sdk/models/commit_rate.rbi +85 -0
  159. data/rbi/metronome_sdk/models/commit_specifier.rbi +71 -0
  160. data/rbi/metronome_sdk/models/commit_specifier_input.rbi +74 -0
  161. data/rbi/metronome_sdk/models/contract.rbi +768 -0
  162. data/rbi/metronome_sdk/models/contract_v2.rbi +6415 -0
  163. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +186 -2509
  164. data/rbi/metronome_sdk/models/credit.rbi +10 -348
  165. data/rbi/metronome_sdk/models/discount.rbi +2 -0
  166. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +424 -0
  167. data/rbi/metronome_sdk/models/override.rbi +8 -193
  168. data/rbi/metronome_sdk/models/override_tier.rbi +29 -0
  169. data/rbi/metronome_sdk/models/overwrite_rate.rbi +137 -0
  170. data/rbi/metronome_sdk/models/payment_gate_config.rbi +317 -0
  171. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +326 -0
  172. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +183 -0
  173. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +188 -0
  174. data/rbi/metronome_sdk/models/pro_service.rbi +2 -0
  175. data/rbi/metronome_sdk/models/recurring_commit_subscription_config.rbi +125 -0
  176. data/rbi/metronome_sdk/models/scheduled_charge.rbi +2 -0
  177. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +76 -0
  178. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -0
  179. data/rbi/metronome_sdk/models/subscription.rbi +635 -0
  180. data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +61 -0
  181. data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
  182. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +57 -50
  183. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +2 -0
  184. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +2 -0
  185. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +49 -768
  186. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +2 -0
  187. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1843 -4119
  188. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +8 -59
  189. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +5 -2420
  190. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +6 -129
  191. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +4 -2419
  192. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +2 -0
  193. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +2 -0
  194. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +2 -0
  195. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_params.rbi +2 -0
  196. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +2 -0
  197. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +6 -129
  198. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +2 -0
  199. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +4 -129
  200. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +4 -129
  201. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +4 -129
  202. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +6 -129
  203. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +147 -198
  204. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +2 -0
  205. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +117 -165
  206. data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +8 -1
  207. data/rbi/metronome_sdk/models/v1/customer.rbi +2 -0
  208. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +88 -3
  209. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +10 -0
  210. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +2 -0
  211. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +6 -21
  212. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
  213. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbi +51 -0
  214. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +265 -0
  215. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +348 -0
  216. data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
  217. data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
  218. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +68 -8
  219. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +10 -0
  220. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +10 -0
  221. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +6 -90
  222. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +6 -90
  223. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +54 -47
  224. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +316 -68
  225. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
  226. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +2 -0
  227. data/rbi/metronome_sdk/models/v1/payment.rbi +316 -0
  228. data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
  229. data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
  230. data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
  231. data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
  232. data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
  233. data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
  234. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +2 -0
  235. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +2 -0
  236. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +2 -0
  237. data/rbi/metronome_sdk/models/v1/plan_list_response.rbi +8 -1
  238. data/rbi/metronome_sdk/models/v1/usage_list_response.rbi +45 -86
  239. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +2 -0
  240. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +74 -76
  241. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +74 -76
  242. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3875 -7234
  243. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1733 -6207
  244. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +5 -9867
  245. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +6 -9866
  246. data/rbi/metronome_sdk/models.rbi +44 -0
  247. data/rbi/metronome_sdk/resources/v1/alerts.rbi +101 -27
  248. data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +39 -4
  249. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +54 -4
  250. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +25 -5
  251. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +7 -2
  252. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +10 -3
  253. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +109 -9
  254. data/rbi/metronome_sdk/resources/v1/contracts.rbi +258 -16
  255. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +5 -1
  256. data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +57 -14
  257. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +133 -11
  258. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +119 -10
  259. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +104 -9
  260. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +159 -7
  261. data/rbi/metronome_sdk/resources/v1/customers.rbi +162 -14
  262. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +29 -3
  263. data/rbi/metronome_sdk/resources/v1/invoices.rbi +23 -2
  264. data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
  265. data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +6 -1
  266. data/rbi/metronome_sdk/resources/v1/services.rbi +6 -4
  267. data/rbi/metronome_sdk/resources/v1/usage.rbi +191 -13
  268. data/rbi/metronome_sdk/resources/v1.rbi +3 -0
  269. data/rbi/metronome_sdk/resources/v2/contracts.rbi +134 -23
  270. data/sig/metronome_sdk/errors.rbs +7 -0
  271. data/sig/metronome_sdk/file_part.rbs +1 -1
  272. data/sig/metronome_sdk/internal/body_cursor_page.rbs +13 -0
  273. data/sig/metronome_sdk/internal/cursor_page_without_limit.rbs +13 -0
  274. data/sig/metronome_sdk/models/base_threshold_commit.rbs +26 -0
  275. data/sig/metronome_sdk/models/commit.rbs +17 -170
  276. data/sig/metronome_sdk/models/commit_hierarchy_configuration.rbs +117 -0
  277. data/sig/metronome_sdk/models/commit_rate.rbs +48 -0
  278. data/sig/metronome_sdk/models/commit_specifier.rbs +47 -0
  279. data/sig/metronome_sdk/models/commit_specifier_input.rbs +47 -0
  280. data/sig/metronome_sdk/models/contract.rbs +398 -0
  281. data/sig/metronome_sdk/models/contract_v2.rbs +3108 -0
  282. data/sig/metronome_sdk/models/contract_without_amendments.rbs +54 -976
  283. data/sig/metronome_sdk/models/credit.rbs +12 -170
  284. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +152 -0
  285. data/sig/metronome_sdk/models/override.rbs +12 -101
  286. data/sig/metronome_sdk/models/override_tier.rbs +17 -0
  287. data/sig/metronome_sdk/models/overwrite_rate.rbs +78 -0
  288. data/sig/metronome_sdk/models/payment_gate_config.rbs +124 -0
  289. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +124 -0
  290. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +82 -0
  291. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +82 -0
  292. data/sig/metronome_sdk/models/recurring_commit_subscription_config.rbs +51 -0
  293. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +35 -0
  294. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +35 -0
  295. data/sig/metronome_sdk/models/subscription.rbs +295 -0
  296. data/sig/metronome_sdk/models/update_base_threshold_commit.rbs +28 -0
  297. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +4 -2
  298. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +26 -341
  299. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +219 -1184
  300. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +4 -25
  301. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +4 -1041
  302. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +6 -54
  303. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +4 -1041
  304. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +6 -54
  305. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +6 -54
  306. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +6 -54
  307. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +6 -54
  308. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +6 -54
  309. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +72 -94
  310. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +53 -75
  311. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +31 -4
  312. data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
  313. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
  314. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
  315. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbs +32 -0
  316. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +113 -0
  317. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +133 -0
  318. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +21 -0
  319. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +7 -1
  320. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +6 -1
  321. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +6 -50
  322. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +6 -50
  323. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +4 -2
  324. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +137 -24
  325. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
  326. data/sig/metronome_sdk/models/v1/payment.rbs +191 -0
  327. data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
  328. data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
  329. data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
  330. data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
  331. data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
  332. data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
  333. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +33 -55
  334. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +28 -43
  335. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +28 -43
  336. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +412 -1793
  337. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +342 -2149
  338. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +4 -4426
  339. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +4 -4426
  340. data/sig/metronome_sdk/models.rbs +38 -0
  341. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  342. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -3
  343. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -1
  344. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  345. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +2 -1
  346. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +2 -2
  347. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +2 -2
  348. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
  349. data/sig/metronome_sdk/resources/v1/customers.rbs +11 -0
  350. data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
  351. data/sig/metronome_sdk/resources/v1/usage.rbs +1 -1
  352. data/sig/metronome_sdk/resources/v1.rbs +2 -0
  353. data/sig/metronome_sdk/resources/v2/contracts.rbs +10 -4
  354. metadata +101 -11
  355. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +0 -29
  356. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +0 -26
  357. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +0 -26
  358. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +0 -46
  359. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +0 -45
  360. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +0 -45
  361. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +0 -29
  362. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +0 -26
  363. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +0 -26
@@ -12,7 +12,7 @@ module MetronomeSDK
12
12
  total: Float,
13
13
  type: String,
14
14
  amendment_id: String,
15
- billable_status: MetronomeSDK::Models::V1::Customers::Invoice::billable_status,
15
+ billable_status: top,
16
16
  contract_custom_fields: ::Hash[Symbol, String],
17
17
  contract_id: String,
18
18
  correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -53,11 +53,9 @@ module MetronomeSDK
53
53
 
54
54
  def amendment_id=: (String) -> String
55
55
 
56
- attr_reader billable_status: MetronomeSDK::Models::V1::Customers::Invoice::billable_status?
56
+ attr_reader billable_status: top?
57
57
 
58
- def billable_status=: (
59
- MetronomeSDK::Models::V1::Customers::Invoice::billable_status
60
- ) -> MetronomeSDK::Models::V1::Customers::Invoice::billable_status
58
+ def billable_status=: (top) -> top
61
59
 
62
60
  attr_reader contract_custom_fields: ::Hash[Symbol, String]?
63
61
 
@@ -154,7 +152,7 @@ module MetronomeSDK
154
152
  total: Float,
155
153
  type: String,
156
154
  ?amendment_id: String,
157
- ?billable_status: MetronomeSDK::Models::V1::Customers::Invoice::billable_status,
155
+ ?billable_status: top,
158
156
  ?contract_custom_fields: ::Hash[Symbol, String],
159
157
  ?contract_id: String,
160
158
  ?correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -185,7 +183,7 @@ module MetronomeSDK
185
183
  total: Float,
186
184
  type: String,
187
185
  amendment_id: String,
188
- billable_status: MetronomeSDK::Models::V1::Customers::Invoice::billable_status,
186
+ billable_status: top,
189
187
  contract_custom_fields: ::Hash[Symbol, String],
190
188
  contract_id: String,
191
189
  correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -738,17 +736,6 @@ module MetronomeSDK
738
736
  end
739
737
  end
740
738
 
741
- type billable_status = :billable | :unbillable
742
-
743
- module BillableStatus
744
- extend MetronomeSDK::Internal::Type::Enum
745
-
746
- BILLABLE: :billable
747
- UNBILLABLE: :unbillable
748
-
749
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::billable_status]
750
- end
751
-
752
739
  type correction_record =
753
740
  {
754
741
  corrected_invoice_id: String,
@@ -789,7 +776,11 @@ module MetronomeSDK
789
776
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
790
777
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
791
778
  invoice_id: String,
792
- issued_at_timestamp: Time
779
+ invoiced_sub_total: Float,
780
+ invoiced_total: Float,
781
+ issued_at_timestamp: Time,
782
+ pdf_url: String,
783
+ tax: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
793
784
  }
794
785
 
795
786
  class CorrectedExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
@@ -805,22 +796,48 @@ module MetronomeSDK
805
796
 
806
797
  def invoice_id=: (String) -> String
807
798
 
799
+ attr_reader invoiced_sub_total: Float?
800
+
801
+ def invoiced_sub_total=: (Float) -> Float
802
+
803
+ attr_reader invoiced_total: Float?
804
+
805
+ def invoiced_total=: (Float) -> Float
806
+
808
807
  attr_reader issued_at_timestamp: Time?
809
808
 
810
809
  def issued_at_timestamp=: (Time) -> Time
811
810
 
811
+ attr_reader pdf_url: String?
812
+
813
+ def pdf_url=: (String) -> String
814
+
815
+ attr_reader tax: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax?
816
+
817
+ def tax=: (
818
+ MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
819
+ ) -> MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
820
+
812
821
  def initialize: (
813
822
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
814
823
  ?external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
815
824
  ?invoice_id: String,
816
- ?issued_at_timestamp: Time
825
+ ?invoiced_sub_total: Float,
826
+ ?invoiced_total: Float,
827
+ ?issued_at_timestamp: Time,
828
+ ?pdf_url: String,
829
+ ?tax: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
817
830
  ) -> void
818
831
 
819
832
  def to_hash: -> {
820
833
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
821
834
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
822
835
  invoice_id: String,
823
- issued_at_timestamp: Time
836
+ invoiced_sub_total: Float,
837
+ invoiced_total: Float,
838
+ issued_at_timestamp: Time,
839
+ pdf_url: String,
840
+ tax: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
824
841
  }
825
842
 
826
843
  type billing_provider_type =
@@ -878,6 +895,39 @@ module MetronomeSDK
878
895
 
879
896
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status]
880
897
  end
898
+
899
+ type tax =
900
+ {
901
+ total_tax_amount: Float,
902
+ total_taxable_amount: Float,
903
+ transaction_id: String
904
+ }
905
+
906
+ class Tax < MetronomeSDK::Internal::Type::BaseModel
907
+ attr_reader total_tax_amount: Float?
908
+
909
+ def total_tax_amount=: (Float) -> Float
910
+
911
+ attr_reader total_taxable_amount: Float?
912
+
913
+ def total_taxable_amount=: (Float) -> Float
914
+
915
+ attr_reader transaction_id: String?
916
+
917
+ def transaction_id=: (String) -> String
918
+
919
+ def initialize: (
920
+ ?total_tax_amount: Float,
921
+ ?total_taxable_amount: Float,
922
+ ?transaction_id: String
923
+ ) -> void
924
+
925
+ def to_hash: -> {
926
+ total_tax_amount: Float,
927
+ total_taxable_amount: Float,
928
+ transaction_id: String
929
+ }
930
+ end
881
931
  end
882
932
  end
883
933
 
@@ -886,7 +936,11 @@ module MetronomeSDK
886
936
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
887
937
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
888
938
  invoice_id: String,
889
- issued_at_timestamp: Time
939
+ invoiced_sub_total: Float,
940
+ invoiced_total: Float,
941
+ issued_at_timestamp: Time,
942
+ pdf_url: String,
943
+ tax: MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
890
944
  }
891
945
 
892
946
  class ExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
@@ -902,22 +956,48 @@ module MetronomeSDK
902
956
 
903
957
  def invoice_id=: (String) -> String
904
958
 
959
+ attr_reader invoiced_sub_total: Float?
960
+
961
+ def invoiced_sub_total=: (Float) -> Float
962
+
963
+ attr_reader invoiced_total: Float?
964
+
965
+ def invoiced_total=: (Float) -> Float
966
+
905
967
  attr_reader issued_at_timestamp: Time?
906
968
 
907
969
  def issued_at_timestamp=: (Time) -> Time
908
970
 
971
+ attr_reader pdf_url: String?
972
+
973
+ def pdf_url=: (String) -> String
974
+
975
+ attr_reader tax: MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax?
976
+
977
+ def tax=: (
978
+ MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
979
+ ) -> MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
980
+
909
981
  def initialize: (
910
982
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
911
983
  ?external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
912
984
  ?invoice_id: String,
913
- ?issued_at_timestamp: Time
985
+ ?invoiced_sub_total: Float,
986
+ ?invoiced_total: Float,
987
+ ?issued_at_timestamp: Time,
988
+ ?pdf_url: String,
989
+ ?tax: MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
914
990
  ) -> void
915
991
 
916
992
  def to_hash: -> {
917
993
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
918
994
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
919
995
  invoice_id: String,
920
- issued_at_timestamp: Time
996
+ invoiced_sub_total: Float,
997
+ invoiced_total: Float,
998
+ issued_at_timestamp: Time,
999
+ pdf_url: String,
1000
+ tax: MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
921
1001
  }
922
1002
 
923
1003
  type billing_provider_type =
@@ -975,6 +1055,39 @@ module MetronomeSDK
975
1055
 
976
1056
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status]
977
1057
  end
1058
+
1059
+ type tax =
1060
+ {
1061
+ total_tax_amount: Float,
1062
+ total_taxable_amount: Float,
1063
+ transaction_id: String
1064
+ }
1065
+
1066
+ class Tax < MetronomeSDK::Internal::Type::BaseModel
1067
+ attr_reader total_tax_amount: Float?
1068
+
1069
+ def total_tax_amount=: (Float) -> Float
1070
+
1071
+ attr_reader total_taxable_amount: Float?
1072
+
1073
+ def total_taxable_amount=: (Float) -> Float
1074
+
1075
+ attr_reader transaction_id: String?
1076
+
1077
+ def transaction_id=: (String) -> String
1078
+
1079
+ def initialize: (
1080
+ ?total_tax_amount: Float,
1081
+ ?total_taxable_amount: Float,
1082
+ ?transaction_id: String
1083
+ ) -> void
1084
+
1085
+ def to_hash: -> {
1086
+ total_tax_amount: Float,
1087
+ total_taxable_amount: Float,
1088
+ transaction_id: String
1089
+ }
1090
+ end
978
1091
  end
979
1092
 
980
1093
  type invoice_adjustment =
@@ -0,0 +1,32 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ module Customers
5
+ type invoice_retrieve_pdf_params =
6
+ { customer_id: String, invoice_id: String }
7
+ & MetronomeSDK::Internal::Type::request_parameters
8
+
9
+ class InvoiceRetrievePdfParams < MetronomeSDK::Internal::Type::BaseModel
10
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
11
+ include MetronomeSDK::Internal::Type::RequestParameters
12
+
13
+ attr_accessor customer_id: String
14
+
15
+ attr_accessor invoice_id: String
16
+
17
+ def initialize: (
18
+ customer_id: String,
19
+ invoice_id: String,
20
+ ?request_options: MetronomeSDK::request_opts
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ customer_id: String,
25
+ invoice_id: String,
26
+ request_options: MetronomeSDK::RequestOptions
27
+ }
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,191 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type payment =
5
+ {
6
+ id: String,
7
+ amount: Float,
8
+ amount_paid: Float,
9
+ contract_id: String,
10
+ created_at: Time,
11
+ customer_id: String,
12
+ error_message: String,
13
+ fiat_credit_type: MetronomeSDK::CreditTypeData,
14
+ invoice_id: String,
15
+ payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway,
16
+ status: MetronomeSDK::Models::V1::payment_status,
17
+ updated_at: Time
18
+ }
19
+
20
+ class Payment < MetronomeSDK::Internal::Type::BaseModel
21
+ attr_accessor id: String
22
+
23
+ attr_reader amount: Float?
24
+
25
+ def amount=: (Float) -> Float
26
+
27
+ attr_reader amount_paid: Float?
28
+
29
+ def amount_paid=: (Float) -> Float
30
+
31
+ attr_reader contract_id: String?
32
+
33
+ def contract_id=: (String) -> String
34
+
35
+ attr_reader created_at: Time?
36
+
37
+ def created_at=: (Time) -> Time
38
+
39
+ attr_reader customer_id: String?
40
+
41
+ def customer_id=: (String) -> String
42
+
43
+ attr_reader error_message: String?
44
+
45
+ def error_message=: (String) -> String
46
+
47
+ attr_reader fiat_credit_type: MetronomeSDK::CreditTypeData?
48
+
49
+ def fiat_credit_type=: (
50
+ MetronomeSDK::CreditTypeData
51
+ ) -> MetronomeSDK::CreditTypeData
52
+
53
+ attr_reader invoice_id: String?
54
+
55
+ def invoice_id=: (String) -> String
56
+
57
+ attr_reader payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway?
58
+
59
+ def payment_gateway=: (
60
+ MetronomeSDK::V1::Payment::PaymentGateway
61
+ ) -> MetronomeSDK::V1::Payment::PaymentGateway
62
+
63
+ attr_reader status: MetronomeSDK::Models::V1::payment_status?
64
+
65
+ def status=: (
66
+ MetronomeSDK::Models::V1::payment_status
67
+ ) -> MetronomeSDK::Models::V1::payment_status
68
+
69
+ attr_reader updated_at: Time?
70
+
71
+ def updated_at=: (Time) -> Time
72
+
73
+ def initialize: (
74
+ id: String,
75
+ ?amount: Float,
76
+ ?amount_paid: Float,
77
+ ?contract_id: String,
78
+ ?created_at: Time,
79
+ ?customer_id: String,
80
+ ?error_message: String,
81
+ ?fiat_credit_type: MetronomeSDK::CreditTypeData,
82
+ ?invoice_id: String,
83
+ ?payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway,
84
+ ?status: MetronomeSDK::Models::V1::payment_status,
85
+ ?updated_at: Time
86
+ ) -> void
87
+
88
+ def to_hash: -> {
89
+ id: String,
90
+ amount: Float,
91
+ amount_paid: Float,
92
+ contract_id: String,
93
+ created_at: Time,
94
+ customer_id: String,
95
+ error_message: String,
96
+ fiat_credit_type: MetronomeSDK::CreditTypeData,
97
+ invoice_id: String,
98
+ payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway,
99
+ status: MetronomeSDK::Models::V1::payment_status,
100
+ updated_at: Time
101
+ }
102
+
103
+ type payment_gateway =
104
+ {
105
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe,
106
+ type: MetronomeSDK::Models::V1::Payment::PaymentGateway::type_
107
+ }
108
+
109
+ class PaymentGateway < MetronomeSDK::Internal::Type::BaseModel
110
+ attr_accessor stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe
111
+
112
+ attr_accessor type: MetronomeSDK::Models::V1::Payment::PaymentGateway::type_
113
+
114
+ def initialize: (
115
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe,
116
+ type: MetronomeSDK::Models::V1::Payment::PaymentGateway::type_
117
+ ) -> void
118
+
119
+ def to_hash: -> {
120
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe,
121
+ type: MetronomeSDK::Models::V1::Payment::PaymentGateway::type_
122
+ }
123
+
124
+ type stripe =
125
+ {
126
+ payment_intent_id: String,
127
+ error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
128
+ }
129
+
130
+ class Stripe < MetronomeSDK::Internal::Type::BaseModel
131
+ attr_accessor payment_intent_id: String
132
+
133
+ attr_reader error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error?
134
+
135
+ def error=: (
136
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
137
+ ) -> MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
138
+
139
+ def initialize: (
140
+ payment_intent_id: String,
141
+ ?error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
142
+ ) -> void
143
+
144
+ def to_hash: -> {
145
+ payment_intent_id: String,
146
+ error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
147
+ }
148
+
149
+ type error = { code: String, decline_code: String, type: String }
150
+
151
+ class Error < MetronomeSDK::Internal::Type::BaseModel
152
+ attr_reader code: String?
153
+
154
+ def code=: (String) -> String
155
+
156
+ attr_reader decline_code: String?
157
+
158
+ def decline_code=: (String) -> String
159
+
160
+ attr_reader type: String?
161
+
162
+ def type=: (String) -> String
163
+
164
+ def initialize: (
165
+ ?code: String,
166
+ ?decline_code: String,
167
+ ?type: String
168
+ ) -> void
169
+
170
+ def to_hash: -> {
171
+ code: String,
172
+ decline_code: String,
173
+ type: String
174
+ }
175
+ end
176
+ end
177
+
178
+ type type_ = :stripe
179
+
180
+ module Type
181
+ extend MetronomeSDK::Internal::Type::Enum
182
+
183
+ STRIPE: :stripe
184
+
185
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Payment::PaymentGateway::type_]
186
+ end
187
+ end
188
+ end
189
+ end
190
+ end
191
+ end
@@ -0,0 +1,30 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type payment_attempt_params =
5
+ { customer_id: String, invoice_id: String }
6
+ & MetronomeSDK::Internal::Type::request_parameters
7
+
8
+ class PaymentAttemptParams < MetronomeSDK::Internal::Type::BaseModel
9
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
10
+ include MetronomeSDK::Internal::Type::RequestParameters
11
+
12
+ attr_accessor customer_id: String
13
+
14
+ attr_accessor invoice_id: String
15
+
16
+ def initialize: (
17
+ customer_id: String,
18
+ invoice_id: String,
19
+ ?request_options: MetronomeSDK::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ customer_id: String,
24
+ invoice_id: String,
25
+ request_options: MetronomeSDK::RequestOptions
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,15 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type payment_attempt_response = { data: MetronomeSDK::V1::Payment }
5
+
6
+ class PaymentAttemptResponse < MetronomeSDK::Internal::Type::BaseModel
7
+ attr_accessor data: MetronomeSDK::V1::Payment
8
+
9
+ def initialize: (data: MetronomeSDK::V1::Payment) -> void
10
+
11
+ def to_hash: -> { data: MetronomeSDK::V1::Payment }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,30 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type payment_cancel_params =
5
+ { customer_id: String, invoice_id: String }
6
+ & MetronomeSDK::Internal::Type::request_parameters
7
+
8
+ class PaymentCancelParams < MetronomeSDK::Internal::Type::BaseModel
9
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
10
+ include MetronomeSDK::Internal::Type::RequestParameters
11
+
12
+ attr_accessor customer_id: String
13
+
14
+ attr_accessor invoice_id: String
15
+
16
+ def initialize: (
17
+ customer_id: String,
18
+ invoice_id: String,
19
+ ?request_options: MetronomeSDK::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ customer_id: String,
24
+ invoice_id: String,
25
+ request_options: MetronomeSDK::RequestOptions
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,15 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type payment_cancel_response = { data: MetronomeSDK::V1::Payment }
5
+
6
+ class PaymentCancelResponse < MetronomeSDK::Internal::Type::BaseModel
7
+ attr_accessor data: MetronomeSDK::V1::Payment
8
+
9
+ def initialize: (data: MetronomeSDK::V1::Payment) -> void
10
+
11
+ def to_hash: -> { data: MetronomeSDK::V1::Payment }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,56 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type payment_list_params =
5
+ {
6
+ customer_id: String,
7
+ invoice_id: String,
8
+ limit: Integer,
9
+ next_page: String,
10
+ statuses: ::Array[MetronomeSDK::Models::V1::payment_status]
11
+ }
12
+ & MetronomeSDK::Internal::Type::request_parameters
13
+
14
+ class PaymentListParams < MetronomeSDK::Internal::Type::BaseModel
15
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
16
+ include MetronomeSDK::Internal::Type::RequestParameters
17
+
18
+ attr_accessor customer_id: String
19
+
20
+ attr_accessor invoice_id: String
21
+
22
+ attr_reader limit: Integer?
23
+
24
+ def limit=: (Integer) -> Integer
25
+
26
+ attr_reader next_page: String?
27
+
28
+ def next_page=: (String) -> String
29
+
30
+ attr_reader statuses: ::Array[MetronomeSDK::Models::V1::payment_status]?
31
+
32
+ def statuses=: (
33
+ ::Array[MetronomeSDK::Models::V1::payment_status]
34
+ ) -> ::Array[MetronomeSDK::Models::V1::payment_status]
35
+
36
+ def initialize: (
37
+ customer_id: String,
38
+ invoice_id: String,
39
+ ?limit: Integer,
40
+ ?next_page: String,
41
+ ?statuses: ::Array[MetronomeSDK::Models::V1::payment_status],
42
+ ?request_options: MetronomeSDK::request_opts
43
+ ) -> void
44
+
45
+ def to_hash: -> {
46
+ customer_id: String,
47
+ invoice_id: String,
48
+ limit: Integer,
49
+ next_page: String,
50
+ statuses: ::Array[MetronomeSDK::Models::V1::payment_status],
51
+ request_options: MetronomeSDK::RequestOptions
52
+ }
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,19 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type payment_status =
5
+ :pending | :requires_intervention | :paid | :canceled
6
+
7
+ module PaymentStatus
8
+ extend MetronomeSDK::Internal::Type::Enum
9
+
10
+ PENDING: :pending
11
+ REQUIRES_INTERVENTION: :requires_intervention
12
+ PAID: :paid
13
+ CANCELED: :canceled
14
+
15
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::payment_status]
16
+ end
17
+ end
18
+ end
19
+ end