lithic 0.1.0.pre.alpha.29 → 0.1.0.pre.alpha.31

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 (64) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/internal/type/enum.rb +6 -3
  5. data/lib/lithic/internal/type/union.rb +5 -2
  6. data/lib/lithic/internal/util.rb +8 -9
  7. data/lib/lithic/models/account_update_params.rb +4 -4
  8. data/lib/lithic/models/auth_rules/v2/backtest_results.rb +100 -28
  9. data/lib/lithic/models/auth_rules/v2_apply_response.rb +401 -10
  10. data/lib/lithic/models/auth_rules/v2_create_params.rb +205 -6
  11. data/lib/lithic/models/auth_rules/v2_create_response.rb +401 -10
  12. data/lib/lithic/models/auth_rules/v2_draft_params.rb +186 -3
  13. data/lib/lithic/models/auth_rules/v2_draft_response.rb +401 -10
  14. data/lib/lithic/models/auth_rules/v2_list_params.rb +27 -8
  15. data/lib/lithic/models/auth_rules/v2_list_response.rb +401 -10
  16. data/lib/lithic/models/auth_rules/v2_promote_response.rb +401 -10
  17. data/lib/lithic/models/auth_rules/v2_retrieve_response.rb +401 -10
  18. data/lib/lithic/models/auth_rules/v2_update_response.rb +401 -10
  19. data/lib/lithic/models/funding_event_list_response.rb +26 -22
  20. data/lib/lithic/models/funding_event_retrieve_response.rb +26 -22
  21. data/lib/lithic/models/payment.rb +2 -2
  22. data/lib/lithic/models/required_document.rb +2 -2
  23. data/lib/lithic/models/transaction.rb +2 -1
  24. data/lib/lithic/models.rb +4 -4
  25. data/lib/lithic/resources/auth_rules/v2/backtests.rb +12 -13
  26. data/lib/lithic/resources/auth_rules/v2.rb +45 -39
  27. data/lib/lithic/resources/transfers.rb +2 -0
  28. data/lib/lithic/version.rb +1 -1
  29. data/rbi/lithic/internal/util.rbi +2 -0
  30. data/rbi/lithic/models/account_update_params.rbi +6 -6
  31. data/rbi/lithic/models/auth_rules/v2/backtest_results.rbi +186 -24
  32. data/rbi/lithic/models/auth_rules/v2_apply_response.rbi +895 -7
  33. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +442 -8
  34. data/rbi/lithic/models/auth_rules/v2_create_response.rbi +895 -7
  35. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +414 -4
  36. data/rbi/lithic/models/auth_rules/v2_draft_response.rbi +895 -7
  37. data/rbi/lithic/models/auth_rules/v2_list_params.rbi +60 -7
  38. data/rbi/lithic/models/auth_rules/v2_list_response.rbi +895 -7
  39. data/rbi/lithic/models/auth_rules/v2_promote_response.rbi +895 -7
  40. data/rbi/lithic/models/auth_rules/v2_retrieve_response.rbi +895 -7
  41. data/rbi/lithic/models/auth_rules/v2_update_response.rbi +895 -7
  42. data/rbi/lithic/models/funding_event_list_response.rbi +35 -28
  43. data/rbi/lithic/models/funding_event_retrieve_response.rbi +35 -28
  44. data/rbi/lithic/models/payment.rbi +3 -3
  45. data/rbi/lithic/models/required_document.rbi +2 -2
  46. data/rbi/lithic/models/transaction.rbi +4 -2
  47. data/rbi/lithic/resources/accounts.rbi +2 -2
  48. data/rbi/lithic/resources/auth_rules/v2/backtests.rbi +12 -13
  49. data/rbi/lithic/resources/auth_rules/v2.rbi +49 -38
  50. data/sig/lithic/models/auth_rules/v2/backtest_results.rbs +66 -2
  51. data/sig/lithic/models/auth_rules/v2_apply_response.rbs +280 -1
  52. data/sig/lithic/models/auth_rules/v2_create_params.rbs +135 -1
  53. data/sig/lithic/models/auth_rules/v2_create_response.rbs +280 -1
  54. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +129 -0
  55. data/sig/lithic/models/auth_rules/v2_draft_response.rbs +280 -1
  56. data/sig/lithic/models/auth_rules/v2_list_params.rbs +20 -0
  57. data/sig/lithic/models/auth_rules/v2_list_response.rbs +280 -1
  58. data/sig/lithic/models/auth_rules/v2_promote_response.rbs +280 -1
  59. data/sig/lithic/models/auth_rules/v2_retrieve_response.rbs +280 -1
  60. data/sig/lithic/models/auth_rules/v2_update_response.rbs +280 -1
  61. data/sig/lithic/models/funding_event_list_response.rbs +18 -11
  62. data/sig/lithic/models/funding_event_retrieve_response.rbs +18 -11
  63. data/sig/lithic/resources/auth_rules/v2.rbs +1 -0
  64. metadata +2 -2
@@ -23,11 +23,17 @@ module Lithic
23
23
  # @!attribute parameters
24
24
  # Parameters for the Auth Rule
25
25
  #
26
- # @return [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::V2CreateParams::Parameters::MerchantLockParameters, nil]
26
+ # @return [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::V2CreateParams::Parameters::MerchantLockParameters, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters, nil]
27
27
  optional :parameters, union: -> { Lithic::AuthRules::V2CreateParams::Parameters }
28
28
 
29
29
  # @!attribute type
30
- # The type of Auth Rule
30
+ # The type of Auth Rule. Effectively determines the event stream during which it
31
+ # will be evaluated.
32
+ #
33
+ # - `CONDITIONAL_BLOCK`: AUTHORIZATION event stream.
34
+ # - `VELOCITY_LIMIT`: AUTHORIZATION event stream.
35
+ # - `MERCHANT_LOCK`: AUTHORIZATION event stream.
36
+ # - `CONDITIONAL_3DS_ACTION`: THREE_DS_AUTHENTICATION event stream.
31
37
  #
32
38
  # @return [Symbol, Lithic::Models::AuthRules::V2CreateParams::Type, nil]
33
39
  optional :type, enum: -> { Lithic::AuthRules::V2CreateParams::Type }
@@ -51,6 +57,9 @@ module Lithic
51
57
  optional :excluded_card_tokens, Lithic::Internal::Type::ArrayOf[String]
52
58
 
53
59
  # @!method initialize(account_tokens:, card_tokens:, program_level:, name: nil, parameters: nil, type: nil, excluded_card_tokens: nil, request_options: {})
60
+ # Some parameter documentations has been truncated, see
61
+ # {Lithic::Models::AuthRules::V2CreateParams} for more details.
62
+ #
54
63
  # @param account_tokens [Array<String>] Account tokens to which the Auth Rule applies.
55
64
  #
56
65
  # @param card_tokens [Array<String>] Card tokens to which the Auth Rule applies.
@@ -59,9 +68,9 @@ module Lithic
59
68
  #
60
69
  # @param name [String, nil] Auth Rule Name
61
70
  #
62
- # @param parameters [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::V2CreateParams::Parameters::MerchantLockParameters] Parameters for the Auth Rule
71
+ # @param parameters [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::V2CreateParams::Parameters::MerchantLockParameters, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters] Parameters for the Auth Rule
63
72
  #
64
- # @param type [Symbol, Lithic::Models::AuthRules::V2CreateParams::Type] The type of Auth Rule
73
+ # @param type [Symbol, Lithic::Models::AuthRules::V2CreateParams::Type] The type of Auth Rule. Effectively determines the event stream during which it w
65
74
  #
66
75
  # @param excluded_card_tokens [Array<String>] Card tokens to which the Auth Rule does not apply.
67
76
  #
@@ -77,6 +86,8 @@ module Lithic
77
86
 
78
87
  variant -> { Lithic::AuthRules::V2CreateParams::Parameters::MerchantLockParameters }
79
88
 
89
+ variant -> { Lithic::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters }
90
+
80
91
  class MerchantLockParameters < Lithic::Internal::Type::BaseModel
81
92
  # @!attribute merchants
82
93
  # A list of merchant locks defining specific merchants or groups of merchants
@@ -136,17 +147,205 @@ module Lithic
136
147
  end
137
148
  end
138
149
 
150
+ class Conditional3DSActionParameters < Lithic::Internal::Type::BaseModel
151
+ # @!attribute action
152
+ # The action to take if the conditions are met.
153
+ #
154
+ # @return [Symbol, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Action]
155
+ required :action,
156
+ enum: -> {
157
+ Lithic::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Action
158
+ }
159
+
160
+ # @!attribute conditions
161
+ #
162
+ # @return [Array<Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition>]
163
+ required :conditions,
164
+ -> {
165
+ Lithic::Internal::Type::ArrayOf[Lithic::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition]
166
+ }
167
+
168
+ # @!method initialize(action:, conditions:)
169
+ # @param action [Symbol, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Action] The action to take if the conditions are met.
170
+ #
171
+ # @param conditions [Array<Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition>]
172
+
173
+ # The action to take if the conditions are met.
174
+ #
175
+ # @see Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters#action
176
+ module Action
177
+ extend Lithic::Internal::Type::Enum
178
+
179
+ DECLINE = :DECLINE
180
+ CHALLENGE = :CHALLENGE
181
+
182
+ # @!method self.values
183
+ # @return [Array<Symbol>]
184
+ end
185
+
186
+ class Condition < Lithic::Internal::Type::BaseModel
187
+ # @!attribute attribute
188
+ # The attribute to target.
189
+ #
190
+ # The following attributes may be targeted:
191
+ #
192
+ # - `MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a
193
+ # business by the types of goods or services it provides.
194
+ # - `COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all
195
+ # ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for
196
+ # Netherlands Antilles.
197
+ # - `CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of
198
+ # the transaction.
199
+ # - `MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor
200
+ # (merchant).
201
+ # - `DESCRIPTOR`: Short description of card acceptor.
202
+ # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
203
+ # fee field in the settlement/cardholder billing currency. This is the amount
204
+ # the issuer should authorize against unless the issuer is paying the acquirer
205
+ # fee on behalf of the cardholder.
206
+ # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
207
+ # given authentication. Scores are on a range of 0-999, with 0 representing the
208
+ # lowest risk and 999 representing the highest risk. For Visa transactions,
209
+ # where the raw score has a range of 0-99, Lithic will normalize the score by
210
+ # multiplying the raw score by 10x.
211
+ # - `MESSAGE_CATEGORY`: The category of the authentication being processed.
212
+ #
213
+ # @return [Symbol, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition::Attribute, nil]
214
+ optional :attribute,
215
+ enum: -> {
216
+ Lithic::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition::Attribute
217
+ }
218
+
219
+ # @!attribute operation
220
+ # The operation to apply to the attribute
221
+ #
222
+ # @return [Symbol, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition::Operation, nil]
223
+ optional :operation,
224
+ enum: -> {
225
+ Lithic::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition::Operation
226
+ }
227
+
228
+ # @!attribute value
229
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
230
+ #
231
+ # @return [String, Integer, Array<String>, nil]
232
+ optional :value,
233
+ union: -> {
234
+ Lithic::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition::Value
235
+ }
236
+
237
+ # @!method initialize(attribute: nil, operation: nil, value: nil)
238
+ # Some parameter documentations has been truncated, see
239
+ # {Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition}
240
+ # for more details.
241
+ #
242
+ # @param attribute [Symbol, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition::Attribute] The attribute to target.
243
+ #
244
+ # @param operation [Symbol, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition::Operation] The operation to apply to the attribute
245
+ #
246
+ # @param value [String, Integer, Array<String>] A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
247
+
248
+ # The attribute to target.
249
+ #
250
+ # The following attributes may be targeted:
251
+ #
252
+ # - `MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a
253
+ # business by the types of goods or services it provides.
254
+ # - `COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all
255
+ # ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for
256
+ # Netherlands Antilles.
257
+ # - `CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of
258
+ # the transaction.
259
+ # - `MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor
260
+ # (merchant).
261
+ # - `DESCRIPTOR`: Short description of card acceptor.
262
+ # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
263
+ # fee field in the settlement/cardholder billing currency. This is the amount
264
+ # the issuer should authorize against unless the issuer is paying the acquirer
265
+ # fee on behalf of the cardholder.
266
+ # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
267
+ # given authentication. Scores are on a range of 0-999, with 0 representing the
268
+ # lowest risk and 999 representing the highest risk. For Visa transactions,
269
+ # where the raw score has a range of 0-99, Lithic will normalize the score by
270
+ # multiplying the raw score by 10x.
271
+ # - `MESSAGE_CATEGORY`: The category of the authentication being processed.
272
+ #
273
+ # @see Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition#attribute
274
+ module Attribute
275
+ extend Lithic::Internal::Type::Enum
276
+
277
+ MCC = :MCC
278
+ COUNTRY = :COUNTRY
279
+ CURRENCY = :CURRENCY
280
+ MERCHANT_ID = :MERCHANT_ID
281
+ DESCRIPTOR = :DESCRIPTOR
282
+ TRANSACTION_AMOUNT = :TRANSACTION_AMOUNT
283
+ RISK_SCORE = :RISK_SCORE
284
+ MESSAGE_CATEGORY = :MESSAGE_CATEGORY
285
+
286
+ # @!method self.values
287
+ # @return [Array<Symbol>]
288
+ end
289
+
290
+ # The operation to apply to the attribute
291
+ #
292
+ # @see Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition#operation
293
+ module Operation
294
+ extend Lithic::Internal::Type::Enum
295
+
296
+ IS_ONE_OF = :IS_ONE_OF
297
+ IS_NOT_ONE_OF = :IS_NOT_ONE_OF
298
+ MATCHES = :MATCHES
299
+ DOES_NOT_MATCH = :DOES_NOT_MATCH
300
+ IS_GREATER_THAN = :IS_GREATER_THAN
301
+ IS_LESS_THAN = :IS_LESS_THAN
302
+
303
+ # @!method self.values
304
+ # @return [Array<Symbol>]
305
+ end
306
+
307
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
308
+ #
309
+ # @see Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition#value
310
+ module Value
311
+ extend Lithic::Internal::Type::Union
312
+
313
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
314
+ variant String
315
+
316
+ # A number, to be used with `IS_GREATER_THAN` or `IS_LESS_THAN`
317
+ variant Integer
318
+
319
+ # An array of strings, to be used with `IS_ONE_OF` or `IS_NOT_ONE_OF`
320
+ variant -> { Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters::Condition::Value::StringArray }
321
+
322
+ # @!method self.variants
323
+ # @return [Array(String, Integer, Array<String>)]
324
+
325
+ # @type [Lithic::Internal::Type::Converter]
326
+ StringArray = Lithic::Internal::Type::ArrayOf[String]
327
+ end
328
+ end
329
+ end
330
+
139
331
  # @!method self.variants
140
- # @return [Array(Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::V2CreateParams::Parameters::MerchantLockParameters)]
332
+ # @return [Array(Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::V2CreateParams::Parameters::MerchantLockParameters, Lithic::Models::AuthRules::V2CreateParams::Parameters::Conditional3DSActionParameters)]
141
333
  end
142
334
 
143
- # The type of Auth Rule
335
+ # The type of Auth Rule. Effectively determines the event stream during which it
336
+ # will be evaluated.
337
+ #
338
+ # - `CONDITIONAL_BLOCK`: AUTHORIZATION event stream.
339
+ # - `VELOCITY_LIMIT`: AUTHORIZATION event stream.
340
+ # - `MERCHANT_LOCK`: AUTHORIZATION event stream.
341
+ # - `CONDITIONAL_3DS_ACTION`: THREE_DS_AUTHENTICATION event stream.
144
342
  module Type
145
343
  extend Lithic::Internal::Type::Enum
146
344
 
147
345
  CONDITIONAL_BLOCK = :CONDITIONAL_BLOCK
148
346
  VELOCITY_LIMIT = :VELOCITY_LIMIT
149
347
  MERCHANT_LOCK = :MERCHANT_LOCK
348
+ CONDITIONAL_3DS_ACTION = :CONDITIONAL_3DS_ACTION
150
349
 
151
350
  # @!method self.values
152
351
  # @return [Array<Symbol>]