google-cloud-dataplex-v1 2.9.0 → 2.10.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 (100) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/google/cloud/dataplex/v1/analyze_pb.rb +2 -25
  4. data/lib/google/cloud/dataplex/v1/approval_workflow_pb.rb +33 -0
  5. data/lib/google/cloud/dataplex/v1/bindings_override.rb +24 -24
  6. data/lib/google/cloud/dataplex/v1/business_glossary_pb.rb +3 -26
  7. data/lib/google/cloud/dataplex/v1/business_glossary_service/client.rb +2 -0
  8. data/lib/google/cloud/dataplex/v1/business_glossary_service/credentials.rb +4 -1
  9. data/lib/google/cloud/dataplex/v1/business_glossary_service/operations.rb +2 -0
  10. data/lib/google/cloud/dataplex/v1/business_glossary_service/rest/client.rb +2 -0
  11. data/lib/google/cloud/dataplex/v1/business_glossary_service/rest/operations.rb +2 -0
  12. data/lib/google/cloud/dataplex/v1/catalog_pb.rb +20 -27
  13. data/lib/google/cloud/dataplex/v1/catalog_service/client.rb +1074 -73
  14. data/lib/google/cloud/dataplex/v1/catalog_service/credentials.rb +4 -1
  15. data/lib/google/cloud/dataplex/v1/catalog_service/operations.rb +2 -0
  16. data/lib/google/cloud/dataplex/v1/catalog_service/paths.rb +19 -0
  17. data/lib/google/cloud/dataplex/v1/catalog_service/rest/client.rb +1020 -82
  18. data/lib/google/cloud/dataplex/v1/catalog_service/rest/operations.rb +2 -0
  19. data/lib/google/cloud/dataplex/v1/catalog_service/rest/service_stub.rb +554 -0
  20. data/lib/google/cloud/dataplex/v1/catalog_services_pb.rb +18 -15
  21. data/lib/google/cloud/dataplex/v1/cmek_pb.rb +3 -26
  22. data/lib/google/cloud/dataplex/v1/cmek_service/client.rb +2 -0
  23. data/lib/google/cloud/dataplex/v1/cmek_service/credentials.rb +2 -1
  24. data/lib/google/cloud/dataplex/v1/cmek_service/operations.rb +2 -0
  25. data/lib/google/cloud/dataplex/v1/cmek_service/rest/client.rb +2 -0
  26. data/lib/google/cloud/dataplex/v1/cmek_service/rest/operations.rb +2 -0
  27. data/lib/google/cloud/dataplex/v1/content_pb.rb +3 -38
  28. data/lib/google/cloud/dataplex/v1/content_services_pb.rb +0 -49
  29. data/lib/google/cloud/dataplex/v1/data_discovery_pb.rb +4 -24
  30. data/lib/google/cloud/dataplex/v1/data_documentation_pb.rb +10 -24
  31. data/lib/google/cloud/dataplex/v1/data_product_service/client.rb +1644 -0
  32. data/lib/google/cloud/dataplex/v1/{content_service → data_product_service}/credentials.rb +7 -4
  33. data/lib/google/cloud/dataplex/v1/data_product_service/operations.rb +843 -0
  34. data/lib/google/cloud/dataplex/v1/data_product_service/paths.rb +231 -0
  35. data/lib/google/cloud/dataplex/v1/data_product_service/rest/client.rb +1533 -0
  36. data/lib/google/cloud/dataplex/v1/data_product_service/rest/operations.rb +956 -0
  37. data/lib/google/cloud/dataplex/v1/{content_service → data_product_service}/rest/service_stub.rb +284 -160
  38. data/lib/google/cloud/dataplex/v1/{content_service → data_product_service}/rest.rb +11 -10
  39. data/lib/google/cloud/dataplex/v1/{content_service.rb → data_product_service.rb} +15 -14
  40. data/lib/google/cloud/dataplex/v1/data_products_pb.rb +52 -0
  41. data/lib/google/cloud/dataplex/v1/data_products_services_pb.rb +69 -0
  42. data/lib/google/cloud/dataplex/v1/data_profile_pb.rb +4 -26
  43. data/lib/google/cloud/dataplex/v1/data_quality_pb.rb +13 -26
  44. data/lib/google/cloud/dataplex/v1/data_quality_rule_template_pb.rb +25 -0
  45. data/lib/google/cloud/dataplex/v1/data_scan_service/client.rb +99 -1
  46. data/lib/google/cloud/dataplex/v1/data_scan_service/credentials.rb +4 -1
  47. data/lib/google/cloud/dataplex/v1/data_scan_service/operations.rb +2 -0
  48. data/lib/google/cloud/dataplex/v1/data_scan_service/paths.rb +21 -0
  49. data/lib/google/cloud/dataplex/v1/data_scan_service/rest/client.rb +92 -1
  50. data/lib/google/cloud/dataplex/v1/data_scan_service/rest/operations.rb +2 -0
  51. data/lib/google/cloud/dataplex/v1/data_scan_service/rest/service_stub.rb +62 -0
  52. data/lib/google/cloud/dataplex/v1/data_taxonomy_pb.rb +3 -27
  53. data/lib/google/cloud/dataplex/v1/data_taxonomy_service/client.rb +2 -0
  54. data/lib/google/cloud/dataplex/v1/data_taxonomy_service/credentials.rb +2 -1
  55. data/lib/google/cloud/dataplex/v1/data_taxonomy_service/operations.rb +2 -0
  56. data/lib/google/cloud/dataplex/v1/data_taxonomy_service/rest/client.rb +2 -0
  57. data/lib/google/cloud/dataplex/v1/data_taxonomy_service/rest/operations.rb +2 -0
  58. data/lib/google/cloud/dataplex/v1/dataplex_service/client.rb +2 -664
  59. data/lib/google/cloud/dataplex/v1/dataplex_service/credentials.rb +4 -1
  60. data/lib/google/cloud/dataplex/v1/dataplex_service/operations.rb +2 -0
  61. data/lib/google/cloud/dataplex/v1/dataplex_service/paths.rb +0 -21
  62. data/lib/google/cloud/dataplex/v1/dataplex_service/rest/client.rb +2 -622
  63. data/lib/google/cloud/dataplex/v1/dataplex_service/rest/operations.rb +2 -0
  64. data/lib/google/cloud/dataplex/v1/dataplex_service/rest/service_stub.rb +0 -368
  65. data/lib/google/cloud/dataplex/v1/datascans_common_pb.rb +3 -24
  66. data/lib/google/cloud/dataplex/v1/datascans_pb.rb +9 -31
  67. data/lib/google/cloud/dataplex/v1/datascans_services_pb.rb +2 -0
  68. data/lib/google/cloud/dataplex/v1/logs_pb.rb +3 -27
  69. data/lib/google/cloud/dataplex/v1/metadata_pb.rb +3 -25
  70. data/lib/google/cloud/dataplex/v1/metadata_service/client.rb +2 -0
  71. data/lib/google/cloud/dataplex/v1/metadata_service/credentials.rb +2 -1
  72. data/lib/google/cloud/dataplex/v1/metadata_service/rest/client.rb +2 -0
  73. data/lib/google/cloud/dataplex/v1/processing_pb.rb +5 -24
  74. data/lib/google/cloud/dataplex/v1/resources_pb.rb +2 -25
  75. data/lib/google/cloud/dataplex/v1/rest.rb +1 -1
  76. data/lib/google/cloud/dataplex/v1/security_pb.rb +2 -23
  77. data/lib/google/cloud/dataplex/v1/service_pb.rb +3 -38
  78. data/lib/google/cloud/dataplex/v1/service_services_pb.rb +0 -13
  79. data/lib/google/cloud/dataplex/v1/tasks_pb.rb +2 -25
  80. data/lib/google/cloud/dataplex/v1/version.rb +1 -1
  81. data/lib/google/cloud/dataplex/v1.rb +1 -0
  82. data/proto_docs/google/api/client.rb +149 -29
  83. data/proto_docs/google/cloud/dataplex/v1/approval_workflow.rb +263 -0
  84. data/proto_docs/google/cloud/dataplex/v1/catalog.rb +427 -3
  85. data/proto_docs/google/cloud/dataplex/v1/data_discovery.rb +13 -0
  86. data/proto_docs/google/cloud/dataplex/v1/data_documentation.rb +118 -2
  87. data/proto_docs/google/cloud/dataplex/v1/data_products.rb +567 -0
  88. data/proto_docs/google/cloud/dataplex/v1/data_profile.rb +21 -0
  89. data/proto_docs/google/cloud/dataplex/v1/data_quality.rb +240 -10
  90. data/proto_docs/google/cloud/dataplex/v1/data_quality_rule_template.rb +88 -0
  91. data/proto_docs/google/cloud/dataplex/v1/datascans.rb +82 -5
  92. data/proto_docs/google/cloud/dataplex/v1/datascans_common.rb +7 -3
  93. data/proto_docs/google/cloud/dataplex/v1/logs.rb +7 -0
  94. data/proto_docs/google/cloud/dataplex/v1/processing.rb +27 -3
  95. data/proto_docs/google/cloud/dataplex/v1/service.rb +0 -148
  96. metadata +20 -12
  97. data/lib/google/cloud/dataplex/v1/content_service/client.rb +0 -1261
  98. data/lib/google/cloud/dataplex/v1/content_service/paths.rb +0 -73
  99. data/lib/google/cloud/dataplex/v1/content_service/rest/client.rb +0 -1171
  100. data/proto_docs/google/cloud/dataplex/v1/content.rb +0 -142
@@ -50,6 +50,28 @@ module Google
50
50
  # @return [::Boolean]
51
51
  # Optional. If set, the latest DataScan job result will be published as
52
52
  # Dataplex Universal Catalog metadata.
53
+ # @!attribute [rw] enable_catalog_based_rules
54
+ # @return [::Boolean]
55
+ # Optional. If enabled, the data scan will retrieve rules defined in the
56
+ # dataplex-types.global.data-rules aspect on all paths of the catalog entry
57
+ # corresponding to the BigQuery table resource and all attached glossary
58
+ # terms. The path that data-rules aspect is attached on the table entry
59
+ # defines the column that the rule will be evaluated against. For glossary
60
+ # terms, the path that the terms are attached on the table entry defines the
61
+ # column that the rule will be evaluated against. At the start of scan
62
+ # execution, the rules reflect the latest state retrieved from the catalog
63
+ # entry and any updates on the rules thereafter are ignored for that
64
+ # execution. The updates will be reflected from the next execution. Rules
65
+ # defined in the datascan must be empty if this field is enabled.
66
+ # @!attribute [rw] filter
67
+ # @return [::String]
68
+ # Optional. Filter for selectively running a subset of rules. You can filter
69
+ # the request by the name or attribute key-value pairs defined on the rule.
70
+ # If not specified, all rules are run. The filter is applicable to both, the
71
+ # rules retrieved from catalog and explicitly defined rules in the scan.
72
+ # Please see [filter
73
+ # syntax](https://docs.cloud.google.com/dataplex/docs/auto-data-quality-overview#rule-filtering)
74
+ # for more details.
53
75
  class DataQualitySpec
54
76
  include ::Google::Protobuf::MessageExts
55
77
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -293,9 +315,41 @@ module Google
293
315
  # assertion rule.
294
316
  #
295
317
  # This field is only valid for SQL assertion rules.
318
+ # @!attribute [r] debug_queries_result_sets
319
+ # @return [::Array<::Google::Cloud::Dataplex::V1::DataQualityRuleResult::DebugQueryResultSet>]
320
+ # Output only. Contains the results of all debug queries for this rule.
321
+ # The number of result sets will correspond to the number of
322
+ # {::Google::Cloud::Dataplex::V1::DataQualityRule#debug_queries debug_queries}.
296
323
  class DataQualityRuleResult
297
324
  include ::Google::Protobuf::MessageExts
298
325
  extend ::Google::Protobuf::MessageExts::ClassMethods
326
+
327
+ # Contains a single result from the debug query.
328
+ # @!attribute [rw] name
329
+ # @return [::String]
330
+ # Specifies the name of the result. Available if provided with an explicit
331
+ # alias using `[AS] alias`.
332
+ # @!attribute [rw] type
333
+ # @return [::String]
334
+ # Indicates the data type of the result. For more information, see
335
+ # [BigQuery data
336
+ # types](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
337
+ # @!attribute [rw] value
338
+ # @return [::String]
339
+ # Represents the value of the result as a string.
340
+ class DebugQueryResult
341
+ include ::Google::Protobuf::MessageExts
342
+ extend ::Google::Protobuf::MessageExts::ClassMethods
343
+ end
344
+
345
+ # Contains all results from a debug query.
346
+ # @!attribute [r] results
347
+ # @return [::Array<::Google::Cloud::Dataplex::V1::DataQualityRuleResult::DebugQueryResult>]
348
+ # Output only. Contains all results. Up to 10 results can be returned.
349
+ class DebugQueryResultSet
350
+ include ::Google::Protobuf::MessageExts
351
+ extend ::Google::Protobuf::MessageExts::ClassMethods
352
+ end
299
353
  end
300
354
 
301
355
  # DataQualityDimensionResult provides a more detailed, per-dimension view of
@@ -335,53 +389,60 @@ module Google
335
389
  # Row-level rule which evaluates whether each column value lies between a
336
390
  # specified range.
337
391
  #
338
- # Note: The following fields are mutually exclusive: `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
392
+ # Note: The following fields are mutually exclusive: `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
339
393
  # @!attribute [rw] non_null_expectation
340
394
  # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::NonNullExpectation]
341
395
  # Row-level rule which evaluates whether each column value is null.
342
396
  #
343
- # Note: The following fields are mutually exclusive: `non_null_expectation`, `range_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
397
+ # Note: The following fields are mutually exclusive: `non_null_expectation`, `range_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
344
398
  # @!attribute [rw] set_expectation
345
399
  # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::SetExpectation]
346
400
  # Row-level rule which evaluates whether each column value is contained by
347
401
  # a specified set.
348
402
  #
349
- # Note: The following fields are mutually exclusive: `set_expectation`, `range_expectation`, `non_null_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
403
+ # Note: The following fields are mutually exclusive: `set_expectation`, `range_expectation`, `non_null_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
350
404
  # @!attribute [rw] regex_expectation
351
405
  # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::RegexExpectation]
352
406
  # Row-level rule which evaluates whether each column value matches a
353
407
  # specified regex.
354
408
  #
355
- # Note: The following fields are mutually exclusive: `regex_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
409
+ # Note: The following fields are mutually exclusive: `regex_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
356
410
  # @!attribute [rw] uniqueness_expectation
357
411
  # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::UniquenessExpectation]
358
412
  # Row-level rule which evaluates whether each column value is unique.
359
413
  #
360
- # Note: The following fields are mutually exclusive: `uniqueness_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
414
+ # Note: The following fields are mutually exclusive: `uniqueness_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
361
415
  # @!attribute [rw] statistic_range_expectation
362
416
  # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::StatisticRangeExpectation]
363
417
  # Aggregate rule which evaluates whether the column aggregate
364
418
  # statistic lies between a specified range.
365
419
  #
366
- # Note: The following fields are mutually exclusive: `statistic_range_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
420
+ # Note: The following fields are mutually exclusive: `statistic_range_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
367
421
  # @!attribute [rw] row_condition_expectation
368
422
  # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::RowConditionExpectation]
369
423
  # Row-level rule which evaluates whether each row in a table passes the
370
424
  # specified condition.
371
425
  #
372
- # Note: The following fields are mutually exclusive: `row_condition_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `table_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
426
+ # Note: The following fields are mutually exclusive: `row_condition_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `table_condition_expectation`, `sql_assertion`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
373
427
  # @!attribute [rw] table_condition_expectation
374
428
  # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::TableConditionExpectation]
375
429
  # Aggregate rule which evaluates whether the provided expression is true
376
430
  # for a table.
377
431
  #
378
- # Note: The following fields are mutually exclusive: `table_condition_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
432
+ # Note: The following fields are mutually exclusive: `table_condition_expectation`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `sql_assertion`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
379
433
  # @!attribute [rw] sql_assertion
380
434
  # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::SqlAssertion]
381
435
  # Aggregate rule which evaluates the number of rows returned for the
382
436
  # provided statement. If any rows are returned, this rule fails.
383
437
  #
384
- # Note: The following fields are mutually exclusive: `sql_assertion`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`. If a field in that set is populated, all other fields in the set will automatically be cleared.
438
+ # Note: The following fields are mutually exclusive: `sql_assertion`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `template_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
439
+ # @!attribute [rw] template_reference
440
+ # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::TemplateReference]
441
+ # Aggregate rule which references a rule template and provides the
442
+ # parameters to be substituted in the template. If any rows are returned,
443
+ # this rule fails.
444
+ #
445
+ # Note: The following fields are mutually exclusive: `template_reference`, `range_expectation`, `non_null_expectation`, `set_expectation`, `regex_expectation`, `uniqueness_expectation`, `statistic_range_expectation`, `row_condition_expectation`, `table_condition_expectation`, `sql_assertion`. If a field in that set is populated, all other fields in the set will automatically be cleared.
385
446
  # @!attribute [rw] column
386
447
  # @return [::String]
387
448
  # Optional. The unnested column which this rule is evaluated against.
@@ -399,7 +460,7 @@ module Google
399
460
  # * UniquenessExpectation
400
461
  # @!attribute [rw] dimension
401
462
  # @return [::String]
402
- # Required. The dimension a rule belongs to. Results are also aggregated at
463
+ # Optional. The dimension a rule belongs to. Results are also aggregated at
403
464
  # the dimension level. Custom dimension name is supported with all uppercase
404
465
  # letters and maximum length of 30 characters.
405
466
  # @!attribute [rw] threshold
@@ -428,6 +489,20 @@ module Google
428
489
  # @return [::Boolean]
429
490
  # Optional. Whether the Rule is active or suspended.
430
491
  # Default is false.
492
+ # @!attribute [rw] attributes
493
+ # @return [::Google::Protobuf::Map{::String => ::String}]
494
+ # Optional. Map of attribute name and value linked to the rule. The rules to
495
+ # evaluate can be filtered based on attributes provided here and a filter
496
+ # expression provided in the DataQualitySpec.filter field.
497
+ # @!attribute [r] rule_source
498
+ # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::RuleSource]
499
+ # Output only. Contains information about the source of the rule and its
500
+ # relationship with the BigQuery table, where applicable.
501
+ # @!attribute [rw] debug_queries
502
+ # @return [::Array<::Google::Cloud::Dataplex::V1::DataQualityRule::DebugQuery>]
503
+ # Optional. Specifies the debug queries for this rule.
504
+ # Currently, only one query is supported, but this may be expanded in the
505
+ # future.
431
506
  class DataQualityRule
432
507
  include ::Google::Protobuf::MessageExts
433
508
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -590,6 +665,161 @@ module Google
590
665
  include ::Google::Protobuf::MessageExts
591
666
  extend ::Google::Protobuf::MessageExts::ClassMethods
592
667
  end
668
+
669
+ # A rule that constructs a SQL statement to evaluate using a rule template
670
+ # and parameter values. If the constructed statement returns any rows, this
671
+ # rule fails
672
+ # @!attribute [rw] name
673
+ # @return [::String]
674
+ # Required. The template entry name. Entry must be of EntryType
675
+ # `projects/dataplex-types/locations/global/entryTypes/data-quality-rule-template`
676
+ # and contains top-level aspect of AspectType
677
+ # `projects/dataplex-types/locations/global/aspectTypes/data-quality-rule-template`.
678
+ # The format is:
679
+ # `projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}`
680
+ # @!attribute [rw] values
681
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Dataplex::V1::DataQualityRule::TemplateReference::ParameterValue}]
682
+ # Optional. Provides the map of parameter name and value.
683
+ # The maximum size of the field is 120KB (encoded as UTF-8).
684
+ # @!attribute [r] resolved_sql
685
+ # @return [::String]
686
+ # Output only. The resolved SQL statement generated from the template with
687
+ # parameters substituted. It is only populated in the result.
688
+ # @!attribute [r] rule_template
689
+ # @return [::Google::Cloud::Dataplex::V1::DataQualityRuleTemplate]
690
+ # Output only. The rule template used to resolve the rule. It is only
691
+ # populated in the result.
692
+ class TemplateReference
693
+ include ::Google::Protobuf::MessageExts
694
+ extend ::Google::Protobuf::MessageExts::ClassMethods
695
+
696
+ # Represents a parameter value.
697
+ # @!attribute [rw] value
698
+ # @return [::String]
699
+ # Required. Represents the string value of the parameter.
700
+ class ParameterValue
701
+ include ::Google::Protobuf::MessageExts
702
+ extend ::Google::Protobuf::MessageExts::ClassMethods
703
+ end
704
+
705
+ # @!attribute [rw] key
706
+ # @return [::String]
707
+ # @!attribute [rw] value
708
+ # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::TemplateReference::ParameterValue]
709
+ class ValuesEntry
710
+ include ::Google::Protobuf::MessageExts
711
+ extend ::Google::Protobuf::MessageExts::ClassMethods
712
+ end
713
+ end
714
+
715
+ # Represents the rule source information from Catalog.
716
+ # @!attribute [r] rule_path_elements
717
+ # @return [::Array<::Google::Cloud::Dataplex::V1::DataQualityRule::RuleSource::RulePathElement>]
718
+ # Output only. Rule path elements represent information about the
719
+ # individual items in the relationship path between the scan resource and
720
+ # rule origin in that order.
721
+ class RuleSource
722
+ include ::Google::Protobuf::MessageExts
723
+ extend ::Google::Protobuf::MessageExts::ClassMethods
724
+
725
+ # Path Element represents the direct relationship between the rule origin
726
+ # (aspects) to the BigQuery Entry. Ordering of the rule relationship will
727
+ # be maintained such that the first entry in the list is the closest
728
+ # ancestor (BigQuery table itself). A blank source denotes that the rule is
729
+ # derived directly from the DataScan itself.
730
+ # @!attribute [r] entry_source
731
+ # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::RuleSource::RulePathElement::EntrySource]
732
+ # Output only. Entry source represents information about the related
733
+ # source entry.
734
+ #
735
+ # Note: The following fields are mutually exclusive: `entry_source`, `entry_link_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
736
+ # @!attribute [r] entry_link_source
737
+ # @return [::Google::Cloud::Dataplex::V1::DataQualityRule::RuleSource::RulePathElement::EntryLinkSource]
738
+ # Output only. Entry link source represents information about the entry
739
+ # link.
740
+ #
741
+ # Note: The following fields are mutually exclusive: `entry_link_source`, `entry_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
742
+ class RulePathElement
743
+ include ::Google::Protobuf::MessageExts
744
+ extend ::Google::Protobuf::MessageExts::ClassMethods
745
+
746
+ # Entry source represents information about the related source entry.
747
+ # @!attribute [r] entry_type
748
+ # @return [::String]
749
+ # Output only. The entry type to represent the current characteristics
750
+ # of the entry in the form of:
751
+ # `projects/{project_id_or_number}/locations/{location_id}/entryTypes/{entry-type-id}`.
752
+ # @!attribute [r] entry
753
+ # @return [::String]
754
+ # Output only. The entry name in the form of:
755
+ # `projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}`
756
+ # @!attribute [r] display_name
757
+ # @return [::String]
758
+ # Output only. The display name of the entry.
759
+ class EntrySource
760
+ include ::Google::Protobuf::MessageExts
761
+ extend ::Google::Protobuf::MessageExts::ClassMethods
762
+ end
763
+
764
+ # Entry link source represents information about the entry link.
765
+ # @!attribute [r] entry_link_type
766
+ # @return [::String]
767
+ # Output only. The entry link type to represent the current
768
+ # relationship between the entry and the next entry in the path.
769
+ # In the form of:
770
+ # `projects/{project_id_or_number}/locations/{location_id}/entryLinkTypes/{entry_link_type_id}`
771
+ # @!attribute [r] entry_link
772
+ # @return [::String]
773
+ # Output only. The entry link name in the form of:
774
+ # `projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entryLinks/{entry_link_id}`
775
+ class EntryLinkSource
776
+ include ::Google::Protobuf::MessageExts
777
+ extend ::Google::Protobuf::MessageExts::ClassMethods
778
+ end
779
+ end
780
+ end
781
+
782
+ # Specifies a SQL statement that is evaluated to return up to 10 scalar
783
+ # values that are used to debug rules. If the rule fails, the values can help
784
+ # diagnose the cause of the failure.
785
+ #
786
+ # The SQL statement must use [GoogleSQL
787
+ # syntax](https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax),
788
+ # and must not contain any semicolons.
789
+ #
790
+ # You can use the data reference parameter `${data()}` to reference the
791
+ # source table with all of its precondition filters applied. Examples of
792
+ # precondition filters include row filters, incremental data filters, and
793
+ # sampling. For more information, see [Data reference
794
+ # parameter](https://cloud.google.com/dataplex/docs/auto-data-quality-overview#data-reference-parameter).
795
+ #
796
+ # You can also name results with an explicit alias using `[AS] alias`. For
797
+ # more information, see [BigQuery explicit
798
+ # aliases](https://docs.cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax#explicit_alias_syntax).
799
+ #
800
+ # Example: `SELECT MIN(col1) AS min_col1, MAX(col1) AS max_col1 FROM
801
+ # $\\{data()}`
802
+ # @!attribute [rw] description
803
+ # @return [::String]
804
+ # Optional. Specifies the description of the debug query.
805
+ #
806
+ # * The maximum length is 1,024 characters.
807
+ # @!attribute [rw] sql_statement
808
+ # @return [::String]
809
+ # Required. Specifies the SQL statement to be executed.
810
+ class DebugQuery
811
+ include ::Google::Protobuf::MessageExts
812
+ extend ::Google::Protobuf::MessageExts::ClassMethods
813
+ end
814
+
815
+ # @!attribute [rw] key
816
+ # @return [::String]
817
+ # @!attribute [rw] value
818
+ # @return [::String]
819
+ class AttributesEntry
820
+ include ::Google::Protobuf::MessageExts
821
+ extend ::Google::Protobuf::MessageExts::ClassMethods
822
+ end
593
823
  end
594
824
 
595
825
  # DataQualityColumnResult provides a more detailed, per-column view of
@@ -0,0 +1,88 @@
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 Dataplex
23
+ module V1
24
+ # DataQualityRuleTemplate represents a template which can be reused across
25
+ # multiple data quality rules.
26
+ # @!attribute [r] name
27
+ # @return [::String]
28
+ # Output only. The name of the rule template in the format:
29
+ # `projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}`
30
+ # @!attribute [r] dimension
31
+ # @return [::String]
32
+ # Output only. The dimension a rule template belongs to. Rule level results
33
+ # are also aggregated at the dimension level.
34
+ # @!attribute [r] sql_collection
35
+ # @return [::Array<::Google::Cloud::Dataplex::V1::DataQualityRuleTemplate::Sql>]
36
+ # Output only. Collection of SQLs for data quality rules. Currently only one
37
+ # SQL is supported.
38
+ # @!attribute [r] input_parameters
39
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Dataplex::V1::DataQualityRuleTemplate::ParameterDescription}]
40
+ # Output only. Description for input parameters
41
+ # @!attribute [r] capabilities
42
+ # @return [::Array<::String>]
43
+ # Output only. A list of features or properties supported by this rule
44
+ # template.
45
+ class DataQualityRuleTemplate
46
+ include ::Google::Protobuf::MessageExts
47
+ extend ::Google::Protobuf::MessageExts::ClassMethods
48
+
49
+ # Templatized SQL query for data quality rules. It can have parameters that
50
+ # can be substituted with values when a rule is created using this template.
51
+ # @!attribute [r] query
52
+ # @return [::String]
53
+ # Output only. Templatized SQL query for data quality rules.
54
+ class Sql
55
+ include ::Google::Protobuf::MessageExts
56
+ extend ::Google::Protobuf::MessageExts::ClassMethods
57
+ end
58
+
59
+ # Description of the input parameter. It can include the type(s) supported
60
+ # by the parameter and intended usage. It is for information purposes only
61
+ # and does not affect the behavior of the rule template.
62
+ # @!attribute [r] description
63
+ # @return [::String]
64
+ # Output only. Description of the input parameter. It can include the
65
+ # type(s) supported by the parameter and intended usage. It is for
66
+ # information purposes only and does not affect the behavior of the rule
67
+ # template.
68
+ # @!attribute [r] default_value
69
+ # @return [::String]
70
+ # Output only. The default value for the parameter if no value is provided.
71
+ class ParameterDescription
72
+ include ::Google::Protobuf::MessageExts
73
+ extend ::Google::Protobuf::MessageExts::ClassMethods
74
+ end
75
+
76
+ # @!attribute [rw] key
77
+ # @return [::String]
78
+ # @!attribute [rw] value
79
+ # @return [::Google::Cloud::Dataplex::V1::DataQualityRuleTemplate::ParameterDescription]
80
+ class InputParametersEntry
81
+ include ::Google::Protobuf::MessageExts
82
+ extend ::Google::Protobuf::MessageExts::ClassMethods
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
@@ -33,7 +33,8 @@ module Google
33
33
  # Required. DataScan resource.
34
34
  # @!attribute [rw] data_scan_id
35
35
  # @return [::String]
36
- # Required. DataScan identifier.
36
+ # Optional. DataScan identifier. If not provided, a unique ID will be
37
+ # generated with the prefix "data-scan-".
37
38
  #
38
39
  # * Must contain only lowercase letters, numbers and hyphens.
39
40
  # * Must start with a letter.
@@ -263,6 +264,24 @@ module Google
263
264
  extend ::Google::Protobuf::MessageExts::ClassMethods
264
265
  end
265
266
 
267
+ # Request message for the `CancelDataScanJob` method.
268
+ # @!attribute [rw] name
269
+ # @return [::String]
270
+ # Required. The resource name of the DataScanJob:
271
+ # `projects/{project_id_or_number}/locations/{location_id}/dataScans/{data_scan_id}/jobs/{data_scan_job_id}`
272
+ # where `project_id_or_number` refers to a *project_id* or *project_number*
273
+ # and `location_id` refers to a Google Cloud region.
274
+ class CancelDataScanJobRequest
275
+ include ::Google::Protobuf::MessageExts
276
+ extend ::Google::Protobuf::MessageExts::ClassMethods
277
+ end
278
+
279
+ # Response message for the `CancelDataScanJob` method.
280
+ class CancelDataScanJobResponse
281
+ include ::Google::Protobuf::MessageExts
282
+ extend ::Google::Protobuf::MessageExts::ClassMethods
283
+ end
284
+
266
285
  # Request details for generating data quality rule recommendations.
267
286
  # @!attribute [rw] name
268
287
  # @return [::String]
@@ -303,10 +322,11 @@ module Google
303
322
  # * Data discovery: scans data in Cloud Storage buckets to extract and then
304
323
  # catalog metadata. For more information, see [Discover and catalog Cloud
305
324
  # Storage data](https://cloud.google.com/bigquery/docs/automatic-discovery).
306
- # * Data documentation: analyzes the table details and generates insights
307
- # including descriptions and sample SQL queries for the table. For more
308
- # information, see [Generate data insights in
309
- # BigQuery](https://cloud.google.com/bigquery/docs/data-insights).
325
+ # * Data documentation: analyzes the table or dataset metadata and generates
326
+ # insights. For tables, insights include descriptions and sample SQL
327
+ # queries. For datasets, insights include descriptions, schema relationships
328
+ # and sample SQL queries. For more information, see [Generate data insights
329
+ # in BigQuery](https://cloud.google.com/bigquery/docs/data-insights).
310
330
  # @!attribute [r] name
311
331
  # @return [::String]
312
332
  # Output only. Identifier. The relative resource name of the scan, of the
@@ -393,6 +413,10 @@ module Google
393
413
  # Output only. The result of a data documentation scan.
394
414
  #
395
415
  # Note: The following fields are mutually exclusive: `data_documentation_result`, `data_quality_result`, `data_profile_result`, `data_discovery_result`. If a field in that set is populated, all other fields in the set will automatically be cleared.
416
+ # @!attribute [rw] execution_identity
417
+ # @return [::Google::Cloud::Dataplex::V1::ExecutionIdentity]
418
+ # Optional. Immutable. The identity to run the datascan.
419
+ # If not specified, defaults to the Dataplex Service Agent.
396
420
  class DataScan
397
421
  include ::Google::Protobuf::MessageExts
398
422
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -440,6 +464,53 @@ module Google
440
464
  end
441
465
  end
442
466
 
467
+ # The identity to run the datascan.
468
+ # @!attribute [rw] dataplex_service_agent
469
+ # @return [::Google::Cloud::Dataplex::V1::ExecutionIdentity::DataplexServiceAgent]
470
+ # Optional. The Dataplex service agent associated with the user's project.
471
+ #
472
+ # Note: The following fields are mutually exclusive: `dataplex_service_agent`, `user_credential`, `service_account`. If a field in that set is populated, all other fields in the set will automatically be cleared.
473
+ # @!attribute [rw] user_credential
474
+ # @return [::Google::Cloud::Dataplex::V1::ExecutionIdentity::UserCredential]
475
+ # Optional. The credential of the calling user. Supports only ONE_TIME
476
+ # trigger type.
477
+ #
478
+ # Note: The following fields are mutually exclusive: `user_credential`, `dataplex_service_agent`, `service_account`. If a field in that set is populated, all other fields in the set will automatically be cleared.
479
+ # @!attribute [rw] service_account
480
+ # @return [::Google::Cloud::Dataplex::V1::ExecutionIdentity::ServiceAccount]
481
+ # Optional. The provided service account.
482
+ #
483
+ # Note: The following fields are mutually exclusive: `service_account`, `dataplex_service_agent`, `user_credential`. If a field in that set is populated, all other fields in the set will automatically be cleared.
484
+ class ExecutionIdentity
485
+ include ::Google::Protobuf::MessageExts
486
+ extend ::Google::Protobuf::MessageExts::ClassMethods
487
+
488
+ # The Dataplex service agent associated with the user's project.
489
+ class DataplexServiceAgent
490
+ include ::Google::Protobuf::MessageExts
491
+ extend ::Google::Protobuf::MessageExts::ClassMethods
492
+ end
493
+
494
+ # The credential of the calling user.
495
+ class UserCredential
496
+ include ::Google::Protobuf::MessageExts
497
+ extend ::Google::Protobuf::MessageExts::ClassMethods
498
+ end
499
+
500
+ # The service account
501
+ # @!attribute [rw] email
502
+ # @return [::String]
503
+ # Required. Service account email. The datascan will execute with this
504
+ # service account's credentials. The user calling this API must have
505
+ # permissions to act as this service account. Dataplex service agent must
506
+ # be granted iam.serviceAccounts.getAccessToken permission on this service
507
+ # account, for example, through the iam.serviceAccountTokenCreator role .
508
+ class ServiceAccount
509
+ include ::Google::Protobuf::MessageExts
510
+ extend ::Google::Protobuf::MessageExts::ClassMethods
511
+ end
512
+ end
513
+
443
514
  # A DataScanJob represents an instance of DataScan execution.
444
515
  # @!attribute [r] name
445
516
  # @return [::String]
@@ -454,6 +525,9 @@ module Google
454
525
  # @!attribute [r] create_time
455
526
  # @return [::Google::Protobuf::Timestamp]
456
527
  # Output only. The time when the DataScanJob was created.
528
+ # @!attribute [r] partial_failure_message
529
+ # @return [::String]
530
+ # Output only. A message indicating partial failure details.
457
531
  # @!attribute [r] start_time
458
532
  # @return [::Google::Protobuf::Timestamp]
459
533
  # Output only. The time when the DataScanJob was started.
@@ -535,6 +609,9 @@ module Google
535
609
 
536
610
  # The DataScanJob has been created but not started to run yet.
537
611
  PENDING = 7
612
+
613
+ # The DataScanJob succeeded with errors.
614
+ SUCCEEDED_WITH_ERRORS = 8
538
615
  end
539
616
  end
540
617
 
@@ -22,10 +22,11 @@ module Google
22
22
  module Dataplex
23
23
  module V1
24
24
  # The status of publishing the data scan result as Dataplex Universal Catalog
25
- # metadata.
25
+ # metadata. Multiple DataScan log events may exist, each with different
26
+ # publishing information depending on the type of publishing triggered.
26
27
  # @!attribute [r] state
27
28
  # @return [::Google::Cloud::Dataplex::V1::DataScanCatalogPublishingStatus::State]
28
- # Output only. Execution state for catalog publishing.
29
+ # Output only. Execution state for publishing.
29
30
  class DataScanCatalogPublishingStatus
30
31
  include ::Google::Protobuf::MessageExts
31
32
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -35,11 +36,14 @@ module Google
35
36
  # The publishing state is unspecified.
36
37
  STATE_UNSPECIFIED = 0
37
38
 
38
- # Publish to catalog completed successfully.
39
+ # Publishing to catalog completed successfully.
39
40
  SUCCEEDED = 1
40
41
 
41
42
  # Publish to catalog failed.
42
43
  FAILED = 2
44
+
45
+ # Publishing to catalog was skipped.
46
+ SKIPPED = 3
43
47
  end
44
48
  end
45
49
  end
@@ -751,6 +751,9 @@ module Google
751
751
 
752
752
  # Data scan triggers as per schedule.
753
753
  SCHEDULE = 2
754
+
755
+ # Data scan is run one time on creation.
756
+ ONE_TIME = 3
754
757
  end
755
758
 
756
759
  # The scope of job for the data scan.
@@ -854,6 +857,10 @@ module Google
854
857
  # See
855
858
  # {::Google::Cloud::Dataplex::V1::DataQualityRule::SqlAssertion DataQualityRule.SqlAssertion}.
856
859
  SQL_ASSERTION = 9
860
+
861
+ # See
862
+ # {::Google::Cloud::Dataplex::V1::DataQualityRule::TemplateReference DataQualityRule.TemplateReference}.
863
+ TEMPLATE_REFERENCE = 10
857
864
  end
858
865
 
859
866
  # The evaluation type of the data quality rule.