search.proto 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. // Copyright 2022 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.cloud.datacatalog.v1;
  16. import "google/api/field_behavior.proto";
  17. import "google/cloud/datacatalog/v1/common.proto";
  18. import "google/protobuf/timestamp.proto";
  19. option cc_enable_arenas = true;
  20. option csharp_namespace = "Google.Cloud.DataCatalog.V1";
  21. option go_package = "google.golang.org/genproto/googleapis/cloud/datacatalog/v1;datacatalog";
  22. option java_multiple_files = true;
  23. option java_package = "com.google.cloud.datacatalog.v1";
  24. option php_namespace = "Google\\Cloud\\DataCatalog\\V1";
  25. option ruby_package = "Google::Cloud::DataCatalog::V1";
  26. // Result in the response to a search request.
  27. //
  28. // Each result captures details of one entry that matches the search.
  29. message SearchCatalogResult {
  30. // Type of the search result.
  31. //
  32. // You can use this field to determine which get method to call to fetch the
  33. // full resource.
  34. SearchResultType search_result_type = 1;
  35. // Sub-type of the search result.
  36. //
  37. // A dot-delimited full type of the resource. The same type you
  38. // specify in the `type` search predicate.
  39. //
  40. // Examples: `entry.table`, `entry.dataStream`, `tagTemplate`.
  41. string search_result_subtype = 2;
  42. // The relative name of the resource in URL format.
  43. //
  44. // Examples:
  45. //
  46. // * `projects/{PROJECT_ID}/locations/{LOCATION_ID}/entryGroups/{ENTRY_GROUP_ID}/entries/{ENTRY_ID}`
  47. // * `projects/{PROJECT_ID}/tagTemplates/{TAG_TEMPLATE_ID}`
  48. string relative_resource_name = 3;
  49. // The full name of the Google Cloud resource the entry belongs to.
  50. //
  51. // For more information, see [Full Resource Name]
  52. // (/apis/design/resource_names#full_resource_name).
  53. //
  54. // Example:
  55. //
  56. // `//bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID`
  57. string linked_resource = 4;
  58. // The last modification timestamp of the entry in the source system.
  59. google.protobuf.Timestamp modify_time = 7;
  60. // The source system of the entry. Applicable only when the
  61. // `search_result_type` is `ENTRY`.
  62. oneof system {
  63. // Output only. The source system that Data Catalog automatically integrates with, such
  64. // as BigQuery, Cloud Pub/Sub, or Dataproc Metastore.
  65. IntegratedSystem integrated_system = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
  66. // Custom source system that you can manually integrate Data Catalog with.
  67. string user_specified_system = 9;
  68. }
  69. // Fully qualified name (FQN) of the resource.
  70. //
  71. // FQNs take two forms:
  72. //
  73. // * For non-regionalized resources:
  74. //
  75. // `{SYSTEM}:{PROJECT}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}`
  76. //
  77. // * For regionalized resources:
  78. //
  79. // `{SYSTEM}:{PROJECT}.{LOCATION_ID}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}`
  80. //
  81. // Example for a DPMS table:
  82. //
  83. // `dataproc_metastore:PROJECT_ID.LOCATION_ID.INSTANCE_ID.DATABASE_ID.TABLE_ID`
  84. string fully_qualified_name = 10;
  85. // The display name of the result.
  86. string display_name = 12;
  87. // Entry description that can consist of several sentences or paragraphs that
  88. // describe entry contents.
  89. string description = 13;
  90. }
  91. // The resource types that can be returned in search results.
  92. enum SearchResultType {
  93. // Default unknown type.
  94. SEARCH_RESULT_TYPE_UNSPECIFIED = 0;
  95. // An [Entry][google.cloud.datacatalog.v1.Entry].
  96. ENTRY = 1;
  97. // A [TagTemplate][google.cloud.datacatalog.v1.TagTemplate].
  98. TAG_TEMPLATE = 2;
  99. // An [EntryGroup][google.cloud.datacatalog.v1.EntryGroup].
  100. ENTRY_GROUP = 3;
  101. }