lithic 0.15.0 → 0.16.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 (175) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/client.rb +4 -0
  5. data/lib/lithic/internal/transport/base_client.rb +4 -1
  6. data/lib/lithic/models/account.rb +2 -2
  7. data/lib/lithic/models/account_holders/account_holder_entity.rb +3 -16
  8. data/lib/lithic/models/account_holders/entity_create_params.rb +3 -14
  9. data/lib/lithic/models/auth_rules/auth_rule.rb +4 -2
  10. data/lib/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rb +18 -20
  11. data/lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb +195 -9
  12. data/lib/lithic/models/auth_rules/rule_feature.rb +29 -6
  13. data/lib/lithic/models/auth_rules/typescript_code_parameters.rb +2 -2
  14. data/lib/lithic/models/auth_rules/v2_create_params.rb +12 -6
  15. data/lib/lithic/models/card.rb +1 -1
  16. data/lib/lithic/models/card_authorization.rb +117 -11
  17. data/lib/lithic/models/financial_accounts/loan_tape.rb +9 -1
  18. data/lib/lithic/models/payment.rb +13 -1
  19. data/lib/lithic/models/transaction_monitoring/case_activity_entry.rb +74 -0
  20. data/lib/lithic/models/transaction_monitoring/case_activity_type.rb +35 -0
  21. data/lib/lithic/models/transaction_monitoring/case_card.rb +37 -0
  22. data/lib/lithic/models/transaction_monitoring/case_entity.rb +50 -0
  23. data/lib/lithic/models/transaction_monitoring/case_list_activity_params.rb +53 -0
  24. data/lib/lithic/models/transaction_monitoring/case_list_params.rb +136 -0
  25. data/lib/lithic/models/transaction_monitoring/case_list_transactions_params.rb +53 -0
  26. data/lib/lithic/models/transaction_monitoring/case_priority.rb +20 -0
  27. data/lib/lithic/models/transaction_monitoring/case_retrieve_cards_params.rb +22 -0
  28. data/lib/lithic/models/transaction_monitoring/case_retrieve_cards_response.rb +11 -0
  29. data/lib/lithic/models/transaction_monitoring/case_retrieve_params.rb +22 -0
  30. data/lib/lithic/models/transaction_monitoring/case_sort_order.rb +29 -0
  31. data/lib/lithic/models/transaction_monitoring/case_status.rb +31 -0
  32. data/lib/lithic/models/transaction_monitoring/case_transaction.rb +53 -0
  33. data/lib/lithic/models/transaction_monitoring/case_update_params.rb +116 -0
  34. data/lib/lithic/models/transaction_monitoring/cases/case_file.rb +141 -0
  35. data/lib/lithic/models/transaction_monitoring/cases/comment_create_params.rb +47 -0
  36. data/lib/lithic/models/transaction_monitoring/cases/comment_delete_params.rb +30 -0
  37. data/lib/lithic/models/transaction_monitoring/cases/comment_update_params.rb +54 -0
  38. data/lib/lithic/models/transaction_monitoring/cases/file_create_params.rb +33 -0
  39. data/lib/lithic/models/transaction_monitoring/cases/file_delete_params.rb +30 -0
  40. data/lib/lithic/models/transaction_monitoring/cases/file_list_params.rb +54 -0
  41. data/lib/lithic/models/transaction_monitoring/cases/file_retrieve_params.rb +30 -0
  42. data/lib/lithic/models/transaction_monitoring/cases/file_status.rb +26 -0
  43. data/lib/lithic/models/transaction_monitoring/cases/upload_constraints.rb +31 -0
  44. data/lib/lithic/models/transaction_monitoring/entity_type.rb +18 -0
  45. data/lib/lithic/models/transaction_monitoring/monitoring_case.rb +168 -0
  46. data/lib/lithic/models/transaction_monitoring/queue.rb +120 -0
  47. data/lib/lithic/models/transaction_monitoring/queue_create_params.rb +32 -0
  48. data/lib/lithic/models/transaction_monitoring/queue_delete_params.rb +22 -0
  49. data/lib/lithic/models/transaction_monitoring/queue_list_params.rb +45 -0
  50. data/lib/lithic/models/transaction_monitoring/queue_retrieve_params.rb +22 -0
  51. data/lib/lithic/models/transaction_monitoring/queue_update_params.rb +39 -0
  52. data/lib/lithic/models/transaction_monitoring/resolution_outcome.rb +28 -0
  53. data/lib/lithic/models/transaction_route_params.rb +29 -0
  54. data/lib/lithic/models.rb +4 -0
  55. data/lib/lithic/resources/account_holders/entities.rb +1 -1
  56. data/lib/lithic/resources/cards.rb +2 -2
  57. data/lib/lithic/resources/transaction_monitoring/cases/comments.rb +111 -0
  58. data/lib/lithic/resources/transaction_monitoring/cases/files.rb +131 -0
  59. data/lib/lithic/resources/transaction_monitoring/cases.rb +228 -0
  60. data/lib/lithic/resources/transaction_monitoring/queues.rb +137 -0
  61. data/lib/lithic/resources/transaction_monitoring.rb +22 -0
  62. data/lib/lithic/resources/transactions.rb +25 -0
  63. data/lib/lithic/version.rb +1 -1
  64. data/lib/lithic.rb +40 -0
  65. data/rbi/lithic/client.rbi +3 -0
  66. data/rbi/lithic/models/account.rbi +3 -3
  67. data/rbi/lithic/models/account_holders/account_holder_entity.rbi +3 -40
  68. data/rbi/lithic/models/account_holders/entity_create_params.rbi +3 -37
  69. data/rbi/lithic/models/auth_rules/auth_rule.rbi +6 -3
  70. data/rbi/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rbi +29 -29
  71. data/rbi/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbi +395 -12
  72. data/rbi/lithic/models/auth_rules/rule_feature.rbi +41 -5
  73. data/rbi/lithic/models/auth_rules/typescript_code_parameters.rbi +3 -0
  74. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +18 -9
  75. data/rbi/lithic/models/card.rbi +2 -2
  76. data/rbi/lithic/models/card_authorization.rbi +246 -17
  77. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +8 -0
  78. data/rbi/lithic/models/payment.rbi +13 -0
  79. data/rbi/lithic/models/transaction_monitoring/case_activity_entry.rbi +107 -0
  80. data/rbi/lithic/models/transaction_monitoring/case_activity_type.rbi +84 -0
  81. data/rbi/lithic/models/transaction_monitoring/case_card.rbi +60 -0
  82. data/rbi/lithic/models/transaction_monitoring/case_entity.rbi +101 -0
  83. data/rbi/lithic/models/transaction_monitoring/case_list_activity_params.rbi +83 -0
  84. data/rbi/lithic/models/transaction_monitoring/case_list_params.rbi +220 -0
  85. data/rbi/lithic/models/transaction_monitoring/case_list_transactions_params.rbi +83 -0
  86. data/rbi/lithic/models/transaction_monitoring/case_priority.rbi +44 -0
  87. data/rbi/lithic/models/transaction_monitoring/case_retrieve_cards_params.rbi +40 -0
  88. data/rbi/lithic/models/transaction_monitoring/case_retrieve_cards_response.rbi +15 -0
  89. data/rbi/lithic/models/transaction_monitoring/case_retrieve_params.rbi +40 -0
  90. data/rbi/lithic/models/transaction_monitoring/case_sort_order.rbi +64 -0
  91. data/rbi/lithic/models/transaction_monitoring/case_status.rbi +63 -0
  92. data/rbi/lithic/models/transaction_monitoring/case_transaction.rbi +75 -0
  93. data/rbi/lithic/models/transaction_monitoring/case_update_params.rbi +201 -0
  94. data/rbi/lithic/models/transaction_monitoring/cases/case_file.rbi +188 -0
  95. data/rbi/lithic/models/transaction_monitoring/cases/comment_create_params.rbi +71 -0
  96. data/rbi/lithic/models/transaction_monitoring/cases/comment_delete_params.rbi +50 -0
  97. data/rbi/lithic/models/transaction_monitoring/cases/comment_update_params.rbi +77 -0
  98. data/rbi/lithic/models/transaction_monitoring/cases/file_create_params.rbi +56 -0
  99. data/rbi/lithic/models/transaction_monitoring/cases/file_delete_params.rbi +50 -0
  100. data/rbi/lithic/models/transaction_monitoring/cases/file_list_params.rbi +85 -0
  101. data/rbi/lithic/models/transaction_monitoring/cases/file_retrieve_params.rbi +50 -0
  102. data/rbi/lithic/models/transaction_monitoring/cases/file_status.rbi +51 -0
  103. data/rbi/lithic/models/transaction_monitoring/cases/upload_constraints.rbi +51 -0
  104. data/rbi/lithic/models/transaction_monitoring/entity_type.rbi +37 -0
  105. data/rbi/lithic/models/transaction_monitoring/monitoring_case.rbi +226 -0
  106. data/rbi/lithic/models/transaction_monitoring/queue.rbi +189 -0
  107. data/rbi/lithic/models/transaction_monitoring/queue_create_params.rbi +56 -0
  108. data/rbi/lithic/models/transaction_monitoring/queue_delete_params.rbi +40 -0
  109. data/rbi/lithic/models/transaction_monitoring/queue_list_params.rbi +77 -0
  110. data/rbi/lithic/models/transaction_monitoring/queue_retrieve_params.rbi +40 -0
  111. data/rbi/lithic/models/transaction_monitoring/queue_update_params.rbi +65 -0
  112. data/rbi/lithic/models/transaction_monitoring/resolution_outcome.rbi +61 -0
  113. data/rbi/lithic/models/transaction_route_params.rbi +49 -0
  114. data/rbi/lithic/models.rbi +4 -0
  115. data/rbi/lithic/resources/account_holders/entities.rbi +1 -1
  116. data/rbi/lithic/resources/cards.rbi +2 -2
  117. data/rbi/lithic/resources/transaction_monitoring/cases/comments.rbi +81 -0
  118. data/rbi/lithic/resources/transaction_monitoring/cases/files.rbi +98 -0
  119. data/rbi/lithic/resources/transaction_monitoring/cases.rbi +230 -0
  120. data/rbi/lithic/resources/transaction_monitoring/queues.rbi +103 -0
  121. data/rbi/lithic/resources/transaction_monitoring.rbi +18 -0
  122. data/rbi/lithic/resources/transactions.rbi +18 -0
  123. data/sig/lithic/client.rbs +2 -0
  124. data/sig/lithic/models/account_holders/account_holder_entity.rbs +4 -15
  125. data/sig/lithic/models/account_holders/entity_create_params.rbs +4 -15
  126. data/sig/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rbs +16 -16
  127. data/sig/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbs +73 -3
  128. data/sig/lithic/models/auth_rules/rule_feature.rbs +16 -0
  129. data/sig/lithic/models/card_authorization.rbs +84 -10
  130. data/sig/lithic/models/financial_accounts/loan_tape.rbs +5 -0
  131. data/sig/lithic/models/payment.rbs +7 -0
  132. data/sig/lithic/models/transaction_monitoring/case_activity_entry.rbs +47 -0
  133. data/sig/lithic/models/transaction_monitoring/case_activity_type.rbs +32 -0
  134. data/sig/lithic/models/transaction_monitoring/case_card.rbs +32 -0
  135. data/sig/lithic/models/transaction_monitoring/case_entity.rbs +38 -0
  136. data/sig/lithic/models/transaction_monitoring/case_list_activity_params.rbs +49 -0
  137. data/sig/lithic/models/transaction_monitoring/case_list_params.rbs +125 -0
  138. data/sig/lithic/models/transaction_monitoring/case_list_transactions_params.rbs +49 -0
  139. data/sig/lithic/models/transaction_monitoring/case_priority.rbs +18 -0
  140. data/sig/lithic/models/transaction_monitoring/case_retrieve_cards_params.rbs +25 -0
  141. data/sig/lithic/models/transaction_monitoring/case_retrieve_cards_response.rbs +10 -0
  142. data/sig/lithic/models/transaction_monitoring/case_retrieve_params.rbs +25 -0
  143. data/sig/lithic/models/transaction_monitoring/case_sort_order.rbs +26 -0
  144. data/sig/lithic/models/transaction_monitoring/case_status.rbs +21 -0
  145. data/sig/lithic/models/transaction_monitoring/case_transaction.rbs +42 -0
  146. data/sig/lithic/models/transaction_monitoring/case_update_params.rbs +91 -0
  147. data/sig/lithic/models/transaction_monitoring/cases/case_file.rbs +86 -0
  148. data/sig/lithic/models/transaction_monitoring/cases/comment_create_params.rbs +38 -0
  149. data/sig/lithic/models/transaction_monitoring/cases/comment_delete_params.rbs +32 -0
  150. data/sig/lithic/models/transaction_monitoring/cases/comment_update_params.rbs +47 -0
  151. data/sig/lithic/models/transaction_monitoring/cases/file_create_params.rbs +32 -0
  152. data/sig/lithic/models/transaction_monitoring/cases/file_delete_params.rbs +32 -0
  153. data/sig/lithic/models/transaction_monitoring/cases/file_list_params.rbs +51 -0
  154. data/sig/lithic/models/transaction_monitoring/cases/file_retrieve_params.rbs +32 -0
  155. data/sig/lithic/models/transaction_monitoring/cases/file_status.rbs +19 -0
  156. data/sig/lithic/models/transaction_monitoring/cases/upload_constraints.rbs +26 -0
  157. data/sig/lithic/models/transaction_monitoring/entity_type.rbs +16 -0
  158. data/sig/lithic/models/transaction_monitoring/monitoring_case.rbs +102 -0
  159. data/sig/lithic/models/transaction_monitoring/queue.rbs +101 -0
  160. data/sig/lithic/models/transaction_monitoring/queue_create_params.rbs +30 -0
  161. data/sig/lithic/models/transaction_monitoring/queue_delete_params.rbs +25 -0
  162. data/sig/lithic/models/transaction_monitoring/queue_list_params.rbs +40 -0
  163. data/sig/lithic/models/transaction_monitoring/queue_retrieve_params.rbs +25 -0
  164. data/sig/lithic/models/transaction_monitoring/queue_update_params.rbs +36 -0
  165. data/sig/lithic/models/transaction_monitoring/resolution_outcome.rbs +24 -0
  166. data/sig/lithic/models/transaction_route_params.rbs +28 -0
  167. data/sig/lithic/models.rbs +4 -0
  168. data/sig/lithic/resources/account_holders/entities.rbs +1 -1
  169. data/sig/lithic/resources/transaction_monitoring/cases/comments.rbs +32 -0
  170. data/sig/lithic/resources/transaction_monitoring/cases/files.rbs +37 -0
  171. data/sig/lithic/resources/transaction_monitoring/cases.rbs +71 -0
  172. data/sig/lithic/resources/transaction_monitoring/queues.rbs +39 -0
  173. data/sig/lithic/resources/transaction_monitoring.rbs +11 -0
  174. data/sig/lithic/resources/transactions.rbs +6 -0
  175. metadata +122 -2
@@ -0,0 +1,136 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Cases#list
7
+ class CaseListParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute account_token
12
+ # Only return cases that include transactions on the provided account.
13
+ #
14
+ # @return [String, nil]
15
+ optional :account_token, String
16
+
17
+ # @!attribute assignee
18
+ # Only return cases assigned to the provided value. Pass an empty string to return
19
+ # only unassigned cases.
20
+ #
21
+ # @return [String, nil]
22
+ optional :assignee, String
23
+
24
+ # @!attribute begin_
25
+ # Date string in RFC 3339 format. Only entries created after the specified time
26
+ # will be included. UTC time zone.
27
+ #
28
+ # @return [Time, nil]
29
+ optional :begin_, Time
30
+
31
+ # @!attribute card_token
32
+ # Only return cases that include transactions on the provided card.
33
+ #
34
+ # @return [String, nil]
35
+ optional :card_token, String
36
+
37
+ # @!attribute end_
38
+ # Date string in RFC 3339 format. Only entries created before the specified time
39
+ # will be included. UTC time zone.
40
+ #
41
+ # @return [Time, nil]
42
+ optional :end_, Time
43
+
44
+ # @!attribute ending_before
45
+ # A cursor representing an item's token before which a page of results should end.
46
+ # Used to retrieve the previous page of results before this item.
47
+ #
48
+ # @return [String, nil]
49
+ optional :ending_before, String
50
+
51
+ # @!attribute entity_token
52
+ # Only return cases associated with the provided entity.
53
+ #
54
+ # @return [String, nil]
55
+ optional :entity_token, String
56
+
57
+ # @!attribute page_size
58
+ # Page size (for pagination).
59
+ #
60
+ # @return [Integer, nil]
61
+ optional :page_size, Integer
62
+
63
+ # @!attribute queue_token
64
+ # Only return cases belonging to the provided queue.
65
+ #
66
+ # @return [String, nil]
67
+ optional :queue_token, String
68
+
69
+ # @!attribute rule_token
70
+ # Only return cases triggered by the provided transaction monitoring rule.
71
+ #
72
+ # @return [String, nil]
73
+ optional :rule_token, String
74
+
75
+ # @!attribute sort_by
76
+ # Sort order for the returned cases.
77
+ #
78
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::CaseSortOrder, nil]
79
+ optional :sort_by, enum: -> { Lithic::TransactionMonitoring::CaseSortOrder }
80
+
81
+ # @!attribute starting_after
82
+ # A cursor representing an item's token after which a page of results should
83
+ # begin. Used to retrieve the next page of results after this item.
84
+ #
85
+ # @return [String, nil]
86
+ optional :starting_after, String
87
+
88
+ # @!attribute status
89
+ # Only return cases with the provided status.
90
+ #
91
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::CaseStatus, nil]
92
+ optional :status, enum: -> { Lithic::TransactionMonitoring::CaseStatus }
93
+
94
+ # @!attribute transaction_token
95
+ # Only return cases that include the provided transaction.
96
+ #
97
+ # @return [String, nil]
98
+ optional :transaction_token, String
99
+
100
+ # @!method initialize(account_token: nil, assignee: nil, begin_: nil, card_token: nil, end_: nil, ending_before: nil, entity_token: nil, page_size: nil, queue_token: nil, rule_token: nil, sort_by: nil, starting_after: nil, status: nil, transaction_token: nil, request_options: {})
101
+ # Some parameter documentations has been truncated, see
102
+ # {Lithic::Models::TransactionMonitoring::CaseListParams} for more details.
103
+ #
104
+ # @param account_token [String] Only return cases that include transactions on the provided account.
105
+ #
106
+ # @param assignee [String] Only return cases assigned to the provided value. Pass an empty string to return
107
+ #
108
+ # @param begin_ [Time] Date string in RFC 3339 format. Only entries created after the specified time wi
109
+ #
110
+ # @param card_token [String] Only return cases that include transactions on the provided card.
111
+ #
112
+ # @param end_ [Time] Date string in RFC 3339 format. Only entries created before the specified time w
113
+ #
114
+ # @param ending_before [String] A cursor representing an item's token before which a page of results should end.
115
+ #
116
+ # @param entity_token [String] Only return cases associated with the provided entity.
117
+ #
118
+ # @param page_size [Integer] Page size (for pagination).
119
+ #
120
+ # @param queue_token [String] Only return cases belonging to the provided queue.
121
+ #
122
+ # @param rule_token [String] Only return cases triggered by the provided transaction monitoring rule.
123
+ #
124
+ # @param sort_by [Symbol, Lithic::Models::TransactionMonitoring::CaseSortOrder] Sort order for the returned cases.
125
+ #
126
+ # @param starting_after [String] A cursor representing an item's token after which a page of results should begin
127
+ #
128
+ # @param status [Symbol, Lithic::Models::TransactionMonitoring::CaseStatus] Only return cases with the provided status.
129
+ #
130
+ # @param transaction_token [String] Only return cases that include the provided transaction.
131
+ #
132
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
133
+ end
134
+ end
135
+ end
136
+ end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Cases#list_transactions
7
+ class CaseListTransactionsParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute case_token
12
+ #
13
+ # @return [String]
14
+ required :case_token, String
15
+
16
+ # @!attribute ending_before
17
+ # A cursor representing an item's token before which a page of results should end.
18
+ # Used to retrieve the previous page of results before this item.
19
+ #
20
+ # @return [String, nil]
21
+ optional :ending_before, String
22
+
23
+ # @!attribute page_size
24
+ # Page size (for pagination).
25
+ #
26
+ # @return [Integer, nil]
27
+ optional :page_size, Integer
28
+
29
+ # @!attribute starting_after
30
+ # A cursor representing an item's token after which a page of results should
31
+ # begin. Used to retrieve the next page of results after this item.
32
+ #
33
+ # @return [String, nil]
34
+ optional :starting_after, String
35
+
36
+ # @!method initialize(case_token:, ending_before: nil, page_size: nil, starting_after: nil, request_options: {})
37
+ # Some parameter documentations has been truncated, see
38
+ # {Lithic::Models::TransactionMonitoring::CaseListTransactionsParams} for more
39
+ # details.
40
+ #
41
+ # @param case_token [String]
42
+ #
43
+ # @param ending_before [String] A cursor representing an item's token before which a page of results should end.
44
+ #
45
+ # @param page_size [Integer] Page size (for pagination).
46
+ #
47
+ # @param starting_after [String] A cursor representing an item's token after which a page of results should begin
48
+ #
49
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # Priority level of a case, controlling queue ordering and SLA urgency
7
+ module CasePriority
8
+ extend Lithic::Internal::Type::Enum
9
+
10
+ LOW = :LOW
11
+ MEDIUM = :MEDIUM
12
+ HIGH = :HIGH
13
+ CRITICAL = :CRITICAL
14
+
15
+ # @!method self.values
16
+ # @return [Array<Symbol>]
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Cases#retrieve_cards
7
+ class CaseRetrieveCardsParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute case_token
12
+ #
13
+ # @return [String]
14
+ required :case_token, String
15
+
16
+ # @!method initialize(case_token:, request_options: {})
17
+ # @param case_token [String]
18
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @type [Lithic::Internal::Type::Converter]
7
+ CaseRetrieveCardsResponse =
8
+ Lithic::Internal::Type::ArrayOf[-> { Lithic::TransactionMonitoring::CaseCard }]
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Cases#retrieve
7
+ class CaseRetrieveParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute case_token
12
+ #
13
+ # @return [String]
14
+ required :case_token, String
15
+
16
+ # @!method initialize(case_token:, request_options: {})
17
+ # @param case_token [String]
18
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # Sort order for listing cases. Defaults to `CREATED_DESC` (newest first):
7
+ #
8
+ # - `CREATED_ASC` - Oldest first
9
+ # - `CREATED_DESC` - Newest first
10
+ # - `PRIORITY_DESC` - Highest priority first
11
+ # - `PRIORITY_ASC` - Lowest priority first
12
+ # - `STATUS_DESC` - Furthest workflow stage first
13
+ # - `STATUS_ASC` - Earliest workflow stage first
14
+ module CaseSortOrder
15
+ extend Lithic::Internal::Type::Enum
16
+
17
+ CREATED_ASC = :CREATED_ASC
18
+ CREATED_DESC = :CREATED_DESC
19
+ PRIORITY_DESC = :PRIORITY_DESC
20
+ PRIORITY_ASC = :PRIORITY_ASC
21
+ STATUS_DESC = :STATUS_DESC
22
+ STATUS_ASC = :STATUS_ASC
23
+
24
+ # @!method self.values
25
+ # @return [Array<Symbol>]
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # Status of a case as it progresses through the review workflow:
7
+ #
8
+ # - `OPEN` - The case has been created and is still collecting matching
9
+ # transactions
10
+ # - `ASSIGNED` - An analyst has been assigned and transaction collection has
11
+ # stopped
12
+ # - `IN_REVIEW` - The case is actively being investigated
13
+ # - `ESCALATED` - The case has been reviewed and requires additional oversight
14
+ # - `RESOLVED` - A determination has been made and a resolution recorded
15
+ # - `CLOSED` - The case is finalized
16
+ module CaseStatus
17
+ extend Lithic::Internal::Type::Enum
18
+
19
+ OPEN = :OPEN
20
+ ASSIGNED = :ASSIGNED
21
+ IN_REVIEW = :IN_REVIEW
22
+ ESCALATED = :ESCALATED
23
+ RESOLVED = :RESOLVED
24
+ CLOSED = :CLOSED
25
+
26
+ # @!method self.values
27
+ # @return [Array<Symbol>]
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Cases#list_transactions
7
+ class CaseTransaction < Lithic::Internal::Type::BaseModel
8
+ # @!attribute token
9
+ # Globally unique identifier for the transaction
10
+ #
11
+ # @return [String]
12
+ required :token, String
13
+
14
+ # @!attribute account_token
15
+ # Token of the account the transaction belongs to
16
+ #
17
+ # @return [String]
18
+ required :account_token, String
19
+
20
+ # @!attribute added_at
21
+ # Date and time at which the transaction was added to the case
22
+ #
23
+ # @return [Time]
24
+ required :added_at, Time
25
+
26
+ # @!attribute card_token
27
+ # Token of the card the transaction was made on
28
+ #
29
+ # @return [String]
30
+ required :card_token, String
31
+
32
+ # @!attribute transaction_created_at
33
+ # Date and time at which the transaction was created
34
+ #
35
+ # @return [Time]
36
+ required :transaction_created_at, Time
37
+
38
+ # @!method initialize(token:, account_token:, added_at:, card_token:, transaction_created_at:)
39
+ # A single transaction associated with a case
40
+ #
41
+ # @param token [String] Globally unique identifier for the transaction
42
+ #
43
+ # @param account_token [String] Token of the account the transaction belongs to
44
+ #
45
+ # @param added_at [Time] Date and time at which the transaction was added to the case
46
+ #
47
+ # @param card_token [String] Token of the card the transaction was made on
48
+ #
49
+ # @param transaction_created_at [Time] Date and time at which the transaction was created
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,116 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Cases#update
7
+ class CaseUpdateParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute case_token
12
+ #
13
+ # @return [String]
14
+ required :case_token, String
15
+
16
+ # @!attribute actor_token
17
+ # Optional client-provided identifier for the actor performing this action,
18
+ # recorded on the resulting activity entry. This value is supplied by the client
19
+ # (for example, your own internal user ID) and is not authenticated by Lithic
20
+ #
21
+ # @return [String, nil]
22
+ optional :actor_token, String
23
+
24
+ # @!attribute assignee
25
+ # New assignee for the case, or `null` to unassign
26
+ #
27
+ # @return [String, nil]
28
+ optional :assignee, String, nil?: true
29
+
30
+ # @!attribute priority
31
+ # Priority level of a case, controlling queue ordering and SLA urgency
32
+ #
33
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::CasePriority, nil]
34
+ optional :priority, enum: -> { Lithic::TransactionMonitoring::CasePriority }
35
+
36
+ # @!attribute resolution
37
+ # Outcome recorded when a case is resolved:
38
+ #
39
+ # - `CONFIRMED_FRAUD` - The reviewed activity was confirmed to be fraudulent
40
+ # - `SUSPICIOUS_ACTIVITY` - The activity is suspicious but not confirmed fraud
41
+ # - `FALSE_POSITIVE` - The activity was legitimate and the alert was a false
42
+ # positive
43
+ # - `NO_ACTION_REQUIRED` - No further action is required
44
+ # - `ESCALATED_EXTERNAL` - The case was escalated to an external party
45
+ #
46
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::ResolutionOutcome, nil]
47
+ optional :resolution, enum: -> { Lithic::TransactionMonitoring::ResolutionOutcome }
48
+
49
+ # @!attribute resolution_notes
50
+ # Notes describing the resolution
51
+ #
52
+ # @return [String, nil]
53
+ optional :resolution_notes, String
54
+
55
+ # @!attribute sla_deadline
56
+ # New SLA deadline for the case, or `null` to clear it
57
+ #
58
+ # @return [Time, nil]
59
+ optional :sla_deadline, Time, nil?: true
60
+
61
+ # @!attribute status
62
+ # Status of a case as it progresses through the review workflow:
63
+ #
64
+ # - `OPEN` - The case has been created and is still collecting matching
65
+ # transactions
66
+ # - `ASSIGNED` - An analyst has been assigned and transaction collection has
67
+ # stopped
68
+ # - `IN_REVIEW` - The case is actively being investigated
69
+ # - `ESCALATED` - The case has been reviewed and requires additional oversight
70
+ # - `RESOLVED` - A determination has been made and a resolution recorded
71
+ # - `CLOSED` - The case is finalized
72
+ #
73
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::CaseStatus, nil]
74
+ optional :status, enum: -> { Lithic::TransactionMonitoring::CaseStatus }
75
+
76
+ # @!attribute tags
77
+ # Arbitrary key-value metadata to set on the case
78
+ #
79
+ # @return [Hash{Symbol=>String}, nil]
80
+ optional :tags, Lithic::Internal::Type::HashOf[String]
81
+
82
+ # @!attribute title
83
+ # New title for the case, or `null` to clear it
84
+ #
85
+ # @return [String, nil]
86
+ optional :title, String, nil?: true
87
+
88
+ # @!method initialize(case_token:, actor_token: nil, assignee: nil, priority: nil, resolution: nil, resolution_notes: nil, sla_deadline: nil, status: nil, tags: nil, title: nil, request_options: {})
89
+ # Some parameter documentations has been truncated, see
90
+ # {Lithic::Models::TransactionMonitoring::CaseUpdateParams} for more details.
91
+ #
92
+ # @param case_token [String]
93
+ #
94
+ # @param actor_token [String] Optional client-provided identifier for the actor performing this action,
95
+ #
96
+ # @param assignee [String, nil] New assignee for the case, or `null` to unassign
97
+ #
98
+ # @param priority [Symbol, Lithic::Models::TransactionMonitoring::CasePriority] Priority level of a case, controlling queue ordering and SLA urgency
99
+ #
100
+ # @param resolution [Symbol, Lithic::Models::TransactionMonitoring::ResolutionOutcome] Outcome recorded when a case is resolved:
101
+ #
102
+ # @param resolution_notes [String] Notes describing the resolution
103
+ #
104
+ # @param sla_deadline [Time, nil] New SLA deadline for the case, or `null` to clear it
105
+ #
106
+ # @param status [Symbol, Lithic::Models::TransactionMonitoring::CaseStatus] Status of a case as it progresses through the review workflow:
107
+ #
108
+ # @param tags [Hash{Symbol=>String}] Arbitrary key-value metadata to set on the case
109
+ #
110
+ # @param title [String, nil] New title for the case, or `null` to clear it
111
+ #
112
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
113
+ end
114
+ end
115
+ end
116
+ end
@@ -0,0 +1,141 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ module Cases
7
+ # @see Lithic::Resources::TransactionMonitoring::Cases::Files#create
8
+ class CaseFile < Lithic::Internal::Type::BaseModel
9
+ # @!attribute token
10
+ # Globally unique identifier for the file
11
+ #
12
+ # @return [String]
13
+ required :token, String
14
+
15
+ # @!attribute created
16
+ # Date and time at which the file record was created
17
+ #
18
+ # @return [Time]
19
+ required :created, Time
20
+
21
+ # @!attribute download_url
22
+ # Presigned URL the client uses to download the file
23
+ #
24
+ # @return [String, nil]
25
+ required :download_url, String, nil?: true
26
+
27
+ # @!attribute download_url_expires
28
+ # Date and time at which the download URL expires
29
+ #
30
+ # @return [Time, nil]
31
+ required :download_url_expires, Time, nil?: true
32
+
33
+ # @!attribute failure_reason
34
+ # Reason the file was rejected, when applicable
35
+ #
36
+ # @return [String, nil]
37
+ required :failure_reason, String, nil?: true
38
+
39
+ # @!attribute mime_type
40
+ # MIME type of the file, available once the file is ready
41
+ #
42
+ # @return [String, nil]
43
+ required :mime_type, String, nil?: true
44
+
45
+ # @!attribute name
46
+ # Name of the file
47
+ #
48
+ # @return [String]
49
+ required :name, String
50
+
51
+ # @!attribute size_bytes
52
+ # Size of the file in bytes, available once the file is ready
53
+ #
54
+ # @return [Integer, nil]
55
+ required :size_bytes, Integer, nil?: true
56
+
57
+ # @!attribute status
58
+ # Lifecycle status of a case file:
59
+ #
60
+ # - `PENDING` - An upload URL has been issued and the file is awaiting upload
61
+ # - `READY` - The file has been uploaded and validated; a download URL is
62
+ # available
63
+ # - `REJECTED` - File validation failed; see `failure_reason` for details
64
+ #
65
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::Cases::FileStatus]
66
+ required :status, enum: -> { Lithic::TransactionMonitoring::Cases::FileStatus }
67
+
68
+ # @!attribute updated
69
+ # Date and time at which the file record was last updated
70
+ #
71
+ # @return [Time]
72
+ required :updated, Time
73
+
74
+ # @!attribute upload_constraints
75
+ # Constraints applied to a file upload, returned alongside the upload URL so
76
+ # clients can validate before uploading
77
+ #
78
+ # @return [Lithic::Models::TransactionMonitoring::Cases::UploadConstraints, nil]
79
+ required :upload_constraints,
80
+ -> {
81
+ Lithic::TransactionMonitoring::Cases::UploadConstraints
82
+ },
83
+ nil?: true
84
+
85
+ # @!attribute upload_url
86
+ # Presigned URL the client uses to upload the file
87
+ #
88
+ # @return [String, nil]
89
+ required :upload_url, String, nil?: true
90
+
91
+ # @!attribute upload_url_expires
92
+ # Date and time at which the upload URL expires
93
+ #
94
+ # @return [Time, nil]
95
+ required :upload_url_expires, Time, nil?: true
96
+
97
+ # @!method initialize(token:, created:, download_url:, download_url_expires:, failure_reason:, mime_type:, name:, size_bytes:, status:, updated:, upload_constraints:, upload_url:, upload_url_expires:)
98
+ # Some parameter documentations has been truncated, see
99
+ # {Lithic::Models::TransactionMonitoring::Cases::CaseFile} for more details.
100
+ #
101
+ # A file attached to a case. Status-dependent fields are always present but may be
102
+ # `null`:
103
+ #
104
+ # - `upload_url`, `upload_url_expires`, and `upload_constraints` are populated
105
+ # when `status` is `PENDING` or `REJECTED`
106
+ # - `download_url` and `download_url_expires` are populated when `status` is
107
+ # `READY`
108
+ # - `failure_reason` is populated when `status` is `REJECTED`
109
+ #
110
+ # @param token [String] Globally unique identifier for the file
111
+ #
112
+ # @param created [Time] Date and time at which the file record was created
113
+ #
114
+ # @param download_url [String, nil] Presigned URL the client uses to download the file
115
+ #
116
+ # @param download_url_expires [Time, nil] Date and time at which the download URL expires
117
+ #
118
+ # @param failure_reason [String, nil] Reason the file was rejected, when applicable
119
+ #
120
+ # @param mime_type [String, nil] MIME type of the file, available once the file is ready
121
+ #
122
+ # @param name [String] Name of the file
123
+ #
124
+ # @param size_bytes [Integer, nil] Size of the file in bytes, available once the file is ready
125
+ #
126
+ # @param status [Symbol, Lithic::Models::TransactionMonitoring::Cases::FileStatus] Lifecycle status of a case file:
127
+ #
128
+ # @param updated [Time] Date and time at which the file record was last updated
129
+ #
130
+ # @param upload_constraints [Lithic::Models::TransactionMonitoring::Cases::UploadConstraints, nil] Constraints applied to a file upload, returned alongside the upload URL so clien
131
+ #
132
+ # @param upload_url [String, nil] Presigned URL the client uses to upload the file
133
+ #
134
+ # @param upload_url_expires [Time, nil] Date and time at which the upload URL expires
135
+ end
136
+ end
137
+
138
+ CaseFile = Cases::CaseFile
139
+ end
140
+ end
141
+ end