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
@@ -0,0 +1,50 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ module Customers
7
+ class InvoiceRetrievePdfParams < MetronomeSDK::Internal::Type::BaseModel
8
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
9
+ include MetronomeSDK::Internal::Type::RequestParameters
10
+
11
+ OrHash =
12
+ T.type_alias do
13
+ T.any(
14
+ MetronomeSDK::V1::Customers::InvoiceRetrievePdfParams,
15
+ MetronomeSDK::Internal::AnyHash
16
+ )
17
+ end
18
+
19
+ sig { returns(String) }
20
+ attr_accessor :customer_id
21
+
22
+ sig { returns(String) }
23
+ attr_accessor :invoice_id
24
+
25
+ sig do
26
+ params(
27
+ customer_id: String,
28
+ invoice_id: String,
29
+ request_options: MetronomeSDK::RequestOptions::OrHash
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(customer_id:, invoice_id:, request_options: {})
33
+ end
34
+
35
+ sig do
36
+ override.returns(
37
+ {
38
+ customer_id: String,
39
+ invoice_id: String,
40
+ request_options: MetronomeSDK::RequestOptions
41
+ }
42
+ )
43
+ end
44
+ def to_hash
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -17,6 +17,7 @@ module MetronomeSDK
17
17
  sig { returns(String) }
18
18
  attr_accessor :id
19
19
 
20
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
20
21
  sig { returns(T::Hash[Symbol, String]) }
21
22
  attr_accessor :custom_fields
22
23
 
@@ -79,6 +80,7 @@ module MetronomeSDK
79
80
  def self.new(
80
81
  # the ID of the customer plan
81
82
  id:,
83
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
82
84
  custom_fields:,
83
85
  plan_description:,
84
86
  # the ID of the plan
@@ -0,0 +1,316 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class Payment < MetronomeSDK::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(MetronomeSDK::V1::Payment, MetronomeSDK::Internal::AnyHash)
10
+ end
11
+
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ sig { returns(T.nilable(Float)) }
16
+ attr_reader :amount
17
+
18
+ sig { params(amount: Float).void }
19
+ attr_writer :amount
20
+
21
+ sig { returns(T.nilable(Float)) }
22
+ attr_reader :amount_paid
23
+
24
+ sig { params(amount_paid: Float).void }
25
+ attr_writer :amount_paid
26
+
27
+ sig { returns(T.nilable(String)) }
28
+ attr_reader :contract_id
29
+
30
+ sig { params(contract_id: String).void }
31
+ attr_writer :contract_id
32
+
33
+ sig { returns(T.nilable(Time)) }
34
+ attr_reader :created_at
35
+
36
+ sig { params(created_at: Time).void }
37
+ attr_writer :created_at
38
+
39
+ sig { returns(T.nilable(String)) }
40
+ attr_reader :customer_id
41
+
42
+ sig { params(customer_id: String).void }
43
+ attr_writer :customer_id
44
+
45
+ sig { returns(T.nilable(String)) }
46
+ attr_reader :error_message
47
+
48
+ sig { params(error_message: String).void }
49
+ attr_writer :error_message
50
+
51
+ sig { returns(T.nilable(MetronomeSDK::CreditTypeData)) }
52
+ attr_reader :fiat_credit_type
53
+
54
+ sig do
55
+ params(fiat_credit_type: MetronomeSDK::CreditTypeData::OrHash).void
56
+ end
57
+ attr_writer :fiat_credit_type
58
+
59
+ sig { returns(T.nilable(String)) }
60
+ attr_reader :invoice_id
61
+
62
+ sig { params(invoice_id: String).void }
63
+ attr_writer :invoice_id
64
+
65
+ sig { returns(T.nilable(MetronomeSDK::V1::Payment::PaymentGateway)) }
66
+ attr_reader :payment_gateway
67
+
68
+ sig do
69
+ params(
70
+ payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway::OrHash
71
+ ).void
72
+ end
73
+ attr_writer :payment_gateway
74
+
75
+ sig do
76
+ returns(T.nilable(MetronomeSDK::V1::PaymentStatus::TaggedSymbol))
77
+ end
78
+ attr_reader :status
79
+
80
+ sig { params(status: MetronomeSDK::V1::PaymentStatus::OrSymbol).void }
81
+ attr_writer :status
82
+
83
+ sig { returns(T.nilable(Time)) }
84
+ attr_reader :updated_at
85
+
86
+ sig { params(updated_at: Time).void }
87
+ attr_writer :updated_at
88
+
89
+ sig do
90
+ params(
91
+ id: String,
92
+ amount: Float,
93
+ amount_paid: Float,
94
+ contract_id: String,
95
+ created_at: Time,
96
+ customer_id: String,
97
+ error_message: String,
98
+ fiat_credit_type: MetronomeSDK::CreditTypeData::OrHash,
99
+ invoice_id: String,
100
+ payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway::OrHash,
101
+ status: MetronomeSDK::V1::PaymentStatus::OrSymbol,
102
+ updated_at: Time
103
+ ).returns(T.attached_class)
104
+ end
105
+ def self.new(
106
+ id:,
107
+ amount: nil,
108
+ amount_paid: nil,
109
+ contract_id: nil,
110
+ created_at: nil,
111
+ customer_id: nil,
112
+ error_message: nil,
113
+ fiat_credit_type: nil,
114
+ invoice_id: nil,
115
+ payment_gateway: nil,
116
+ status: nil,
117
+ updated_at: nil
118
+ )
119
+ end
120
+
121
+ sig do
122
+ override.returns(
123
+ {
124
+ id: String,
125
+ amount: Float,
126
+ amount_paid: Float,
127
+ contract_id: String,
128
+ created_at: Time,
129
+ customer_id: String,
130
+ error_message: String,
131
+ fiat_credit_type: MetronomeSDK::CreditTypeData,
132
+ invoice_id: String,
133
+ payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway,
134
+ status: MetronomeSDK::V1::PaymentStatus::TaggedSymbol,
135
+ updated_at: Time
136
+ }
137
+ )
138
+ end
139
+ def to_hash
140
+ end
141
+
142
+ class PaymentGateway < MetronomeSDK::Internal::Type::BaseModel
143
+ OrHash =
144
+ T.type_alias do
145
+ T.any(
146
+ MetronomeSDK::V1::Payment::PaymentGateway,
147
+ MetronomeSDK::Internal::AnyHash
148
+ )
149
+ end
150
+
151
+ sig { returns(MetronomeSDK::V1::Payment::PaymentGateway::Stripe) }
152
+ attr_reader :stripe
153
+
154
+ sig do
155
+ params(
156
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::OrHash
157
+ ).void
158
+ end
159
+ attr_writer :stripe
160
+
161
+ sig do
162
+ returns(
163
+ MetronomeSDK::V1::Payment::PaymentGateway::Type::TaggedSymbol
164
+ )
165
+ end
166
+ attr_accessor :type
167
+
168
+ sig do
169
+ params(
170
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::OrHash,
171
+ type: MetronomeSDK::V1::Payment::PaymentGateway::Type::OrSymbol
172
+ ).returns(T.attached_class)
173
+ end
174
+ def self.new(stripe:, type:)
175
+ end
176
+
177
+ sig do
178
+ override.returns(
179
+ {
180
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe,
181
+ type:
182
+ MetronomeSDK::V1::Payment::PaymentGateway::Type::TaggedSymbol
183
+ }
184
+ )
185
+ end
186
+ def to_hash
187
+ end
188
+
189
+ class Stripe < MetronomeSDK::Internal::Type::BaseModel
190
+ OrHash =
191
+ T.type_alias do
192
+ T.any(
193
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe,
194
+ MetronomeSDK::Internal::AnyHash
195
+ )
196
+ end
197
+
198
+ sig { returns(String) }
199
+ attr_accessor :payment_intent_id
200
+
201
+ sig do
202
+ returns(
203
+ T.nilable(
204
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
205
+ )
206
+ )
207
+ end
208
+ attr_reader :error
209
+
210
+ sig do
211
+ params(
212
+ error:
213
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error::OrHash
214
+ ).void
215
+ end
216
+ attr_writer :error
217
+
218
+ sig do
219
+ params(
220
+ payment_intent_id: String,
221
+ error:
222
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error::OrHash
223
+ ).returns(T.attached_class)
224
+ end
225
+ def self.new(payment_intent_id:, error: nil)
226
+ end
227
+
228
+ sig do
229
+ override.returns(
230
+ {
231
+ payment_intent_id: String,
232
+ error:
233
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
234
+ }
235
+ )
236
+ end
237
+ def to_hash
238
+ end
239
+
240
+ class Error < MetronomeSDK::Internal::Type::BaseModel
241
+ OrHash =
242
+ T.type_alias do
243
+ T.any(
244
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error,
245
+ MetronomeSDK::Internal::AnyHash
246
+ )
247
+ end
248
+
249
+ sig { returns(T.nilable(String)) }
250
+ attr_reader :code
251
+
252
+ sig { params(code: String).void }
253
+ attr_writer :code
254
+
255
+ sig { returns(T.nilable(String)) }
256
+ attr_reader :decline_code
257
+
258
+ sig { params(decline_code: String).void }
259
+ attr_writer :decline_code
260
+
261
+ sig { returns(T.nilable(String)) }
262
+ attr_reader :type
263
+
264
+ sig { params(type: String).void }
265
+ attr_writer :type
266
+
267
+ sig do
268
+ params(
269
+ code: String,
270
+ decline_code: String,
271
+ type: String
272
+ ).returns(T.attached_class)
273
+ end
274
+ def self.new(code: nil, decline_code: nil, type: nil)
275
+ end
276
+
277
+ sig do
278
+ override.returns(
279
+ { code: String, decline_code: String, type: String }
280
+ )
281
+ end
282
+ def to_hash
283
+ end
284
+ end
285
+ end
286
+
287
+ module Type
288
+ extend MetronomeSDK::Internal::Type::Enum
289
+
290
+ TaggedSymbol =
291
+ T.type_alias do
292
+ T.all(Symbol, MetronomeSDK::V1::Payment::PaymentGateway::Type)
293
+ end
294
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
295
+
296
+ STRIPE =
297
+ T.let(
298
+ :stripe,
299
+ MetronomeSDK::V1::Payment::PaymentGateway::Type::TaggedSymbol
300
+ )
301
+
302
+ sig do
303
+ override.returns(
304
+ T::Array[
305
+ MetronomeSDK::V1::Payment::PaymentGateway::Type::TaggedSymbol
306
+ ]
307
+ )
308
+ end
309
+ def self.values
310
+ end
311
+ end
312
+ end
313
+ end
314
+ end
315
+ end
316
+ end
@@ -0,0 +1,48 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentAttemptParams < MetronomeSDK::Internal::Type::BaseModel
7
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
8
+ include MetronomeSDK::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ MetronomeSDK::V1::PaymentAttemptParams,
14
+ MetronomeSDK::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :customer_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :invoice_id
23
+
24
+ sig do
25
+ params(
26
+ customer_id: String,
27
+ invoice_id: String,
28
+ request_options: MetronomeSDK::RequestOptions::OrHash
29
+ ).returns(T.attached_class)
30
+ end
31
+ def self.new(customer_id:, invoice_id:, request_options: {})
32
+ end
33
+
34
+ sig do
35
+ override.returns(
36
+ {
37
+ customer_id: String,
38
+ invoice_id: String,
39
+ request_options: MetronomeSDK::RequestOptions
40
+ }
41
+ )
42
+ end
43
+ def to_hash
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,35 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentAttemptResponse < MetronomeSDK::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ MetronomeSDK::Models::V1::PaymentAttemptResponse,
11
+ MetronomeSDK::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(MetronomeSDK::V1::Payment) }
16
+ attr_reader :data
17
+
18
+ sig { params(data: MetronomeSDK::V1::Payment::OrHash).void }
19
+ attr_writer :data
20
+
21
+ sig do
22
+ params(data: MetronomeSDK::V1::Payment::OrHash).returns(
23
+ T.attached_class
24
+ )
25
+ end
26
+ def self.new(data:)
27
+ end
28
+
29
+ sig { override.returns({ data: MetronomeSDK::V1::Payment }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,48 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentCancelParams < MetronomeSDK::Internal::Type::BaseModel
7
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
8
+ include MetronomeSDK::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ MetronomeSDK::V1::PaymentCancelParams,
14
+ MetronomeSDK::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :customer_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :invoice_id
23
+
24
+ sig do
25
+ params(
26
+ customer_id: String,
27
+ invoice_id: String,
28
+ request_options: MetronomeSDK::RequestOptions::OrHash
29
+ ).returns(T.attached_class)
30
+ end
31
+ def self.new(customer_id:, invoice_id:, request_options: {})
32
+ end
33
+
34
+ sig do
35
+ override.returns(
36
+ {
37
+ customer_id: String,
38
+ invoice_id: String,
39
+ request_options: MetronomeSDK::RequestOptions
40
+ }
41
+ )
42
+ end
43
+ def to_hash
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,35 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentCancelResponse < MetronomeSDK::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ MetronomeSDK::Models::V1::PaymentCancelResponse,
11
+ MetronomeSDK::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(MetronomeSDK::V1::Payment) }
16
+ attr_reader :data
17
+
18
+ sig { params(data: MetronomeSDK::V1::Payment::OrHash).void }
19
+ attr_writer :data
20
+
21
+ sig do
22
+ params(data: MetronomeSDK::V1::Payment::OrHash).returns(
23
+ T.attached_class
24
+ )
25
+ end
26
+ def self.new(data:)
27
+ end
28
+
29
+ sig { override.returns({ data: MetronomeSDK::V1::Payment }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,91 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentListParams < MetronomeSDK::Internal::Type::BaseModel
7
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
8
+ include MetronomeSDK::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ MetronomeSDK::V1::PaymentListParams,
14
+ MetronomeSDK::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :customer_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :invoice_id
23
+
24
+ # The maximum number of payments to return. Defaults to 25.
25
+ sig { returns(T.nilable(Integer)) }
26
+ attr_reader :limit
27
+
28
+ sig { params(limit: Integer).void }
29
+ attr_writer :limit
30
+
31
+ # The next page token from a previous response.
32
+ sig { returns(T.nilable(String)) }
33
+ attr_reader :next_page
34
+
35
+ sig { params(next_page: String).void }
36
+ attr_writer :next_page
37
+
38
+ sig do
39
+ returns(
40
+ T.nilable(T::Array[MetronomeSDK::V1::PaymentStatus::OrSymbol])
41
+ )
42
+ end
43
+ attr_reader :statuses
44
+
45
+ sig do
46
+ params(
47
+ statuses: T::Array[MetronomeSDK::V1::PaymentStatus::OrSymbol]
48
+ ).void
49
+ end
50
+ attr_writer :statuses
51
+
52
+ sig do
53
+ params(
54
+ customer_id: String,
55
+ invoice_id: String,
56
+ limit: Integer,
57
+ next_page: String,
58
+ statuses: T::Array[MetronomeSDK::V1::PaymentStatus::OrSymbol],
59
+ request_options: MetronomeSDK::RequestOptions::OrHash
60
+ ).returns(T.attached_class)
61
+ end
62
+ def self.new(
63
+ customer_id:,
64
+ invoice_id:,
65
+ # The maximum number of payments to return. Defaults to 25.
66
+ limit: nil,
67
+ # The next page token from a previous response.
68
+ next_page: nil,
69
+ statuses: nil,
70
+ request_options: {}
71
+ )
72
+ end
73
+
74
+ sig do
75
+ override.returns(
76
+ {
77
+ customer_id: String,
78
+ invoice_id: String,
79
+ limit: Integer,
80
+ next_page: String,
81
+ statuses: T::Array[MetronomeSDK::V1::PaymentStatus::OrSymbol],
82
+ request_options: MetronomeSDK::RequestOptions
83
+ }
84
+ )
85
+ end
86
+ def to_hash
87
+ end
88
+ end
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,33 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ module PaymentStatus
7
+ extend MetronomeSDK::Internal::Type::Enum
8
+
9
+ TaggedSymbol =
10
+ T.type_alias { T.all(Symbol, MetronomeSDK::V1::PaymentStatus) }
11
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
12
+
13
+ PENDING = T.let(:pending, MetronomeSDK::V1::PaymentStatus::TaggedSymbol)
14
+ REQUIRES_INTERVENTION =
15
+ T.let(
16
+ :requires_intervention,
17
+ MetronomeSDK::V1::PaymentStatus::TaggedSymbol
18
+ )
19
+ PAID = T.let(:paid, MetronomeSDK::V1::PaymentStatus::TaggedSymbol)
20
+ CANCELED =
21
+ T.let(:canceled, MetronomeSDK::V1::PaymentStatus::TaggedSymbol)
22
+
23
+ sig do
24
+ override.returns(
25
+ T::Array[MetronomeSDK::V1::PaymentStatus::TaggedSymbol]
26
+ )
27
+ end
28
+ def self.values
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -12,6 +12,7 @@ module MetronomeSDK
12
12
  sig { returns(String) }
13
13
  attr_accessor :id
14
14
 
15
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
15
16
  sig { returns(T::Hash[Symbol, String]) }
16
17
  attr_accessor :custom_fields
17
18
 
@@ -81,6 +82,7 @@ module MetronomeSDK
81
82
  end
82
83
  def self.new(
83
84
  id:,
85
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
84
86
  custom_fields:,
85
87
  name:,
86
88
  credit_grants: nil,
@@ -28,6 +28,7 @@ module MetronomeSDK
28
28
  sig { params(credit_type: MetronomeSDK::CreditTypeData::OrHash).void }
29
29
  attr_writer :credit_type
30
30
 
31
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
31
32
  sig { returns(T::Hash[Symbol, String]) }
32
33
  attr_accessor :custom_fields
33
34
 
@@ -112,6 +113,7 @@ module MetronomeSDK
112
113
  id:,
113
114
  charge_type:,
114
115
  credit_type:,
116
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
115
117
  custom_fields:,
116
118
  name:,
117
119
  prices:,