google-cloud-chronicle-v1 0.7.0 → 0.9.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 (39) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/chronicle/v1/findings_refinement_pb.rb +50 -0
  3. data/lib/google/cloud/chronicle/v1/findings_refinement_service/client.rb +1331 -0
  4. data/lib/google/cloud/chronicle/v1/findings_refinement_service/credentials.rb +49 -0
  5. data/lib/google/cloud/chronicle/v1/findings_refinement_service/paths.rb +159 -0
  6. data/lib/google/cloud/chronicle/v1/findings_refinement_service/rest/client.rb +1225 -0
  7. data/lib/google/cloud/chronicle/v1/findings_refinement_service/rest/service_stub.rb +635 -0
  8. data/lib/google/cloud/chronicle/v1/findings_refinement_service/rest.rb +54 -0
  9. data/lib/google/cloud/chronicle/v1/findings_refinement_service.rb +57 -0
  10. data/lib/google/cloud/chronicle/v1/findings_refinement_services_pb.rb +63 -0
  11. data/lib/google/cloud/chronicle/v1/reference_list_pb.rb +4 -1
  12. data/lib/google/cloud/chronicle/v1/reference_list_service/client.rb +104 -0
  13. data/lib/google/cloud/chronicle/v1/reference_list_service/credentials.rb +2 -0
  14. data/lib/google/cloud/chronicle/v1/reference_list_service/rest/client.rb +97 -0
  15. data/lib/google/cloud/chronicle/v1/reference_list_service/rest/service_stub.rb +62 -0
  16. data/lib/google/cloud/chronicle/v1/reference_list_services_pb.rb +2 -0
  17. data/lib/google/cloud/chronicle/v1/rest.rb +2 -0
  18. data/lib/google/cloud/chronicle/v1/rule_execution_error_pb.rb +30 -0
  19. data/lib/google/cloud/chronicle/v1/rule_execution_error_service/client.rb +522 -0
  20. data/lib/google/cloud/chronicle/v1/rule_execution_error_service/credentials.rb +49 -0
  21. data/lib/google/cloud/chronicle/v1/rule_execution_error_service/paths.rb +52 -0
  22. data/lib/google/cloud/chronicle/v1/rule_execution_error_service/rest/client.rb +472 -0
  23. data/lib/google/cloud/chronicle/v1/rule_execution_error_service/rest/service_stub.rb +142 -0
  24. data/lib/google/cloud/chronicle/v1/rule_execution_error_service/rest.rb +53 -0
  25. data/lib/google/cloud/chronicle/v1/rule_execution_error_service.rb +56 -0
  26. data/lib/google/cloud/chronicle/v1/rule_execution_error_services_pb.rb +46 -0
  27. data/lib/google/cloud/chronicle/v1/rule_pb.rb +3 -1
  28. data/lib/google/cloud/chronicle/v1/rule_service/client.rb +101 -0
  29. data/lib/google/cloud/chronicle/v1/rule_service/credentials.rb +2 -0
  30. data/lib/google/cloud/chronicle/v1/rule_service/rest/client.rb +94 -0
  31. data/lib/google/cloud/chronicle/v1/rule_service/rest/service_stub.rb +62 -0
  32. data/lib/google/cloud/chronicle/v1/rule_services_pb.rb +2 -0
  33. data/lib/google/cloud/chronicle/v1/version.rb +1 -1
  34. data/lib/google/cloud/chronicle/v1.rb +2 -0
  35. data/proto_docs/google/cloud/chronicle/v1/findings_refinement.rb +439 -0
  36. data/proto_docs/google/cloud/chronicle/v1/reference_list.rb +43 -0
  37. data/proto_docs/google/cloud/chronicle/v1/rule.rb +27 -0
  38. data/proto_docs/google/cloud/chronicle/v1/rule_execution_error.rb +116 -0
  39. metadata +21 -1
@@ -0,0 +1,439 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Chronicle
23
+ module V1
24
+ # Represents a set of logic conditions used to refine various types of
25
+ # findings such as curated rule detections.
26
+ # @!attribute [rw] name
27
+ # @return [::String]
28
+ # Full resource name for the findings refinement.
29
+ # Format:
30
+ # projects/\\{project}/locations/\\{region}/instances/\\{instance}/findingsRefinements/\\{findings_refinement}
31
+ # @!attribute [rw] display_name
32
+ # @return [::String]
33
+ # Display name of the findings refinement.
34
+ # @!attribute [rw] type
35
+ # @return [::Google::Cloud::Chronicle::V1::FindingsRefinementType]
36
+ # The type of findings refinement.
37
+ # @!attribute [r] create_time
38
+ # @return [::Google::Protobuf::Timestamp]
39
+ # Output only. The timestamp of when the findings refinement was created.
40
+ # @!attribute [r] update_time
41
+ # @return [::Google::Protobuf::Timestamp]
42
+ # Output only. The timestamp of when the findings refinement was last
43
+ # updated.
44
+ # @!attribute [rw] query
45
+ # @return [::String]
46
+ # The query for the findings refinement. Works in conjunction with the type
47
+ # field to determine the findings refinement behavior. The syntax of this
48
+ # query is the same as a UDM search string. See the following for more
49
+ # information:
50
+ # https://cloud.google.com/chronicle/docs/investigation/udm-search
51
+ # @!attribute [rw] outcome_filters
52
+ # @return [::Array<::Google::Cloud::Chronicle::V1::OutcomeFilter>]
53
+ # Optional. The outcome filters for the findings refinement. These allow you
54
+ # to specify filters that are applied to the outcome variables in the
55
+ # detection. All filters must be true for a detection to match the findings
56
+ # refinement.
57
+ class FindingsRefinement
58
+ include ::Google::Protobuf::MessageExts
59
+ extend ::Google::Protobuf::MessageExts::ClassMethods
60
+ end
61
+
62
+ # The FindingsRefinementDeployment resource represents the deployment state of
63
+ # a findings refinement.
64
+ # @!attribute [rw] detection_exclusion_application
65
+ # @return [::Google::Cloud::Chronicle::V1::DetectionExclusionApplication]
66
+ # The resources which the detection exclusion is applied to.
67
+ # @!attribute [rw] name
68
+ # @return [::String]
69
+ # Required. The resource name of the findings refinement deployment.
70
+ # Format:
71
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/findingsRefinements/\\{findings_refinement}/deployment
72
+ # @!attribute [rw] enabled
73
+ # @return [::Boolean]
74
+ # Whether the findings refinement is currently deployed continuously against
75
+ # incoming findings.
76
+ # @!attribute [rw] archived
77
+ # @return [::Boolean]
78
+ # The archive state of the findings refinement deployment.
79
+ # Cannot be set to true unless enabled is set to false.
80
+ # If currently set to true, enabled cannot be updated to true.
81
+ # @!attribute [r] update_time
82
+ # @return [::Google::Protobuf::Timestamp]
83
+ # Output only. The timestamp when the findings refinement deployment was last
84
+ # updated.
85
+ class FindingsRefinementDeployment
86
+ include ::Google::Protobuf::MessageExts
87
+ extend ::Google::Protobuf::MessageExts::ClassMethods
88
+ end
89
+
90
+ # Describes the detectors a detection exclusion is applied to.
91
+ # @!attribute [rw] curated_rule_sets
92
+ # @return [::Array<::String>]
93
+ # The CuratedRuleSets this detection exclusion applies to.
94
+ # Format:
95
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/curatedRuleSetCategories/\\{category}/curatedRuleSets/\\{rule_set}
96
+ # @!attribute [rw] curated_rules
97
+ # @return [::Array<::String>]
98
+ # The CuratedRules this detection exclusion applies to.
99
+ # Format:
100
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/curatedRules/\\{rule}
101
+ # @!attribute [rw] rules
102
+ # @return [::Array<::String>]
103
+ # Optional. The Rules this detection exclusion applies to.
104
+ # Format:
105
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/rules/\\{rule}
106
+ # @!attribute [r] deleted_curated_rule_sets
107
+ # @return [::Array<::String>]
108
+ # Output only. The deleted CuratedRuleSets this detection exclusion applies
109
+ # to. Indicates to the customer that the detection exclusion no longer
110
+ # applies to the rule sets, so the detection exclusion should be updated.
111
+ # Format:
112
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/curatedRuleSetCategories/\\{category}/curatedRuleSets/\\{rule_set}
113
+ class DetectionExclusionApplication
114
+ include ::Google::Protobuf::MessageExts
115
+ extend ::Google::Protobuf::MessageExts::ClassMethods
116
+ end
117
+
118
+ # The activity for a specific findings refinement.
119
+ # @!attribute [rw] detection_exclusion_activity
120
+ # @return [::Google::Cloud::Chronicle::V1::DetectionExclusionActivity]
121
+ # The activity for the detection exclusion.
122
+ # @!attribute [rw] findings_refinement
123
+ # @return [::String]
124
+ # Required. Full resource name for the findings refinement this activity
125
+ # corresponds to. Format:
126
+ # projects/\\{project}/locations/\\{region}/instances/\\{instance}/findingsRefinements/\\{findings_refinement}
127
+ class FindingsRefinementActivity
128
+ include ::Google::Protobuf::MessageExts
129
+ extend ::Google::Protobuf::MessageExts::ClassMethods
130
+ end
131
+
132
+ # The activity for a findings refinement that is a detection exclusion. The
133
+ # activity is broken down per detector.
134
+ # @!attribute [rw] detection_exclusion_detector_activities
135
+ # @return [::Array<::Google::Cloud::Chronicle::V1::DetectionExclusionActivity::DetectionExclusionDetectorActivity>]
136
+ # The activity for the detection exclusion broken down by detector.
137
+ class DetectionExclusionActivity
138
+ include ::Google::Protobuf::MessageExts
139
+ extend ::Google::Protobuf::MessageExts::ClassMethods
140
+
141
+ # The activity for a findings refinement that is a detection exclusion broken
142
+ # down for one specific detector.
143
+ # @!attribute [rw] curated_rule
144
+ # @return [::String]
145
+ # Full resource name for the curated rule this activity corresponds to.
146
+ # Format:
147
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/curatedRules/\\{rule}
148
+ #
149
+ # Note: The following fields are mutually exclusive: `curated_rule`, `curated_rule_set`, `rule`, `deleted_curated_rule_set`. If a field in that set is populated, all other fields in the set will automatically be cleared.
150
+ # @!attribute [rw] curated_rule_set
151
+ # @return [::String]
152
+ # Full resource name for the curated rule set this activity corresponds
153
+ # to. This field will only be set if the customer has access to the
154
+ # curated rule set the exclusion is applied to.
155
+ # Format:
156
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/curatedRuleSetCategories/\\{curated_rule_set_category}/curatedRuleSets/\\{curated_rule_set}
157
+ #
158
+ # Note: The following fields are mutually exclusive: `curated_rule_set`, `curated_rule`, `rule`, `deleted_curated_rule_set`. If a field in that set is populated, all other fields in the set will automatically be cleared.
159
+ # @!attribute [rw] rule
160
+ # @return [::String]
161
+ # Full resource name for the rule this activity corresponds to.
162
+ # Format:
163
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/rules/\\{rule}
164
+ #
165
+ # Note: The following fields are mutually exclusive: `rule`, `curated_rule`, `curated_rule_set`, `deleted_curated_rule_set`. If a field in that set is populated, all other fields in the set will automatically be cleared.
166
+ # @!attribute [rw] deleted_curated_rule_set
167
+ # @return [::String]
168
+ # Full resource name for the deleted curated rule set this activity
169
+ # corresponds to. This field will only be set if the customer does
170
+ # not have access to the curated rule set the exclusion is applied to.
171
+ # Format:
172
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/curatedRuleSetCategories/\\{curated_rule_set_category}/curatedRuleSets/\\{curated_rule_set}
173
+ #
174
+ # Note: The following fields are mutually exclusive: `deleted_curated_rule_set`, `curated_rule`, `curated_rule_set`, `rule`. If a field in that set is populated, all other fields in the set will automatically be cleared.
175
+ # @!attribute [rw] excluded_detection_count
176
+ # @return [::Integer]
177
+ # The number of detections for the detector that were excluded by the
178
+ # detection exclusion.
179
+ # @!attribute [rw] total_detection_count
180
+ # @return [::Integer]
181
+ # The total number of detections found by the detector. This includes both
182
+ # excluded detections and non-excluded detections.
183
+ class DetectionExclusionDetectorActivity
184
+ include ::Google::Protobuf::MessageExts
185
+ extend ::Google::Protobuf::MessageExts::ClassMethods
186
+ end
187
+ end
188
+
189
+ # Request message for GetFindingsRefinement method.
190
+ # @!attribute [rw] name
191
+ # @return [::String]
192
+ # Required. The name of the findings refinement to retrieve.
193
+ # Format:
194
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/findingsRefinements/\\{findings_refinement}
195
+ class GetFindingsRefinementRequest
196
+ include ::Google::Protobuf::MessageExts
197
+ extend ::Google::Protobuf::MessageExts::ClassMethods
198
+ end
199
+
200
+ # Request message for ListFindingsRefinements method.
201
+ # @!attribute [rw] parent
202
+ # @return [::String]
203
+ # Required. The parent, which owns this collection of findings refinements.
204
+ # Format:
205
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}
206
+ # @!attribute [rw] page_size
207
+ # @return [::Integer]
208
+ # The maximum number of findings refinements to return. The service may
209
+ # return fewer than this value. If unspecified, at most 100 rules will be
210
+ # returned. The maximum value is 1000; values above 1000 will be coerced to
211
+ # 1000.
212
+ # @!attribute [rw] page_token
213
+ # @return [::String]
214
+ # A page token, received from a previous `ListFindingsRefinements` call.
215
+ # Provide this to retrieve the subsequent page.
216
+ class ListFindingsRefinementsRequest
217
+ include ::Google::Protobuf::MessageExts
218
+ extend ::Google::Protobuf::MessageExts::ClassMethods
219
+ end
220
+
221
+ # Response message for ListFindingsRefinements method.
222
+ # @!attribute [rw] findings_refinements
223
+ # @return [::Array<::Google::Cloud::Chronicle::V1::FindingsRefinement>]
224
+ # List of findings refinements.
225
+ # @!attribute [rw] next_page_token
226
+ # @return [::String]
227
+ # A token, which can be sent as `page_token` to retrieve the next page. If
228
+ # this field is omitted, there are no subsequent pages.
229
+ class ListFindingsRefinementsResponse
230
+ include ::Google::Protobuf::MessageExts
231
+ extend ::Google::Protobuf::MessageExts::ClassMethods
232
+ end
233
+
234
+ # Request message for CreateFindingsRefinement method.
235
+ # @!attribute [rw] parent
236
+ # @return [::String]
237
+ # Required. The parent resource where this findings refinement will be
238
+ # created. Format:
239
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}
240
+ # @!attribute [rw] findings_refinement
241
+ # @return [::Google::Cloud::Chronicle::V1::FindingsRefinement]
242
+ # Required. The findings refinement to create.
243
+ class CreateFindingsRefinementRequest
244
+ include ::Google::Protobuf::MessageExts
245
+ extend ::Google::Protobuf::MessageExts::ClassMethods
246
+ end
247
+
248
+ # Request message for UpdateFindingsRefinement method.
249
+ # @!attribute [rw] findings_refinement
250
+ # @return [::Google::Cloud::Chronicle::V1::FindingsRefinement]
251
+ # Required. The findings refinement to update.
252
+ #
253
+ # The findings refinement's `name` field is used to identify the findings
254
+ # refinement to update.
255
+ # Format:
256
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/findingsRefinements/\\{findings_refinement}
257
+ # @!attribute [rw] update_mask
258
+ # @return [::Google::Protobuf::FieldMask]
259
+ # Optional. The list of fields to update. If `*` is provided, all fields will
260
+ # be updated.
261
+ class UpdateFindingsRefinementRequest
262
+ include ::Google::Protobuf::MessageExts
263
+ extend ::Google::Protobuf::MessageExts::ClassMethods
264
+ end
265
+
266
+ # Request message for GetFindingsRefinementDeployment method.
267
+ # @!attribute [rw] name
268
+ # @return [::String]
269
+ # Required. The name of the findings refinement to retrieve.
270
+ # Format:
271
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/findingsRefinements/\\{findings_refinement}/deployment
272
+ class GetFindingsRefinementDeploymentRequest
273
+ include ::Google::Protobuf::MessageExts
274
+ extend ::Google::Protobuf::MessageExts::ClassMethods
275
+ end
276
+
277
+ # Request message for UpdateFindingsRefinementDeployment method.
278
+ # @!attribute [rw] findings_refinement_deployment
279
+ # @return [::Google::Cloud::Chronicle::V1::FindingsRefinementDeployment]
280
+ # Required. The findings refinement deployment to update.
281
+ #
282
+ # The findings refinement deployment's `name` field is used to identify the
283
+ # findings refinement deployment to update.
284
+ # Format:
285
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/findingsRefinements/\\{findings_refinement}/deployment
286
+ # @!attribute [rw] update_mask
287
+ # @return [::Google::Protobuf::FieldMask]
288
+ # Required. The list of fields to update. If `*` is provided, all fields will
289
+ # be updated.
290
+ class UpdateFindingsRefinementDeploymentRequest
291
+ include ::Google::Protobuf::MessageExts
292
+ extend ::Google::Protobuf::MessageExts::ClassMethods
293
+ end
294
+
295
+ # Request message for ListAllFindingsRefinementDeployments method.
296
+ # @!attribute [rw] instance
297
+ # @return [::String]
298
+ # Required. The name of the parent resource, which is the SecOps instance to
299
+ # list all findings refinement deployments over. Format:
300
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}
301
+ # @!attribute [rw] page_size
302
+ # @return [::Integer]
303
+ # The maximum number of findings refinement deployments to return. The
304
+ # service may return fewer than this value. If unspecified, at most 100 rule
305
+ # deployments will be returned. The maximum value is 1000; values above 1000
306
+ # will be coerced to 1000.
307
+ # @!attribute [rw] page_token
308
+ # @return [::String]
309
+ # A page token, received from a previous
310
+ # `ListAllFindingsRefinementDeployments` call. Provide this to retrieve the
311
+ # subsequent page.
312
+ #
313
+ # When paginating, all other parameters provided to
314
+ # `ListAllFindingsRefinementDeployments` must match the call that provided
315
+ # the page token.
316
+ # @!attribute [rw] filter
317
+ # @return [::String]
318
+ # A filter that can be used to retrieve specific findings refinement
319
+ # deployments.
320
+ # Only the following filters are allowed:
321
+ # detection_exclusion_application.curated_rule_sets:"<curated_rule_set_name>"",
322
+ # detection_exclusion_application.curated_rules:"<curated_rule_name>"
323
+ class ListAllFindingsRefinementDeploymentsRequest
324
+ include ::Google::Protobuf::MessageExts
325
+ extend ::Google::Protobuf::MessageExts::ClassMethods
326
+ end
327
+
328
+ # Response message for ListAllFindingsRefinementDeployments method.
329
+ # @!attribute [rw] all_findings_refinement_deployments
330
+ # @return [::Array<::Google::Cloud::Chronicle::V1::FindingsRefinementDeployment>]
331
+ # List of all findings refinement deployments.
332
+ # @!attribute [rw] next_page_token
333
+ # @return [::String]
334
+ # A token, which can be sent as `page_token` to retrieve the next page. If
335
+ # this field is omitted, there are no subsequent pages.
336
+ class ListAllFindingsRefinementDeploymentsResponse
337
+ include ::Google::Protobuf::MessageExts
338
+ extend ::Google::Protobuf::MessageExts::ClassMethods
339
+ end
340
+
341
+ # Outcome filter for the findings refinement. This is used to filter the
342
+ # findings refinement based on the outcome variable values.
343
+ # @!attribute [rw] outcome_variable
344
+ # @return [::String]
345
+ # Required. The outcome variable name.
346
+ # @!attribute [rw] outcome_value
347
+ # @return [::String]
348
+ # Required. The value of the outcome variable to match.
349
+ # @!attribute [rw] outcome_filter_operator
350
+ # @return [::Google::Cloud::Chronicle::V1::OutcomeFilter::Operator]
351
+ # Required. The operator to be applied to the outcome variable.
352
+ class OutcomeFilter
353
+ include ::Google::Protobuf::MessageExts
354
+ extend ::Google::Protobuf::MessageExts::ClassMethods
355
+
356
+ # The operator to compare the outcome variable value with the outcome value
357
+ # in the outcome filter.
358
+ module Operator
359
+ # The operator is unspecified.
360
+ OPERATOR_UNSPECIFIED = 0
361
+
362
+ # The outcome variable value must be equal to the outcome value in the
363
+ # outcome filter.
364
+ EQUAL = 1
365
+
366
+ # The outcome variable value must contain the outcome value in the
367
+ # outcome filter.
368
+ CONTAINS = 2
369
+
370
+ # The outcome variable value must match the outcome value regex in the
371
+ # outcome filter.
372
+ MATCHES_REGEX = 3
373
+
374
+ # The outcome variable value must be a valid IP address in the outcome
375
+ # filter value CIDR range.
376
+ MATCHES_CIDR = 4
377
+ end
378
+ end
379
+
380
+ # Request message for ComputeFindingsRefinementActivity method.
381
+ # @!attribute [rw] name
382
+ # @return [::String]
383
+ # Required. Full resource name for the findings refinement to fetch the
384
+ # activity for. Format:
385
+ # projects/\\{project}/locations/\\{region}/instances/\\{instance}/findingsRefinements/\\{findings_refinement}
386
+ # @!attribute [rw] interval
387
+ # @return [::Google::Type::Interval]
388
+ # The time interval the activity is measured over.
389
+ class ComputeFindingsRefinementActivityRequest
390
+ include ::Google::Protobuf::MessageExts
391
+ extend ::Google::Protobuf::MessageExts::ClassMethods
392
+ end
393
+
394
+ # Response message for ComputeFindingsRefinementActivity method.
395
+ # @!attribute [rw] activity
396
+ # @return [::Google::Cloud::Chronicle::V1::FindingsRefinementActivity]
397
+ # The activity for the findings refinement.
398
+ class ComputeFindingsRefinementActivityResponse
399
+ include ::Google::Protobuf::MessageExts
400
+ extend ::Google::Protobuf::MessageExts::ClassMethods
401
+ end
402
+
403
+ # Request message for ComputeAllFindingsRefinementActivities method.
404
+ # @!attribute [rw] instance
405
+ # @return [::String]
406
+ # Required. The ID of the Instance to retrieve counts for.
407
+ # Format:
408
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}
409
+ # @!attribute [rw] interval
410
+ # @return [::Google::Type::Interval]
411
+ # The time interval the activity is measured over.
412
+ class ComputeAllFindingsRefinementActivitiesRequest
413
+ include ::Google::Protobuf::MessageExts
414
+ extend ::Google::Protobuf::MessageExts::ClassMethods
415
+ end
416
+
417
+ # Response message for ComputeAllFindingsRefinementActivities method.
418
+ # @!attribute [rw] activities
419
+ # @return [::Array<::Google::Cloud::Chronicle::V1::FindingsRefinementActivity>]
420
+ # The activities of all findings refinements.
421
+ class ComputeAllFindingsRefinementActivitiesResponse
422
+ include ::Google::Protobuf::MessageExts
423
+ extend ::Google::Protobuf::MessageExts::ClassMethods
424
+ end
425
+
426
+ # The type of findings refinement, which determines what the findings
427
+ # refinement runs over and the mechanism by which it runs.
428
+ module FindingsRefinementType
429
+ # The findings refinement type is unspecified.
430
+ FINDINGS_REFINEMENT_TYPE_UNSPECIFIED = 0
431
+
432
+ # Indicates that the findings refinement is a detection exclusion and
433
+ # should exclude matching detections.
434
+ DETECTION_EXCLUSION = 1
435
+ end
436
+ end
437
+ end
438
+ end
439
+ end
@@ -138,6 +138,36 @@ module Google
138
138
  extend ::Google::Protobuf::MessageExts::ClassMethods
139
139
  end
140
140
 
141
+ # VerifyReferenceList request message.
142
+ # @!attribute [rw] instance
143
+ # @return [::String]
144
+ # Required. The name of the parent resource, which is the SecOps instance
145
+ # associated with the request. Format:
146
+ # `projects/{project}/locations/{location}/instances/{instance}`
147
+ # @!attribute [rw] syntax_type
148
+ # @return [::Google::Cloud::Chronicle::V1::ReferenceListSyntaxType]
149
+ # Required. Type (format) of list lines.
150
+ # @!attribute [rw] entries
151
+ # @return [::Array<::Google::Cloud::Chronicle::V1::ReferenceListEntry>]
152
+ # Required. The entries of the reference list.
153
+ # Each line may be either an item in the list or a comment.
154
+ class VerifyReferenceListRequest
155
+ include ::Google::Protobuf::MessageExts
156
+ extend ::Google::Protobuf::MessageExts::ClassMethods
157
+ end
158
+
159
+ # VerifyListResponse response message.
160
+ # @!attribute [rw] success
161
+ # @return [::Boolean]
162
+ # Validity of list - true if no errors found.
163
+ # @!attribute [rw] errors
164
+ # @return [::Array<::Google::Cloud::Chronicle::V1::ReferenceListError>]
165
+ # Line-level errors causing the list to be invalid.
166
+ class VerifyReferenceListResponse
167
+ include ::Google::Protobuf::MessageExts
168
+ extend ::Google::Protobuf::MessageExts::ClassMethods
169
+ end
170
+
141
171
  # A reference list.
142
172
  # Reference lists are user-defined lists of values which users can
143
173
  # use in multiple Rules.
@@ -194,6 +224,19 @@ module Google
194
224
  extend ::Google::Protobuf::MessageExts::ClassMethods
195
225
  end
196
226
 
227
+ # The error generated when verifying the reference list.
228
+ # @!attribute [rw] line_number
229
+ # @return [::Integer]
230
+ # 1-indexed line number where the error occurs.
231
+ # General list errors are indexed at -1.
232
+ # @!attribute [rw] error_message
233
+ # @return [::String]
234
+ # Message explaining why the line is invalid.
235
+ class ReferenceListError
236
+ include ::Google::Protobuf::MessageExts
237
+ extend ::Google::Protobuf::MessageExts::ClassMethods
238
+ end
239
+
197
240
  # The syntax type indicating how list entries should be validated.
198
241
  module ReferenceListSyntaxType
199
242
  # Defaults to REFERENCE_LIST_SYNTAX_TYPE_PLAIN_TEXT_STRING.
@@ -366,6 +366,33 @@ module Google
366
366
  extend ::Google::Protobuf::MessageExts::ClassMethods
367
367
  end
368
368
 
369
+ # Request message for VerifyRuleText method.
370
+ # @!attribute [rw] instance
371
+ # @return [::String]
372
+ # Required. The name of the parent resource, which is the SecOps instance
373
+ # associated with the request. Format:
374
+ # `projects/{project}/locations/{location}/instances/{instance}`
375
+ # @!attribute [rw] rule_text
376
+ # @return [::String]
377
+ # Required. The rule text to verify as a UTF-8 string.
378
+ class VerifyRuleTextRequest
379
+ include ::Google::Protobuf::MessageExts
380
+ extend ::Google::Protobuf::MessageExts::ClassMethods
381
+ end
382
+
383
+ # Response message for VerifyRuleText method.
384
+ # @!attribute [rw] success
385
+ # @return [::Boolean]
386
+ # Whether or not the rule text was successfully verified.
387
+ # @!attribute [rw] compilation_diagnostics
388
+ # @return [::Array<::Google::Cloud::Chronicle::V1::CompilationDiagnostic>]
389
+ # A list of a rule's corresponding compilation diagnostic messages
390
+ # such as compilation errors and compilation warnings.
391
+ class VerifyRuleTextResponse
392
+ include ::Google::Protobuf::MessageExts
393
+ extend ::Google::Protobuf::MessageExts::ClassMethods
394
+ end
395
+
369
396
  # Request message for ListRuleRevisions method.
370
397
  # @!attribute [rw] name
371
398
  # @return [::String]
@@ -0,0 +1,116 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Chronicle
23
+ module V1
24
+ # Request message for ListRuleExecutionErrors.
25
+ # @!attribute [rw] parent
26
+ # @return [::String]
27
+ # Required. The instance to list rule execution errors from.
28
+ # Format:
29
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}
30
+ # @!attribute [rw] page_size
31
+ # @return [::Integer]
32
+ # The maximum number of rule execution errors to return. The service may
33
+ # return fewer than this value. If unspecified, at most 1000 rule execution
34
+ # errors will be returned. The maximum value is 10000; values above 10000
35
+ # will be coerced to 10000.
36
+ # @!attribute [rw] page_token
37
+ # @return [::String]
38
+ # A page token, received from a previous `ListRuleExecutionErrors` call.
39
+ # Provide this to retrieve the subsequent page.
40
+ #
41
+ # When paginating, all other parameters provided to `ListRuleExecutionErrors`
42
+ # must match the call that provided the page token.
43
+ # @!attribute [rw] filter
44
+ # @return [::String]
45
+ # A filter that can be used to retrieve specific rule execution errors.
46
+ # Only the following filters are allowed:
47
+ # ```
48
+ # rule = "\\{Rule.name}"
49
+ # curated_rule = "\\{CuratedRule.name}"
50
+ # ```
51
+ # The value for rule or curated_rule must be a valid rule resource name or a
52
+ # valid curated rule resource name specified in quotes.
53
+ #
54
+ # For 'rule', an optional 'revision_id' can be specified which can be used to
55
+ # fetch errors for a given revision of the rule. A '-' is also allowed to
56
+ # fetch errors across all revisions of the rule. If unspecified, only errors
57
+ # corresponding to the most recent revision of the rule will be returned. So
58
+ # these variations are all allowed:
59
+ # ```
60
+ # rule = "\\{Rule.name}"
61
+ # rule = "\\{Rule.name}@\\{Rule.revision_id}"
62
+ # rule = "\\{Rule.name}@-"
63
+ # ```
64
+ # Revision IDs are not supported for curated rules.
65
+ class ListRuleExecutionErrorsRequest
66
+ include ::Google::Protobuf::MessageExts
67
+ extend ::Google::Protobuf::MessageExts::ClassMethods
68
+ end
69
+
70
+ # Response message for ListRuleExecutionErrors.
71
+ # @!attribute [rw] rule_execution_errors
72
+ # @return [::Array<::Google::Cloud::Chronicle::V1::RuleExecutionError>]
73
+ # List of rule execution errors.
74
+ # @!attribute [rw] next_page_token
75
+ # @return [::String]
76
+ # A token, which can be sent as `page_token` to retrieve the next page.
77
+ # If this field is omitted, there are no subsequent pages.
78
+ class ListRuleExecutionErrorsResponse
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+ end
82
+
83
+ # The RuleExecutionError resource represents an error generated from
84
+ # running/deploying a rule.
85
+ # @!attribute [r] rule
86
+ # @return [::String]
87
+ # Output only. The resource name of the rule that generated the rule
88
+ # execution error.
89
+ #
90
+ # Note: The following fields are mutually exclusive: `rule`, `curated_rule`. If a field in that set is populated, all other fields in the set will automatically be cleared.
91
+ # @!attribute [r] curated_rule
92
+ # @return [::String]
93
+ # Output only. The resource name of the curated rule that generated the
94
+ # rule execution error.
95
+ #
96
+ # Note: The following fields are mutually exclusive: `curated_rule`, `rule`. If a field in that set is populated, all other fields in the set will automatically be cleared.
97
+ # @!attribute [r] name
98
+ # @return [::String]
99
+ # Output only. The resource name of the rule execution error.
100
+ # Format:
101
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/ruleExecutionErrors/\\{rule_execution_error}
102
+ # @!attribute [r] error
103
+ # @return [::Google::Rpc::Status]
104
+ # Output only. The error status corresponding with the rule execution error.
105
+ # @!attribute [r] time_range
106
+ # @return [::Google::Type::Interval]
107
+ # Output only. The event time range that the rule execution error corresponds
108
+ # with.
109
+ class RuleExecutionError
110
+ include ::Google::Protobuf::MessageExts
111
+ extend ::Google::Protobuf::MessageExts::ClassMethods
112
+ end
113
+ end
114
+ end
115
+ end
116
+ end