@google-cloud/discoveryengine 1.3.1 → 1.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +64 -0
  3. package/build/protos/google/cloud/discoveryengine/v1/common.proto +54 -3
  4. package/build/protos/google/cloud/discoveryengine/v1/completion.proto +52 -0
  5. package/build/protos/google/cloud/discoveryengine/v1/completion_service.proto +51 -4
  6. package/build/protos/google/cloud/discoveryengine/v1/conversation.proto +3 -0
  7. package/build/protos/google/cloud/discoveryengine/v1/conversational_search_service.proto +40 -1
  8. package/build/protos/google/cloud/discoveryengine/v1/data_store.proto +98 -0
  9. package/build/protos/google/cloud/discoveryengine/v1/data_store_service.proto +304 -0
  10. package/build/protos/google/cloud/discoveryengine/v1/document.proto +1 -1
  11. package/build/protos/google/cloud/discoveryengine/v1/engine.proto +215 -0
  12. package/build/protos/google/cloud/discoveryengine/v1/engine_service.proto +242 -0
  13. package/build/protos/google/cloud/discoveryengine/v1/import_config.proto +64 -0
  14. package/build/protos/google/cloud/discoveryengine/v1/purge_config.proto +38 -0
  15. package/build/protos/google/cloud/discoveryengine/v1/search_service.proto +137 -4
  16. package/build/protos/google/cloud/discoveryengine/v1/site_search_engine.proto +170 -0
  17. package/build/protos/google/cloud/discoveryengine/v1/site_search_engine_service.proto +691 -0
  18. package/build/protos/google/cloud/discoveryengine/v1/user_event.proto +3 -3
  19. package/build/protos/google/cloud/discoveryengine/v1alpha/acl_config.proto +49 -0
  20. package/build/protos/google/cloud/discoveryengine/v1alpha/acl_config_service.proto +79 -0
  21. package/build/protos/google/cloud/discoveryengine/v1alpha/chunk.proto +72 -0
  22. package/build/protos/google/cloud/discoveryengine/v1alpha/chunk_service.proto +137 -0
  23. package/build/protos/google/cloud/discoveryengine/v1alpha/common.proto +77 -4
  24. package/build/protos/google/cloud/discoveryengine/v1alpha/completion.proto +52 -0
  25. package/build/protos/google/cloud/discoveryengine/v1alpha/completion_service.proto +44 -2
  26. package/build/protos/google/cloud/discoveryengine/v1alpha/conversational_search_service.proto +6 -1
  27. package/build/protos/google/cloud/discoveryengine/v1alpha/data_store.proto +44 -0
  28. package/build/protos/google/cloud/discoveryengine/v1alpha/data_store_service.proto +80 -1
  29. package/build/protos/google/cloud/discoveryengine/v1alpha/document.proto +83 -0
  30. package/build/protos/google/cloud/discoveryengine/v1alpha/document_processing_config.proto +127 -0
  31. package/build/protos/google/cloud/discoveryengine/v1alpha/document_service.proto +6 -0
  32. package/build/protos/google/cloud/discoveryengine/v1alpha/engine.proto +13 -8
  33. package/build/protos/google/cloud/discoveryengine/v1alpha/engine_service.proto +3 -2
  34. package/build/protos/google/cloud/discoveryengine/v1alpha/estimate_billing_service.proto +130 -0
  35. package/build/protos/google/cloud/discoveryengine/v1alpha/import_config.proto +64 -0
  36. package/build/protos/google/cloud/discoveryengine/v1alpha/purge_config.proto +66 -0
  37. package/build/protos/google/cloud/discoveryengine/v1alpha/recommendation_service.proto +3 -1
  38. package/build/protos/google/cloud/discoveryengine/v1alpha/schema.proto +3 -0
  39. package/build/protos/google/cloud/discoveryengine/v1alpha/search_service.proto +74 -13
  40. package/build/protos/google/cloud/discoveryengine/v1alpha/search_tuning_service.proto +24 -20
  41. package/build/protos/google/cloud/discoveryengine/v1alpha/serving_config.proto +271 -0
  42. package/build/protos/google/cloud/discoveryengine/v1alpha/serving_config_service.proto +147 -0
  43. package/build/protos/google/cloud/discoveryengine/v1alpha/site_search_engine.proto +9 -3
  44. package/build/protos/google/cloud/discoveryengine/v1alpha/site_search_engine_service.proto +7 -4
  45. package/build/protos/google/cloud/discoveryengine/v1alpha/user_event.proto +4 -3
  46. package/build/protos/google/cloud/discoveryengine/v1beta/common.proto +59 -8
  47. package/build/protos/google/cloud/discoveryengine/v1beta/completion.proto +52 -0
  48. package/build/protos/google/cloud/discoveryengine/v1beta/completion_service.proto +51 -4
  49. package/build/protos/google/cloud/discoveryengine/v1beta/conversation.proto +3 -0
  50. package/build/protos/google/cloud/discoveryengine/v1beta/conversational_search_service.proto +45 -1
  51. package/build/protos/google/cloud/discoveryengine/v1beta/data_store.proto +120 -0
  52. package/build/protos/google/cloud/discoveryengine/v1beta/data_store_service.proto +306 -0
  53. package/build/protos/google/cloud/discoveryengine/v1beta/document.proto +10 -1
  54. package/build/protos/google/cloud/discoveryengine/v1beta/document_processing_config.proto +94 -0
  55. package/build/protos/google/cloud/discoveryengine/v1beta/engine.proto +220 -0
  56. package/build/protos/google/cloud/discoveryengine/v1beta/engine_service.proto +244 -0
  57. package/build/protos/google/cloud/discoveryengine/v1beta/import_config.proto +64 -0
  58. package/build/protos/google/cloud/discoveryengine/v1beta/purge_config.proto +41 -0
  59. package/build/protos/google/cloud/discoveryengine/v1beta/recommendation_service.proto +26 -3
  60. package/build/protos/google/cloud/discoveryengine/v1beta/search_service.proto +169 -15
  61. package/build/protos/google/cloud/discoveryengine/v1beta/search_tuning_service.proto +151 -0
  62. package/build/protos/google/cloud/discoveryengine/v1beta/serving_config.proto +265 -0
  63. package/build/protos/google/cloud/discoveryengine/v1beta/serving_config_service.proto +148 -0
  64. package/build/protos/google/cloud/discoveryengine/v1beta/site_search_engine.proto +170 -0
  65. package/build/protos/google/cloud/discoveryengine/v1beta/site_search_engine_service.proto +695 -0
  66. package/build/protos/google/cloud/discoveryengine/v1beta/user_event.proto +4 -3
  67. package/build/protos/protos.d.ts +48530 -23682
  68. package/build/protos/protos.js +122429 -63306
  69. package/build/protos/protos.json +13438 -7286
  70. package/build/src/index.d.ts +10 -1
  71. package/build/src/index.js +10 -1
  72. package/build/src/v1/completion_service_client.d.ts +489 -7
  73. package/build/src/v1/completion_service_client.js +715 -11
  74. package/build/src/v1/completion_service_client_config.json +10 -0
  75. package/build/src/v1/conversational_search_service_client.d.ts +341 -3
  76. package/build/src/v1/conversational_search_service_client.js +466 -9
  77. package/build/src/v1/data_store_service_client.d.ts +1286 -0
  78. package/build/src/v1/data_store_service_client.js +1768 -0
  79. package/build/src/v1/data_store_service_client_config.json +46 -0
  80. package/build/src/v1/document_service_client.d.ts +347 -2
  81. package/build/src/v1/document_service_client.js +506 -9
  82. package/build/src/v1/engine_service_client.d.ts +1211 -0
  83. package/build/src/v1/engine_service_client.js +1731 -0
  84. package/build/src/v1/engine_service_client_config.json +46 -0
  85. package/build/src/v1/index.d.ts +3 -0
  86. package/build/src/v1/index.js +7 -1
  87. package/build/src/v1/schema_service_client.d.ts +272 -2
  88. package/build/src/v1/schema_service_client.js +402 -9
  89. package/build/src/v1/search_service_client.d.ts +515 -11
  90. package/build/src/v1/search_service_client.js +648 -15
  91. package/build/src/v1/site_search_engine_service_client.d.ts +1564 -0
  92. package/build/src/v1/site_search_engine_service_client.js +2075 -0
  93. package/build/src/v1/site_search_engine_service_client_config.json +74 -0
  94. package/build/src/v1/user_event_service_client.d.ts +272 -2
  95. package/build/src/v1/user_event_service_client.js +402 -9
  96. package/build/src/v1alpha/acl_config_service_client.d.ts +1233 -0
  97. package/build/src/v1alpha/acl_config_service_client.js +1765 -0
  98. package/build/src/v1alpha/acl_config_service_client_config.json +34 -0
  99. package/build/src/v1alpha/chunk_service_client.d.ts +1350 -0
  100. package/build/src/v1alpha/chunk_service_client.js +1886 -0
  101. package/build/src/v1alpha/chunk_service_client_config.json +34 -0
  102. package/build/src/v1alpha/completion_service_client.d.ts +599 -5
  103. package/build/src/v1alpha/completion_service_client.js +868 -12
  104. package/build/src/v1alpha/completion_service_client_config.json +10 -0
  105. package/build/src/v1alpha/conversational_search_service_client.d.ts +244 -3
  106. package/build/src/v1alpha/conversational_search_service_client.js +353 -10
  107. package/build/src/v1alpha/data_store_service_client.d.ts +462 -5
  108. package/build/src/v1alpha/data_store_service_client.js +599 -12
  109. package/build/src/v1alpha/data_store_service_client_config.json +8 -0
  110. package/build/src/v1alpha/document_service_client.d.ts +393 -2
  111. package/build/src/v1alpha/document_service_client.js +551 -10
  112. package/build/src/v1alpha/engine_service_client.d.ts +386 -4
  113. package/build/src/v1alpha/engine_service_client.js +551 -10
  114. package/build/src/v1alpha/estimate_billing_service_client.d.ts +1367 -0
  115. package/build/src/v1alpha/estimate_billing_service_client.js +2028 -0
  116. package/build/src/v1alpha/estimate_billing_service_client_config.json +30 -0
  117. package/build/src/v1alpha/index.d.ts +4 -0
  118. package/build/src/v1alpha/index.js +10 -2
  119. package/build/src/v1alpha/recommendation_service_client.d.ts +242 -3
  120. package/build/src/v1alpha/recommendation_service_client.js +353 -10
  121. package/build/src/v1alpha/schema_service_client.d.ts +383 -2
  122. package/build/src/v1alpha/schema_service_client.js +551 -10
  123. package/build/src/v1alpha/search_service_client.d.ts +269 -17
  124. package/build/src/v1alpha/search_service_client.js +373 -20
  125. package/build/src/v1alpha/search_tuning_service_client.d.ts +384 -3
  126. package/build/src/v1alpha/search_tuning_service_client.js +551 -10
  127. package/build/src/v1alpha/serving_config_service_client.d.ts +1369 -0
  128. package/build/src/v1alpha/serving_config_service_client.js +1935 -0
  129. package/build/src/v1alpha/serving_config_service_client_config.json +38 -0
  130. package/build/src/v1alpha/site_search_engine_service_client.d.ts +383 -2
  131. package/build/src/v1alpha/site_search_engine_service_client.js +551 -10
  132. package/build/src/v1alpha/user_event_service_client.d.ts +383 -2
  133. package/build/src/v1alpha/user_event_service_client.js +551 -10
  134. package/build/src/v1beta/completion_service_client.d.ts +708 -7
  135. package/build/src/v1beta/completion_service_client.js +1015 -11
  136. package/build/src/v1beta/completion_service_client_config.json +10 -0
  137. package/build/src/v1beta/conversational_search_service_client.d.ts +420 -3
  138. package/build/src/v1beta/conversational_search_service_client.js +570 -9
  139. package/build/src/v1beta/data_store_service_client.d.ts +1508 -0
  140. package/build/src/v1beta/data_store_service_client.js +2070 -0
  141. package/build/src/v1beta/data_store_service_client_config.json +46 -0
  142. package/build/src/v1beta/document_service_client.d.ts +566 -2
  143. package/build/src/v1beta/document_service_client.js +810 -11
  144. package/build/src/v1beta/engine_service_client.d.ts +1432 -0
  145. package/build/src/v1beta/engine_service_client.js +2032 -0
  146. package/build/src/v1beta/engine_service_client_config.json +46 -0
  147. package/build/src/v1beta/index.d.ts +5 -0
  148. package/build/src/v1beta/index.js +11 -1
  149. package/build/src/v1beta/recommendation_service_client.d.ts +495 -5
  150. package/build/src/v1beta/recommendation_service_client.js +674 -9
  151. package/build/src/v1beta/schema_service_client.d.ts +491 -2
  152. package/build/src/v1beta/schema_service_client.js +706 -11
  153. package/build/src/v1beta/search_service_client.d.ts +620 -29
  154. package/build/src/v1beta/search_service_client.js +772 -27
  155. package/build/src/v1beta/search_tuning_service_client.d.ts +1196 -0
  156. package/build/src/v1beta/search_tuning_service_client.js +1781 -0
  157. package/build/src/v1beta/search_tuning_service_client_config.json +30 -0
  158. package/build/src/v1beta/serving_config_service_client.d.ts +1217 -0
  159. package/build/src/v1beta/serving_config_service_client.js +1724 -0
  160. package/build/src/v1beta/serving_config_service_client_config.json +38 -0
  161. package/build/src/v1beta/site_search_engine_service_client.d.ts +1787 -0
  162. package/build/src/v1beta/site_search_engine_service_client.js +2375 -0
  163. package/build/src/v1beta/site_search_engine_service_client_config.json +74 -0
  164. package/build/src/v1beta/user_event_service_client.d.ts +491 -2
  165. package/build/src/v1beta/user_event_service_client.js +706 -11
  166. package/package.json +3 -3
@@ -0,0 +1,265 @@
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
+
15
+ syntax = "proto3";
16
+
17
+ package google.cloud.discoveryengine.v1beta;
18
+
19
+ import "google/api/field_behavior.proto";
20
+ import "google/api/resource.proto";
21
+ import "google/cloud/discoveryengine/v1beta/common.proto";
22
+ import "google/cloud/discoveryengine/v1beta/search_service.proto";
23
+ import "google/protobuf/timestamp.proto";
24
+
25
+ option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1Beta";
26
+ option go_package = "cloud.google.com/go/discoveryengine/apiv1beta/discoveryenginepb;discoveryenginepb";
27
+ option java_multiple_files = true;
28
+ option java_outer_classname = "ServingConfigProto";
29
+ option java_package = "com.google.cloud.discoveryengine.v1beta";
30
+ option objc_class_prefix = "DISCOVERYENGINE";
31
+ option php_namespace = "Google\\Cloud\\DiscoveryEngine\\V1beta";
32
+ option ruby_package = "Google::Cloud::DiscoveryEngine::V1beta";
33
+
34
+ // Configures metadata that is used to generate serving time results (e.g.
35
+ // search results or recommendation predictions).
36
+ // The ServingConfig is passed in the search and predict request and generates
37
+ // results.
38
+ message ServingConfig {
39
+ option (google.api.resource) = {
40
+ type: "discoveryengine.googleapis.com/ServingConfig"
41
+ pattern: "projects/{project}/locations/{location}/dataStores/{data_store}/servingConfigs/{serving_config}"
42
+ pattern: "projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/servingConfigs/{serving_config}"
43
+ pattern: "projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/servingConfigs/{serving_config}"
44
+ };
45
+
46
+ // Specifies the configurations needed for Media Discovery. Currently we
47
+ // support:
48
+ //
49
+ // * `demote_content_watched`: Threshold for watched content demotion.
50
+ // Customers can specify if using watched content demotion or use viewed
51
+ // detail page. Using the content watched demotion, customers need to specify
52
+ // the watched minutes or percentage exceeds the threshold, the content will
53
+ // be demoted in the recommendation result.
54
+ // * `promote_fresh_content`: cutoff days for fresh content promotion.
55
+ // Customers can specify if using content freshness promotion. If the content
56
+ // was published within the cutoff days, the content will be promoted in the
57
+ // recommendation result.
58
+ // Can only be set if
59
+ // [SolutionType][google.cloud.discoveryengine.v1beta.SolutionType] is
60
+ // [SOLUTION_TYPE_RECOMMENDATION][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_RECOMMENDATION].
61
+ message MediaConfig {
62
+ // Specify the threshold for demoting watched content, the threshold can be
63
+ // either percentage or minutes value.
64
+ // This must be set for `media-complete` event type.
65
+ oneof demote_content_watched {
66
+ // Specifies the content watched percentage threshold for demotion.
67
+ // Threshold value must be between [0, 1.0] inclusive.
68
+ float content_watched_percentage_threshold = 2;
69
+
70
+ // Specifies the content watched minutes threshold for demotion.
71
+ float content_watched_seconds_threshold = 5;
72
+ }
73
+
74
+ // Specifies the event type used for demoting recommendation result.
75
+ // Currently supported values:
76
+ //
77
+ // * `view-item`: Item viewed.
78
+ // * `media-play`: Start/resume watching a video, playing a song, etc.
79
+ // * `media-complete`: Finished or stopped midway through a video, song,
80
+ // etc.
81
+ //
82
+ // If unset, watch history demotion will not be applied. Content freshness
83
+ // demotion will still be applied.
84
+ string demotion_event_type = 1;
85
+
86
+ // Specifies the content freshness used for recommendation result.
87
+ // Contents will be demoted if contents were published for more than content
88
+ // freshness cutoff days.
89
+ int32 content_freshness_cutoff_days = 4;
90
+ }
91
+
92
+ // Specifies the configurations needed for Generic Discovery.Currently we
93
+ // support:
94
+ //
95
+ // * `content_search_spec`: configuration for generic content search.
96
+ message GenericConfig {
97
+ // Specifies the expected behavior of content search.
98
+ // Only valid for content-search enabled data store.
99
+ SearchRequest.ContentSearchSpec content_search_spec = 1;
100
+ }
101
+
102
+ // Industry vertical specific config.
103
+ oneof vertical_config {
104
+ // The MediaConfig of the serving configuration.
105
+ MediaConfig media_config = 7;
106
+
107
+ // The GenericConfig of the serving configuration.
108
+ GenericConfig generic_config = 10;
109
+ }
110
+
111
+ // Immutable. Fully qualified name
112
+ // `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}/servingConfigs/{serving_config_id}`
113
+ string name = 1 [(google.api.field_behavior) = IMMUTABLE];
114
+
115
+ // Required. The human readable serving config display name. Used in Discovery
116
+ // UI.
117
+ //
118
+ // This field must be a UTF-8 encoded string with a length limit of 128
119
+ // characters. Otherwise, an INVALID_ARGUMENT error is returned.
120
+ string display_name = 2 [(google.api.field_behavior) = REQUIRED];
121
+
122
+ // Required. Immutable. Specifies the solution type that a serving config can
123
+ // be associated with.
124
+ SolutionType solution_type = 3 [
125
+ (google.api.field_behavior) = REQUIRED,
126
+ (google.api.field_behavior) = IMMUTABLE
127
+ ];
128
+
129
+ // The id of the model to use at serving time.
130
+ // Currently only RecommendationModels are supported.
131
+ // Can be changed but only to a compatible model (e.g.
132
+ // others-you-may-like CTR to others-you-may-like CVR).
133
+ //
134
+ // Required when
135
+ // [SolutionType][google.cloud.discoveryengine.v1beta.SolutionType] is
136
+ // [SOLUTION_TYPE_RECOMMENDATION][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_RECOMMENDATION].
137
+ string model_id = 4;
138
+
139
+ // How much diversity to use in recommendation model results e.g.
140
+ // `medium-diversity` or `high-diversity`. Currently supported values:
141
+ //
142
+ // * `no-diversity`
143
+ // * `low-diversity`
144
+ // * `medium-diversity`
145
+ // * `high-diversity`
146
+ // * `auto-diversity`
147
+ //
148
+ // If not specified, we choose default based on recommendation model
149
+ // type. Default value: `no-diversity`.
150
+ //
151
+ // Can only be set if
152
+ // [SolutionType][google.cloud.discoveryengine.v1beta.SolutionType] is
153
+ // [SOLUTION_TYPE_RECOMMENDATION][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_RECOMMENDATION].
154
+ string diversity_level = 5;
155
+
156
+ // Bring your own embedding config. The config is used for search semantic
157
+ // retrieval. The retrieval is based on the dot product of
158
+ // [SearchRequest.EmbeddingSpec.EmbeddingVector.vector][google.cloud.discoveryengine.v1beta.SearchRequest.EmbeddingSpec.EmbeddingVector.vector]
159
+ // and the document embeddings that are provided by this EmbeddingConfig. If
160
+ // [SearchRequest.EmbeddingSpec.EmbeddingVector.vector][google.cloud.discoveryengine.v1beta.SearchRequest.EmbeddingSpec.EmbeddingVector.vector]
161
+ // is provided, it overrides this
162
+ // [ServingConfig.embedding_config][google.cloud.discoveryengine.v1beta.ServingConfig.embedding_config].
163
+ EmbeddingConfig embedding_config = 20;
164
+
165
+ // The ranking expression controls the customized ranking on retrieval
166
+ // documents. To leverage this, document embedding is required. The ranking
167
+ // expression setting in ServingConfig applies to all search requests served
168
+ // by the serving config. However, if
169
+ // [SearchRequest.ranking_expression][google.cloud.discoveryengine.v1beta.SearchRequest.ranking_expression]
170
+ // is specified, it overrides the ServingConfig ranking expression.
171
+ //
172
+ // The ranking expression is a single function or multiple functions that are
173
+ // joined by "+".
174
+ // * ranking_expression = function, { " + ", function };
175
+ // Supported functions:
176
+ // * double * relevance_score
177
+ // * double * dotProduct(embedding_field_path)
178
+ // Function variables:
179
+ // relevance_score: pre-defined keywords, used for measure relevance between
180
+ // query and document.
181
+ // embedding_field_path: the document embedding field
182
+ // used with query embedding vector.
183
+ // dotProduct: embedding function between embedding_field_path and query
184
+ // embedding vector.
185
+ //
186
+ // Example ranking expression:
187
+ // If document has an embedding field doc_embedding, the ranking expression
188
+ // could be 0.5 * relevance_score + 0.3 * dotProduct(doc_embedding).
189
+ string ranking_expression = 21;
190
+
191
+ // Output only. ServingConfig created timestamp.
192
+ google.protobuf.Timestamp create_time = 8
193
+ [(google.api.field_behavior) = OUTPUT_ONLY];
194
+
195
+ // Output only. ServingConfig updated timestamp.
196
+ google.protobuf.Timestamp update_time = 9
197
+ [(google.api.field_behavior) = OUTPUT_ONLY];
198
+
199
+ // Filter controls to use in serving path.
200
+ // All triggered filter controls will be applied.
201
+ // Filter controls must be in the same data store as the serving config.
202
+ // Maximum of 20 filter controls.
203
+ repeated string filter_control_ids = 11;
204
+
205
+ // Boost controls to use in serving path.
206
+ // All triggered boost controls will be applied.
207
+ // Boost controls must be in the same data store as the serving config.
208
+ // Maximum of 20 boost controls.
209
+ repeated string boost_control_ids = 12;
210
+
211
+ // IDs of the redirect controls. Only the first triggered redirect
212
+ // action is applied, even if multiple apply. Maximum number of
213
+ // specifications is 100.
214
+ //
215
+ // Can only be set if
216
+ // [SolutionType][google.cloud.discoveryengine.v1beta.SolutionType] is
217
+ // [SOLUTION_TYPE_SEARCH][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_SEARCH].
218
+ repeated string redirect_control_ids = 14;
219
+
220
+ // Condition synonyms specifications. If multiple synonyms conditions
221
+ // match, all matching synonyms controls in the list will execute.
222
+ // Maximum number of specifications is 100.
223
+ //
224
+ // Can only be set if
225
+ // [SolutionType][google.cloud.discoveryengine.v1beta.SolutionType] is
226
+ // [SOLUTION_TYPE_SEARCH][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_SEARCH].
227
+ repeated string synonyms_control_ids = 15;
228
+
229
+ // Condition oneway synonyms specifications. If multiple oneway synonyms
230
+ // conditions match, all matching oneway synonyms controls in the list
231
+ // will execute. Maximum number of specifications is 100.
232
+ //
233
+ // Can only be set if
234
+ // [SolutionType][google.cloud.discoveryengine.v1beta.SolutionType] is
235
+ // [SOLUTION_TYPE_SEARCH][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_SEARCH].
236
+ repeated string oneway_synonyms_control_ids = 16;
237
+
238
+ // Condition do not associate specifications. If multiple do not
239
+ // associate conditions match, all matching do not associate controls in
240
+ // the list will execute.
241
+ // Order does not matter.
242
+ // Maximum number of specifications is 100.
243
+ //
244
+ // Can only be set if
245
+ // [SolutionType][google.cloud.discoveryengine.v1beta.SolutionType] is
246
+ // [SOLUTION_TYPE_SEARCH][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_SEARCH].
247
+ repeated string dissociate_control_ids = 17;
248
+
249
+ // Condition replacement specifications.
250
+ // Applied according to the order in the list.
251
+ // A previously replaced term can not be re-replaced.
252
+ // Maximum number of specifications is 100.
253
+ //
254
+ // Can only be set if
255
+ // [SolutionType][google.cloud.discoveryengine.v1beta.SolutionType] is
256
+ // [SOLUTION_TYPE_SEARCH][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_SEARCH].
257
+ repeated string replacement_control_ids = 18;
258
+
259
+ // Condition ignore specifications. If multiple ignore
260
+ // conditions match, all matching ignore controls in the list will
261
+ // execute.
262
+ // Order does not matter.
263
+ // Maximum number of specifications is 100.
264
+ repeated string ignore_control_ids = 19;
265
+ }
@@ -0,0 +1,148 @@
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
+
15
+ syntax = "proto3";
16
+
17
+ package google.cloud.discoveryengine.v1beta;
18
+
19
+ import "google/api/annotations.proto";
20
+ import "google/api/client.proto";
21
+ import "google/api/field_behavior.proto";
22
+ import "google/api/resource.proto";
23
+ import "google/cloud/discoveryengine/v1beta/serving_config.proto";
24
+ import "google/protobuf/field_mask.proto";
25
+
26
+ option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1Beta";
27
+ option go_package = "cloud.google.com/go/discoveryengine/apiv1beta/discoveryenginepb;discoveryenginepb";
28
+ option java_multiple_files = true;
29
+ option java_outer_classname = "ServingConfigServiceProto";
30
+ option java_package = "com.google.cloud.discoveryengine.v1beta";
31
+ option objc_class_prefix = "DISCOVERYENGINE";
32
+ option php_namespace = "Google\\Cloud\\DiscoveryEngine\\V1beta";
33
+ option ruby_package = "Google::Cloud::DiscoveryEngine::V1beta";
34
+
35
+ // Service for operations related to
36
+ // [ServingConfig][google.cloud.discoveryengine.v1beta.ServingConfig].
37
+ service ServingConfigService {
38
+ option (google.api.default_host) = "discoveryengine.googleapis.com";
39
+ option (google.api.oauth_scopes) =
40
+ "https://www.googleapis.com/auth/cloud-platform";
41
+
42
+ // Updates a ServingConfig.
43
+ //
44
+ // Returns a NOT_FOUND error if the ServingConfig does not exist.
45
+ rpc UpdateServingConfig(UpdateServingConfigRequest) returns (ServingConfig) {
46
+ option (google.api.http) = {
47
+ patch: "/v1beta/{serving_config.name=projects/*/locations/*/dataStores/*/servingConfigs/*}"
48
+ body: "serving_config"
49
+ additional_bindings {
50
+ patch: "/v1beta/{serving_config.name=projects/*/locations/*/collections/*/dataStores/*/servingConfigs/*}"
51
+ body: "serving_config"
52
+ }
53
+ additional_bindings {
54
+ patch: "/v1beta/{serving_config.name=projects/*/locations/*/collections/*/engines/*/servingConfigs/*}"
55
+ body: "serving_config"
56
+ }
57
+ };
58
+ option (google.api.method_signature) = "serving_config,update_mask";
59
+ }
60
+
61
+ // Gets a ServingConfig.
62
+ //
63
+ // Returns a NotFound error if the ServingConfig does not exist.
64
+ rpc GetServingConfig(GetServingConfigRequest) returns (ServingConfig) {
65
+ option (google.api.http) = {
66
+ get: "/v1beta/{name=projects/*/locations/*/dataStores/*/servingConfigs/*}"
67
+ additional_bindings {
68
+ get: "/v1beta/{name=projects/*/locations/*/collections/*/dataStores/*/servingConfigs/*}"
69
+ }
70
+ additional_bindings {
71
+ get: "/v1beta/{name=projects/*/locations/*/collections/*/engines/*/servingConfigs/*}"
72
+ }
73
+ };
74
+ option (google.api.method_signature) = "name";
75
+ }
76
+
77
+ // Lists all ServingConfigs linked to this dataStore.
78
+ rpc ListServingConfigs(ListServingConfigsRequest)
79
+ returns (ListServingConfigsResponse) {
80
+ option (google.api.http) = {
81
+ get: "/v1beta/{parent=projects/*/locations/*/dataStores/*}/servingConfigs"
82
+ additional_bindings {
83
+ get: "/v1beta/{parent=projects/*/locations/*/collections/*/dataStores/*}/servingConfigs"
84
+ }
85
+ additional_bindings {
86
+ get: "/v1beta/{parent=projects/*/locations/*/collections/*/engines/*}/servingConfigs"
87
+ }
88
+ };
89
+ option (google.api.method_signature) = "parent";
90
+ }
91
+ }
92
+
93
+ // Request for UpdateServingConfig method.
94
+ message UpdateServingConfigRequest {
95
+ // Required. The ServingConfig to update.
96
+ ServingConfig serving_config = 1 [(google.api.field_behavior) = REQUIRED];
97
+
98
+ // Indicates which fields in the provided
99
+ // [ServingConfig][google.cloud.discoveryengine.v1beta.ServingConfig] to
100
+ // update. The following are NOT supported:
101
+ //
102
+ // * [ServingConfig.name][google.cloud.discoveryengine.v1beta.ServingConfig.name]
103
+ //
104
+ // If not set, all supported fields are updated.
105
+ google.protobuf.FieldMask update_mask = 2;
106
+ }
107
+
108
+ // Request for GetServingConfig method.
109
+ message GetServingConfigRequest {
110
+ // Required. The resource name of the ServingConfig to get. Format:
111
+ // `projects/{project_number}/locations/{location}/collections/{collection}/engines/{engine}/servingConfigs/{serving_config_id}`
112
+ string name = 1 [
113
+ (google.api.field_behavior) = REQUIRED,
114
+ (google.api.resource_reference) = {
115
+ type: "discoveryengine.googleapis.com/ServingConfig"
116
+ }
117
+ ];
118
+ }
119
+
120
+ // Request for ListServingConfigs method.
121
+ message ListServingConfigsRequest {
122
+ // Required. Full resource name of the parent resource. Format:
123
+ // `projects/{project_number}/locations/{location}/collections/{collection}/engines/{engine}`
124
+ string parent = 1 [
125
+ (google.api.field_behavior) = REQUIRED,
126
+ (google.api.resource_reference) = {
127
+ child_type: "discoveryengine.googleapis.com/ServingConfig"
128
+ }
129
+ ];
130
+
131
+ // Optional. Maximum number of results to return. If unspecified, defaults
132
+ // to 100. If a value greater than 100 is provided, at most 100 results are
133
+ // returned.
134
+ int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
135
+
136
+ // Optional. A page token, received from a previous `ListServingConfigs` call.
137
+ // Provide this to retrieve the subsequent page.
138
+ string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
139
+ }
140
+
141
+ // Response for ListServingConfigs method.
142
+ message ListServingConfigsResponse {
143
+ // All the ServingConfigs for a given dataStore.
144
+ repeated ServingConfig serving_configs = 1;
145
+
146
+ // Pagination token, if not returned indicates the last page.
147
+ string next_page_token = 2;
148
+ }
@@ -0,0 +1,170 @@
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
+
15
+ syntax = "proto3";
16
+
17
+ package google.cloud.discoveryengine.v1beta;
18
+
19
+ import "google/api/field_behavior.proto";
20
+ import "google/api/resource.proto";
21
+ import "google/protobuf/timestamp.proto";
22
+
23
+ option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1Beta";
24
+ option go_package = "cloud.google.com/go/discoveryengine/apiv1beta/discoveryenginepb;discoveryenginepb";
25
+ option java_multiple_files = true;
26
+ option java_outer_classname = "SiteSearchEngineProto";
27
+ option java_package = "com.google.cloud.discoveryengine.v1beta";
28
+ option objc_class_prefix = "DISCOVERYENGINE";
29
+ option php_namespace = "Google\\Cloud\\DiscoveryEngine\\V1beta";
30
+ option ruby_package = "Google::Cloud::DiscoveryEngine::V1beta";
31
+
32
+ // SiteSearchEngine captures DataStore level site search persisting
33
+ // configurations. It is a singleton value per data store.
34
+ message SiteSearchEngine {
35
+ option (google.api.resource) = {
36
+ type: "discoveryengine.googleapis.com/SiteSearchEngine"
37
+ pattern: "projects/{project}/locations/{location}/dataStores/{data_store}/siteSearchEngine"
38
+ pattern: "projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/siteSearchEngine"
39
+ };
40
+
41
+ // The fully qualified resource name of the site search engine.
42
+ // Format: `projects/*/locations/*/dataStores/*/siteSearchEngine`
43
+ string name = 1;
44
+ }
45
+
46
+ // A target site for the SiteSearchEngine.
47
+ message TargetSite {
48
+ option (google.api.resource) = {
49
+ type: "discoveryengine.googleapis.com/TargetSite"
50
+ pattern: "projects/{project}/locations/{location}/dataStores/{data_store}/siteSearchEngine/targetSites/{target_site}"
51
+ pattern: "projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/siteSearchEngine/targetSites/{target_site}"
52
+ };
53
+
54
+ // Site search indexing failure reasons.
55
+ message FailureReason {
56
+ // Failed due to insufficient quota.
57
+ message QuotaFailure {
58
+ // This number is an estimation on how much total quota this project needs
59
+ // to successfully complete indexing.
60
+ int64 total_required_quota = 1;
61
+ }
62
+
63
+ // Failure reason.
64
+ oneof failure {
65
+ // Failed due to insufficient quota.
66
+ QuotaFailure quota_failure = 1;
67
+ }
68
+ }
69
+
70
+ // Possible target site types.
71
+ enum Type {
72
+ // This value is unused. In this case, server behavior defaults to
73
+ // [Type.INCLUDE][google.cloud.discoveryengine.v1beta.TargetSite.Type.INCLUDE].
74
+ TYPE_UNSPECIFIED = 0;
75
+
76
+ // Include the target site.
77
+ INCLUDE = 1;
78
+
79
+ // Exclude the target site.
80
+ EXCLUDE = 2;
81
+ }
82
+
83
+ // Target site indexing status enumeration.
84
+ enum IndexingStatus {
85
+ // Defaults to SUCCEEDED.
86
+ INDEXING_STATUS_UNSPECIFIED = 0;
87
+
88
+ // The target site is in the update queue and will be picked up by indexing
89
+ // pipeline.
90
+ PENDING = 1;
91
+
92
+ // The target site fails to be indexed.
93
+ FAILED = 2;
94
+
95
+ // The target site has been indexed.
96
+ SUCCEEDED = 3;
97
+
98
+ // The previously indexed target site has been marked to be deleted. This is
99
+ // a transitioning state which will resulted in either:
100
+ // 1. target site deleted if unindexing is successful;
101
+ // 2. state reverts to SUCCEEDED if the unindexing fails.
102
+ DELETING = 4;
103
+ }
104
+
105
+ // Output only. The fully qualified resource name of the target site.
106
+ // `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/siteSearchEngine/targetSites/{target_site}`
107
+ // The `target_site_id` is system-generated.
108
+ string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
109
+
110
+ // Required. Input only. The user provided URI pattern from which the
111
+ // `generated_uri_pattern` is generated.
112
+ string provided_uri_pattern = 2 [
113
+ (google.api.field_behavior) = REQUIRED,
114
+ (google.api.field_behavior) = INPUT_ONLY
115
+ ];
116
+
117
+ // The type of the target site, e.g., whether the site is to be included or
118
+ // excluded.
119
+ Type type = 3;
120
+
121
+ // Input only. If set to false, a uri_pattern is generated to include all
122
+ // pages whose address contains the provided_uri_pattern. If set to true, an
123
+ // uri_pattern is generated to try to be an exact match of the
124
+ // provided_uri_pattern or just the specific page if the provided_uri_pattern
125
+ // is a specific one. provided_uri_pattern is always normalized to
126
+ // generate the URI pattern to be used by the search engine.
127
+ bool exact_match = 6 [(google.api.field_behavior) = INPUT_ONLY];
128
+
129
+ // Output only. This is system-generated based on the provided_uri_pattern.
130
+ string generated_uri_pattern = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
131
+
132
+ // Output only. Site ownership and validity verification status.
133
+ SiteVerificationInfo site_verification_info = 7
134
+ [(google.api.field_behavior) = OUTPUT_ONLY];
135
+
136
+ // Output only. Indexing status.
137
+ IndexingStatus indexing_status = 8
138
+ [(google.api.field_behavior) = OUTPUT_ONLY];
139
+
140
+ // Output only. The target site's last updated time.
141
+ google.protobuf.Timestamp update_time = 5
142
+ [(google.api.field_behavior) = OUTPUT_ONLY];
143
+
144
+ // Output only. Failure reason.
145
+ FailureReason failure_reason = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
146
+ }
147
+
148
+ // Verification information for target sites in advanced site search.
149
+ message SiteVerificationInfo {
150
+ // Site verification state.
151
+ enum SiteVerificationState {
152
+ // Defaults to VERIFIED.
153
+ SITE_VERIFICATION_STATE_UNSPECIFIED = 0;
154
+
155
+ // Site ownership verified.
156
+ VERIFIED = 1;
157
+
158
+ // Site ownership pending verification or verification failed.
159
+ UNVERIFIED = 2;
160
+
161
+ // Site exempt from verification, e.g., a public website that opens to all.
162
+ EXEMPTED = 3;
163
+ }
164
+
165
+ // Site verification state indicating the ownership and validity.
166
+ SiteVerificationState site_verification_state = 1;
167
+
168
+ // Latest site verification time.
169
+ google.protobuf.Timestamp verify_time = 2;
170
+ }