lithic 0.15.0 → 0.17.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 (197) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -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/ach_payment_update_action.rb +108 -0
  10. data/lib/lithic/models/auth_rules/auth_rule.rb +18 -12
  11. data/lib/lithic/models/auth_rules/auth_rule_version.rb +5 -3
  12. data/lib/lithic/models/auth_rules/conditional_ach_payment_update_action_parameters.rb +142 -0
  13. data/lib/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rb +18 -20
  14. data/lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb +195 -9
  15. data/lib/lithic/models/auth_rules/event_stream.rb +1 -0
  16. data/lib/lithic/models/auth_rules/rule_feature.rb +52 -7
  17. data/lib/lithic/models/auth_rules/typescript_code_parameters.rb +2 -2
  18. data/lib/lithic/models/auth_rules/v2_create_params.rb +39 -27
  19. data/lib/lithic/models/auth_rules/v2_draft_params.rb +5 -3
  20. data/lib/lithic/models/auth_rules/v2_list_results_response.rb +426 -1
  21. data/lib/lithic/models/card.rb +1 -1
  22. data/lib/lithic/models/card_authorization.rb +117 -11
  23. data/lib/lithic/models/financial_accounts/loan_tape.rb +9 -1
  24. data/lib/lithic/models/payment.rb +13 -1
  25. data/lib/lithic/models/transaction_monitoring/case_activity_entry.rb +74 -0
  26. data/lib/lithic/models/transaction_monitoring/case_activity_type.rb +35 -0
  27. data/lib/lithic/models/transaction_monitoring/case_card.rb +37 -0
  28. data/lib/lithic/models/transaction_monitoring/case_entity.rb +50 -0
  29. data/lib/lithic/models/transaction_monitoring/case_list_activity_params.rb +53 -0
  30. data/lib/lithic/models/transaction_monitoring/case_list_params.rb +136 -0
  31. data/lib/lithic/models/transaction_monitoring/case_list_transactions_params.rb +53 -0
  32. data/lib/lithic/models/transaction_monitoring/case_priority.rb +20 -0
  33. data/lib/lithic/models/transaction_monitoring/case_retrieve_cards_params.rb +22 -0
  34. data/lib/lithic/models/transaction_monitoring/case_retrieve_cards_response.rb +11 -0
  35. data/lib/lithic/models/transaction_monitoring/case_retrieve_params.rb +22 -0
  36. data/lib/lithic/models/transaction_monitoring/case_sort_order.rb +29 -0
  37. data/lib/lithic/models/transaction_monitoring/case_status.rb +31 -0
  38. data/lib/lithic/models/transaction_monitoring/case_transaction.rb +53 -0
  39. data/lib/lithic/models/transaction_monitoring/case_update_params.rb +116 -0
  40. data/lib/lithic/models/transaction_monitoring/cases/case_file.rb +141 -0
  41. data/lib/lithic/models/transaction_monitoring/cases/comment_create_params.rb +47 -0
  42. data/lib/lithic/models/transaction_monitoring/cases/comment_delete_params.rb +30 -0
  43. data/lib/lithic/models/transaction_monitoring/cases/comment_update_params.rb +54 -0
  44. data/lib/lithic/models/transaction_monitoring/cases/file_create_params.rb +33 -0
  45. data/lib/lithic/models/transaction_monitoring/cases/file_delete_params.rb +30 -0
  46. data/lib/lithic/models/transaction_monitoring/cases/file_list_params.rb +54 -0
  47. data/lib/lithic/models/transaction_monitoring/cases/file_retrieve_params.rb +30 -0
  48. data/lib/lithic/models/transaction_monitoring/cases/file_status.rb +26 -0
  49. data/lib/lithic/models/transaction_monitoring/cases/upload_constraints.rb +31 -0
  50. data/lib/lithic/models/transaction_monitoring/entity_type.rb +18 -0
  51. data/lib/lithic/models/transaction_monitoring/monitoring_case.rb +168 -0
  52. data/lib/lithic/models/transaction_monitoring/queue.rb +120 -0
  53. data/lib/lithic/models/transaction_monitoring/queue_create_params.rb +32 -0
  54. data/lib/lithic/models/transaction_monitoring/queue_delete_params.rb +22 -0
  55. data/lib/lithic/models/transaction_monitoring/queue_list_params.rb +45 -0
  56. data/lib/lithic/models/transaction_monitoring/queue_retrieve_params.rb +22 -0
  57. data/lib/lithic/models/transaction_monitoring/queue_update_params.rb +39 -0
  58. data/lib/lithic/models/transaction_monitoring/resolution_outcome.rb +28 -0
  59. data/lib/lithic/models/transaction_route_params.rb +29 -0
  60. data/lib/lithic/models.rb +4 -0
  61. data/lib/lithic/resources/account_holders/entities.rb +1 -1
  62. data/lib/lithic/resources/auth_rules/v2.rb +2 -2
  63. data/lib/lithic/resources/cards.rb +2 -2
  64. data/lib/lithic/resources/transaction_monitoring/cases/comments.rb +111 -0
  65. data/lib/lithic/resources/transaction_monitoring/cases/files.rb +131 -0
  66. data/lib/lithic/resources/transaction_monitoring/cases.rb +228 -0
  67. data/lib/lithic/resources/transaction_monitoring/queues.rb +137 -0
  68. data/lib/lithic/resources/transaction_monitoring.rb +22 -0
  69. data/lib/lithic/resources/transactions.rb +25 -0
  70. data/lib/lithic/version.rb +1 -1
  71. data/lib/lithic.rb +42 -0
  72. data/rbi/lithic/client.rbi +3 -0
  73. data/rbi/lithic/models/account.rbi +3 -3
  74. data/rbi/lithic/models/account_holders/account_holder_entity.rbi +3 -40
  75. data/rbi/lithic/models/account_holders/entity_create_params.rbi +3 -37
  76. data/rbi/lithic/models/auth_rules/ach_payment_update_action.rbi +237 -0
  77. data/rbi/lithic/models/auth_rules/auth_rule.rbi +16 -9
  78. data/rbi/lithic/models/auth_rules/auth_rule_version.rbi +2 -0
  79. data/rbi/lithic/models/auth_rules/conditional_ach_payment_update_action_parameters.rbi +298 -0
  80. data/rbi/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rbi +29 -29
  81. data/rbi/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbi +395 -12
  82. data/rbi/lithic/models/auth_rules/event_stream.rbi +5 -0
  83. data/rbi/lithic/models/auth_rules/rule_feature.rbi +77 -6
  84. data/rbi/lithic/models/auth_rules/typescript_code_parameters.rbi +6 -0
  85. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +48 -27
  86. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +4 -0
  87. data/rbi/lithic/models/auth_rules/v2_list_results_response.rbi +826 -1
  88. data/rbi/lithic/models/card.rbi +2 -2
  89. data/rbi/lithic/models/card_authorization.rbi +246 -17
  90. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +8 -0
  91. data/rbi/lithic/models/payment.rbi +13 -0
  92. data/rbi/lithic/models/transaction_monitoring/case_activity_entry.rbi +107 -0
  93. data/rbi/lithic/models/transaction_monitoring/case_activity_type.rbi +84 -0
  94. data/rbi/lithic/models/transaction_monitoring/case_card.rbi +60 -0
  95. data/rbi/lithic/models/transaction_monitoring/case_entity.rbi +101 -0
  96. data/rbi/lithic/models/transaction_monitoring/case_list_activity_params.rbi +83 -0
  97. data/rbi/lithic/models/transaction_monitoring/case_list_params.rbi +220 -0
  98. data/rbi/lithic/models/transaction_monitoring/case_list_transactions_params.rbi +83 -0
  99. data/rbi/lithic/models/transaction_monitoring/case_priority.rbi +44 -0
  100. data/rbi/lithic/models/transaction_monitoring/case_retrieve_cards_params.rbi +40 -0
  101. data/rbi/lithic/models/transaction_monitoring/case_retrieve_cards_response.rbi +15 -0
  102. data/rbi/lithic/models/transaction_monitoring/case_retrieve_params.rbi +40 -0
  103. data/rbi/lithic/models/transaction_monitoring/case_sort_order.rbi +64 -0
  104. data/rbi/lithic/models/transaction_monitoring/case_status.rbi +63 -0
  105. data/rbi/lithic/models/transaction_monitoring/case_transaction.rbi +75 -0
  106. data/rbi/lithic/models/transaction_monitoring/case_update_params.rbi +201 -0
  107. data/rbi/lithic/models/transaction_monitoring/cases/case_file.rbi +188 -0
  108. data/rbi/lithic/models/transaction_monitoring/cases/comment_create_params.rbi +71 -0
  109. data/rbi/lithic/models/transaction_monitoring/cases/comment_delete_params.rbi +50 -0
  110. data/rbi/lithic/models/transaction_monitoring/cases/comment_update_params.rbi +77 -0
  111. data/rbi/lithic/models/transaction_monitoring/cases/file_create_params.rbi +56 -0
  112. data/rbi/lithic/models/transaction_monitoring/cases/file_delete_params.rbi +50 -0
  113. data/rbi/lithic/models/transaction_monitoring/cases/file_list_params.rbi +85 -0
  114. data/rbi/lithic/models/transaction_monitoring/cases/file_retrieve_params.rbi +50 -0
  115. data/rbi/lithic/models/transaction_monitoring/cases/file_status.rbi +51 -0
  116. data/rbi/lithic/models/transaction_monitoring/cases/upload_constraints.rbi +51 -0
  117. data/rbi/lithic/models/transaction_monitoring/entity_type.rbi +37 -0
  118. data/rbi/lithic/models/transaction_monitoring/monitoring_case.rbi +226 -0
  119. data/rbi/lithic/models/transaction_monitoring/queue.rbi +189 -0
  120. data/rbi/lithic/models/transaction_monitoring/queue_create_params.rbi +56 -0
  121. data/rbi/lithic/models/transaction_monitoring/queue_delete_params.rbi +40 -0
  122. data/rbi/lithic/models/transaction_monitoring/queue_list_params.rbi +77 -0
  123. data/rbi/lithic/models/transaction_monitoring/queue_retrieve_params.rbi +40 -0
  124. data/rbi/lithic/models/transaction_monitoring/queue_update_params.rbi +65 -0
  125. data/rbi/lithic/models/transaction_monitoring/resolution_outcome.rbi +61 -0
  126. data/rbi/lithic/models/transaction_route_params.rbi +49 -0
  127. data/rbi/lithic/models.rbi +4 -0
  128. data/rbi/lithic/resources/account_holders/entities.rbi +1 -1
  129. data/rbi/lithic/resources/auth_rules/v2.rbi +1 -0
  130. data/rbi/lithic/resources/cards.rbi +2 -2
  131. data/rbi/lithic/resources/transaction_monitoring/cases/comments.rbi +81 -0
  132. data/rbi/lithic/resources/transaction_monitoring/cases/files.rbi +98 -0
  133. data/rbi/lithic/resources/transaction_monitoring/cases.rbi +230 -0
  134. data/rbi/lithic/resources/transaction_monitoring/queues.rbi +103 -0
  135. data/rbi/lithic/resources/transaction_monitoring.rbi +18 -0
  136. data/rbi/lithic/resources/transactions.rbi +18 -0
  137. data/sig/lithic/client.rbs +2 -0
  138. data/sig/lithic/models/account_holders/account_holder_entity.rbs +4 -15
  139. data/sig/lithic/models/account_holders/entity_create_params.rbs +4 -15
  140. data/sig/lithic/models/auth_rules/ach_payment_update_action.rbs +99 -0
  141. data/sig/lithic/models/auth_rules/auth_rule.rbs +2 -0
  142. data/sig/lithic/models/auth_rules/auth_rule_version.rbs +1 -0
  143. data/sig/lithic/models/auth_rules/conditional_ach_payment_update_action_parameters.rbs +81 -0
  144. data/sig/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rbs +16 -16
  145. data/sig/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbs +73 -3
  146. data/sig/lithic/models/auth_rules/event_stream.rbs +2 -0
  147. data/sig/lithic/models/auth_rules/rule_feature.rbs +31 -0
  148. data/sig/lithic/models/auth_rules/v2_create_params.rbs +3 -0
  149. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -0
  150. data/sig/lithic/models/auth_rules/v2_list_results_response.rbs +355 -0
  151. data/sig/lithic/models/card_authorization.rbs +84 -10
  152. data/sig/lithic/models/financial_accounts/loan_tape.rbs +5 -0
  153. data/sig/lithic/models/payment.rbs +7 -0
  154. data/sig/lithic/models/transaction_monitoring/case_activity_entry.rbs +47 -0
  155. data/sig/lithic/models/transaction_monitoring/case_activity_type.rbs +32 -0
  156. data/sig/lithic/models/transaction_monitoring/case_card.rbs +32 -0
  157. data/sig/lithic/models/transaction_monitoring/case_entity.rbs +38 -0
  158. data/sig/lithic/models/transaction_monitoring/case_list_activity_params.rbs +49 -0
  159. data/sig/lithic/models/transaction_monitoring/case_list_params.rbs +125 -0
  160. data/sig/lithic/models/transaction_monitoring/case_list_transactions_params.rbs +49 -0
  161. data/sig/lithic/models/transaction_monitoring/case_priority.rbs +18 -0
  162. data/sig/lithic/models/transaction_monitoring/case_retrieve_cards_params.rbs +25 -0
  163. data/sig/lithic/models/transaction_monitoring/case_retrieve_cards_response.rbs +10 -0
  164. data/sig/lithic/models/transaction_monitoring/case_retrieve_params.rbs +25 -0
  165. data/sig/lithic/models/transaction_monitoring/case_sort_order.rbs +26 -0
  166. data/sig/lithic/models/transaction_monitoring/case_status.rbs +21 -0
  167. data/sig/lithic/models/transaction_monitoring/case_transaction.rbs +42 -0
  168. data/sig/lithic/models/transaction_monitoring/case_update_params.rbs +91 -0
  169. data/sig/lithic/models/transaction_monitoring/cases/case_file.rbs +86 -0
  170. data/sig/lithic/models/transaction_monitoring/cases/comment_create_params.rbs +38 -0
  171. data/sig/lithic/models/transaction_monitoring/cases/comment_delete_params.rbs +32 -0
  172. data/sig/lithic/models/transaction_monitoring/cases/comment_update_params.rbs +47 -0
  173. data/sig/lithic/models/transaction_monitoring/cases/file_create_params.rbs +32 -0
  174. data/sig/lithic/models/transaction_monitoring/cases/file_delete_params.rbs +32 -0
  175. data/sig/lithic/models/transaction_monitoring/cases/file_list_params.rbs +51 -0
  176. data/sig/lithic/models/transaction_monitoring/cases/file_retrieve_params.rbs +32 -0
  177. data/sig/lithic/models/transaction_monitoring/cases/file_status.rbs +19 -0
  178. data/sig/lithic/models/transaction_monitoring/cases/upload_constraints.rbs +26 -0
  179. data/sig/lithic/models/transaction_monitoring/entity_type.rbs +16 -0
  180. data/sig/lithic/models/transaction_monitoring/monitoring_case.rbs +102 -0
  181. data/sig/lithic/models/transaction_monitoring/queue.rbs +101 -0
  182. data/sig/lithic/models/transaction_monitoring/queue_create_params.rbs +30 -0
  183. data/sig/lithic/models/transaction_monitoring/queue_delete_params.rbs +25 -0
  184. data/sig/lithic/models/transaction_monitoring/queue_list_params.rbs +40 -0
  185. data/sig/lithic/models/transaction_monitoring/queue_retrieve_params.rbs +25 -0
  186. data/sig/lithic/models/transaction_monitoring/queue_update_params.rbs +36 -0
  187. data/sig/lithic/models/transaction_monitoring/resolution_outcome.rbs +24 -0
  188. data/sig/lithic/models/transaction_route_params.rbs +28 -0
  189. data/sig/lithic/models.rbs +4 -0
  190. data/sig/lithic/resources/account_holders/entities.rbs +1 -1
  191. data/sig/lithic/resources/transaction_monitoring/cases/comments.rbs +32 -0
  192. data/sig/lithic/resources/transaction_monitoring/cases/files.rbs +37 -0
  193. data/sig/lithic/resources/transaction_monitoring/cases.rbs +71 -0
  194. data/sig/lithic/resources/transaction_monitoring/queues.rbs +39 -0
  195. data/sig/lithic/resources/transaction_monitoring.rbs +11 -0
  196. data/sig/lithic/resources/transactions.rbs +6 -0
  197. metadata +128 -2
@@ -0,0 +1,168 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Cases#retrieve
7
+ class MonitoringCase < Lithic::Internal::Type::BaseModel
8
+ # @!attribute token
9
+ # Globally unique identifier for the case
10
+ #
11
+ # @return [String]
12
+ required :token, String
13
+
14
+ # @!attribute assignee
15
+ # Identifier of the user the case is currently assigned to
16
+ #
17
+ # @return [String, nil]
18
+ required :assignee, String, nil?: true
19
+
20
+ # @!attribute collection_stopped
21
+ # Date and time at which transaction collection stopped for the case
22
+ #
23
+ # @return [Time, nil]
24
+ required :collection_stopped, Time, nil?: true
25
+
26
+ # @!attribute created
27
+ # Date and time at which the case was created
28
+ #
29
+ # @return [Time]
30
+ required :created, Time
31
+
32
+ # @!attribute entity
33
+ # The entity a case is associated with
34
+ #
35
+ # @return [Lithic::Models::TransactionMonitoring::CaseEntity, nil]
36
+ required :entity, -> { Lithic::TransactionMonitoring::CaseEntity }, nil?: true
37
+
38
+ # @!attribute pending_transactions
39
+ # Whether the case still has transaction scopes pending resolution
40
+ #
41
+ # @return [Boolean]
42
+ required :pending_transactions, Lithic::Internal::Type::Boolean
43
+
44
+ # @!attribute priority
45
+ # Priority level of a case, controlling queue ordering and SLA urgency
46
+ #
47
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::CasePriority]
48
+ required :priority, enum: -> { Lithic::TransactionMonitoring::CasePriority }
49
+
50
+ # @!attribute queue_token
51
+ # Token of the queue the case belongs to
52
+ #
53
+ # @return [String]
54
+ required :queue_token, String
55
+
56
+ # @!attribute resolution
57
+ # Outcome recorded when a case is resolved:
58
+ #
59
+ # - `CONFIRMED_FRAUD` - The reviewed activity was confirmed to be fraudulent
60
+ # - `SUSPICIOUS_ACTIVITY` - The activity is suspicious but not confirmed fraud
61
+ # - `FALSE_POSITIVE` - The activity was legitimate and the alert was a false
62
+ # positive
63
+ # - `NO_ACTION_REQUIRED` - No further action is required
64
+ # - `ESCALATED_EXTERNAL` - The case was escalated to an external party
65
+ #
66
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::ResolutionOutcome, nil]
67
+ required :resolution, enum: -> { Lithic::TransactionMonitoring::ResolutionOutcome }, nil?: true
68
+
69
+ # @!attribute resolution_notes
70
+ # Free-form notes describing the resolution
71
+ #
72
+ # @return [String, nil]
73
+ required :resolution_notes, String, nil?: true
74
+
75
+ # @!attribute resolved
76
+ # Date and time at which the case was resolved
77
+ #
78
+ # @return [Time, nil]
79
+ required :resolved, Time, nil?: true
80
+
81
+ # @!attribute rule_token
82
+ # Token of the transaction monitoring rule that triggered the case
83
+ #
84
+ # @return [String, nil]
85
+ required :rule_token, String, nil?: true
86
+
87
+ # @!attribute sla_deadline
88
+ # Deadline by which the case is expected to be resolved
89
+ #
90
+ # @return [Time, nil]
91
+ required :sla_deadline, Time, nil?: true
92
+
93
+ # @!attribute status
94
+ # Status of a case as it progresses through the review workflow:
95
+ #
96
+ # - `OPEN` - The case has been created and is still collecting matching
97
+ # transactions
98
+ # - `ASSIGNED` - An analyst has been assigned and transaction collection has
99
+ # stopped
100
+ # - `IN_REVIEW` - The case is actively being investigated
101
+ # - `ESCALATED` - The case has been reviewed and requires additional oversight
102
+ # - `RESOLVED` - A determination has been made and a resolution recorded
103
+ # - `CLOSED` - The case is finalized
104
+ #
105
+ # @return [Symbol, Lithic::Models::TransactionMonitoring::CaseStatus]
106
+ required :status, enum: -> { Lithic::TransactionMonitoring::CaseStatus }
107
+
108
+ # @!attribute tags
109
+ # Arbitrary key-value metadata associated with the case
110
+ #
111
+ # @return [Hash{Symbol=>String}]
112
+ required :tags, Lithic::Internal::Type::HashOf[String]
113
+
114
+ # @!attribute title
115
+ # Short, human-readable summary of the case
116
+ #
117
+ # @return [String, nil]
118
+ required :title, String, nil?: true
119
+
120
+ # @!attribute updated
121
+ # Date and time at which the case was last updated
122
+ #
123
+ # @return [Time]
124
+ required :updated, Time
125
+
126
+ # @!method initialize(token:, assignee:, collection_stopped:, created:, entity:, pending_transactions:, priority:, queue_token:, resolution:, resolution_notes:, resolved:, rule_token:, sla_deadline:, status:, tags:, title:, updated:)
127
+ # Some parameter documentations has been truncated, see
128
+ # {Lithic::Models::TransactionMonitoring::MonitoringCase} for more details.
129
+ #
130
+ # A transaction monitoring case
131
+ #
132
+ # @param token [String] Globally unique identifier for the case
133
+ #
134
+ # @param assignee [String, nil] Identifier of the user the case is currently assigned to
135
+ #
136
+ # @param collection_stopped [Time, nil] Date and time at which transaction collection stopped for the case
137
+ #
138
+ # @param created [Time] Date and time at which the case was created
139
+ #
140
+ # @param entity [Lithic::Models::TransactionMonitoring::CaseEntity, nil] The entity a case is associated with
141
+ #
142
+ # @param pending_transactions [Boolean] Whether the case still has transaction scopes pending resolution
143
+ #
144
+ # @param priority [Symbol, Lithic::Models::TransactionMonitoring::CasePriority] Priority level of a case, controlling queue ordering and SLA urgency
145
+ #
146
+ # @param queue_token [String] Token of the queue the case belongs to
147
+ #
148
+ # @param resolution [Symbol, Lithic::Models::TransactionMonitoring::ResolutionOutcome, nil] Outcome recorded when a case is resolved:
149
+ #
150
+ # @param resolution_notes [String, nil] Free-form notes describing the resolution
151
+ #
152
+ # @param resolved [Time, nil] Date and time at which the case was resolved
153
+ #
154
+ # @param rule_token [String, nil] Token of the transaction monitoring rule that triggered the case
155
+ #
156
+ # @param sla_deadline [Time, nil] Deadline by which the case is expected to be resolved
157
+ #
158
+ # @param status [Symbol, Lithic::Models::TransactionMonitoring::CaseStatus] Status of a case as it progresses through the review workflow:
159
+ #
160
+ # @param tags [Hash{Symbol=>String}] Arbitrary key-value metadata associated with the case
161
+ #
162
+ # @param title [String, nil] Short, human-readable summary of the case
163
+ #
164
+ # @param updated [Time] Date and time at which the case was last updated
165
+ end
166
+ end
167
+ end
168
+ end
@@ -0,0 +1,120 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Queues#create
7
+ class Queue < Lithic::Internal::Type::BaseModel
8
+ # @!attribute token
9
+ # Globally unique identifier for the queue
10
+ #
11
+ # @return [String]
12
+ required :token, String
13
+
14
+ # @!attribute case_counts
15
+ # Number of cases in the queue, broken down by status. A status is omitted when
16
+ # the queue has no cases in that status
17
+ #
18
+ # @return [Lithic::Models::TransactionMonitoring::Queue::CaseCounts]
19
+ required :case_counts, -> { Lithic::TransactionMonitoring::Queue::CaseCounts }
20
+
21
+ # @!attribute created
22
+ # Date and time at which the queue was created
23
+ #
24
+ # @return [Time]
25
+ required :created, Time
26
+
27
+ # @!attribute description
28
+ # Optional description of the queue
29
+ #
30
+ # @return [String, nil]
31
+ required :description, String, nil?: true
32
+
33
+ # @!attribute name
34
+ # Human-readable name of the queue
35
+ #
36
+ # @return [String]
37
+ required :name, String
38
+
39
+ # @!attribute updated
40
+ # Date and time at which the queue was last updated
41
+ #
42
+ # @return [Time]
43
+ required :updated, Time
44
+
45
+ # @!method initialize(token:, case_counts:, created:, description:, name:, updated:)
46
+ # Some parameter documentations has been truncated, see
47
+ # {Lithic::Models::TransactionMonitoring::Queue} for more details.
48
+ #
49
+ # A queue that groups transaction monitoring cases for review
50
+ #
51
+ # @param token [String] Globally unique identifier for the queue
52
+ #
53
+ # @param case_counts [Lithic::Models::TransactionMonitoring::Queue::CaseCounts] Number of cases in the queue, broken down by status. A status is omitted
54
+ #
55
+ # @param created [Time] Date and time at which the queue was created
56
+ #
57
+ # @param description [String, nil] Optional description of the queue
58
+ #
59
+ # @param name [String] Human-readable name of the queue
60
+ #
61
+ # @param updated [Time] Date and time at which the queue was last updated
62
+
63
+ # @see Lithic::Models::TransactionMonitoring::Queue#case_counts
64
+ class CaseCounts < Lithic::Internal::Type::BaseModel
65
+ # @!attribute assigned
66
+ # Number of cases in the queue with status `ASSIGNED`
67
+ #
68
+ # @return [Integer, nil]
69
+ optional :assigned, Integer, api_name: :ASSIGNED
70
+
71
+ # @!attribute closed
72
+ # Number of cases in the queue with status `CLOSED`
73
+ #
74
+ # @return [Integer, nil]
75
+ optional :closed, Integer, api_name: :CLOSED
76
+
77
+ # @!attribute escalated
78
+ # Number of cases in the queue with status `ESCALATED`
79
+ #
80
+ # @return [Integer, nil]
81
+ optional :escalated, Integer, api_name: :ESCALATED
82
+
83
+ # @!attribute in_review
84
+ # Number of cases in the queue with status `IN_REVIEW`
85
+ #
86
+ # @return [Integer, nil]
87
+ optional :in_review, Integer, api_name: :IN_REVIEW
88
+
89
+ # @!attribute open_
90
+ # Number of cases in the queue with status `OPEN`
91
+ #
92
+ # @return [Integer, nil]
93
+ optional :open_, Integer, api_name: :OPEN
94
+
95
+ # @!attribute resolved
96
+ # Number of cases in the queue with status `RESOLVED`
97
+ #
98
+ # @return [Integer, nil]
99
+ optional :resolved, Integer, api_name: :RESOLVED
100
+
101
+ # @!method initialize(assigned: nil, closed: nil, escalated: nil, in_review: nil, open_: nil, resolved: nil)
102
+ # Number of cases in the queue, broken down by status. A status is omitted when
103
+ # the queue has no cases in that status
104
+ #
105
+ # @param assigned [Integer] Number of cases in the queue with status `ASSIGNED`
106
+ #
107
+ # @param closed [Integer] Number of cases in the queue with status `CLOSED`
108
+ #
109
+ # @param escalated [Integer] Number of cases in the queue with status `ESCALATED`
110
+ #
111
+ # @param in_review [Integer] Number of cases in the queue with status `IN_REVIEW`
112
+ #
113
+ # @param open_ [Integer] Number of cases in the queue with status `OPEN`
114
+ #
115
+ # @param resolved [Integer] Number of cases in the queue with status `RESOLVED`
116
+ end
117
+ end
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Queues#create
7
+ class QueueCreateParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute name
12
+ # Human-readable name of the queue
13
+ #
14
+ # @return [String]
15
+ required :name, String
16
+
17
+ # @!attribute description
18
+ # Optional description of the queue
19
+ #
20
+ # @return [String, nil]
21
+ optional :description, String, nil?: true
22
+
23
+ # @!method initialize(name:, description: nil, request_options: {})
24
+ # @param name [String] Human-readable name of the queue
25
+ #
26
+ # @param description [String, nil] Optional description of the queue
27
+ #
28
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
29
+ end
30
+ end
31
+ end
32
+ 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::Queues#delete
7
+ class QueueDeleteParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute queue_token
12
+ #
13
+ # @return [String]
14
+ required :queue_token, String
15
+
16
+ # @!method initialize(queue_token:, request_options: {})
17
+ # @param queue_token [String]
18
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Queues#list
7
+ class QueueListParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute ending_before
12
+ # A cursor representing an item's token before which a page of results should end.
13
+ # Used to retrieve the previous page of results before this item.
14
+ #
15
+ # @return [String, nil]
16
+ optional :ending_before, String
17
+
18
+ # @!attribute page_size
19
+ # Page size (for pagination).
20
+ #
21
+ # @return [Integer, nil]
22
+ optional :page_size, Integer
23
+
24
+ # @!attribute starting_after
25
+ # A cursor representing an item's token after which a page of results should
26
+ # begin. Used to retrieve the next page of results after this item.
27
+ #
28
+ # @return [String, nil]
29
+ optional :starting_after, String
30
+
31
+ # @!method initialize(ending_before: nil, page_size: nil, starting_after: nil, request_options: {})
32
+ # Some parameter documentations has been truncated, see
33
+ # {Lithic::Models::TransactionMonitoring::QueueListParams} for more details.
34
+ #
35
+ # @param ending_before [String] A cursor representing an item's token before which a page of results should end.
36
+ #
37
+ # @param page_size [Integer] Page size (for pagination).
38
+ #
39
+ # @param starting_after [String] A cursor representing an item's token after which a page of results should begin
40
+ #
41
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
42
+ end
43
+ end
44
+ end
45
+ 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::Queues#retrieve
7
+ class QueueRetrieveParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute queue_token
12
+ #
13
+ # @return [String]
14
+ required :queue_token, String
15
+
16
+ # @!method initialize(queue_token:, request_options: {})
17
+ # @param queue_token [String]
18
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # @see Lithic::Resources::TransactionMonitoring::Queues#update
7
+ class QueueUpdateParams < Lithic::Internal::Type::BaseModel
8
+ extend Lithic::Internal::Type::RequestParameters::Converter
9
+ include Lithic::Internal::Type::RequestParameters
10
+
11
+ # @!attribute queue_token
12
+ #
13
+ # @return [String]
14
+ required :queue_token, String
15
+
16
+ # @!attribute description
17
+ # New description for the queue, or `null` to clear it
18
+ #
19
+ # @return [String, nil]
20
+ optional :description, String, nil?: true
21
+
22
+ # @!attribute name
23
+ # New name for the queue
24
+ #
25
+ # @return [String, nil]
26
+ optional :name, String
27
+
28
+ # @!method initialize(queue_token:, description: nil, name: nil, request_options: {})
29
+ # @param queue_token [String]
30
+ #
31
+ # @param description [String, nil] New description for the queue, or `null` to clear it
32
+ #
33
+ # @param name [String] New name for the queue
34
+ #
35
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module TransactionMonitoring
6
+ # Outcome recorded when a case is resolved:
7
+ #
8
+ # - `CONFIRMED_FRAUD` - The reviewed activity was confirmed to be fraudulent
9
+ # - `SUSPICIOUS_ACTIVITY` - The activity is suspicious but not confirmed fraud
10
+ # - `FALSE_POSITIVE` - The activity was legitimate and the alert was a false
11
+ # positive
12
+ # - `NO_ACTION_REQUIRED` - No further action is required
13
+ # - `ESCALATED_EXTERNAL` - The case was escalated to an external party
14
+ module ResolutionOutcome
15
+ extend Lithic::Internal::Type::Enum
16
+
17
+ CONFIRMED_FRAUD = :CONFIRMED_FRAUD
18
+ SUSPICIOUS_ACTIVITY = :SUSPICIOUS_ACTIVITY
19
+ FALSE_POSITIVE = :FALSE_POSITIVE
20
+ NO_ACTION_REQUIRED = :NO_ACTION_REQUIRED
21
+ ESCALATED_EXTERNAL = :ESCALATED_EXTERNAL
22
+
23
+ # @!method self.values
24
+ # @return [Array<Symbol>]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ # @see Lithic::Resources::Transactions#route
6
+ class TransactionRouteParams < Lithic::Internal::Type::BaseModel
7
+ extend Lithic::Internal::Type::RequestParameters::Converter
8
+ include Lithic::Internal::Type::RequestParameters
9
+
10
+ # @!attribute transaction_token
11
+ #
12
+ # @return [String]
13
+ required :transaction_token, String
14
+
15
+ # @!attribute financial_account_token
16
+ # The token of the financial account to route the transaction to.
17
+ #
18
+ # @return [String]
19
+ required :financial_account_token, String
20
+
21
+ # @!method initialize(transaction_token:, financial_account_token:, request_options: {})
22
+ # @param transaction_token [String]
23
+ #
24
+ # @param financial_account_token [String] The token of the financial account to route the transaction to.
25
+ #
26
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
27
+ end
28
+ end
29
+ end
data/lib/lithic/models.rb CHANGED
@@ -574,8 +574,12 @@ module Lithic
574
574
 
575
575
  TransactionListParams = Lithic::Models::TransactionListParams
576
576
 
577
+ TransactionMonitoring = Lithic::Models::TransactionMonitoring
578
+
577
579
  TransactionRetrieveParams = Lithic::Models::TransactionRetrieveParams
578
580
 
581
+ TransactionRouteParams = Lithic::Models::TransactionRouteParams
582
+
579
583
  Transactions = Lithic::Models::Transactions
580
584
 
581
585
  TransactionSimulateAuthorizationAdviceParams =
@@ -31,7 +31,7 @@ module Lithic
31
31
  #
32
32
  # @param phone_number [String] Individual's phone number, entered in E.164 format.
33
33
  #
34
- # @param type [Symbol, Lithic::Models::AccountHolders::EntityCreateParams::Type] The type of entity to create on the account holder
34
+ # @param type [Symbol, Lithic::Models::TransactionMonitoring::EntityType] The type of entity to create on the account holder
35
35
  #
36
36
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
37
37
  #
@@ -144,7 +144,7 @@ module Lithic
144
144
  #
145
145
  # @param auth_rule_token [String]
146
146
  #
147
- # @param parameters [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::MerchantLockParameters, Lithic::Models::AuthRules::Conditional3DSActionParameters, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters, Lithic::Models::AuthRules::ConditionalACHActionParameters, Lithic::Models::AuthRules::ConditionalTokenizationActionParameters, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters, Lithic::Models::AuthRules::TypescriptCodeParameters, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters, nil] Parameters for the Auth Rule
147
+ # @param parameters [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::MerchantLockParameters, Lithic::Models::AuthRules::Conditional3DSActionParameters, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters, Lithic::Models::AuthRules::ConditionalACHActionParameters, Lithic::Models::AuthRules::ConditionalTokenizationActionParameters, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters, Lithic::Models::AuthRules::ConditionalACHPaymentUpdateActionParameters, Lithic::Models::AuthRules::TypescriptCodeParameters, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters, nil] Parameters for the Auth Rule
148
148
  #
149
149
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
150
150
  #
@@ -193,7 +193,7 @@ module Lithic
193
193
  #
194
194
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
195
195
  #
196
- # @return [Lithic::Internal::CursorPage<Lithic::Models::AuthRules::V2ListResultsResponse::AuthorizationResult, Lithic::Models::AuthRules::V2ListResultsResponse::Authentication3DSResult, Lithic::Models::AuthRules::V2ListResultsResponse::TokenizationResult, Lithic::Models::AuthRules::V2ListResultsResponse::ACHResult>]
196
+ # @return [Lithic::Internal::CursorPage<Lithic::Models::AuthRules::V2ListResultsResponse::AuthorizationResult, Lithic::Models::AuthRules::V2ListResultsResponse::Authentication3DSResult, Lithic::Models::AuthRules::V2ListResultsResponse::TokenizationResult, Lithic::Models::AuthRules::V2ListResultsResponse::ACHResult, Lithic::Models::AuthRules::V2ListResultsResponse::CardTransactionUpdateResult, Lithic::Models::AuthRules::V2ListResultsResponse::ACHPaymentUpdateResult>]
197
197
  #
198
198
  # @see Lithic::Models::AuthRules::V2ListResultsParams
199
199
  def list_results(params = {})
@@ -453,8 +453,8 @@ module Lithic
453
453
 
454
454
  # Get card configuration such as spend limit and state. Customers must be PCI
455
455
  # compliant to use this endpoint. Please contact
456
- # [support@lithic.com](mailto:support@lithic.com) for questions. _Note: this is a
457
- # `POST` endpoint because it is more secure to send sensitive data in a request
456
+ # [support.lithic.com](https://support.lithic.com/) for questions. _Note: this is
457
+ # a `POST` endpoint because it is more secure to send sensitive data in a request
458
458
  # body than in a URL._
459
459
  #
460
460
  # @overload search_by_pan(pan:, request_options: {})
@@ -0,0 +1,111 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Resources
5
+ class TransactionMonitoring
6
+ class Cases
7
+ class Comments
8
+ # Some parameter documentations has been truncated, see
9
+ # {Lithic::Models::TransactionMonitoring::Cases::CommentCreateParams} for more
10
+ # details.
11
+ #
12
+ # Adds a comment to a case.
13
+ #
14
+ # @overload create(case_token, comment:, actor_token: nil, request_options: {})
15
+ #
16
+ # @param case_token [String] Globally unique identifier for the case.
17
+ #
18
+ # @param comment [String] Text of the comment
19
+ #
20
+ # @param actor_token [String] Optional client-provided identifier for the actor performing this action,
21
+ #
22
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
23
+ #
24
+ # @return [Lithic::Models::TransactionMonitoring::CaseActivityEntry]
25
+ #
26
+ # @see Lithic::Models::TransactionMonitoring::Cases::CommentCreateParams
27
+ def create(case_token, params)
28
+ parsed, options = Lithic::TransactionMonitoring::Cases::CommentCreateParams.dump_request(params)
29
+ @client.request(
30
+ method: :post,
31
+ path: ["v1/transaction_monitoring/cases/%1$s/comments", case_token],
32
+ body: parsed,
33
+ model: Lithic::TransactionMonitoring::CaseActivityEntry,
34
+ options: options
35
+ )
36
+ end
37
+
38
+ # Some parameter documentations has been truncated, see
39
+ # {Lithic::Models::TransactionMonitoring::Cases::CommentUpdateParams} for more
40
+ # details.
41
+ #
42
+ # Edits an existing comment on a case.
43
+ #
44
+ # @overload update(comment_token, case_token:, comment:, actor_token: nil, request_options: {})
45
+ #
46
+ # @param comment_token [String] Path param: Globally unique identifier for the comment.
47
+ #
48
+ # @param case_token [String] Path param: Globally unique identifier for the case.
49
+ #
50
+ # @param comment [String] Body param: New text of the comment
51
+ #
52
+ # @param actor_token [String] Body param: Optional client-provided identifier for the actor performing this ac
53
+ #
54
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
55
+ #
56
+ # @return [Lithic::Models::TransactionMonitoring::CaseActivityEntry]
57
+ #
58
+ # @see Lithic::Models::TransactionMonitoring::Cases::CommentUpdateParams
59
+ def update(comment_token, params)
60
+ parsed, options = Lithic::TransactionMonitoring::Cases::CommentUpdateParams.dump_request(params)
61
+ case_token =
62
+ parsed.delete(:case_token) do
63
+ raise ArgumentError.new("missing required path argument #{_1}")
64
+ end
65
+ @client.request(
66
+ method: :patch,
67
+ path: ["v1/transaction_monitoring/cases/%1$s/comments/%2$s", case_token, comment_token],
68
+ body: parsed,
69
+ model: Lithic::TransactionMonitoring::CaseActivityEntry,
70
+ options: options
71
+ )
72
+ end
73
+
74
+ # Deletes a comment from a case.
75
+ #
76
+ # @overload delete(comment_token, case_token:, request_options: {})
77
+ #
78
+ # @param comment_token [String] Globally unique identifier for the comment.
79
+ #
80
+ # @param case_token [String] Globally unique identifier for the case.
81
+ #
82
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
83
+ #
84
+ # @return [nil]
85
+ #
86
+ # @see Lithic::Models::TransactionMonitoring::Cases::CommentDeleteParams
87
+ def delete(comment_token, params)
88
+ parsed, options = Lithic::TransactionMonitoring::Cases::CommentDeleteParams.dump_request(params)
89
+ case_token =
90
+ parsed.delete(:case_token) do
91
+ raise ArgumentError.new("missing required path argument #{_1}")
92
+ end
93
+ @client.request(
94
+ method: :delete,
95
+ path: ["v1/transaction_monitoring/cases/%1$s/comments/%2$s", case_token, comment_token],
96
+ model: NilClass,
97
+ options: options
98
+ )
99
+ end
100
+
101
+ # @api private
102
+ #
103
+ # @param client [Lithic::Client]
104
+ def initialize(client:)
105
+ @client = client
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end