metronome-sdk 3.5.0 → 3.7.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 (126) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +53 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/client.rb +15 -1
  5. data/lib/metronome_sdk/internal/transport/base_client.rb +2 -0
  6. data/lib/metronome_sdk/internal/type/enum.rb +0 -25
  7. data/lib/metronome_sdk/models/commit.rb +27 -1
  8. data/lib/metronome_sdk/models/contract.rb +140 -1
  9. data/lib/metronome_sdk/models/contract_v2.rb +530 -6
  10. data/lib/metronome_sdk/models/contract_without_amendments.rb +142 -1
  11. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +105 -2
  12. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +103 -2
  13. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +33 -1
  14. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +33 -1
  15. data/lib/metronome_sdk/models/v1/alert_create_params.rb +1 -0
  16. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +29 -177
  17. data/lib/metronome_sdk/models/v1/contract_create_params.rb +147 -180
  18. data/lib/metronome_sdk/models/v1/contract_create_response.rb +1134 -3
  19. data/lib/metronome_sdk/models/v1/contract_list_seat_balances_params.rb +119 -0
  20. data/lib/metronome_sdk/models/v1/contract_list_seat_balances_response.rb +315 -0
  21. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +31 -1
  22. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +31 -1
  23. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +1 -0
  24. data/lib/metronome_sdk/models/v1/customers/invoice.rb +8 -1
  25. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +29 -1
  26. data/lib/metronome_sdk/models/v1/package_create_params.rb +115 -18
  27. data/lib/metronome_sdk/models/v1/package_list_response.rb +110 -1
  28. data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +114 -1
  29. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +303 -5
  30. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3862 -3
  31. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +507 -6
  32. data/lib/metronome_sdk/resources/v1/contracts/products.rb +6 -2
  33. data/lib/metronome_sdk/resources/v1/contracts.rb +72 -3
  34. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +5 -1
  35. data/lib/metronome_sdk/resources/v1/packages.rb +6 -7
  36. data/lib/metronome_sdk/resources/v1.rb +0 -4
  37. data/lib/metronome_sdk/resources/v2/contracts.rb +5 -1
  38. data/lib/metronome_sdk/version.rb +1 -1
  39. data/lib/metronome_sdk.rb +2 -8
  40. data/rbi/metronome_sdk/models/commit.rbi +48 -0
  41. data/rbi/metronome_sdk/models/contract.rbi +354 -0
  42. data/rbi/metronome_sdk/models/contract_v2.rbi +1172 -4
  43. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +368 -0
  44. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +289 -6
  45. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +283 -6
  46. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +78 -3
  47. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -3
  48. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +5 -0
  49. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +54 -396
  50. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +370 -398
  51. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +2448 -4
  52. data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_params.rbi +179 -0
  53. data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_response.rbi +714 -0
  54. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +74 -0
  55. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +74 -0
  56. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +5 -0
  57. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +9 -0
  58. data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +75 -0
  59. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +310 -56
  60. data/rbi/metronome_sdk/models/v1/package_list_response.rbi +307 -0
  61. data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +307 -0
  62. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +734 -11
  63. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +8612 -4
  64. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1355 -219
  65. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +18 -0
  66. data/rbi/metronome_sdk/resources/v1/contracts.rbi +88 -3
  67. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +7 -0
  68. data/rbi/metronome_sdk/resources/v1/packages.rbi +8 -7
  69. data/rbi/metronome_sdk/resources/v1.rbi +0 -3
  70. data/rbi/metronome_sdk/resources/v2/contracts.rbi +10 -0
  71. data/sig/metronome_sdk/models/commit.rbs +19 -0
  72. data/sig/metronome_sdk/models/contract.rbs +151 -0
  73. data/sig/metronome_sdk/models/contract_v2.rbs +494 -6
  74. data/sig/metronome_sdk/models/contract_without_amendments.rbs +151 -0
  75. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +116 -6
  76. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +116 -6
  77. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +31 -3
  78. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +31 -3
  79. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +3 -1
  80. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +19 -137
  81. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +134 -137
  82. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +1045 -4
  83. data/sig/metronome_sdk/models/v1/contract_list_seat_balances_params.rbs +96 -0
  84. data/sig/metronome_sdk/models/v1/contract_list_seat_balances_response.rbs +299 -0
  85. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +20 -0
  86. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +20 -0
  87. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +3 -1
  88. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +7 -0
  89. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +29 -1
  90. data/sig/metronome_sdk/models/v1/package_create_params.rbs +115 -20
  91. data/sig/metronome_sdk/models/v1/package_list_response.rbs +115 -0
  92. data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +115 -0
  93. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +283 -9
  94. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +3792 -4
  95. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +461 -15
  96. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +2 -0
  97. data/sig/metronome_sdk/resources/v1/contracts.rbs +16 -0
  98. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +2 -0
  99. data/sig/metronome_sdk/resources/v1/packages.rbs +1 -1
  100. data/sig/metronome_sdk/resources/v1.rbs +0 -2
  101. data/sig/metronome_sdk/resources/v2/contracts.rbs +2 -0
  102. metadata +8 -26
  103. data/lib/metronome_sdk/models/v1/payment.rb +0 -196
  104. data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +0 -28
  105. data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +0 -18
  106. data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +0 -28
  107. data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +0 -18
  108. data/lib/metronome_sdk/models/v1/payment_list_params.rb +0 -53
  109. data/lib/metronome_sdk/models/v1/payment_status.rb +0 -19
  110. data/lib/metronome_sdk/resources/v1/payments.rb +0 -102
  111. data/rbi/metronome_sdk/models/v1/payment.rbi +0 -403
  112. data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +0 -48
  113. data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +0 -35
  114. data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +0 -48
  115. data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +0 -35
  116. data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +0 -91
  117. data/rbi/metronome_sdk/models/v1/payment_status.rbi +0 -33
  118. data/rbi/metronome_sdk/resources/v1/payments.rbi +0 -72
  119. data/sig/metronome_sdk/models/v1/payment.rbs +0 -243
  120. data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +0 -30
  121. data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +0 -15
  122. data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +0 -30
  123. data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +0 -15
  124. data/sig/metronome_sdk/models/v1/payment_list_params.rbs +0 -56
  125. data/sig/metronome_sdk/models/v1/payment_status.rbs +0 -19
  126. data/sig/metronome_sdk/resources/v1/payments.rbs +0 -30
@@ -0,0 +1,96 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type contract_list_seat_balances_params =
5
+ {
6
+ contract_id: String,
7
+ customer_id: String,
8
+ covering_date: Time,
9
+ cursor: String,
10
+ effective_before: Time,
11
+ include_credits_and_commits: bool,
12
+ include_ledgers: bool,
13
+ limit: Integer,
14
+ seat_ids: ::Array[String],
15
+ starting_at: Time,
16
+ subscription_ids: ::Array[String]
17
+ }
18
+ & MetronomeSDK::Internal::Type::request_parameters
19
+
20
+ class ContractListSeatBalancesParams < MetronomeSDK::Internal::Type::BaseModel
21
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
22
+ include MetronomeSDK::Internal::Type::RequestParameters
23
+
24
+ attr_accessor contract_id: String
25
+
26
+ attr_accessor customer_id: String
27
+
28
+ attr_reader covering_date: Time?
29
+
30
+ def covering_date=: (Time) -> Time
31
+
32
+ attr_reader cursor: String?
33
+
34
+ def cursor=: (String) -> String
35
+
36
+ attr_reader effective_before: Time?
37
+
38
+ def effective_before=: (Time) -> Time
39
+
40
+ attr_reader include_credits_and_commits: bool?
41
+
42
+ def include_credits_and_commits=: (bool) -> bool
43
+
44
+ attr_reader include_ledgers: bool?
45
+
46
+ def include_ledgers=: (bool) -> bool
47
+
48
+ attr_reader limit: Integer?
49
+
50
+ def limit=: (Integer) -> Integer
51
+
52
+ attr_reader seat_ids: ::Array[String]?
53
+
54
+ def seat_ids=: (::Array[String]) -> ::Array[String]
55
+
56
+ attr_reader starting_at: Time?
57
+
58
+ def starting_at=: (Time) -> Time
59
+
60
+ attr_reader subscription_ids: ::Array[String]?
61
+
62
+ def subscription_ids=: (::Array[String]) -> ::Array[String]
63
+
64
+ def initialize: (
65
+ contract_id: String,
66
+ customer_id: String,
67
+ ?covering_date: Time,
68
+ ?cursor: String,
69
+ ?effective_before: Time,
70
+ ?include_credits_and_commits: bool,
71
+ ?include_ledgers: bool,
72
+ ?limit: Integer,
73
+ ?seat_ids: ::Array[String],
74
+ ?starting_at: Time,
75
+ ?subscription_ids: ::Array[String],
76
+ ?request_options: MetronomeSDK::request_opts
77
+ ) -> void
78
+
79
+ def to_hash: -> {
80
+ contract_id: String,
81
+ customer_id: String,
82
+ covering_date: Time,
83
+ cursor: String,
84
+ effective_before: Time,
85
+ include_credits_and_commits: bool,
86
+ include_ledgers: bool,
87
+ limit: Integer,
88
+ seat_ids: ::Array[String],
89
+ starting_at: Time,
90
+ subscription_ids: ::Array[String],
91
+ request_options: MetronomeSDK::RequestOptions
92
+ }
93
+ end
94
+ end
95
+ end
96
+ end
@@ -0,0 +1,299 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type contract_list_seat_balances_response =
5
+ {
6
+ data: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data],
7
+ pagination: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Pagination
8
+ }
9
+
10
+ class ContractListSeatBalancesResponse < MetronomeSDK::Internal::Type::BaseModel
11
+ attr_accessor data: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data]
12
+
13
+ attr_accessor pagination: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Pagination
14
+
15
+ def initialize: (
16
+ data: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data],
17
+ pagination: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Pagination
18
+ ) -> void
19
+
20
+ def to_hash: -> {
21
+ data: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data],
22
+ pagination: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Pagination
23
+ }
24
+
25
+ type data =
26
+ {
27
+ balances: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Balance],
28
+ seat_id: String,
29
+ commits: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit]?,
30
+ credits: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit]
31
+ }
32
+
33
+ class Data < MetronomeSDK::Internal::Type::BaseModel
34
+ attr_accessor balances: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Balance]
35
+
36
+ attr_accessor seat_id: String
37
+
38
+ attr_accessor commits: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit]?
39
+
40
+ attr_reader credits: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit]?
41
+
42
+ def credits=: (
43
+ ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit]
44
+ ) -> ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit]
45
+
46
+ def initialize: (
47
+ balances: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Balance],
48
+ seat_id: String,
49
+ ?commits: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit]?,
50
+ ?credits: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit]
51
+ ) -> void
52
+
53
+ def to_hash: -> {
54
+ balances: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Balance],
55
+ seat_id: String,
56
+ commits: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit]?,
57
+ credits: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit]
58
+ }
59
+
60
+ type balance =
61
+ { balance: Float, credit_type_id: String, starting_balance: Float }
62
+
63
+ class Balance < MetronomeSDK::Internal::Type::BaseModel
64
+ attr_accessor balance: Float
65
+
66
+ attr_accessor credit_type_id: String
67
+
68
+ attr_accessor starting_balance: Float
69
+
70
+ def initialize: (
71
+ balance: Float,
72
+ credit_type_id: String,
73
+ starting_balance: Float
74
+ ) -> void
75
+
76
+ def to_hash: -> {
77
+ balance: Float,
78
+ credit_type_id: String,
79
+ starting_balance: Float
80
+ }
81
+ end
82
+
83
+ type commit =
84
+ {
85
+ id: String,
86
+ balance: Float,
87
+ start_date: Time,
88
+ end_date: Time?,
89
+ ledger_entries: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry]
90
+ }
91
+
92
+ class Commit < MetronomeSDK::Internal::Type::BaseModel
93
+ attr_accessor id: String
94
+
95
+ attr_accessor balance: Float
96
+
97
+ attr_accessor start_date: Time
98
+
99
+ attr_accessor end_date: Time?
100
+
101
+ attr_reader ledger_entries: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry]?
102
+
103
+ def ledger_entries=: (
104
+ ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry]
105
+ ) -> ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry]
106
+
107
+ def initialize: (
108
+ id: String,
109
+ balance: Float,
110
+ start_date: Time,
111
+ ?end_date: Time?,
112
+ ?ledger_entries: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry]
113
+ ) -> void
114
+
115
+ def to_hash: -> {
116
+ id: String,
117
+ balance: Float,
118
+ start_date: Time,
119
+ end_date: Time?,
120
+ ledger_entries: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry]
121
+ }
122
+
123
+ type ledger_entry =
124
+ {
125
+ amount: Float,
126
+ timestamp: Time,
127
+ type: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry::type_
128
+ }
129
+
130
+ class LedgerEntry < MetronomeSDK::Internal::Type::BaseModel
131
+ attr_accessor amount: Float
132
+
133
+ attr_accessor timestamp: Time
134
+
135
+ attr_accessor type: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry::type_
136
+
137
+ def initialize: (
138
+ amount: Float,
139
+ timestamp: Time,
140
+ type: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry::type_
141
+ ) -> void
142
+
143
+ def to_hash: -> {
144
+ amount: Float,
145
+ timestamp: Time,
146
+ type: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry::type_
147
+ }
148
+
149
+ type type_ =
150
+ :PREPAID_COMMIT_SEGMENT_START
151
+ | :PREPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION
152
+ | :PREPAID_COMMIT_ROLLOVER
153
+ | :PREPAID_COMMIT_EXPIRATION
154
+ | :PREPAID_COMMIT_CANCELED
155
+ | :PREPAID_COMMIT_CREDITED
156
+ | :PREPAID_COMMIT_MANUAL
157
+ | :PREPAID_COMMIT_SEAT_BASED_ADJUSTMENT
158
+
159
+ module Type
160
+ extend MetronomeSDK::Internal::Type::Enum
161
+
162
+ PREPAID_COMMIT_SEGMENT_START: :PREPAID_COMMIT_SEGMENT_START
163
+ PREPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION: :PREPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION
164
+ PREPAID_COMMIT_ROLLOVER: :PREPAID_COMMIT_ROLLOVER
165
+ PREPAID_COMMIT_EXPIRATION: :PREPAID_COMMIT_EXPIRATION
166
+ PREPAID_COMMIT_CANCELED: :PREPAID_COMMIT_CANCELED
167
+ PREPAID_COMMIT_CREDITED: :PREPAID_COMMIT_CREDITED
168
+ PREPAID_COMMIT_MANUAL: :PREPAID_COMMIT_MANUAL
169
+ PREPAID_COMMIT_SEAT_BASED_ADJUSTMENT: :PREPAID_COMMIT_SEAT_BASED_ADJUSTMENT
170
+
171
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Commit::LedgerEntry::type_]
172
+ end
173
+ end
174
+ end
175
+
176
+ type credit =
177
+ {
178
+ id: String,
179
+ balance: Float,
180
+ start_date: Time,
181
+ end_date: Time?,
182
+ ledger_entries: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry]
183
+ }
184
+
185
+ class Credit < MetronomeSDK::Internal::Type::BaseModel
186
+ attr_accessor id: String
187
+
188
+ attr_accessor balance: Float
189
+
190
+ attr_accessor start_date: Time
191
+
192
+ attr_accessor end_date: Time?
193
+
194
+ attr_reader ledger_entries: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry]?
195
+
196
+ def ledger_entries=: (
197
+ ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry]
198
+ ) -> ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry]
199
+
200
+ def initialize: (
201
+ id: String,
202
+ balance: Float,
203
+ start_date: Time,
204
+ ?end_date: Time?,
205
+ ?ledger_entries: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry]
206
+ ) -> void
207
+
208
+ def to_hash: -> {
209
+ id: String,
210
+ balance: Float,
211
+ start_date: Time,
212
+ end_date: Time?,
213
+ ledger_entries: ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry]
214
+ }
215
+
216
+ type ledger_entry =
217
+ {
218
+ amount: Float,
219
+ timestamp: Time,
220
+ type: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry::type_
221
+ }
222
+
223
+ class LedgerEntry < MetronomeSDK::Internal::Type::BaseModel
224
+ attr_accessor amount: Float
225
+
226
+ attr_accessor timestamp: Time
227
+
228
+ attr_accessor type: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry::type_
229
+
230
+ def initialize: (
231
+ amount: Float,
232
+ timestamp: Time,
233
+ type: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry::type_
234
+ ) -> void
235
+
236
+ def to_hash: -> {
237
+ amount: Float,
238
+ timestamp: Time,
239
+ type: MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry::type_
240
+ }
241
+
242
+ type type_ =
243
+ :CREDIT_SEGMENT_START
244
+ | :CREDIT_AUTOMATED_INVOICE_DEDUCTION
245
+ | :CREDIT_EXPIRATION
246
+ | :CREDIT_CANCELED
247
+ | :CREDIT_CREDITED
248
+ | :CREDIT_MANUAL
249
+ | :CREDIT_SEAT_BASED_ADJUSTMENT
250
+ | :CREDIT_ROLLOVER
251
+
252
+ module Type
253
+ extend MetronomeSDK::Internal::Type::Enum
254
+
255
+ CREDIT_SEGMENT_START: :CREDIT_SEGMENT_START
256
+ CREDIT_AUTOMATED_INVOICE_DEDUCTION: :CREDIT_AUTOMATED_INVOICE_DEDUCTION
257
+ CREDIT_EXPIRATION: :CREDIT_EXPIRATION
258
+ CREDIT_CANCELED: :CREDIT_CANCELED
259
+ CREDIT_CREDITED: :CREDIT_CREDITED
260
+ CREDIT_MANUAL: :CREDIT_MANUAL
261
+ CREDIT_SEAT_BASED_ADJUSTMENT: :CREDIT_SEAT_BASED_ADJUSTMENT
262
+ CREDIT_ROLLOVER: :CREDIT_ROLLOVER
263
+
264
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractListSeatBalancesResponse::Data::Credit::LedgerEntry::type_]
265
+ end
266
+ end
267
+ end
268
+ end
269
+
270
+ type pagination =
271
+ {
272
+ seats_available_for_next_page: Float,
273
+ seats_included: Float,
274
+ next_page: String?
275
+ }
276
+
277
+ class Pagination < MetronomeSDK::Internal::Type::BaseModel
278
+ attr_accessor seats_available_for_next_page: Float
279
+
280
+ attr_accessor seats_included: Float
281
+
282
+ attr_accessor next_page: String?
283
+
284
+ def initialize: (
285
+ seats_available_for_next_page: Float,
286
+ seats_included: Float,
287
+ ?next_page: String?
288
+ ) -> void
289
+
290
+ def to_hash: -> {
291
+ seats_available_for_next_page: Float,
292
+ seats_included: Float,
293
+ next_page: String?
294
+ }
295
+ end
296
+ end
297
+ end
298
+ end
299
+ end
@@ -18,6 +18,7 @@ module MetronomeSDK
18
18
  pricing_group_key: ::Array[String],
19
19
  quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
20
20
  quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
21
+ sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductCreateParams::sql_breakdown_granularity,
21
22
  tags: ::Array[String]
22
23
  }
23
24
  & MetronomeSDK::Internal::Type::request_parameters
@@ -74,6 +75,12 @@ module MetronomeSDK
74
75
 
75
76
  attr_accessor quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?
76
77
 
78
+ attr_reader sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductCreateParams::sql_breakdown_granularity?
79
+
80
+ def sql_breakdown_granularity=: (
81
+ MetronomeSDK::Models::V1::Contracts::ProductCreateParams::sql_breakdown_granularity
82
+ ) -> MetronomeSDK::Models::V1::Contracts::ProductCreateParams::sql_breakdown_granularity
83
+
77
84
  attr_reader tags: ::Array[String]?
78
85
 
79
86
  def tags=: (::Array[String]) -> ::Array[String]
@@ -93,6 +100,7 @@ module MetronomeSDK
93
100
  ?pricing_group_key: ::Array[String],
94
101
  ?quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
95
102
  ?quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
103
+ ?sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductCreateParams::sql_breakdown_granularity,
96
104
  ?tags: ::Array[String],
97
105
  ?request_options: MetronomeSDK::request_opts
98
106
  ) -> void
@@ -112,6 +120,7 @@ module MetronomeSDK
112
120
  pricing_group_key: ::Array[String],
113
121
  quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
114
122
  quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
123
+ sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductCreateParams::sql_breakdown_granularity,
115
124
  tags: ::Array[String],
116
125
  request_options: MetronomeSDK::RequestOptions
117
126
  }
@@ -136,6 +145,17 @@ module MetronomeSDK
136
145
 
137
146
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Contracts::ProductCreateParams::type_]
138
147
  end
148
+
149
+ type sql_breakdown_granularity = :HOUR | :SERVICE_PERIOD
150
+
151
+ module SqlBreakdownGranularity
152
+ extend MetronomeSDK::Internal::Type::Enum
153
+
154
+ HOUR: :HOUR
155
+ SERVICE_PERIOD: :SERVICE_PERIOD
156
+
157
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Contracts::ProductCreateParams::sql_breakdown_granularity]
158
+ end
139
159
  end
140
160
  end
141
161
  end
@@ -18,6 +18,7 @@ module MetronomeSDK
18
18
  pricing_group_key: ::Array[String],
19
19
  quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
20
20
  quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
21
+ sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity,
21
22
  tags: ::Array[String]
22
23
  }
23
24
  & MetronomeSDK::Internal::Type::request_parameters
@@ -74,6 +75,12 @@ module MetronomeSDK
74
75
 
75
76
  attr_accessor quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?
76
77
 
78
+ attr_reader sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity?
79
+
80
+ def sql_breakdown_granularity=: (
81
+ MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity
82
+ ) -> MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity
83
+
77
84
  attr_reader tags: ::Array[String]?
78
85
 
79
86
  def tags=: (::Array[String]) -> ::Array[String]
@@ -93,6 +100,7 @@ module MetronomeSDK
93
100
  ?pricing_group_key: ::Array[String],
94
101
  ?quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
95
102
  ?quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
103
+ ?sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity,
96
104
  ?tags: ::Array[String],
97
105
  ?request_options: MetronomeSDK::request_opts
98
106
  ) -> void
@@ -112,9 +120,21 @@ module MetronomeSDK
112
120
  pricing_group_key: ::Array[String],
113
121
  quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
114
122
  quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
123
+ sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity,
115
124
  tags: ::Array[String],
116
125
  request_options: MetronomeSDK::RequestOptions
117
126
  }
127
+
128
+ type sql_breakdown_granularity = :HOUR | :SERVICE_PERIOD
129
+
130
+ module SqlBreakdownGranularity
131
+ extend MetronomeSDK::Internal::Type::Enum
132
+
133
+ HOUR: :HOUR
134
+ SERVICE_PERIOD: :SERVICE_PERIOD
135
+
136
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity]
137
+ end
118
138
  end
119
139
  end
120
140
  end
@@ -210,7 +210,8 @@ module MetronomeSDK
210
210
  value: String
211
211
  }
212
212
 
213
- type entity = :Contract | :Commit | :ContractCredit
213
+ type entity =
214
+ :Contract | :Commit | :ContractCredit | :ContractCreditOrCommit
214
215
 
215
216
  module Entity
216
217
  extend MetronomeSDK::Internal::Type::Enum
@@ -218,6 +219,7 @@ module MetronomeSDK
218
219
  CONTRACT: :Contract
219
220
  COMMIT: :Commit
220
221
  CONTRACT_CREDIT: :ContractCredit
222
+ CONTRACT_CREDIT_OR_COMMIT: :ContractCreditOrCommit
221
223
 
222
224
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::CustomFieldFilter::entity]
223
225
  end
@@ -30,6 +30,7 @@ module MetronomeSDK
30
30
  plan_custom_fields: ::Hash[Symbol, String],
31
31
  plan_id: String,
32
32
  plan_name: String,
33
+ regenerated_from_invoice_id: String,
33
34
  reseller_royalty: MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty,
34
35
  revenue_system_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::RevenueSystemInvoice]?,
35
36
  salesforce_opportunity_id: String,
@@ -140,6 +141,10 @@ module MetronomeSDK
140
141
 
141
142
  def plan_name=: (String) -> String
142
143
 
144
+ attr_reader regenerated_from_invoice_id: String?
145
+
146
+ def regenerated_from_invoice_id=: (String) -> String
147
+
143
148
  attr_reader reseller_royalty: MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty?
144
149
 
145
150
  def reseller_royalty=: (
@@ -187,6 +192,7 @@ module MetronomeSDK
187
192
  ?plan_custom_fields: ::Hash[Symbol, String],
188
193
  ?plan_id: String,
189
194
  ?plan_name: String,
195
+ ?regenerated_from_invoice_id: String,
190
196
  ?reseller_royalty: MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty,
191
197
  ?revenue_system_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::RevenueSystemInvoice]?,
192
198
  ?salesforce_opportunity_id: String,
@@ -221,6 +227,7 @@ module MetronomeSDK
221
227
  plan_custom_fields: ::Hash[Symbol, String],
222
228
  plan_id: String,
223
229
  plan_name: String,
230
+ regenerated_from_invoice_id: String,
224
231
  reseller_royalty: MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty,
225
232
  revenue_system_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::RevenueSystemInvoice]?,
226
233
  salesforce_opportunity_id: String,
@@ -5,6 +5,7 @@ module MetronomeSDK
5
5
  type invoice_list_params =
6
6
  {
7
7
  customer_id: String,
8
+ contract_id: String,
8
9
  credit_type_id: String,
9
10
  ending_before: Time,
10
11
  limit: Integer,
@@ -12,7 +13,8 @@ module MetronomeSDK
12
13
  skip_zero_qty_line_items: bool,
13
14
  sort: MetronomeSDK::Models::V1::Customers::InvoiceListParams::sort,
14
15
  starting_on: Time,
15
- status: String
16
+ status: String,
17
+ type: MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_
16
18
  }
17
19
  & MetronomeSDK::Internal::Type::request_parameters
18
20
 
@@ -22,6 +24,10 @@ module MetronomeSDK
22
24
 
23
25
  attr_accessor customer_id: String
24
26
 
27
+ attr_reader contract_id: String?
28
+
29
+ def contract_id=: (String) -> String
30
+
25
31
  attr_reader credit_type_id: String?
26
32
 
27
33
  def credit_type_id=: (String) -> String
@@ -56,8 +62,15 @@ module MetronomeSDK
56
62
 
57
63
  def status=: (String) -> String
58
64
 
65
+ attr_reader type: MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_?
66
+
67
+ def type=: (
68
+ MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_
69
+ ) -> MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_
70
+
59
71
  def initialize: (
60
72
  customer_id: String,
73
+ ?contract_id: String,
61
74
  ?credit_type_id: String,
62
75
  ?ending_before: Time,
63
76
  ?limit: Integer,
@@ -66,11 +79,13 @@ module MetronomeSDK
66
79
  ?sort: MetronomeSDK::Models::V1::Customers::InvoiceListParams::sort,
67
80
  ?starting_on: Time,
68
81
  ?status: String,
82
+ ?type: MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_,
69
83
  ?request_options: MetronomeSDK::request_opts
70
84
  ) -> void
71
85
 
72
86
  def to_hash: -> {
73
87
  customer_id: String,
88
+ contract_id: String,
74
89
  credit_type_id: String,
75
90
  ending_before: Time,
76
91
  limit: Integer,
@@ -79,6 +94,7 @@ module MetronomeSDK
79
94
  sort: MetronomeSDK::Models::V1::Customers::InvoiceListParams::sort,
80
95
  starting_on: Time,
81
96
  status: String,
97
+ type: MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_,
82
98
  request_options: MetronomeSDK::RequestOptions
83
99
  }
84
100
 
@@ -92,6 +108,18 @@ module MetronomeSDK
92
108
 
93
109
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::InvoiceListParams::sort]
94
110
  end
111
+
112
+ type type_ = :USAGE | :USAGE_CONSOLIDATED | :SCHEDULED
113
+
114
+ module Type
115
+ extend MetronomeSDK::Internal::Type::Enum
116
+
117
+ USAGE: :USAGE
118
+ USAGE_CONSOLIDATED: :USAGE_CONSOLIDATED
119
+ SCHEDULED: :SCHEDULED
120
+
121
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_]
122
+ end
95
123
  end
96
124
  end
97
125
  end