google-cloud-discovery_engine-v1 2.0.0 → 2.1.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 (77) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/discovery_engine/v1/conversational_search_service/client.rb +186 -4
  3. data/lib/google/cloud/discovery_engine/v1/conversational_search_service/rest/client.rb +181 -4
  4. data/lib/google/cloud/discovery_engine/v1/conversational_search_service/rest/service_stub.rb +72 -0
  5. data/lib/google/cloud/discovery_engine/v1/document_service/client.rb +8 -2
  6. data/lib/google/cloud/discovery_engine/v1/document_service/rest/client.rb +8 -2
  7. data/lib/google/cloud/discovery_engine/v1/grounded_generation_service/client.rb +1 -3
  8. data/lib/google/cloud/discovery_engine/v1/grounded_generation_service/rest/client.rb +1 -3
  9. data/lib/google/cloud/discovery_engine/v1/rank_service/client.rb +1 -1
  10. data/lib/google/cloud/discovery_engine/v1/rank_service/rest/client.rb +1 -1
  11. data/lib/google/cloud/discovery_engine/v1/recommendation_service/client.rb +3 -3
  12. data/lib/google/cloud/discovery_engine/v1/recommendation_service/rest/client.rb +3 -3
  13. data/lib/google/cloud/discovery_engine/v1/rest.rb +1 -0
  14. data/lib/google/cloud/discovery_engine/v1/search_service/client.rb +44 -12
  15. data/lib/google/cloud/discovery_engine/v1/search_service/rest/client.rb +44 -12
  16. data/lib/google/cloud/discovery_engine/v1/serving_config_service/client.rb +484 -0
  17. data/lib/google/cloud/discovery_engine/v1/serving_config_service/credentials.rb +47 -0
  18. data/lib/google/cloud/discovery_engine/v1/serving_config_service/paths.rb +101 -0
  19. data/lib/google/cloud/discovery_engine/v1/serving_config_service/rest/client.rb +451 -0
  20. data/lib/google/cloud/discovery_engine/v1/serving_config_service/rest/service_stub.rb +159 -0
  21. data/lib/google/cloud/discovery_engine/v1/serving_config_service/rest.rb +53 -0
  22. data/lib/google/cloud/discovery_engine/v1/serving_config_service.rb +56 -0
  23. data/lib/google/cloud/discovery_engine/v1/site_search_engine_service/client.rb +316 -3
  24. data/lib/google/cloud/discovery_engine/v1/site_search_engine_service/paths.rb +49 -0
  25. data/lib/google/cloud/discovery_engine/v1/site_search_engine_service/rest/client.rb +295 -3
  26. data/lib/google/cloud/discovery_engine/v1/site_search_engine_service/rest/service_stub.rb +206 -0
  27. data/lib/google/cloud/discovery_engine/v1/user_event_service/client.rb +21 -9
  28. data/lib/google/cloud/discovery_engine/v1/user_event_service/rest/client.rb +21 -9
  29. data/lib/google/cloud/discovery_engine/v1/user_event_service/rest/service_stub.rb +8 -0
  30. data/lib/google/cloud/discovery_engine/v1/version.rb +1 -1
  31. data/lib/google/cloud/discovery_engine/v1.rb +1 -0
  32. data/lib/google/cloud/discoveryengine/v1/answer_pb.rb +4 -1
  33. data/lib/google/cloud/discoveryengine/v1/common_pb.rb +4 -1
  34. data/lib/google/cloud/discoveryengine/v1/control_pb.rb +7 -1
  35. data/lib/google/cloud/discoveryengine/v1/conversational_search_service_pb.rb +12 -1
  36. data/lib/google/cloud/discoveryengine/v1/conversational_search_service_services_pb.rb +8 -0
  37. data/lib/google/cloud/discoveryengine/v1/data_store_pb.rb +2 -1
  38. data/lib/google/cloud/discoveryengine/v1/document_pb.rb +1 -1
  39. data/lib/google/cloud/discoveryengine/v1/engine_pb.rb +1 -1
  40. data/lib/google/cloud/discoveryengine/v1/grounded_generation_service_pb.rb +6 -1
  41. data/lib/google/cloud/discoveryengine/v1/import_config_pb.rb +1 -1
  42. data/lib/google/cloud/discoveryengine/v1/safety_pb.rb +47 -0
  43. data/lib/google/cloud/discoveryengine/v1/search_service_pb.rb +5 -1
  44. data/lib/google/cloud/discoveryengine/v1/serving_config_pb.rb +52 -0
  45. data/lib/google/cloud/discoveryengine/v1/serving_config_service_pb.rb +51 -0
  46. data/lib/google/cloud/discoveryengine/v1/serving_config_service_services_pb.rb +48 -0
  47. data/lib/google/cloud/discoveryengine/v1/session_pb.rb +3 -1
  48. data/lib/google/cloud/discoveryengine/v1/site_search_engine_pb.rb +2 -1
  49. data/lib/google/cloud/discoveryengine/v1/site_search_engine_service_pb.rb +10 -1
  50. data/lib/google/cloud/discoveryengine/v1/site_search_engine_service_services_pb.rb +7 -0
  51. data/lib/google/cloud/discoveryengine/v1/user_event_pb.rb +1 -1
  52. data/lib/google/cloud/discoveryengine/v1/user_event_service_pb.rb +1 -1
  53. data/proto_docs/google/api/client.rb +6 -0
  54. data/proto_docs/google/cloud/discoveryengine/v1/answer.rb +53 -2
  55. data/proto_docs/google/cloud/discoveryengine/v1/chunk.rb +2 -1
  56. data/proto_docs/google/cloud/discoveryengine/v1/common.rb +40 -0
  57. data/proto_docs/google/cloud/discoveryengine/v1/control.rb +122 -7
  58. data/proto_docs/google/cloud/discoveryengine/v1/conversational_search_service.rb +159 -2
  59. data/proto_docs/google/cloud/discoveryengine/v1/data_store.rb +25 -4
  60. data/proto_docs/google/cloud/discoveryengine/v1/document.rb +7 -2
  61. data/proto_docs/google/cloud/discoveryengine/v1/document_service.rb +1 -1
  62. data/proto_docs/google/cloud/discoveryengine/v1/engine.rb +16 -3
  63. data/proto_docs/google/cloud/discoveryengine/v1/grounded_generation_service.rb +90 -12
  64. data/proto_docs/google/cloud/discoveryengine/v1/import_config.rb +19 -1
  65. data/proto_docs/google/cloud/discoveryengine/v1/purge_config.rb +9 -5
  66. data/proto_docs/google/cloud/discoveryengine/v1/rank_service.rb +3 -1
  67. data/proto_docs/google/cloud/discoveryengine/v1/recommendation_service.rb +3 -3
  68. data/proto_docs/google/cloud/discoveryengine/v1/safety.rb +108 -0
  69. data/proto_docs/google/cloud/discoveryengine/v1/search_service.rb +109 -8
  70. data/proto_docs/google/cloud/discoveryengine/v1/serving_config.rb +261 -0
  71. data/proto_docs/google/cloud/discoveryengine/v1/serving_config_service.rb +44 -0
  72. data/proto_docs/google/cloud/discoveryengine/v1/session.rb +18 -0
  73. data/proto_docs/google/cloud/discoveryengine/v1/site_search_engine.rb +19 -2
  74. data/proto_docs/google/cloud/discoveryengine/v1/site_search_engine_service.rb +146 -4
  75. data/proto_docs/google/cloud/discoveryengine/v1/user_event.rb +34 -0
  76. data/proto_docs/google/cloud/discoveryengine/v1/user_event_service.rb +12 -4
  77. metadata +17 -3
@@ -0,0 +1,261 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 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 DiscoveryEngine
23
+ module V1
24
+ # Configures metadata that is used to generate serving time results (e.g.
25
+ # search results or recommendation predictions).
26
+ # The ServingConfig is passed in the search and predict request and generates
27
+ # results.
28
+ # @!attribute [rw] media_config
29
+ # @return [::Google::Cloud::DiscoveryEngine::V1::ServingConfig::MediaConfig]
30
+ # The MediaConfig of the serving configuration.
31
+ #
32
+ # Note: The following fields are mutually exclusive: `media_config`, `generic_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
33
+ # @!attribute [rw] generic_config
34
+ # @return [::Google::Cloud::DiscoveryEngine::V1::ServingConfig::GenericConfig]
35
+ # The GenericConfig of the serving configuration.
36
+ #
37
+ # Note: The following fields are mutually exclusive: `generic_config`, `media_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
38
+ # @!attribute [rw] name
39
+ # @return [::String]
40
+ # Immutable. Fully qualified name
41
+ # `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}/servingConfigs/{serving_config_id}`
42
+ # @!attribute [rw] display_name
43
+ # @return [::String]
44
+ # Required. The human readable serving config display name. Used in Discovery
45
+ # UI.
46
+ #
47
+ # This field must be a UTF-8 encoded string with a length limit of 128
48
+ # characters. Otherwise, an INVALID_ARGUMENT error is returned.
49
+ # @!attribute [rw] solution_type
50
+ # @return [::Google::Cloud::DiscoveryEngine::V1::SolutionType]
51
+ # Required. Immutable. Specifies the solution type that a serving config can
52
+ # be associated with.
53
+ # @!attribute [rw] model_id
54
+ # @return [::String]
55
+ # The id of the model to use at serving time.
56
+ # Currently only RecommendationModels are supported.
57
+ # Can be changed but only to a compatible model (e.g.
58
+ # others-you-may-like CTR to others-you-may-like CVR).
59
+ #
60
+ # Required when {::Google::Cloud::DiscoveryEngine::V1::SolutionType SolutionType}
61
+ # is
62
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType::SOLUTION_TYPE_RECOMMENDATION SOLUTION_TYPE_RECOMMENDATION}.
63
+ # @!attribute [rw] diversity_level
64
+ # @return [::String]
65
+ # How much diversity to use in recommendation model results e.g.
66
+ # `medium-diversity` or `high-diversity`. Currently supported values:
67
+ #
68
+ # * `no-diversity`
69
+ # * `low-diversity`
70
+ # * `medium-diversity`
71
+ # * `high-diversity`
72
+ # * `auto-diversity`
73
+ #
74
+ # If not specified, we choose default based on recommendation model
75
+ # type. Default value: `no-diversity`.
76
+ #
77
+ # Can only be set if
78
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType SolutionType} is
79
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType::SOLUTION_TYPE_RECOMMENDATION SOLUTION_TYPE_RECOMMENDATION}.
80
+ # @!attribute [rw] ranking_expression
81
+ # @return [::String]
82
+ # The ranking expression controls the customized ranking on retrieval
83
+ # documents. To leverage this, document embedding is required. The ranking
84
+ # expression setting in ServingConfig applies to all search requests served
85
+ # by the serving config. However, if `SearchRequest.ranking_expression` is
86
+ # specified, it overrides the ServingConfig ranking expression.
87
+ #
88
+ # The ranking expression is a single function or multiple functions that are
89
+ # joined by "+".
90
+ #
91
+ # * ranking_expression = function, { " + ", function };
92
+ #
93
+ # Supported functions:
94
+ #
95
+ # * double * relevance_score
96
+ # * double * dotProduct(embedding_field_path)
97
+ #
98
+ # Function variables:
99
+ #
100
+ # * `relevance_score`: pre-defined keywords, used for measure relevance
101
+ # between query and document.
102
+ # * `embedding_field_path`: the document embedding field
103
+ # used with query embedding vector.
104
+ # * `dotProduct`: embedding function between embedding_field_path and query
105
+ # embedding vector.
106
+ #
107
+ # Example ranking expression:
108
+ #
109
+ # If document has an embedding field doc_embedding, the ranking expression
110
+ # could be `0.5 * relevance_score + 0.3 * dotProduct(doc_embedding)`.
111
+ # @!attribute [r] create_time
112
+ # @return [::Google::Protobuf::Timestamp]
113
+ # Output only. ServingConfig created timestamp.
114
+ # @!attribute [r] update_time
115
+ # @return [::Google::Protobuf::Timestamp]
116
+ # Output only. ServingConfig updated timestamp.
117
+ # @!attribute [rw] filter_control_ids
118
+ # @return [::Array<::String>]
119
+ # Filter controls to use in serving path.
120
+ # All triggered filter controls will be applied.
121
+ # Filter controls must be in the same data store as the serving config.
122
+ # Maximum of 20 filter controls.
123
+ # @!attribute [rw] boost_control_ids
124
+ # @return [::Array<::String>]
125
+ # Boost controls to use in serving path.
126
+ # All triggered boost controls will be applied.
127
+ # Boost controls must be in the same data store as the serving config.
128
+ # Maximum of 20 boost controls.
129
+ # @!attribute [rw] redirect_control_ids
130
+ # @return [::Array<::String>]
131
+ # IDs of the redirect controls. Only the first triggered redirect
132
+ # action is applied, even if multiple apply. Maximum number of
133
+ # specifications is 100.
134
+ #
135
+ # Can only be set if
136
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType SolutionType} is
137
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType::SOLUTION_TYPE_SEARCH SOLUTION_TYPE_SEARCH}.
138
+ # @!attribute [rw] synonyms_control_ids
139
+ # @return [::Array<::String>]
140
+ # Condition synonyms specifications. If multiple synonyms conditions
141
+ # match, all matching synonyms controls in the list will execute.
142
+ # Maximum number of specifications is 100.
143
+ #
144
+ # Can only be set if
145
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType SolutionType} is
146
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType::SOLUTION_TYPE_SEARCH SOLUTION_TYPE_SEARCH}.
147
+ # @!attribute [rw] oneway_synonyms_control_ids
148
+ # @return [::Array<::String>]
149
+ # Condition oneway synonyms specifications. If multiple oneway synonyms
150
+ # conditions match, all matching oneway synonyms controls in the list
151
+ # will execute. Maximum number of specifications is 100.
152
+ #
153
+ # Can only be set if
154
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType SolutionType} is
155
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType::SOLUTION_TYPE_SEARCH SOLUTION_TYPE_SEARCH}.
156
+ # @!attribute [rw] dissociate_control_ids
157
+ # @return [::Array<::String>]
158
+ # Condition do not associate specifications. If multiple do not
159
+ # associate conditions match, all matching do not associate controls in
160
+ # the list will execute.
161
+ # Order does not matter.
162
+ # Maximum number of specifications is 100.
163
+ #
164
+ # Can only be set if
165
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType SolutionType} is
166
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType::SOLUTION_TYPE_SEARCH SOLUTION_TYPE_SEARCH}.
167
+ # @!attribute [rw] replacement_control_ids
168
+ # @return [::Array<::String>]
169
+ # Condition replacement specifications.
170
+ # Applied according to the order in the list.
171
+ # A previously replaced term can not be re-replaced.
172
+ # Maximum number of specifications is 100.
173
+ #
174
+ # Can only be set if
175
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType SolutionType} is
176
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType::SOLUTION_TYPE_SEARCH SOLUTION_TYPE_SEARCH}.
177
+ # @!attribute [rw] ignore_control_ids
178
+ # @return [::Array<::String>]
179
+ # Condition ignore specifications. If multiple ignore
180
+ # conditions match, all matching ignore controls in the list will
181
+ # execute.
182
+ # Order does not matter.
183
+ # Maximum number of specifications is 100.
184
+ # @!attribute [rw] promote_control_ids
185
+ # @return [::Array<::String>]
186
+ # Condition promote specifications.
187
+ #
188
+ # Maximum number of specifications is 100.
189
+ class ServingConfig
190
+ include ::Google::Protobuf::MessageExts
191
+ extend ::Google::Protobuf::MessageExts::ClassMethods
192
+
193
+ # Specifies the configurations needed for Media Discovery. Currently we
194
+ # support:
195
+ #
196
+ # * `demote_content_watched`: Threshold for watched content demotion.
197
+ # Customers can specify if using watched content demotion or use viewed
198
+ # detail page. Using the content watched demotion, customers need to specify
199
+ # the watched minutes or percentage exceeds the threshold, the content will
200
+ # be demoted in the recommendation result.
201
+ # * `promote_fresh_content`: cutoff days for fresh content promotion.
202
+ # Customers can specify if using content freshness promotion. If the content
203
+ # was published within the cutoff days, the content will be promoted in the
204
+ # recommendation result.
205
+ # Can only be set if
206
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType SolutionType} is
207
+ # {::Google::Cloud::DiscoveryEngine::V1::SolutionType::SOLUTION_TYPE_RECOMMENDATION SOLUTION_TYPE_RECOMMENDATION}.
208
+ # @!attribute [rw] content_watched_percentage_threshold
209
+ # @return [::Float]
210
+ # Specifies the content watched percentage threshold for demotion.
211
+ # Threshold value must be between [0, 1.0] inclusive.
212
+ #
213
+ # Note: The following fields are mutually exclusive: `content_watched_percentage_threshold`, `content_watched_seconds_threshold`. If a field in that set is populated, all other fields in the set will automatically be cleared.
214
+ # @!attribute [rw] content_watched_seconds_threshold
215
+ # @return [::Float]
216
+ # Specifies the content watched minutes threshold for demotion.
217
+ #
218
+ # Note: The following fields are mutually exclusive: `content_watched_seconds_threshold`, `content_watched_percentage_threshold`. If a field in that set is populated, all other fields in the set will automatically be cleared.
219
+ # @!attribute [rw] demotion_event_type
220
+ # @return [::String]
221
+ # Specifies the event type used for demoting recommendation result.
222
+ # Currently supported values:
223
+ #
224
+ # * `view-item`: Item viewed.
225
+ # * `media-play`: Start/resume watching a video, playing a song, etc.
226
+ # * `media-complete`: Finished or stopped midway through a video, song,
227
+ # etc.
228
+ #
229
+ # If unset, watch history demotion will not be applied. Content freshness
230
+ # demotion will still be applied.
231
+ # @!attribute [rw] demote_content_watched_past_days
232
+ # @return [::Integer]
233
+ # Optional. Specifies the number of days to look back for demoting watched
234
+ # content. If set to zero or unset, defaults to the maximum of 365 days.
235
+ # @!attribute [rw] content_freshness_cutoff_days
236
+ # @return [::Integer]
237
+ # Specifies the content freshness used for recommendation result.
238
+ # Contents will be demoted if contents were published for more than content
239
+ # freshness cutoff days.
240
+ class MediaConfig
241
+ include ::Google::Protobuf::MessageExts
242
+ extend ::Google::Protobuf::MessageExts::ClassMethods
243
+ end
244
+
245
+ # Specifies the configurations needed for Generic Discovery.Currently we
246
+ # support:
247
+ #
248
+ # * `content_search_spec`: configuration for generic content search.
249
+ # @!attribute [rw] content_search_spec
250
+ # @return [::Google::Cloud::DiscoveryEngine::V1::SearchRequest::ContentSearchSpec]
251
+ # Specifies the expected behavior of content search.
252
+ # Only valid for content-search enabled data store.
253
+ class GenericConfig
254
+ include ::Google::Protobuf::MessageExts
255
+ extend ::Google::Protobuf::MessageExts::ClassMethods
256
+ end
257
+ end
258
+ end
259
+ end
260
+ end
261
+ end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 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 DiscoveryEngine
23
+ module V1
24
+ # Request for UpdateServingConfig method.
25
+ # @!attribute [rw] serving_config
26
+ # @return [::Google::Cloud::DiscoveryEngine::V1::ServingConfig]
27
+ # Required. The ServingConfig to update.
28
+ # @!attribute [rw] update_mask
29
+ # @return [::Google::Protobuf::FieldMask]
30
+ # Indicates which fields in the provided
31
+ # {::Google::Cloud::DiscoveryEngine::V1::ServingConfig ServingConfig} to update.
32
+ # The following are NOT supported:
33
+ #
34
+ # * {::Google::Cloud::DiscoveryEngine::V1::ServingConfig#name ServingConfig.name}
35
+ #
36
+ # If not set, all supported fields are updated.
37
+ class UpdateServingConfigRequest
38
+ include ::Google::Protobuf::MessageExts
39
+ extend ::Google::Protobuf::MessageExts::ClassMethods
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -26,6 +26,12 @@ module Google
26
26
  # @return [::String]
27
27
  # Immutable. Fully qualified name
28
28
  # `projects/{project}/locations/global/collections/{collection}/engines/{engine}/sessions/*`
29
+ # @!attribute [rw] display_name
30
+ # @return [::String]
31
+ # Optional. The display name of the session.
32
+ #
33
+ # This field is used to identify the session in the UI.
34
+ # By default, the display name is the first turn query text in the session.
29
35
  # @!attribute [rw] state
30
36
  # @return [::Google::Cloud::DiscoveryEngine::V1::Session::State]
31
37
  # The state of the session.
@@ -41,6 +47,10 @@ module Google
41
47
  # @!attribute [r] end_time
42
48
  # @return [::Google::Protobuf::Timestamp]
43
49
  # Output only. The time the session finished.
50
+ # @!attribute [rw] is_pinned
51
+ # @return [::Boolean]
52
+ # Optional. Whether the session is pinned, pinned session will be displayed
53
+ # on the top of the session list.
44
54
  class Session
45
55
  include ::Google::Protobuf::MessageExts
46
56
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -56,6 +66,14 @@ module Google
56
66
  #
57
67
  # Only set if the answer generation (/answer API call) happened in this
58
68
  # turn.
69
+ # @!attribute [r] detailed_answer
70
+ # @return [::Google::Cloud::DiscoveryEngine::V1::Answer]
71
+ # Output only. In
72
+ # {::Google::Cloud::DiscoveryEngine::V1::ConversationalSearchService::Client#get_session ConversationalSearchService.GetSession}
73
+ # API, if
74
+ # {::Google::Cloud::DiscoveryEngine::V1::GetSessionRequest#include_answer_details GetSessionRequest.include_answer_details}
75
+ # is set to true, this field will be populated when getting answer query
76
+ # session.
59
77
  class Turn
60
78
  include ::Google::Protobuf::MessageExts
61
79
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -48,8 +48,8 @@ module Google
48
48
  # excluded.
49
49
  # @!attribute [rw] exact_match
50
50
  # @return [::Boolean]
51
- # Input only. If set to false, a uri_pattern is generated to include all
52
- # pages whose address contains the provided_uri_pattern. If set to true, an
51
+ # Immutable. If set to false, a uri_pattern is generated to include all pages
52
+ # whose address contains the provided_uri_pattern. If set to true, an
53
53
  # uri_pattern is generated to try to be an exact match of the
54
54
  # provided_uri_pattern or just the specific page if the provided_uri_pattern
55
55
  # is a specific one. provided_uri_pattern is always normalized to
@@ -157,6 +157,23 @@ module Google
157
157
  EXEMPTED = 3
158
158
  end
159
159
  end
160
+
161
+ # A sitemap for the SiteSearchEngine.
162
+ # @!attribute [rw] uri
163
+ # @return [::String]
164
+ # Public URI for the sitemap, e.g. `www.example.com/sitemap.xml`.
165
+ # @!attribute [r] name
166
+ # @return [::String]
167
+ # Output only. The fully qualified resource name of the sitemap.
168
+ # `projects/*/locations/*/collections/*/dataStores/*/siteSearchEngine/sitemaps/*`
169
+ # The `sitemap_id` suffix is system-generated.
170
+ # @!attribute [r] create_time
171
+ # @return [::Google::Protobuf::Timestamp]
172
+ # Output only. The sitemap's creation time.
173
+ class Sitemap
174
+ include ::Google::Protobuf::MessageExts
175
+ extend ::Google::Protobuf::MessageExts::ClassMethods
176
+ end
160
177
  end
161
178
  end
162
179
  end
@@ -256,6 +256,134 @@ module Google
256
256
  extend ::Google::Protobuf::MessageExts::ClassMethods
257
257
  end
258
258
 
259
+ # Request message for
260
+ # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngineService::Client#create_sitemap SiteSearchEngineService.CreateSitemap}
261
+ # method.
262
+ # @!attribute [rw] parent
263
+ # @return [::String]
264
+ # Required. Parent resource name of the
265
+ # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngine SiteSearchEngine}, such
266
+ # as `projects/*/locations/*/collections/*/dataStores/*/siteSearchEngine`.
267
+ # @!attribute [rw] sitemap
268
+ # @return [::Google::Cloud::DiscoveryEngine::V1::Sitemap]
269
+ # Required. The {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap} to create.
270
+ class CreateSitemapRequest
271
+ include ::Google::Protobuf::MessageExts
272
+ extend ::Google::Protobuf::MessageExts::ClassMethods
273
+ end
274
+
275
+ # Request message for
276
+ # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngineService::Client#delete_sitemap SiteSearchEngineService.DeleteSitemap}
277
+ # method.
278
+ # @!attribute [rw] name
279
+ # @return [::String]
280
+ # Required. Full resource name of
281
+ # {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap}, such as
282
+ # `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/siteSearchEngine/sitemaps/{sitemap}`.
283
+ #
284
+ # If the caller does not have permission to access the
285
+ # {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap}, regardless of whether
286
+ # or not it exists, a PERMISSION_DENIED error is returned.
287
+ #
288
+ # If the requested {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap} does
289
+ # not exist, a NOT_FOUND error is returned.
290
+ class DeleteSitemapRequest
291
+ include ::Google::Protobuf::MessageExts
292
+ extend ::Google::Protobuf::MessageExts::ClassMethods
293
+ end
294
+
295
+ # Request message for
296
+ # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngineService::Client#fetch_sitemaps SiteSearchEngineService.FetchSitemaps}
297
+ # method.
298
+ # @!attribute [rw] parent
299
+ # @return [::String]
300
+ # Required. Parent resource name of the
301
+ # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngine SiteSearchEngine}, such
302
+ # as `projects/*/locations/*/collections/*/dataStores/*/siteSearchEngine`.
303
+ # @!attribute [rw] matcher
304
+ # @return [::Google::Cloud::DiscoveryEngine::V1::FetchSitemapsRequest::Matcher]
305
+ # Optional. If specified, fetches the matching
306
+ # {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap}s. If not specified,
307
+ # fetches all {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap}s in the
308
+ # {::Google::Cloud::DiscoveryEngine::V1::DataStore DataStore}.
309
+ class FetchSitemapsRequest
310
+ include ::Google::Protobuf::MessageExts
311
+ extend ::Google::Protobuf::MessageExts::ClassMethods
312
+
313
+ # Matcher for the {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap}s by
314
+ # their uris.
315
+ # @!attribute [rw] uris
316
+ # @return [::Array<::String>]
317
+ # The {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap} uris.
318
+ class UrisMatcher
319
+ include ::Google::Protobuf::MessageExts
320
+ extend ::Google::Protobuf::MessageExts::ClassMethods
321
+ end
322
+
323
+ # Matcher for the {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap}s.
324
+ # Currently only supports uris matcher.
325
+ # @!attribute [rw] uris_matcher
326
+ # @return [::Google::Cloud::DiscoveryEngine::V1::FetchSitemapsRequest::UrisMatcher]
327
+ # Matcher by sitemap URIs.
328
+ class Matcher
329
+ include ::Google::Protobuf::MessageExts
330
+ extend ::Google::Protobuf::MessageExts::ClassMethods
331
+ end
332
+ end
333
+
334
+ # Metadata related to the progress of the
335
+ # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngineService::Client#create_sitemap SiteSearchEngineService.CreateSitemap}
336
+ # operation. This will be returned by the google.longrunning.Operation.metadata
337
+ # field.
338
+ # @!attribute [rw] create_time
339
+ # @return [::Google::Protobuf::Timestamp]
340
+ # Operation create time.
341
+ # @!attribute [rw] update_time
342
+ # @return [::Google::Protobuf::Timestamp]
343
+ # Operation last update time. If the operation is done, this is also the
344
+ # finish time.
345
+ class CreateSitemapMetadata
346
+ include ::Google::Protobuf::MessageExts
347
+ extend ::Google::Protobuf::MessageExts::ClassMethods
348
+ end
349
+
350
+ # Metadata related to the progress of the
351
+ # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngineService::Client#delete_sitemap SiteSearchEngineService.DeleteSitemap}
352
+ # operation. This will be returned by the google.longrunning.Operation.metadata
353
+ # field.
354
+ # @!attribute [rw] create_time
355
+ # @return [::Google::Protobuf::Timestamp]
356
+ # Operation create time.
357
+ # @!attribute [rw] update_time
358
+ # @return [::Google::Protobuf::Timestamp]
359
+ # Operation last update time. If the operation is done, this is also the
360
+ # finish time.
361
+ class DeleteSitemapMetadata
362
+ include ::Google::Protobuf::MessageExts
363
+ extend ::Google::Protobuf::MessageExts::ClassMethods
364
+ end
365
+
366
+ # Response message for
367
+ # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngineService::Client#fetch_sitemaps SiteSearchEngineService.FetchSitemaps}
368
+ # method.
369
+ # @!attribute [rw] sitemaps_metadata
370
+ # @return [::Array<::Google::Cloud::DiscoveryEngine::V1::FetchSitemapsResponse::SitemapMetadata>]
371
+ # List of {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap}s fetched.
372
+ class FetchSitemapsResponse
373
+ include ::Google::Protobuf::MessageExts
374
+ extend ::Google::Protobuf::MessageExts::ClassMethods
375
+
376
+ # Contains a {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap} and its
377
+ # metadata.
378
+ # @!attribute [rw] sitemap
379
+ # @return [::Google::Cloud::DiscoveryEngine::V1::Sitemap]
380
+ # The {::Google::Cloud::DiscoveryEngine::V1::Sitemap Sitemap}.
381
+ class SitemapMetadata
382
+ include ::Google::Protobuf::MessageExts
383
+ extend ::Google::Protobuf::MessageExts::ClassMethods
384
+ end
385
+ end
386
+
259
387
  # Request message for
260
388
  # {::Google::Cloud::DiscoveryEngine::V1::SiteSearchEngineService::Client#enable_advanced_site_search SiteSearchEngineService.EnableAdvancedSiteSearch}
261
389
  # method.
@@ -348,9 +476,7 @@ module Google
348
476
  # `site_search_engine`.
349
477
  # @!attribute [rw] site_credential
350
478
  # @return [::String]
351
- # Optional. Full resource name of the [SiteCredential][], such as
352
- # `projects/*/locations/*/collections/*/dataStores/*/siteSearchEngine/siteCredentials/*`.
353
- # Only set to crawl private URIs.
479
+ # Optional. Credential id to use for crawling.
354
480
  class RecrawlUrisRequest
355
481
  include ::Google::Protobuf::MessageExts
356
482
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -421,9 +547,25 @@ module Google
421
547
  # finish time.
422
548
  # @!attribute [rw] invalid_uris
423
549
  # @return [::Array<::String>]
550
+ # Unique URIs in the request that have invalid format. Sample limited to
551
+ # 1000.
552
+ # @!attribute [rw] invalid_uris_count
553
+ # @return [::Integer]
554
+ # Total number of unique URIs in the request that have invalid format.
555
+ # @!attribute [rw] noindex_uris
556
+ # @return [::Array<::String>]
557
+ # URIs that have no index meta tag. Sample limited to 1000.
558
+ # @!attribute [rw] noindex_uris_count
559
+ # @return [::Integer]
560
+ # Total number of URIs that have no index meta tag.
561
+ # @!attribute [rw] uris_not_matching_target_sites
562
+ # @return [::Array<::String>]
424
563
  # Unique URIs in the request that don't match any TargetSite in the
425
564
  # DataStore, only match TargetSites that haven't been fully indexed, or match
426
- # a TargetSite with type EXCLUDE.
565
+ # a TargetSite with type EXCLUDE. Sample limited to 1000.
566
+ # @!attribute [rw] uris_not_matching_target_sites_count
567
+ # @return [::Integer]
568
+ # Total number of URIs that don't match any TargetSites.
427
569
  # @!attribute [rw] valid_uris_count
428
570
  # @return [::Integer]
429
571
  # Total number of unique URIs in the request that are not in invalid_uris.
@@ -34,6 +34,7 @@ module Google
34
34
  # * `view-item-list`: View of a panel or ordered list of Documents.
35
35
  # * `view-home-page`: View of the home page.
36
36
  # * `view-category-page`: View of a category page, e.g. Home > Men > Jeans
37
+ # * `add-feedback`: Add a user feedback.
37
38
  #
38
39
  # Retail-related values:
39
40
  #
@@ -44,6 +45,23 @@ module Google
44
45
  #
45
46
  # * `media-play`: Start/resume watching a video, playing a song, etc.
46
47
  # * `media-complete`: Finished or stopped midway through a video, song, etc.
48
+ #
49
+ # Custom conversion value:
50
+ #
51
+ # * `conversion`: Customer defined conversion event.
52
+ # @!attribute [rw] conversion_type
53
+ # @return [::String]
54
+ # Optional. Conversion type.
55
+ #
56
+ # Required if
57
+ # {::Google::Cloud::DiscoveryEngine::V1::UserEvent#event_type UserEvent.event_type}
58
+ # is `conversion`. This is a customer-defined conversion name in lowercase
59
+ # letters or numbers separated by "-", such as "watch", "good-visit" etc.
60
+ #
61
+ # Do not set the field if
62
+ # {::Google::Cloud::DiscoveryEngine::V1::UserEvent#event_type UserEvent.event_type}
63
+ # is not `conversion`. This mixes the custom conversion event with predefined
64
+ # events like `search`, `view-item` etc.
47
65
  # @!attribute [rw] user_pseudo_id
48
66
  # @return [::String]
49
67
  # Required. A unique identifier for tracking visitors.
@@ -244,6 +262,10 @@ module Google
244
262
  # @!attribute [rw] media_info
245
263
  # @return [::Google::Cloud::DiscoveryEngine::V1::MediaInfo]
246
264
  # Media-specific info.
265
+ # @!attribute [rw] panels
266
+ # @return [::Array<::Google::Cloud::DiscoveryEngine::V1::PanelInfo>]
267
+ # Optional. List of panels associated with this event.
268
+ # Used for page-level impression data.
247
269
  class UserEvent
248
270
  include ::Google::Protobuf::MessageExts
249
271
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -457,6 +479,15 @@ module Google
457
479
  # @return [::Boolean]
458
480
  # Output only. Whether the referenced Document can be found in the data
459
481
  # store.
482
+ # @!attribute [rw] conversion_value
483
+ # @return [::Float]
484
+ # Optional. The conversion value associated with this Document.
485
+ # Must be set if
486
+ # {::Google::Cloud::DiscoveryEngine::V1::UserEvent#event_type UserEvent.event_type}
487
+ # is "conversion".
488
+ #
489
+ # For example, a value of 1000 signifies that 1000 seconds were spent viewing
490
+ # a Document for the `watch` conversion type.
460
491
  class DocumentInfo
461
492
  include ::Google::Protobuf::MessageExts
462
493
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -481,6 +512,9 @@ module Google
481
512
  # Must be set if
482
513
  # {::Google::Cloud::DiscoveryEngine::V1::PanelInfo#panel_position panel_position}
483
514
  # is set.
515
+ # @!attribute [rw] documents
516
+ # @return [::Array<::Google::Cloud::DiscoveryEngine::V1::DocumentInfo>]
517
+ # Optional. The document IDs associated with this panel.
484
518
  class PanelInfo
485
519
  include ::Google::Protobuf::MessageExts
486
520
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -29,9 +29,9 @@ module Google
29
29
  # {::Google::Cloud::DiscoveryEngine::V1::DataStore DataStore} level, the format
30
30
  # is:
31
31
  # `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}`.
32
- # If the write user event action is applied in [Location][] level, for
33
- # example, the event with
34
- # {::Google::Cloud::DiscoveryEngine::V1::Document Document} across multiple
32
+ # If the write user event action is applied in
33
+ # `::Google::Cloud::Location::Location` level, for example, the event
34
+ # with {::Google::Cloud::DiscoveryEngine::V1::Document Document} across multiple
35
35
  # {::Google::Cloud::DiscoveryEngine::V1::DataStore DataStore}, the format is:
36
36
  # `projects/{project}/locations/{location}`.
37
37
  # @!attribute [rw] user_event
@@ -49,8 +49,16 @@ module Google
49
49
  # Request message for CollectUserEvent method.
50
50
  # @!attribute [rw] parent
51
51
  # @return [::String]
52
- # Required. The parent DataStore resource name, such as
52
+ # Required. The parent resource name.
53
+ # If the collect user event action is applied in
54
+ # {::Google::Cloud::DiscoveryEngine::V1::DataStore DataStore} level, the format
55
+ # is:
53
56
  # `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}`.
57
+ # If the collect user event action is applied in
58
+ # `::Google::Cloud::Location::Location` level, for example, the event
59
+ # with {::Google::Cloud::DiscoveryEngine::V1::Document Document} across multiple
60
+ # {::Google::Cloud::DiscoveryEngine::V1::DataStore DataStore}, the format is:
61
+ # `projects/{project}/locations/{location}`.
54
62
  # @!attribute [rw] user_event
55
63
  # @return [::String]
56
64
  # Required. URL encoded UserEvent proto with a length limit of 2,000,000