@google-cloud/discoveryengine 1.12.0 → 1.14.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 (121) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +10 -0
  3. package/build/protos/google/cloud/discoveryengine/v1/answer.proto +49 -5
  4. package/build/protos/google/cloud/discoveryengine/v1/control.proto +6 -4
  5. package/build/protos/google/cloud/discoveryengine/v1/conversational_search_service.proto +9 -9
  6. package/build/protos/google/cloud/discoveryengine/v1/custom_tuning_model.proto +96 -0
  7. package/build/protos/google/cloud/discoveryengine/v1/data_store_service.proto +10 -0
  8. package/build/protos/google/cloud/discoveryengine/v1/document.proto +20 -0
  9. package/build/protos/google/cloud/discoveryengine/v1/document_processing_config.proto +2 -0
  10. package/build/protos/google/cloud/discoveryengine/v1/document_service.proto +110 -0
  11. package/build/protos/google/cloud/discoveryengine/v1/grounded_generation_service.proto +2 -1
  12. package/build/protos/google/cloud/discoveryengine/v1/import_config.proto +13 -7
  13. package/build/protos/google/cloud/discoveryengine/v1/purge_config.proto +117 -0
  14. package/build/protos/google/cloud/discoveryengine/v1/recommendation_service.proto +2 -1
  15. package/build/protos/google/cloud/discoveryengine/v1/search_service.proto +40 -16
  16. package/build/protos/google/cloud/discoveryengine/v1/search_tuning_service.proto +196 -0
  17. package/build/protos/google/cloud/discoveryengine/v1/user_event.proto +4 -0
  18. package/build/protos/google/cloud/discoveryengine/v1/user_event_service.proto +21 -0
  19. package/build/protos/google/cloud/discoveryengine/v1alpha/acl_config_service.proto +1 -1
  20. package/build/protos/google/cloud/discoveryengine/v1alpha/answer.proto +61 -2
  21. package/build/protos/google/cloud/discoveryengine/v1alpha/chunk.proto +1 -1
  22. package/build/protos/google/cloud/discoveryengine/v1alpha/completion.proto +31 -0
  23. package/build/protos/google/cloud/discoveryengine/v1alpha/completion_service.proto +38 -0
  24. package/build/protos/google/cloud/discoveryengine/v1alpha/control.proto +1 -1
  25. package/build/protos/google/cloud/discoveryengine/v1alpha/conversational_search_service.proto +28 -9
  26. package/build/protos/google/cloud/discoveryengine/v1alpha/custom_tuning_model.proto +10 -1
  27. package/build/protos/google/cloud/discoveryengine/v1alpha/data_store.proto +71 -0
  28. package/build/protos/google/cloud/discoveryengine/v1alpha/data_store_service.proto +11 -1
  29. package/build/protos/google/cloud/discoveryengine/v1alpha/document.proto +24 -1
  30. package/build/protos/google/cloud/discoveryengine/v1alpha/document_processing_config.proto +6 -2
  31. package/build/protos/google/cloud/discoveryengine/v1alpha/document_service.proto +108 -1
  32. package/build/protos/google/cloud/discoveryengine/v1alpha/grounded_generation_service.proto +2 -1
  33. package/build/protos/google/cloud/discoveryengine/v1alpha/import_config.proto +119 -5
  34. package/build/protos/google/cloud/discoveryengine/v1alpha/purge_config.proto +58 -1
  35. package/build/protos/google/cloud/discoveryengine/v1alpha/schema.proto +5 -0
  36. package/build/protos/google/cloud/discoveryengine/v1alpha/search_service.proto +428 -12
  37. package/build/protos/google/cloud/discoveryengine/v1alpha/serving_config.proto +14 -5
  38. package/build/protos/google/cloud/discoveryengine/v1alpha/site_search_engine_service.proto +126 -0
  39. package/build/protos/google/cloud/discoveryengine/v1alpha/user_event.proto +4 -0
  40. package/build/protos/google/cloud/discoveryengine/v1alpha/user_event_service.proto +3 -0
  41. package/build/protos/google/cloud/discoveryengine/v1beta/answer.proto +47 -2
  42. package/build/protos/google/cloud/discoveryengine/v1beta/control.proto +1 -1
  43. package/build/protos/google/cloud/discoveryengine/v1beta/conversational_search_service.proto +3 -0
  44. package/build/protos/google/cloud/discoveryengine/v1beta/custom_tuning_model.proto +3 -0
  45. package/build/protos/google/cloud/discoveryengine/v1beta/document.proto +20 -0
  46. package/build/protos/google/cloud/discoveryengine/v1beta/document_processing_config.proto +2 -0
  47. package/build/protos/google/cloud/discoveryengine/v1beta/document_service.proto +114 -0
  48. package/build/protos/google/cloud/discoveryengine/v1beta/grounded_generation_service.proto +2 -1
  49. package/build/protos/google/cloud/discoveryengine/v1beta/import_config.proto +13 -7
  50. package/build/protos/google/cloud/discoveryengine/v1beta/purge_config.proto +44 -0
  51. package/build/protos/google/cloud/discoveryengine/v1beta/search_service.proto +101 -6
  52. package/build/protos/google/cloud/discoveryengine/v1beta/user_event.proto +4 -0
  53. package/build/protos/protos.d.ts +24137 -16126
  54. package/build/protos/protos.js +78286 -58223
  55. package/build/protos/protos.json +1954 -105
  56. package/build/src/index.d.ts +4 -1
  57. package/build/src/index.js +4 -1
  58. package/build/src/v1/completion_service_client.d.ts +93 -0
  59. package/build/src/v1/completion_service_client.js +134 -0
  60. package/build/src/v1/control_service_client.d.ts +93 -0
  61. package/build/src/v1/control_service_client.js +128 -0
  62. package/build/src/v1/conversational_search_service_client.d.ts +93 -0
  63. package/build/src/v1/conversational_search_service_client.js +128 -0
  64. package/build/src/v1/data_store_service_client.d.ts +102 -0
  65. package/build/src/v1/data_store_service_client.js +134 -0
  66. package/build/src/v1/document_service_client.d.ts +131 -0
  67. package/build/src/v1/document_service_client.js +156 -0
  68. package/build/src/v1/document_service_client_config.json +5 -0
  69. package/build/src/v1/engine_service_client.d.ts +93 -0
  70. package/build/src/v1/engine_service_client.js +134 -0
  71. package/build/src/v1/grounded_generation_service_client.d.ts +93 -0
  72. package/build/src/v1/grounded_generation_service_client.js +128 -0
  73. package/build/src/v1/index.d.ts +1 -0
  74. package/build/src/v1/index.js +3 -1
  75. package/build/src/v1/project_service_client.d.ts +93 -0
  76. package/build/src/v1/project_service_client.js +134 -0
  77. package/build/src/v1/rank_service_client.d.ts +93 -0
  78. package/build/src/v1/rank_service_client.js +128 -0
  79. package/build/src/v1/recommendation_service_client.d.ts +95 -1
  80. package/build/src/v1/recommendation_service_client.js +128 -0
  81. package/build/src/v1/schema_service_client.d.ts +93 -0
  82. package/build/src/v1/schema_service_client.js +134 -0
  83. package/build/src/v1/search_service_client.d.ts +111 -9
  84. package/build/src/v1/search_service_client.js +140 -6
  85. package/build/src/v1/search_tuning_service_client.d.ts +1776 -0
  86. package/build/src/v1/search_tuning_service_client.js +2589 -0
  87. package/build/src/v1/search_tuning_service_client_config.json +34 -0
  88. package/build/src/v1/site_search_engine_service_client.d.ts +93 -0
  89. package/build/src/v1/site_search_engine_service_client.js +134 -0
  90. package/build/src/v1/user_event_service_client.d.ts +168 -0
  91. package/build/src/v1/user_event_service_client.js +176 -0
  92. package/build/src/v1/user_event_service_client_config.json +5 -0
  93. package/build/src/v1alpha/acl_config_service_client.d.ts +1 -1
  94. package/build/src/v1alpha/completion_service_client.d.ts +91 -0
  95. package/build/src/v1alpha/completion_service_client.js +90 -0
  96. package/build/src/v1alpha/completion_service_client_config.json +10 -0
  97. package/build/src/v1alpha/conversational_search_service_client.d.ts +18 -0
  98. package/build/src/v1alpha/data_store_service_client.d.ts +12 -3
  99. package/build/src/v1alpha/data_store_service_client.js +8 -2
  100. package/build/src/v1alpha/document_service_client.d.ts +33 -0
  101. package/build/src/v1alpha/document_service_client.js +28 -0
  102. package/build/src/v1alpha/document_service_client_config.json +5 -0
  103. package/build/src/v1alpha/engine_service_client.js +6 -0
  104. package/build/src/v1alpha/estimate_billing_service_client.js +6 -0
  105. package/build/src/v1alpha/evaluation_service_client.js +6 -0
  106. package/build/src/v1alpha/project_service_client.js +6 -0
  107. package/build/src/v1alpha/sample_query_service_client.js +6 -0
  108. package/build/src/v1alpha/schema_service_client.js +6 -0
  109. package/build/src/v1alpha/search_service_client.d.ts +219 -21
  110. package/build/src/v1alpha/search_service_client.js +146 -14
  111. package/build/src/v1alpha/search_tuning_service_client.js +6 -0
  112. package/build/src/v1alpha/site_search_engine_service_client.d.ts +101 -0
  113. package/build/src/v1alpha/site_search_engine_service_client.js +70 -0
  114. package/build/src/v1alpha/site_search_engine_service_client_config.json +8 -0
  115. package/build/src/v1alpha/user_event_service_client.js +6 -0
  116. package/build/src/v1beta/document_service_client.d.ts +38 -0
  117. package/build/src/v1beta/document_service_client.js +22 -0
  118. package/build/src/v1beta/document_service_client_config.json +5 -0
  119. package/build/src/v1beta/search_service_client.d.ts +36 -9
  120. package/build/src/v1beta/search_service_client.js +24 -6
  121. package/package.json +2 -2
@@ -69,6 +69,13 @@ message Answer {
69
69
 
70
70
  // Page identifier.
71
71
  string page_identifier = 2;
72
+
73
+ // The relevance of the chunk for a given query. Values range from 0.0
74
+ // (completely irrelevant) to 1.0 (completely relevant).
75
+ // This value is for informational purpose only. It may change for
76
+ // the same query and chunk at any time due to a model retraining or
77
+ // change in implementation.
78
+ optional float relevance_score = 3;
72
79
  }
73
80
 
74
81
  // Document resource name.
@@ -121,13 +128,28 @@ message Answer {
121
128
  // Chunk textual content.
122
129
  string content = 2;
123
130
 
124
- // Relevance score.
131
+ // The relevance of the chunk for a given query. Values range from 0.0
132
+ // (completely irrelevant) to 1.0 (completely relevant).
133
+ // This value is for informational purpose only. It may change for
134
+ // the same query and chunk at any time due to a model retraining or
135
+ // change in implementation.
125
136
  optional float relevance_score = 3;
126
137
 
127
138
  // Document metadata.
128
139
  DocumentMetadata document_metadata = 4;
129
140
  }
130
141
 
142
+ // Structured search information.
143
+ message StructuredDocumentInfo {
144
+ // Document resource name.
145
+ string document = 1 [(google.api.resource_reference) = {
146
+ type: "discoveryengine.googleapis.com/Document"
147
+ }];
148
+
149
+ // Structured search data.
150
+ google.protobuf.Struct struct_data = 2;
151
+ }
152
+
131
153
  // Search result content.
132
154
  oneof content {
133
155
  // Unstructured document information.
@@ -135,6 +157,9 @@ message Answer {
135
157
 
136
158
  // Chunk information.
137
159
  ChunkInfo chunk_info = 2;
160
+
161
+ // Structured document information.
162
+ StructuredDocumentInfo structured_document_info = 3;
138
163
  }
139
164
  }
140
165
 
@@ -168,7 +193,11 @@ message Answer {
168
193
  // Chunk textual content.
169
194
  string content = 2;
170
195
 
171
- // Relevance score.
196
+ // The relevance of the chunk for a given query. Values range from
197
+ // 0.0 (completely irrelevant) to 1.0 (completely relevant).
198
+ // This value is for informational purpose only. It may change for
199
+ // the same query and chunk at any time due to a model retraining or
200
+ // change in implementation.
172
201
  optional float relevance_score = 3;
173
202
  }
174
203
 
@@ -188,6 +217,14 @@ message Answer {
188
217
  // If citation_type is CHUNK_LEVEL_CITATION and chunk mode is on,
189
218
  // populate chunk info.
190
219
  repeated ChunkInfo chunk_info = 5;
220
+
221
+ // Data representation.
222
+ // The structured JSON data for the document.
223
+ // It's populated from the struct data from the Document
224
+ // , or the Chunk in
225
+ // search result
226
+ // .
227
+ google.protobuf.Struct struct_data = 6;
191
228
  }
192
229
 
193
230
  // Search results observed by the search action, it can be snippets info
@@ -247,6 +284,9 @@ message Answer {
247
284
 
248
285
  // Non-answer-seeking query classification type.
249
286
  NON_ANSWER_SEEKING_QUERY = 2;
287
+
288
+ // Jail-breaking query classification type.
289
+ JAIL_BREAKING_QUERY = 3;
250
290
  }
251
291
 
252
292
  // Query classification type.
@@ -296,6 +336,25 @@ message Answer {
296
336
  // Google skips the answer if there is a potential policy violation
297
337
  // detected. This includes content that may be violent or toxic.
298
338
  POTENTIAL_POLICY_VIOLATION = 4;
339
+
340
+ // The no relevant content case.
341
+ //
342
+ // Google skips the answer if there is no relevant content in the
343
+ // retrieved search results.
344
+ NO_RELEVANT_CONTENT = 5;
345
+
346
+ // The jail-breaking query ignored case.
347
+ //
348
+ // For example, "Reply in the tone of a competing company's CEO".
349
+ // Google skips the answer if the query is classified as a jail-breaking
350
+ // query.
351
+ JAIL_BREAKING_QUERY_IGNORED = 6;
352
+
353
+ // The customer policy violation case.
354
+ //
355
+ // Google skips the summary if there is a customer policy violation
356
+ // detected. The policy is defined by the customer.
357
+ CUSTOMER_POLICY_VIOLATION = 7;
299
358
  }
300
359
 
301
360
  // Immutable. Fully qualified name
@@ -96,7 +96,7 @@ message Chunk {
96
96
  // Content is a string from a document (parsed content).
97
97
  string content = 3;
98
98
 
99
- // The relevance score based on similarity.
99
+ // Output only. Represents the relevance score based on similarity.
100
100
  // Higher score indicates higher chunk relevance.
101
101
  // The score is in range [-1.0, 1.0].
102
102
  // Only populated on [SearchService.SearchResponse][].
@@ -50,3 +50,34 @@ message SuggestionDenyListEntry {
50
50
  // exact phrase, or block any suggestions containing this phrase.
51
51
  MatchOperator match_operator = 2 [(google.api.field_behavior) = REQUIRED];
52
52
  }
53
+
54
+ // Autocomplete suggestions that are imported from Customer.
55
+ message CompletionSuggestion {
56
+ // Ranking metrics of this suggestion.
57
+ oneof ranking_info {
58
+ // Global score of this suggestion. Control how this suggestion would be
59
+ // scored / ranked.
60
+ double global_score = 2;
61
+
62
+ // Frequency of this suggestion. Will be used to rank suggestions when score
63
+ // is not available.
64
+ int64 frequency = 3;
65
+ }
66
+
67
+ // Required. The suggestion text.
68
+ string suggestion = 1 [(google.api.field_behavior) = REQUIRED];
69
+
70
+ // BCP-47 language code of this suggestion.
71
+ string language_code = 4;
72
+
73
+ // If two suggestions have the same groupId, they will not be
74
+ // returned together. Instead the one ranked higher will be returned. This can
75
+ // be used to deduplicate semantically identical suggestions.
76
+ string group_id = 5;
77
+
78
+ // The score of this suggestion within its group.
79
+ double group_score = 6;
80
+
81
+ // Alternative matching phrases for this suggestion.
82
+ repeated string alternative_phrases = 7;
83
+ }
@@ -86,6 +86,44 @@ service CompletionService {
86
86
  metadata_type: "google.cloud.discoveryengine.v1alpha.PurgeSuggestionDenyListEntriesMetadata"
87
87
  };
88
88
  }
89
+
90
+ // Imports
91
+ // [CompletionSuggestion][google.cloud.discoveryengine.v1alpha.CompletionSuggestion]s
92
+ // for a DataStore.
93
+ rpc ImportCompletionSuggestions(ImportCompletionSuggestionsRequest)
94
+ returns (google.longrunning.Operation) {
95
+ option (google.api.http) = {
96
+ post: "/v1alpha/{parent=projects/*/locations/*/collections/*/dataStores/*}/completionSuggestions:import"
97
+ body: "*"
98
+ additional_bindings {
99
+ post: "/v1alpha/{parent=projects/*/locations/*/dataStores/*}/completionSuggestions:import"
100
+ body: "*"
101
+ }
102
+ };
103
+ option (google.longrunning.operation_info) = {
104
+ response_type: "google.cloud.discoveryengine.v1alpha.ImportCompletionSuggestionsResponse"
105
+ metadata_type: "google.cloud.discoveryengine.v1alpha.ImportCompletionSuggestionsMetadata"
106
+ };
107
+ }
108
+
109
+ // Permanently deletes all
110
+ // [CompletionSuggestion][google.cloud.discoveryengine.v1alpha.CompletionSuggestion]s
111
+ // for a DataStore.
112
+ rpc PurgeCompletionSuggestions(PurgeCompletionSuggestionsRequest)
113
+ returns (google.longrunning.Operation) {
114
+ option (google.api.http) = {
115
+ post: "/v1alpha/{parent=projects/*/locations/*/collections/*/dataStores/*}/completionSuggestions:purge"
116
+ body: "*"
117
+ additional_bindings {
118
+ post: "/v1alpha/{parent=projects/*/locations/*/dataStores/*}/completionSuggestions:purge"
119
+ body: "*"
120
+ }
121
+ };
122
+ option (google.longrunning.operation_info) = {
123
+ response_type: "google.cloud.discoveryengine.v1alpha.PurgeCompletionSuggestionsResponse"
124
+ metadata_type: "google.cloud.discoveryengine.v1alpha.PurgeCompletionSuggestionsMetadata"
125
+ };
126
+ }
89
127
  }
90
128
 
91
129
  // Request message for
@@ -184,7 +184,7 @@ message Control {
184
184
  string display_name = 2 [(google.api.field_behavior) = REQUIRED];
185
185
 
186
186
  // Output only. List of all
187
- // [ServingConfig][google.cloud.discoveryengine.v1alpha.ServingConfig] ids
187
+ // [ServingConfig][google.cloud.discoveryengine.v1alpha.ServingConfig] IDs
188
188
  // this control is attached to. May take up to 10 minutes to update after
189
189
  // changes.
190
190
  repeated string associated_serving_config_ids = 3
@@ -589,12 +589,7 @@ message AnswerQueryRequest {
589
589
  string order_by = 4;
590
590
 
591
591
  // Specifies the search result mode. If unspecified, the
592
- // search result mode is based on
593
- // [DataStore.DocumentProcessingConfig.chunking_config][]:
594
- // * If [DataStore.DocumentProcessingConfig.chunking_config][] is
595
- // specified,
596
- // it defaults to `CHUNKS`.
597
- // * Otherwise, it defaults to `DOCUMENTS`.
592
+ // search result mode defaults to `DOCUMENTS`.
598
593
  // See [parse and chunk
599
594
  // documents](https://cloud.google.com/generative-ai-app-builder/docs/parse-chunk-documents)
600
595
  SearchRequest.ContentSearchSpec.SearchResultMode search_result_mode = 5;
@@ -715,6 +710,9 @@ message AnswerQueryRequest {
715
710
 
716
711
  // Non-answer-seeking query classification type.
717
712
  NON_ANSWER_SEEKING_QUERY = 2;
713
+
714
+ // Jail-breaking query classification type.
715
+ JAIL_BREAKING_QUERY = 3;
718
716
  }
719
717
 
720
718
  // Enabled query classification types.
@@ -801,6 +799,25 @@ message AnswerQueryRequest {
801
799
  // The field must be a UTF-8 encoded string with a length limit of 128
802
800
  // characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
803
801
  string user_pseudo_id = 12;
802
+
803
+ // The user labels applied to a resource must meet the following requirements:
804
+ //
805
+ // * Each resource can have multiple labels, up to a maximum of 64.
806
+ // * Each label must be a key-value pair.
807
+ // * Keys have a minimum length of 1 character and a maximum length of 63
808
+ // characters and cannot be empty. Values can be empty and have a maximum
809
+ // length of 63 characters.
810
+ // * Keys and values can contain only lowercase letters, numeric characters,
811
+ // underscores, and dashes. All characters must use UTF-8 encoding, and
812
+ // international characters are allowed.
813
+ // * The key portion of a label must be unique. However, you can use the same
814
+ // key with multiple resources.
815
+ // * Keys must start with a lowercase letter or international character.
816
+ //
817
+ // See [Google Cloud
818
+ // Document](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements)
819
+ // for more details.
820
+ map<string, string> user_labels = 13;
804
821
  }
805
822
 
806
823
  // Response message for
@@ -808,9 +825,11 @@ message AnswerQueryRequest {
808
825
  // method.
809
826
  message AnswerQueryResponse {
810
827
  // Answer resource object.
811
- // If [AnswerQueryRequest.StepSpec.max_step_count][] is greater than 1,
812
- // use [Answer.name][google.cloud.discoveryengine.v1alpha.Answer.name] to
813
- // fetch answer information using
828
+ // If
829
+ // [AnswerQueryRequest.QueryUnderstandingSpec.QueryRephraserSpec.max_rephrase_steps][google.cloud.discoveryengine.v1alpha.AnswerQueryRequest.QueryUnderstandingSpec.QueryRephraserSpec.max_rephrase_steps]
830
+ // is greater than 1, use
831
+ // [Answer.name][google.cloud.discoveryengine.v1alpha.Answer.name] to fetch
832
+ // answer information using
814
833
  // [ConversationalSearchService.GetAnswer][google.cloud.discoveryengine.v1alpha.ConversationalSearchService.GetAnswer]
815
834
  // API.
816
835
  Answer answer = 1;
@@ -56,6 +56,12 @@ message CustomTuningModel {
56
56
 
57
57
  // The model training failed.
58
58
  TRAINING_FAILED = 5;
59
+
60
+ // The model training finished successfully but metrics did not improve.
61
+ NO_IMPROVEMENT = 6;
62
+
63
+ // Input data validation failed. Model training didn't start.
64
+ INPUT_VALIDATION_FAILED = 7;
59
65
  }
60
66
 
61
67
  // Required. The fully qualified resource name of the model.
@@ -80,8 +86,11 @@ message CustomTuningModel {
80
86
  ModelState model_state = 4;
81
87
 
82
88
  // Timestamp the Model was created at.
83
- google.protobuf.Timestamp create_time = 5;
89
+ google.protobuf.Timestamp create_time = 5 [deprecated = true];
84
90
 
85
91
  // Timestamp the model training was initiated.
86
92
  google.protobuf.Timestamp training_start_time = 6;
93
+
94
+ // The metrics of the trained model.
95
+ map<string, double> metrics = 7;
87
96
  }
@@ -55,6 +55,11 @@ message DataStore {
55
55
 
56
56
  // The data store is used for public website search.
57
57
  PUBLIC_WEBSITE = 3;
58
+
59
+ // The data store is used for workspace search. Details of workspace
60
+ // data store are specified in the
61
+ // [WorkspaceConfig][google.cloud.discoveryengine.v1alpha.WorkspaceConfig].
62
+ GOOGLE_WORKSPACE = 4;
58
63
  }
59
64
 
60
65
  // Immutable. The full resource name of the data store.
@@ -98,6 +103,9 @@ message DataStore {
98
103
  google.protobuf.Timestamp create_time = 4
99
104
  [(google.api.field_behavior) = OUTPUT_ONLY];
100
105
 
106
+ // Language info for DataStore.
107
+ LanguageInfo language_info = 14;
108
+
101
109
  // Output only. Data store level identity provider config.
102
110
  IdpConfig idp_config = 21 [(google.api.field_behavior) = OUTPUT_ONLY];
103
111
 
@@ -120,6 +128,13 @@ message DataStore {
120
128
  // non-`PUBLIC_WEBSITE` content config.
121
129
  bool acl_enabled = 24 [(google.api.field_behavior) = IMMUTABLE];
122
130
 
131
+ // Config to store data store type configuration for workspace data. This
132
+ // must be set when
133
+ // [DataStore.content_config][google.cloud.discoveryengine.v1alpha.DataStore.content_config]
134
+ // is set as
135
+ // [DataStore.ContentConfig.GOOGLE_WORKSPACE][google.cloud.discoveryengine.v1alpha.DataStore.ContentConfig.GOOGLE_WORKSPACE].
136
+ WorkspaceConfig workspace_config = 25;
137
+
123
138
  // Configuration for Document understanding and enrichment.
124
139
  DocumentProcessingConfig document_processing_config = 27;
125
140
 
@@ -140,3 +155,59 @@ message DataStore {
140
155
  // doc](https://cloud.google.com/generative-ai-app-builder/docs/provide-schema).
141
156
  Schema starting_schema = 28;
142
157
  }
158
+
159
+ // Language info for DataStore.
160
+ message LanguageInfo {
161
+ // The language code for the DataStore.
162
+ string language_code = 1;
163
+
164
+ // Output only. This is the normalized form of language_code.
165
+ // E.g.: language_code of `en-GB`, `en_GB`, `en-UK` or `en-gb`
166
+ // will have normalized_language_code of `en-GB`.
167
+ string normalized_language_code = 2
168
+ [(google.api.field_behavior) = OUTPUT_ONLY];
169
+
170
+ // Output only. Language part of normalized_language_code.
171
+ // E.g.: `en-US` -> `en`, `zh-Hans-HK` -> `zh`, `en` -> `en`.
172
+ string language = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
173
+
174
+ // Output only. Region part of normalized_language_code, if present.
175
+ // E.g.: `en-US` -> `US`, `zh-Hans-HK` -> `HK`, `en` -> ``.
176
+ string region = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
177
+ }
178
+
179
+ // Config to store data store type configuration for workspace data
180
+ message WorkspaceConfig {
181
+ // Specifies the type of Workspace App supported by this DataStore
182
+ enum Type {
183
+ // Defaults to an unspecified Workspace type.
184
+ TYPE_UNSPECIFIED = 0;
185
+
186
+ // Workspace Data Store contains Drive data
187
+ GOOGLE_DRIVE = 1;
188
+
189
+ // Workspace Data Store contains Mail data
190
+ GOOGLE_MAIL = 2;
191
+
192
+ // Workspace Data Store contains Sites data
193
+ GOOGLE_SITES = 3;
194
+
195
+ // Workspace Data Store contains Calendar data
196
+ GOOGLE_CALENDAR = 4;
197
+
198
+ // Workspace Data Store contains Chat data
199
+ GOOGLE_CHAT = 5;
200
+
201
+ // Workspace Data Store contains Groups data
202
+ GOOGLE_GROUPS = 6;
203
+
204
+ // Workspace Data Store contains Keep data
205
+ GOOGLE_KEEP = 7;
206
+ }
207
+
208
+ // The Google Workspace data source.
209
+ Type type = 1;
210
+
211
+ // Obfuscated Dasher customer ID.
212
+ string dasher_customer_id = 2;
213
+ }
@@ -189,6 +189,16 @@ message CreateDataStoreRequest {
189
189
  // search (GENERIC vertical and PUBLIC_WEBSITE content_config), this flag will
190
190
  // be ignored.
191
191
  bool create_advanced_site_search = 4;
192
+
193
+ // A boolean flag indicating whether to skip the default schema creation for
194
+ // the data store. Only enable this flag if you are certain that the default
195
+ // schema is incompatible with your use case.
196
+ //
197
+ // If set to true, you must manually create a schema for the data store before
198
+ // any documents can be ingested.
199
+ //
200
+ // This flag cannot be specified if `data_store.starting_schema` is specified.
201
+ bool skip_default_schema_creation = 7;
192
202
  }
193
203
 
194
204
  // Request message for
@@ -265,7 +275,7 @@ message ListDataStoresRequest {
265
275
  // INVALID_ARGUMENT error is returned.
266
276
  string page_token = 3;
267
277
 
268
- // Filter by solution type.
278
+ // Filter by solution type .
269
279
  // For example: `filter = 'solution_type:SOLUTION_TYPE_SEARCH'`
270
280
  string filter = 4;
271
281
  }
@@ -21,6 +21,7 @@ import "google/api/resource.proto";
21
21
  import "google/cloud/discoveryengine/v1alpha/common.proto";
22
22
  import "google/protobuf/struct.proto";
23
23
  import "google/protobuf/timestamp.proto";
24
+ import "google/rpc/status.proto";
24
25
 
25
26
  option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1Alpha";
26
27
  option go_package = "cloud.google.com/go/discoveryengine/apiv1alpha/discoveryenginepb;discoveryenginepb";
@@ -55,7 +56,7 @@ message Document {
55
56
 
56
57
  // The URI of the content. Only Cloud Storage URIs (e.g.
57
58
  // `gs://bucket-name/path/to/file`) are supported. The maximum file size
58
- // is 2.5 MB for text-based formats, 100 MB for other formats.
59
+ // is 2.5 MB for text-based formats, 200 MB for other formats.
59
60
  string uri = 3;
60
61
  }
61
62
 
@@ -135,12 +136,26 @@ message Document {
135
136
  message AccessRestriction {
136
137
  // List of principals.
137
138
  repeated Principal principals = 1;
139
+
140
+ // All users within the Identity Provider.
141
+ bool idp_wide = 2;
138
142
  }
139
143
 
140
144
  // Readers of the document.
141
145
  repeated AccessRestriction readers = 1;
142
146
  }
143
147
 
148
+ // Index status of the document.
149
+ message IndexStatus {
150
+ // The time when the document was indexed.
151
+ // If this field is populated, it means the document has been indexed.
152
+ google.protobuf.Timestamp index_time = 1;
153
+
154
+ // A sample of errors encountered while indexing the document.
155
+ // If this field is populated, the document is not indexed due to errors.
156
+ repeated google.rpc.Status error_samples = 2;
157
+ }
158
+
144
159
  // Data representation. One of
145
160
  // [struct_data][google.cloud.discoveryengine.v1alpha.Document.struct_data] or
146
161
  // [json_data][google.cloud.discoveryengine.v1alpha.Document.json_data] should
@@ -201,6 +216,14 @@ message Document {
201
216
  // document has never been indexed.
202
217
  google.protobuf.Timestamp index_time = 13
203
218
  [(google.api.field_behavior) = OUTPUT_ONLY];
219
+
220
+ // Output only. The index status of the document.
221
+ //
222
+ // * If document is indexed successfully, the index_time field is populated.
223
+ // * Otherwise, if document is not indexed due to errors, the error_samples
224
+ // field is populated.
225
+ // * Otherwise, index_status is unset.
226
+ IndexStatus index_status = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
204
227
  }
205
228
 
206
229
  // Document captures all raw metadata information of items to be recommended or
@@ -118,8 +118,12 @@ message DocumentProcessingConfig {
118
118
  // * `pdf`: Override parsing config for PDF files, either digital parsing, ocr
119
119
  // parsing or layout parsing is supported.
120
120
  // * `html`: Override parsing config for HTML files, only digital parsing and
121
- // or layout parsing are supported.
121
+ // layout parsing are supported.
122
122
  // * `docx`: Override parsing config for DOCX files, only digital parsing and
123
- // or layout parsing are supported.
123
+ // layout parsing are supported.
124
+ // * `pptx`: Override parsing config for PPTX files, only digital parsing and
125
+ // layout parsing are supported.
126
+ // * `xlsx`: Override parsing config for XLSX files, only digital parsing and
127
+ // layout parsing are supported.
124
128
  map<string, ParsingConfig> parsing_config_overrides = 5;
125
129
  }
@@ -26,6 +26,7 @@ import "google/cloud/discoveryengine/v1alpha/purge_config.proto";
26
26
  import "google/longrunning/operations.proto";
27
27
  import "google/protobuf/empty.proto";
28
28
  import "google/protobuf/field_mask.proto";
29
+ import "google/protobuf/timestamp.proto";
29
30
 
30
31
  option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1Alpha";
31
32
  option go_package = "cloud.google.com/go/discoveryengine/apiv1alpha/discoveryenginepb;discoveryenginepb";
@@ -171,6 +172,20 @@ service DocumentService {
171
172
  };
172
173
  option (google.api.method_signature) = "name";
173
174
  }
175
+
176
+ // Gets index freshness metadata for
177
+ // [Document][google.cloud.discoveryengine.v1alpha.Document]s. Supported for
178
+ // website search only.
179
+ rpc BatchGetDocumentsMetadata(BatchGetDocumentsMetadataRequest)
180
+ returns (BatchGetDocumentsMetadataResponse) {
181
+ option (google.api.http) = {
182
+ get: "/v1alpha/{parent=projects/*/locations/*/dataStores/*/branches/*}/batchGetDocumentsMetadata"
183
+ additional_bindings {
184
+ get: "/v1alpha/{parent=projects/*/locations/*/collections/*/dataStores/*/branches/*}/batchGetDocumentsMetadata"
185
+ }
186
+ };
187
+ option (google.api.method_signature) = "parent";
188
+ }
174
189
  }
175
190
 
176
191
  // Request message for
@@ -351,7 +366,7 @@ message GetProcessedDocumentRequest {
351
366
  // Only available if ChunkingConfig is enabled on the data store.
352
367
  CHUNKED_DOCUMENT = 2;
353
368
 
354
- // Returns the converted PNG Image bytes if available.
369
+ // Returns the converted Image bytes (as JPEG or PNG) if available.
355
370
  PNG_CONVERTED_DOCUMENT = 3;
356
371
  }
357
372
 
@@ -389,3 +404,95 @@ message GetProcessedDocumentRequest {
389
404
  // What format output should be. If unspecified, defaults to JSON.
390
405
  ProcessedDocumentFormat processed_document_format = 3;
391
406
  }
407
+
408
+ // Request message for
409
+ // [DocumentService.BatchGetDocumentsMetadata][google.cloud.discoveryengine.v1alpha.DocumentService.BatchGetDocumentsMetadata]
410
+ // method.
411
+ message BatchGetDocumentsMetadataRequest {
412
+ // Matcher for the [Document][google.cloud.discoveryengine.v1alpha.Document]s
413
+ // by exact uris.
414
+ message UrisMatcher {
415
+ // The exact URIs to match by.
416
+ repeated string uris = 1;
417
+ }
418
+
419
+ // Matcher for the [Document][google.cloud.discoveryengine.v1alpha.Document]s.
420
+ // Currently supports matching by exact URIs.
421
+ message Matcher {
422
+ // Matcher for the
423
+ // [Document][google.cloud.discoveryengine.v1alpha.Document]s.
424
+ oneof matcher {
425
+ // Matcher by exact URIs.
426
+ UrisMatcher uris_matcher = 1;
427
+ }
428
+ }
429
+
430
+ // Required. The parent branch resource name, such as
431
+ // `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`.
432
+ string parent = 1 [
433
+ (google.api.field_behavior) = REQUIRED,
434
+ (google.api.resource_reference) = {
435
+ type: "discoveryengine.googleapis.com/Branch"
436
+ }
437
+ ];
438
+
439
+ // Required. Matcher for the
440
+ // [Document][google.cloud.discoveryengine.v1alpha.Document]s.
441
+ Matcher matcher = 2 [(google.api.field_behavior) = REQUIRED];
442
+ }
443
+
444
+ // Response message for
445
+ // [DocumentService.BatchGetDocumentsMetadata][google.cloud.discoveryengine.v1alpha.DocumentService.BatchGetDocumentsMetadata]
446
+ // method.
447
+ message BatchGetDocumentsMetadataResponse {
448
+ // The metadata of a
449
+ // [Document][google.cloud.discoveryengine.v1alpha.Document].
450
+ message DocumentMetadata {
451
+ // The value of the matcher that was used to match the
452
+ // [Document][google.cloud.discoveryengine.v1alpha.Document].
453
+ message MatcherValue {
454
+ // The value of the matcher that was used to match the
455
+ // [Document][google.cloud.discoveryengine.v1alpha.Document].
456
+ oneof matcher_value {
457
+ // If match by URI, the URI of the
458
+ // [Document][google.cloud.discoveryengine.v1alpha.Document].
459
+ string uri = 1;
460
+ }
461
+ }
462
+
463
+ // The value of the matcher that was used to match the
464
+ // [Document][google.cloud.discoveryengine.v1alpha.Document].
465
+ MatcherValue matcher_value = 2;
466
+
467
+ // The state of the document.
468
+ State state = 3;
469
+
470
+ // The timestamp of the last time the
471
+ // [Document][google.cloud.discoveryengine.v1alpha.Document] was last
472
+ // indexed.
473
+ google.protobuf.Timestamp last_refreshed_time = 4;
474
+ }
475
+
476
+ // The state of the
477
+ // [Document][google.cloud.discoveryengine.v1alpha.Document].
478
+ enum State {
479
+ // Should never be set.
480
+ STATE_UNSPECIFIED = 0;
481
+
482
+ // The [Document][google.cloud.discoveryengine.v1alpha.Document] is indexed.
483
+ INDEXED = 1;
484
+
485
+ // The [Document][google.cloud.discoveryengine.v1alpha.Document] is not
486
+ // indexed because its URI is not in the
487
+ // [TargetSite][google.cloud.discoveryengine.v1alpha.TargetSite].
488
+ NOT_IN_TARGET_SITE = 2;
489
+
490
+ // The [Document][google.cloud.discoveryengine.v1alpha.Document] is not
491
+ // indexed.
492
+ NOT_IN_INDEX = 3;
493
+ }
494
+
495
+ // The metadata of the
496
+ // [Document][google.cloud.discoveryengine.v1alpha.Document]s.
497
+ repeated DocumentMetadata documents_metadata = 1;
498
+ }
@@ -129,8 +129,9 @@ message CheckGroundingResponse {
129
129
  // field will be set to false. In that case, no grounding check was done for
130
130
  // the claim and therefore
131
131
  // [citation_indices][google.cloud.discoveryengine.v1alpha.CheckGroundingResponse.Claim.citation_indices],
132
+ // [anti_citation_indices][google.cloud.discoveryengine.v1alpha.CheckGroundingResponse.Claim.anti_citation_indices],
132
133
  // and
133
- // [anti_citation_indices][google.cloud.discoveryengine.v1alpha.CheckGroundingResponse.Claim.anti_citation_indices]
134
+ // [score][google.cloud.discoveryengine.v1alpha.CheckGroundingResponse.Claim.score]
134
135
  // should not be returned.
135
136
  optional bool grounding_check_required = 6;
136
137
  }