xref: /aosp_15_r20/external/googleapis/google/cloud/datacatalog/v1beta1/search.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1// Copyright 2023 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
15syntax = "proto3";
16
17package google.cloud.datacatalog.v1beta1;
18
19import "google/api/field_behavior.proto";
20import "google/protobuf/timestamp.proto";
21
22option cc_enable_arenas = true;
23option csharp_namespace = "Google.Cloud.DataCatalog.V1Beta1";
24option go_package = "cloud.google.com/go/datacatalog/apiv1beta1/datacatalogpb;datacatalogpb";
25option java_multiple_files = true;
26option java_package = "com.google.cloud.datacatalog.v1beta1";
27option php_namespace = "Google\\Cloud\\DataCatalog\\V1beta1";
28option ruby_package = "Google::Cloud::DataCatalog::V1beta1";
29
30// A result that appears in the response of a search request. Each result
31// captures details of one entry that matches the search.
32message SearchCatalogResult {
33  // Type of the search result. This field can be used to determine which Get
34  // method to call to fetch the full resource.
35  SearchResultType search_result_type = 1;
36
37  // Sub-type of the search result. This is a dot-delimited description of the
38  // resource's full type, and is the same as the value callers would provide in
39  // the "type" search facet.  Examples: `entry.table`, `entry.dataStream`,
40  // `tagTemplate`.
41  string search_result_subtype = 2;
42
43  // The relative resource name of the resource in URL format.
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
50  // The full name of the cloud resource the entry belongs to. See:
51  // https://cloud.google.com/apis/design/resource_names#full_resource_name.
52  // Example:
53  //
54  //  * `//bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId`
55  string linked_resource = 4;
56
57  // Last-modified timestamp of the entry from the managing system.
58  google.protobuf.Timestamp modify_time = 7;
59}
60
61// The different types of resources that can be returned in search.
62enum SearchResultType {
63  // Default unknown type.
64  SEARCH_RESULT_TYPE_UNSPECIFIED = 0;
65
66  // An [Entry][google.cloud.datacatalog.v1beta1.Entry].
67  ENTRY = 1;
68
69  // A [TagTemplate][google.cloud.datacatalog.v1beta1.TagTemplate].
70  TAG_TEMPLATE = 2;
71
72  // An [EntryGroup][google.cloud.datacatalog.v1beta1.EntryGroup].
73  ENTRY_GROUP = 3;
74}
75