metronome-sdk 1.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +91 -0
  3. data/README.md +1 -1
  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 +1 -1
  7. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  8. data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +1 -1
  9. data/lib/metronome_sdk/internal/transport/base_client.rb +11 -7
  10. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +34 -31
  11. data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
  12. data/lib/metronome_sdk/internal/type/enum.rb +25 -0
  13. data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
  14. data/lib/metronome_sdk/internal/util.rb +8 -7
  15. data/lib/metronome_sdk/models/contract.rb +1 -0
  16. data/lib/metronome_sdk/models/contract_v2.rb +275 -6
  17. data/lib/metronome_sdk/models/contract_without_amendments.rb +2 -2
  18. data/lib/metronome_sdk/models/hierarchy_configuration.rb +123 -2
  19. data/lib/metronome_sdk/models/payment_gate_config.rb +1 -0
  20. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +1 -0
  21. data/lib/metronome_sdk/models/subscription.rb +95 -1
  22. data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
  23. data/lib/metronome_sdk/models/v1/alert_create_params.rb +38 -36
  24. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +1 -0
  25. data/lib/metronome_sdk/models/v1/contract_create_params.rb +157 -9
  26. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
  27. data/lib/metronome_sdk/models/v1/customer_create_params.rb +11 -1
  28. data/lib/metronome_sdk/models/v1/customer_detail.rb +9 -1
  29. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +19 -25
  30. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
  31. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +1 -0
  32. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +1 -0
  33. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +3 -3
  34. data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
  35. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +12 -12
  36. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -1
  37. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +1 -0
  38. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +1 -0
  39. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +6 -1
  40. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +1 -1
  41. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +41 -38
  42. data/lib/metronome_sdk/models/v1/customers/invoice.rb +256 -16
  43. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
  44. data/lib/metronome_sdk/models/v1/payment.rb +157 -0
  45. data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
  46. data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
  47. data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
  48. data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
  49. data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
  50. data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
  51. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rb +65 -0
  52. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rb +12 -0
  53. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_params.rb +73 -0
  54. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_response.rb +31 -0
  55. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_params.rb +26 -0
  56. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_response.rb +105 -0
  57. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +9 -1
  58. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +9 -1
  59. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +219 -9
  60. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +195 -8
  61. data/lib/metronome_sdk/resources/v1/alerts.rb +57 -53
  62. data/lib/metronome_sdk/resources/v1/contracts.rb +8 -5
  63. data/lib/metronome_sdk/resources/v1/credit_grants.rb +10 -5
  64. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +70 -51
  65. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +7 -4
  66. data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -1
  67. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +57 -1
  68. data/lib/metronome_sdk/resources/v1/customers/plans.rb +8 -4
  69. data/lib/metronome_sdk/resources/v1/customers.rb +13 -8
  70. data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
  71. data/lib/metronome_sdk/resources/v1/plans.rb +8 -4
  72. data/lib/metronome_sdk/resources/v1/settings/billing_providers.rb +75 -0
  73. data/lib/metronome_sdk/resources/v1/settings.rb +55 -0
  74. data/lib/metronome_sdk/resources/v1/usage.rb +4 -2
  75. data/lib/metronome_sdk/resources/v1.rb +8 -0
  76. data/lib/metronome_sdk/resources/v2/contracts.rb +9 -3
  77. data/lib/metronome_sdk/version.rb +1 -1
  78. data/lib/metronome_sdk.rb +17 -0
  79. data/rbi/metronome_sdk/errors.rbi +29 -2
  80. data/rbi/metronome_sdk/file_part.rbi +1 -1
  81. data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
  82. data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
  83. data/rbi/metronome_sdk/internal/util.rbi +1 -1
  84. data/rbi/metronome_sdk/models/contract.rbi +5 -0
  85. data/rbi/metronome_sdk/models/contract_v2.rbi +635 -10
  86. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +2 -2
  87. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +286 -6
  88. data/rbi/metronome_sdk/models/payment_gate_config.rbi +5 -0
  89. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +5 -0
  90. data/rbi/metronome_sdk/models/subscription.rbi +190 -0
  91. data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
  92. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +51 -47
  93. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +5 -0
  94. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +326 -10
  95. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
  96. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +11 -0
  97. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +8 -0
  98. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +24 -32
  99. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
  100. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +5 -0
  101. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +5 -0
  102. data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
  103. data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
  104. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +14 -14
  105. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +11 -0
  106. data/rbi/metronome_sdk/models/v1/customers/billing_config_delete_params.rbi +5 -0
  107. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbi +5 -0
  108. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +6 -0
  109. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +2 -2
  110. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +53 -44
  111. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +462 -38
  112. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
  113. data/rbi/metronome_sdk/models/v1/payment.rbi +324 -0
  114. data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
  115. data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
  116. data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
  117. data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
  118. data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
  119. data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
  120. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbi +115 -0
  121. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbi +25 -0
  122. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_params.rbi +157 -0
  123. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_response.rbi +75 -0
  124. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_params.rbi +50 -0
  125. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_response.rbi +245 -0
  126. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +18 -0
  127. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +18 -0
  128. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +536 -12
  129. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +462 -14
  130. data/rbi/metronome_sdk/resources/v1/alerts.rbi +68 -64
  131. data/rbi/metronome_sdk/resources/v1/contracts.rbi +8 -4
  132. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +10 -5
  133. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +73 -54
  134. data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +8 -4
  135. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +3 -2
  136. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +38 -1
  137. data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +8 -4
  138. data/rbi/metronome_sdk/resources/v1/customers.rbi +17 -11
  139. data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
  140. data/rbi/metronome_sdk/resources/v1/plans.rbi +8 -4
  141. data/rbi/metronome_sdk/resources/v1/settings/billing_providers.rbi +63 -0
  142. data/rbi/metronome_sdk/resources/v1/settings.rbi +47 -0
  143. data/rbi/metronome_sdk/resources/v1/usage.rbi +4 -2
  144. data/rbi/metronome_sdk/resources/v1.rbi +6 -0
  145. data/rbi/metronome_sdk/resources/v2/contracts.rbi +14 -0
  146. data/sig/metronome_sdk/errors.rbs +7 -0
  147. data/sig/metronome_sdk/file_part.rbs +1 -1
  148. data/sig/metronome_sdk/models/contract.rbs +2 -0
  149. data/sig/metronome_sdk/models/contract_v2.rbs +241 -12
  150. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +87 -6
  151. data/sig/metronome_sdk/models/payment_gate_config.rbs +2 -1
  152. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +2 -1
  153. data/sig/metronome_sdk/models/subscription.rbs +80 -0
  154. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +2 -1
  155. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +91 -5
  156. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
  157. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +2 -0
  158. data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
  159. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
  160. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
  161. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +2 -0
  162. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +2 -0
  163. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +2 -0
  164. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +2 -0
  165. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +2 -0
  166. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +2 -0
  167. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +244 -19
  168. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
  169. data/sig/metronome_sdk/models/v1/payment.rbs +198 -0
  170. data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
  171. data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
  172. data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
  173. data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
  174. data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
  175. data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
  176. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbs +54 -0
  177. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbs +13 -0
  178. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_params.rbs +64 -0
  179. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_response.rbs +34 -0
  180. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_params.rbs +28 -0
  181. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_response.rbs +102 -0
  182. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +9 -0
  183. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +9 -0
  184. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +184 -7
  185. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +221 -18
  186. data/sig/metronome_sdk/resources/v1/contracts.rbs +1 -0
  187. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
  188. data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
  189. data/sig/metronome_sdk/resources/v1/settings/billing_providers.rbs +23 -0
  190. data/sig/metronome_sdk/resources/v1/settings.rbs +19 -0
  191. data/sig/metronome_sdk/resources/v1.rbs +4 -0
  192. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -0
  193. metadata +53 -2
@@ -12,7 +12,8 @@ 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
+ constituent_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice],
16
17
  contract_custom_fields: ::Hash[Symbol, String],
17
18
  contract_id: String,
18
19
  correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -25,6 +26,7 @@ module MetronomeSDK
25
26
  issued_at: Time,
26
27
  net_payment_terms_days: Float,
27
28
  netsuite_sales_order_id: String,
29
+ payer: MetronomeSDK::V1::Customers::Invoice::Payer,
28
30
  plan_custom_fields: ::Hash[Symbol, String],
29
31
  plan_id: String,
30
32
  plan_name: String,
@@ -53,11 +55,15 @@ module MetronomeSDK
53
55
 
54
56
  def amendment_id=: (String) -> String
55
57
 
56
- attr_reader billable_status: MetronomeSDK::Models::V1::Customers::Invoice::billable_status?
58
+ attr_reader billable_status: top?
57
59
 
58
- def billable_status=: (
59
- MetronomeSDK::Models::V1::Customers::Invoice::billable_status
60
- ) -> MetronomeSDK::Models::V1::Customers::Invoice::billable_status
60
+ def billable_status=: (top) -> top
61
+
62
+ attr_reader constituent_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice]?
63
+
64
+ def constituent_invoices=: (
65
+ ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice]
66
+ ) -> ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice]
61
67
 
62
68
  attr_reader contract_custom_fields: ::Hash[Symbol, String]?
63
69
 
@@ -113,6 +119,12 @@ module MetronomeSDK
113
119
 
114
120
  def netsuite_sales_order_id=: (String) -> String
115
121
 
122
+ attr_reader payer: MetronomeSDK::V1::Customers::Invoice::Payer?
123
+
124
+ def payer=: (
125
+ MetronomeSDK::V1::Customers::Invoice::Payer
126
+ ) -> MetronomeSDK::V1::Customers::Invoice::Payer
127
+
116
128
  attr_reader plan_custom_fields: ::Hash[Symbol, String]?
117
129
 
118
130
  def plan_custom_fields=: (
@@ -154,7 +166,8 @@ module MetronomeSDK
154
166
  total: Float,
155
167
  type: String,
156
168
  ?amendment_id: String,
157
- ?billable_status: MetronomeSDK::Models::V1::Customers::Invoice::billable_status,
169
+ ?billable_status: top,
170
+ ?constituent_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice],
158
171
  ?contract_custom_fields: ::Hash[Symbol, String],
159
172
  ?contract_id: String,
160
173
  ?correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -167,6 +180,7 @@ module MetronomeSDK
167
180
  ?issued_at: Time,
168
181
  ?net_payment_terms_days: Float,
169
182
  ?netsuite_sales_order_id: String,
183
+ ?payer: MetronomeSDK::V1::Customers::Invoice::Payer,
170
184
  ?plan_custom_fields: ::Hash[Symbol, String],
171
185
  ?plan_id: String,
172
186
  ?plan_name: String,
@@ -185,7 +199,8 @@ module MetronomeSDK
185
199
  total: Float,
186
200
  type: String,
187
201
  amendment_id: String,
188
- billable_status: MetronomeSDK::Models::V1::Customers::Invoice::billable_status,
202
+ billable_status: top,
203
+ constituent_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice],
189
204
  contract_custom_fields: ::Hash[Symbol, String],
190
205
  contract_id: String,
191
206
  correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -198,6 +213,7 @@ module MetronomeSDK
198
213
  issued_at: Time,
199
214
  net_payment_terms_days: Float,
200
215
  netsuite_sales_order_id: String,
216
+ payer: MetronomeSDK::V1::Customers::Invoice::Payer,
201
217
  plan_custom_fields: ::Hash[Symbol, String],
202
218
  plan_id: String,
203
219
  plan_name: String,
@@ -232,6 +248,7 @@ module MetronomeSDK
232
248
  netsuite_invoice_billing_end: Time,
233
249
  netsuite_invoice_billing_start: Time,
234
250
  netsuite_item_id: String,
251
+ origin: MetronomeSDK::V1::Customers::Invoice::LineItem::Origin,
235
252
  postpaid_commit: MetronomeSDK::V1::Customers::Invoice::LineItem::PostpaidCommit,
236
253
  presentation_group_values: ::Hash[Symbol, String?],
237
254
  pricing_group_values: ::Hash[Symbol, String],
@@ -343,6 +360,12 @@ module MetronomeSDK
343
360
 
344
361
  def netsuite_item_id=: (String) -> String
345
362
 
363
+ attr_reader origin: MetronomeSDK::V1::Customers::Invoice::LineItem::Origin?
364
+
365
+ def origin=: (
366
+ MetronomeSDK::V1::Customers::Invoice::LineItem::Origin
367
+ ) -> MetronomeSDK::V1::Customers::Invoice::LineItem::Origin
368
+
346
369
  attr_reader postpaid_commit: MetronomeSDK::V1::Customers::Invoice::LineItem::PostpaidCommit?
347
370
 
348
371
  def postpaid_commit=: (
@@ -459,6 +482,7 @@ module MetronomeSDK
459
482
  ?netsuite_invoice_billing_end: Time,
460
483
  ?netsuite_invoice_billing_start: Time,
461
484
  ?netsuite_item_id: String,
485
+ ?origin: MetronomeSDK::V1::Customers::Invoice::LineItem::Origin,
462
486
  ?postpaid_commit: MetronomeSDK::V1::Customers::Invoice::LineItem::PostpaidCommit,
463
487
  ?presentation_group_values: ::Hash[Symbol, String?],
464
488
  ?pricing_group_values: ::Hash[Symbol, String],
@@ -503,6 +527,7 @@ module MetronomeSDK
503
527
  netsuite_invoice_billing_end: Time,
504
528
  netsuite_invoice_billing_start: Time,
505
529
  netsuite_item_id: String,
530
+ origin: MetronomeSDK::V1::Customers::Invoice::LineItem::Origin,
506
531
  postpaid_commit: MetronomeSDK::V1::Customers::Invoice::LineItem::PostpaidCommit,
507
532
  presentation_group_values: ::Hash[Symbol, String?],
508
533
  pricing_group_values: ::Hash[Symbol, String],
@@ -557,6 +582,38 @@ module MetronomeSDK
557
582
  end
558
583
  end
559
584
 
585
+ type origin =
586
+ {
587
+ contract_id: String,
588
+ customer_id: String,
589
+ invoice_id: String,
590
+ line_item_id: String
591
+ }
592
+
593
+ class Origin < MetronomeSDK::Internal::Type::BaseModel
594
+ attr_accessor contract_id: String
595
+
596
+ attr_accessor customer_id: String
597
+
598
+ attr_accessor invoice_id: String
599
+
600
+ attr_accessor line_item_id: String
601
+
602
+ def initialize: (
603
+ contract_id: String,
604
+ customer_id: String,
605
+ invoice_id: String,
606
+ line_item_id: String
607
+ ) -> void
608
+
609
+ def to_hash: -> {
610
+ contract_id: String,
611
+ customer_id: String,
612
+ invoice_id: String,
613
+ line_item_id: String
614
+ }
615
+ end
616
+
560
617
  type postpaid_commit = { id: String }
561
618
 
562
619
  class PostpaidCommit < MetronomeSDK::Internal::Type::BaseModel
@@ -738,15 +795,27 @@ module MetronomeSDK
738
795
  end
739
796
  end
740
797
 
741
- type billable_status = :billable | :unbillable
798
+ type constituent_invoice =
799
+ { contract_id: String, customer_id: String, invoice_id: String }
800
+
801
+ class ConstituentInvoice < MetronomeSDK::Internal::Type::BaseModel
802
+ attr_accessor contract_id: String
803
+
804
+ attr_accessor customer_id: String
742
805
 
743
- module BillableStatus
744
- extend MetronomeSDK::Internal::Type::Enum
806
+ attr_accessor invoice_id: String
745
807
 
746
- BILLABLE: :billable
747
- UNBILLABLE: :unbillable
808
+ def initialize: (
809
+ contract_id: String,
810
+ customer_id: String,
811
+ invoice_id: String
812
+ ) -> void
748
813
 
749
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::billable_status]
814
+ def to_hash: -> {
815
+ contract_id: String,
816
+ customer_id: String,
817
+ invoice_id: String
818
+ }
750
819
  end
751
820
 
752
821
  type correction_record =
@@ -787,14 +856,23 @@ module MetronomeSDK
787
856
  type corrected_external_invoice =
788
857
  {
789
858
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
859
+ billing_provider_error: String,
790
860
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
791
861
  invoice_id: String,
792
- issued_at_timestamp: Time
862
+ invoiced_sub_total: Float,
863
+ invoiced_total: Float,
864
+ issued_at_timestamp: Time,
865
+ pdf_url: String,
866
+ tax: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
793
867
  }
794
868
 
795
869
  class CorrectedExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
796
870
  attr_accessor billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type
797
871
 
872
+ attr_reader billing_provider_error: String?
873
+
874
+ def billing_provider_error=: (String) -> String
875
+
798
876
  attr_reader external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status?
799
877
 
800
878
  def external_status=: (
@@ -805,22 +883,50 @@ module MetronomeSDK
805
883
 
806
884
  def invoice_id=: (String) -> String
807
885
 
886
+ attr_reader invoiced_sub_total: Float?
887
+
888
+ def invoiced_sub_total=: (Float) -> Float
889
+
890
+ attr_reader invoiced_total: Float?
891
+
892
+ def invoiced_total=: (Float) -> Float
893
+
808
894
  attr_reader issued_at_timestamp: Time?
809
895
 
810
896
  def issued_at_timestamp=: (Time) -> Time
811
897
 
898
+ attr_reader pdf_url: String?
899
+
900
+ def pdf_url=: (String) -> String
901
+
902
+ attr_reader tax: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax?
903
+
904
+ def tax=: (
905
+ MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
906
+ ) -> MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
907
+
812
908
  def initialize: (
813
909
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
910
+ ?billing_provider_error: String,
814
911
  ?external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
815
912
  ?invoice_id: String,
816
- ?issued_at_timestamp: Time
913
+ ?invoiced_sub_total: Float,
914
+ ?invoiced_total: Float,
915
+ ?issued_at_timestamp: Time,
916
+ ?pdf_url: String,
917
+ ?tax: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
817
918
  ) -> void
818
919
 
819
920
  def to_hash: -> {
820
921
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
922
+ billing_provider_error: String,
821
923
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
822
924
  invoice_id: String,
823
- issued_at_timestamp: Time
925
+ invoiced_sub_total: Float,
926
+ invoiced_total: Float,
927
+ issued_at_timestamp: Time,
928
+ pdf_url: String,
929
+ tax: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::Tax
824
930
  }
825
931
 
826
932
  type billing_provider_type =
@@ -832,6 +938,7 @@ module MetronomeSDK
832
938
  | :quickbooks_online
833
939
  | :workday
834
940
  | :gcp_marketplace
941
+ | :metronome
835
942
 
836
943
  module BillingProviderType
837
944
  extend MetronomeSDK::Internal::Type::Enum
@@ -844,6 +951,7 @@ module MetronomeSDK
844
951
  QUICKBOOKS_ONLINE: :quickbooks_online
845
952
  WORKDAY: :workday
846
953
  GCP_MARKETPLACE: :gcp_marketplace
954
+ METRONOME: :metronome
847
955
 
848
956
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type]
849
957
  end
@@ -878,20 +986,62 @@ module MetronomeSDK
878
986
 
879
987
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status]
880
988
  end
989
+
990
+ type tax =
991
+ {
992
+ total_tax_amount: Float,
993
+ total_taxable_amount: Float,
994
+ transaction_id: String
995
+ }
996
+
997
+ class Tax < MetronomeSDK::Internal::Type::BaseModel
998
+ attr_reader total_tax_amount: Float?
999
+
1000
+ def total_tax_amount=: (Float) -> Float
1001
+
1002
+ attr_reader total_taxable_amount: Float?
1003
+
1004
+ def total_taxable_amount=: (Float) -> Float
1005
+
1006
+ attr_reader transaction_id: String?
1007
+
1008
+ def transaction_id=: (String) -> String
1009
+
1010
+ def initialize: (
1011
+ ?total_tax_amount: Float,
1012
+ ?total_taxable_amount: Float,
1013
+ ?transaction_id: String
1014
+ ) -> void
1015
+
1016
+ def to_hash: -> {
1017
+ total_tax_amount: Float,
1018
+ total_taxable_amount: Float,
1019
+ transaction_id: String
1020
+ }
1021
+ end
881
1022
  end
882
1023
  end
883
1024
 
884
1025
  type external_invoice =
885
1026
  {
886
1027
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
1028
+ billing_provider_error: String,
887
1029
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
888
1030
  invoice_id: String,
889
- issued_at_timestamp: Time
1031
+ invoiced_sub_total: Float,
1032
+ invoiced_total: Float,
1033
+ issued_at_timestamp: Time,
1034
+ pdf_url: String,
1035
+ tax: MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
890
1036
  }
891
1037
 
892
1038
  class ExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
893
1039
  attr_accessor billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type
894
1040
 
1041
+ attr_reader billing_provider_error: String?
1042
+
1043
+ def billing_provider_error=: (String) -> String
1044
+
895
1045
  attr_reader external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status?
896
1046
 
897
1047
  def external_status=: (
@@ -902,22 +1052,50 @@ module MetronomeSDK
902
1052
 
903
1053
  def invoice_id=: (String) -> String
904
1054
 
1055
+ attr_reader invoiced_sub_total: Float?
1056
+
1057
+ def invoiced_sub_total=: (Float) -> Float
1058
+
1059
+ attr_reader invoiced_total: Float?
1060
+
1061
+ def invoiced_total=: (Float) -> Float
1062
+
905
1063
  attr_reader issued_at_timestamp: Time?
906
1064
 
907
1065
  def issued_at_timestamp=: (Time) -> Time
908
1066
 
1067
+ attr_reader pdf_url: String?
1068
+
1069
+ def pdf_url=: (String) -> String
1070
+
1071
+ attr_reader tax: MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax?
1072
+
1073
+ def tax=: (
1074
+ MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
1075
+ ) -> MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
1076
+
909
1077
  def initialize: (
910
1078
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
1079
+ ?billing_provider_error: String,
911
1080
  ?external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
912
1081
  ?invoice_id: String,
913
- ?issued_at_timestamp: Time
1082
+ ?invoiced_sub_total: Float,
1083
+ ?invoiced_total: Float,
1084
+ ?issued_at_timestamp: Time,
1085
+ ?pdf_url: String,
1086
+ ?tax: MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
914
1087
  ) -> void
915
1088
 
916
1089
  def to_hash: -> {
917
1090
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
1091
+ billing_provider_error: String,
918
1092
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
919
1093
  invoice_id: String,
920
- issued_at_timestamp: Time
1094
+ invoiced_sub_total: Float,
1095
+ invoiced_total: Float,
1096
+ issued_at_timestamp: Time,
1097
+ pdf_url: String,
1098
+ tax: MetronomeSDK::V1::Customers::Invoice::ExternalInvoice::Tax
921
1099
  }
922
1100
 
923
1101
  type billing_provider_type =
@@ -929,6 +1107,7 @@ module MetronomeSDK
929
1107
  | :quickbooks_online
930
1108
  | :workday
931
1109
  | :gcp_marketplace
1110
+ | :metronome
932
1111
 
933
1112
  module BillingProviderType
934
1113
  extend MetronomeSDK::Internal::Type::Enum
@@ -941,6 +1120,7 @@ module MetronomeSDK
941
1120
  QUICKBOOKS_ONLINE: :quickbooks_online
942
1121
  WORKDAY: :workday
943
1122
  GCP_MARKETPLACE: :gcp_marketplace
1123
+ METRONOME: :metronome
944
1124
 
945
1125
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type]
946
1126
  end
@@ -975,6 +1155,39 @@ module MetronomeSDK
975
1155
 
976
1156
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status]
977
1157
  end
1158
+
1159
+ type tax =
1160
+ {
1161
+ total_tax_amount: Float,
1162
+ total_taxable_amount: Float,
1163
+ transaction_id: String
1164
+ }
1165
+
1166
+ class Tax < MetronomeSDK::Internal::Type::BaseModel
1167
+ attr_reader total_tax_amount: Float?
1168
+
1169
+ def total_tax_amount=: (Float) -> Float
1170
+
1171
+ attr_reader total_taxable_amount: Float?
1172
+
1173
+ def total_taxable_amount=: (Float) -> Float
1174
+
1175
+ attr_reader transaction_id: String?
1176
+
1177
+ def transaction_id=: (String) -> String
1178
+
1179
+ def initialize: (
1180
+ ?total_tax_amount: Float,
1181
+ ?total_taxable_amount: Float,
1182
+ ?transaction_id: String
1183
+ ) -> void
1184
+
1185
+ def to_hash: -> {
1186
+ total_tax_amount: Float,
1187
+ total_taxable_amount: Float,
1188
+ transaction_id: String
1189
+ }
1190
+ end
978
1191
  end
979
1192
 
980
1193
  type invoice_adjustment =
@@ -1020,6 +1233,18 @@ module MetronomeSDK
1020
1233
  }
1021
1234
  end
1022
1235
 
1236
+ type payer = { contract_id: String, customer_id: String }
1237
+
1238
+ class Payer < MetronomeSDK::Internal::Type::BaseModel
1239
+ attr_accessor contract_id: String
1240
+
1241
+ attr_accessor customer_id: String
1242
+
1243
+ def initialize: (contract_id: String, customer_id: String) -> void
1244
+
1245
+ def to_hash: -> { contract_id: String, customer_id: String }
1246
+ end
1247
+
1023
1248
  type reseller_royalty =
1024
1249
  {
1025
1250
  fraction: String,
@@ -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