google-cloud-gemini_data_analytics-v1beta 0.a → 0.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 (62) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +154 -8
  5. data/lib/google/cloud/gemini_data_analytics/v1beta/bindings_override.rb +75 -0
  6. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service/client.rb +1286 -0
  7. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service/credentials.rb +47 -0
  8. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service/operations.rb +813 -0
  9. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service/paths.rb +69 -0
  10. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service/rest/client.rb +1212 -0
  11. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service/rest/operations.rb +914 -0
  12. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service/rest/service_stub.rb +573 -0
  13. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service/rest.rb +54 -0
  14. data/lib/google/cloud/gemini_data_analytics/v1beta/data_agent_service.rb +56 -0
  15. data/lib/google/cloud/gemini_data_analytics/v1beta/data_chat_service/client.rb +928 -0
  16. data/lib/google/cloud/gemini_data_analytics/v1beta/data_chat_service/credentials.rb +47 -0
  17. data/lib/google/cloud/gemini_data_analytics/v1beta/data_chat_service/paths.rb +102 -0
  18. data/lib/google/cloud/gemini_data_analytics/v1beta/data_chat_service/rest/client.rb +877 -0
  19. data/lib/google/cloud/gemini_data_analytics/v1beta/data_chat_service/rest/service_stub.rb +382 -0
  20. data/lib/google/cloud/gemini_data_analytics/v1beta/data_chat_service/rest.rb +55 -0
  21. data/lib/google/cloud/gemini_data_analytics/v1beta/data_chat_service.rb +57 -0
  22. data/lib/google/cloud/gemini_data_analytics/v1beta/rest.rb +39 -0
  23. data/lib/google/cloud/gemini_data_analytics/v1beta/version.rb +7 -2
  24. data/lib/google/cloud/gemini_data_analytics/v1beta.rb +46 -0
  25. data/lib/google/cloud/geminidataanalytics/v1beta/context_pb.rb +54 -0
  26. data/lib/google/cloud/geminidataanalytics/v1beta/conversation_pb.rb +52 -0
  27. data/lib/google/cloud/geminidataanalytics/v1beta/credentials_pb.rb +47 -0
  28. data/lib/google/cloud/geminidataanalytics/v1beta/data_agent_pb.rb +49 -0
  29. data/lib/google/cloud/geminidataanalytics/v1beta/data_agent_service_pb.rb +67 -0
  30. data/lib/google/cloud/geminidataanalytics/v1beta/data_agent_service_services_pb.rb +60 -0
  31. data/lib/google/cloud/geminidataanalytics/v1beta/data_analytics_agent_pb.rb +46 -0
  32. data/lib/google/cloud/geminidataanalytics/v1beta/data_chat_service_pb.rb +85 -0
  33. data/lib/google/cloud/geminidataanalytics/v1beta/data_chat_service_services_pb.rb +57 -0
  34. data/lib/google/cloud/geminidataanalytics/v1beta/datasource_pb.rb +58 -0
  35. data/lib/google-cloud-gemini_data_analytics-v1beta.rb +21 -0
  36. data/proto_docs/README.md +4 -0
  37. data/proto_docs/google/api/client.rb +473 -0
  38. data/proto_docs/google/api/field_behavior.rb +85 -0
  39. data/proto_docs/google/api/field_info.rb +88 -0
  40. data/proto_docs/google/api/launch_stage.rb +71 -0
  41. data/proto_docs/google/api/resource.rb +227 -0
  42. data/proto_docs/google/cloud/geminidataanalytics/v1beta/context.rb +136 -0
  43. data/proto_docs/google/cloud/geminidataanalytics/v1beta/conversation.rb +144 -0
  44. data/proto_docs/google/cloud/geminidataanalytics/v1beta/credentials.rb +74 -0
  45. data/proto_docs/google/cloud/geminidataanalytics/v1beta/data_agent.rb +90 -0
  46. data/proto_docs/google/cloud/geminidataanalytics/v1beta/data_agent_service.rb +267 -0
  47. data/proto_docs/google/cloud/geminidataanalytics/v1beta/data_analytics_agent.rb +46 -0
  48. data/proto_docs/google/cloud/geminidataanalytics/v1beta/data_chat_service.rb +576 -0
  49. data/proto_docs/google/cloud/geminidataanalytics/v1beta/datasource.rb +280 -0
  50. data/proto_docs/google/iam/v1/iam_policy.rb +87 -0
  51. data/proto_docs/google/iam/v1/options.rb +50 -0
  52. data/proto_docs/google/iam/v1/policy.rb +426 -0
  53. data/proto_docs/google/longrunning/operations.rb +173 -0
  54. data/proto_docs/google/protobuf/any.rb +145 -0
  55. data/proto_docs/google/protobuf/duration.rb +98 -0
  56. data/proto_docs/google/protobuf/empty.rb +34 -0
  57. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  58. data/proto_docs/google/protobuf/struct.rb +108 -0
  59. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  60. data/proto_docs/google/rpc/status.rb +48 -0
  61. data/proto_docs/google/type/expr.rb +75 -0
  62. metadata +123 -9
@@ -0,0 +1,576 @@
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 GeminiDataAnalytics
23
+ module V1beta
24
+ # Request for listing chat messages based on parent and conversation_id.
25
+ # @!attribute [rw] parent
26
+ # @return [::String]
27
+ # Required. The conversation to list messages under.
28
+ # Format:
29
+ # `projects/{project}/locations/{location}/conversations/{conversation_id}`
30
+ # @!attribute [rw] page_size
31
+ # @return [::Integer]
32
+ # Optional. Requested page size. Server may return fewer items than
33
+ # requested. The max page size is 100. All larger page sizes will be coerced
34
+ # to 100. If unspecified, server will pick 50 as an approperiate default.
35
+ # @!attribute [rw] page_token
36
+ # @return [::String]
37
+ # Optional. A token identifying a page of results the server should return.
38
+ # @!attribute [rw] filter
39
+ # @return [::String]
40
+ # Optional. Filtering results. See [AIP-160](https://google.aip.dev/160) for
41
+ # syntax.
42
+ #
43
+ # ListMessages allows filtering by:
44
+ # * create_time (e.g., `createTime > "2025-01-28T06:51:56-08:00"`)
45
+ # * update_time
46
+ class ListMessagesRequest
47
+ include ::Google::Protobuf::MessageExts
48
+ extend ::Google::Protobuf::MessageExts::ClassMethods
49
+ end
50
+
51
+ # Response for listing chat messages.
52
+ # @!attribute [rw] messages
53
+ # @return [::Array<::Google::Cloud::GeminiDataAnalytics::V1beta::StorageMessage>]
54
+ # The list of chat messages.
55
+ # @!attribute [rw] next_page_token
56
+ # @return [::String]
57
+ # A token identifying a page of results the server should return.
58
+ class ListMessagesResponse
59
+ include ::Google::Protobuf::MessageExts
60
+ extend ::Google::Protobuf::MessageExts::ClassMethods
61
+ end
62
+
63
+ # A stored message containing user message or system message.
64
+ # @!attribute [rw] message_id
65
+ # @return [::String]
66
+ # The unique resource name of a chat message.
67
+ # @!attribute [rw] message
68
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::Message]
69
+ # The message content.
70
+ class StorageMessage
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+
75
+ # Request for Chat.
76
+ # @!attribute [rw] inline_context
77
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::Context]
78
+ # Optional. Inline context for the chat request. Use this to chat
79
+ # statelessly (without managed conversation persistence and without an
80
+ # Agent) by passing all context inline.
81
+ #
82
+ # Note: The following fields are mutually exclusive: `inline_context`, `conversation_reference`, `data_agent_context`. If a field in that set is populated, all other fields in the set will automatically be cleared.
83
+ # @!attribute [rw] conversation_reference
84
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::ConversationReference]
85
+ # Optional. Reference to a persisted conversation and agent context.
86
+ # Use this to chat with an Agent using managed conversation persistence.
87
+ #
88
+ # Note: The following fields are mutually exclusive: `conversation_reference`, `inline_context`, `data_agent_context`. If a field in that set is populated, all other fields in the set will automatically be cleared.
89
+ # @!attribute [rw] data_agent_context
90
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::DataAgentContext]
91
+ # Optional. Context for the chat request. Use this to chat with an Agent
92
+ # statelessly, without managed conversation persistence.
93
+ #
94
+ # Note: The following fields are mutually exclusive: `data_agent_context`, `inline_context`, `conversation_reference`. If a field in that set is populated, all other fields in the set will automatically be cleared.
95
+ # @!attribute [rw] project
96
+ # @deprecated This field is deprecated and may be removed in the next major version update.
97
+ # @return [::String]
98
+ # Optional. The Google Cloud project to be used for quota and billing.
99
+ # @!attribute [rw] parent
100
+ # @return [::String]
101
+ # Required. The parent value for chat request.
102
+ # Pattern: `projects/{project}/locations/{location}`
103
+ # @!attribute [rw] messages
104
+ # @return [::Array<::Google::Cloud::GeminiDataAnalytics::V1beta::Message>]
105
+ # Required. Content of current conversation.
106
+ class ChatRequest
107
+ include ::Google::Protobuf::MessageExts
108
+ extend ::Google::Protobuf::MessageExts::ClassMethods
109
+ end
110
+
111
+ # Context for the chat request using a data agent.
112
+ # @!attribute [rw] data_agent
113
+ # @return [::String]
114
+ # Required. The name of the data agent resource.
115
+ # @!attribute [rw] credentials
116
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::Credentials]
117
+ # Optional. The credentials to use when calling the Looker data source.
118
+ #
119
+ # Currently supports both OAuth token and API key-based credentials, as
120
+ # described in
121
+ # [Authentication with an
122
+ # SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
123
+ # @!attribute [rw] context_version
124
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::DataAgentContext::ContextVersion]
125
+ # Optional. Version of context to be used by DCS (e.g. STAGING, PUBLISHED)
126
+ class DataAgentContext
127
+ include ::Google::Protobuf::MessageExts
128
+ extend ::Google::Protobuf::MessageExts::ClassMethods
129
+
130
+ # List of context versions supported by DCS.
131
+ # There are two versions of context. This is to maintain versioning for the
132
+ # data agent.
133
+ module ContextVersion
134
+ # Unspecified or unrecognized.
135
+ CONTEXT_VERSION_UNSPECIFIED = 0
136
+
137
+ # Using this version, DCS will use the latest staging context for the
138
+ # data agent.
139
+ STAGING = 1
140
+
141
+ # Using this version, DCS will use the latest published context for the
142
+ # data agent.
143
+ PUBLISHED = 2
144
+ end
145
+ end
146
+
147
+ # Reference to a persisted conversation and agent context.
148
+ # @!attribute [rw] conversation
149
+ # @return [::String]
150
+ # Required. Name of the conversation resource.
151
+ # Format:
152
+ # `projects/{project}/locations/{location}/conversations/{conversation_id}`
153
+ # @!attribute [rw] data_agent_context
154
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::DataAgentContext]
155
+ # Required. Context for the chat request using a data agent.
156
+ class ConversationReference
157
+ include ::Google::Protobuf::MessageExts
158
+ extend ::Google::Protobuf::MessageExts::ClassMethods
159
+ end
160
+
161
+ # A message from an interaction between the user and the system.
162
+ # @!attribute [rw] user_message
163
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::UserMessage]
164
+ # A message from the user that is interacting with the system.
165
+ #
166
+ # Note: The following fields are mutually exclusive: `user_message`, `system_message`. If a field in that set is populated, all other fields in the set will automatically be cleared.
167
+ # @!attribute [rw] system_message
168
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::SystemMessage]
169
+ # A message from the system in response to the user.
170
+ #
171
+ # Note: The following fields are mutually exclusive: `system_message`, `user_message`. If a field in that set is populated, all other fields in the set will automatically be cleared.
172
+ # @!attribute [r] timestamp
173
+ # @return [::Google::Protobuf::Timestamp]
174
+ # Output only. For user messages, this is the time at which the system
175
+ # received the message. For system messages, this is the time at which the
176
+ # system generated the message.
177
+ # @!attribute [rw] message_id
178
+ # @return [::String]
179
+ # Optional. unique id of the message in the conversation for persistence.
180
+ class Message
181
+ include ::Google::Protobuf::MessageExts
182
+ extend ::Google::Protobuf::MessageExts::ClassMethods
183
+ end
184
+
185
+ # A message from the user that is interacting with the system.
186
+ # @!attribute [rw] text
187
+ # @return [::String]
188
+ # Text should use this field instead of blob.
189
+ class UserMessage
190
+ include ::Google::Protobuf::MessageExts
191
+ extend ::Google::Protobuf::MessageExts::ClassMethods
192
+ end
193
+
194
+ # A message from the system in response to the user. This message can also be a
195
+ # message from the user as historical context for multiturn conversations with
196
+ # the system.
197
+ # @!attribute [rw] text
198
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::TextMessage]
199
+ # A direct natural language response to the user message.
200
+ #
201
+ # Note: The following fields are mutually exclusive: `text`, `schema`, `data`, `analysis`, `chart`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
202
+ # @!attribute [rw] schema
203
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::SchemaMessage]
204
+ # A message produced during schema resolution.
205
+ #
206
+ # Note: The following fields are mutually exclusive: `schema`, `text`, `data`, `analysis`, `chart`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
207
+ # @!attribute [rw] data
208
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::DataMessage]
209
+ # A message produced during data retrieval.
210
+ #
211
+ # Note: The following fields are mutually exclusive: `data`, `text`, `schema`, `analysis`, `chart`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
212
+ # @!attribute [rw] analysis
213
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::AnalysisMessage]
214
+ # A message produced during analysis.
215
+ #
216
+ # Note: The following fields are mutually exclusive: `analysis`, `text`, `schema`, `data`, `chart`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
217
+ # @!attribute [rw] chart
218
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::ChartMessage]
219
+ # A message produced during chart generation.
220
+ #
221
+ # Note: The following fields are mutually exclusive: `chart`, `text`, `schema`, `data`, `analysis`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
222
+ # @!attribute [rw] error
223
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::ErrorMessage]
224
+ # An error message.
225
+ #
226
+ # Note: The following fields are mutually exclusive: `error`, `text`, `schema`, `data`, `analysis`, `chart`. If a field in that set is populated, all other fields in the set will automatically be cleared.
227
+ # @!attribute [rw] group_id
228
+ # @return [::Integer]
229
+ # Identifies the group that the event belongs to. Similar events are deemed
230
+ # to be logically relevant to each other and should be shown together in
231
+ # the UI.
232
+ class SystemMessage
233
+ include ::Google::Protobuf::MessageExts
234
+ extend ::Google::Protobuf::MessageExts::ClassMethods
235
+ end
236
+
237
+ # A multi-part text message.
238
+ # @!attribute [rw] parts
239
+ # @return [::Array<::String>]
240
+ # Optional. The parts of the message.
241
+ class TextMessage
242
+ include ::Google::Protobuf::MessageExts
243
+ extend ::Google::Protobuf::MessageExts::ClassMethods
244
+ end
245
+
246
+ # A message produced during schema resolution.
247
+ # @!attribute [rw] query
248
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::SchemaQuery]
249
+ # A schema resolution query.
250
+ #
251
+ # Note: The following fields are mutually exclusive: `query`, `result`. If a field in that set is populated, all other fields in the set will automatically be cleared.
252
+ # @!attribute [rw] result
253
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::SchemaResult]
254
+ # The result of a schema resolution query.
255
+ #
256
+ # Note: The following fields are mutually exclusive: `result`, `query`. If a field in that set is populated, all other fields in the set will automatically be cleared.
257
+ class SchemaMessage
258
+ include ::Google::Protobuf::MessageExts
259
+ extend ::Google::Protobuf::MessageExts::ClassMethods
260
+ end
261
+
262
+ # A query for resolving the schema relevant to the posed question.
263
+ # @!attribute [rw] question
264
+ # @return [::String]
265
+ # Optional. The question to send to the system for schema resolution.
266
+ class SchemaQuery
267
+ include ::Google::Protobuf::MessageExts
268
+ extend ::Google::Protobuf::MessageExts::ClassMethods
269
+ end
270
+
271
+ # The result of schema resolution.
272
+ # @!attribute [rw] datasources
273
+ # @return [::Array<::Google::Cloud::GeminiDataAnalytics::V1beta::Datasource>]
274
+ # Optional. The datasources used to resolve the schema query.
275
+ class SchemaResult
276
+ include ::Google::Protobuf::MessageExts
277
+ extend ::Google::Protobuf::MessageExts::ClassMethods
278
+ end
279
+
280
+ # A message produced during data retrieval.
281
+ # @!attribute [rw] query
282
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::DataQuery]
283
+ # A data retrieval query.
284
+ #
285
+ # Note: The following fields are mutually exclusive: `query`, `generated_sql`, `result`, `generated_looker_query`, `big_query_job`. If a field in that set is populated, all other fields in the set will automatically be cleared.
286
+ # @!attribute [rw] generated_sql
287
+ # @return [::String]
288
+ # SQL generated by the system to retrieve data.
289
+ #
290
+ # Note: The following fields are mutually exclusive: `generated_sql`, `query`, `result`, `generated_looker_query`, `big_query_job`. If a field in that set is populated, all other fields in the set will automatically be cleared.
291
+ # @!attribute [rw] result
292
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::DataResult]
293
+ # Retrieved data.
294
+ #
295
+ # Note: The following fields are mutually exclusive: `result`, `query`, `generated_sql`, `generated_looker_query`, `big_query_job`. If a field in that set is populated, all other fields in the set will automatically be cleared.
296
+ # @!attribute [rw] generated_looker_query
297
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::LookerQuery]
298
+ # Looker Query generated by the system to retrieve data.
299
+ #
300
+ # Note: The following fields are mutually exclusive: `generated_looker_query`, `query`, `generated_sql`, `result`, `big_query_job`. If a field in that set is populated, all other fields in the set will automatically be cleared.
301
+ # @!attribute [rw] big_query_job
302
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::BigQueryJob]
303
+ # A BigQuery job executed by the system to retrieve data.
304
+ #
305
+ # Note: The following fields are mutually exclusive: `big_query_job`, `query`, `generated_sql`, `result`, `generated_looker_query`. If a field in that set is populated, all other fields in the set will automatically be cleared.
306
+ class DataMessage
307
+ include ::Google::Protobuf::MessageExts
308
+ extend ::Google::Protobuf::MessageExts::ClassMethods
309
+ end
310
+
311
+ # A query for retrieving data from a Looker Explore. See
312
+ # [Run Inline
313
+ # Query](https://cloud.google.com/looker/docs/reference/looker-api/latest/methods/Query/run_inline_query).
314
+ # @!attribute [rw] model
315
+ # @return [::String]
316
+ # Required. The LookML model used to generate the query.
317
+ # @!attribute [rw] explore
318
+ # @return [::String]
319
+ # Required. The LookML Explore used to generate the query.
320
+ # @!attribute [rw] fields
321
+ # @return [::Array<::String>]
322
+ # Optional. The fields to retrieve from the Explore.
323
+ # @!attribute [rw] filters
324
+ # @return [::Array<::Google::Cloud::GeminiDataAnalytics::V1beta::LookerQuery::Filter>]
325
+ # Optional. The filters to apply to the Explore.
326
+ # @!attribute [rw] sorts
327
+ # @return [::Array<::String>]
328
+ # Optional. The sorts to apply to the Explore.
329
+ # @!attribute [rw] limit
330
+ # @return [::String]
331
+ # Optional. Limit in the query.
332
+ class LookerQuery
333
+ include ::Google::Protobuf::MessageExts
334
+ extend ::Google::Protobuf::MessageExts::ClassMethods
335
+
336
+ # A Looker query filter.
337
+ # @!attribute [rw] field
338
+ # @return [::String]
339
+ # Required. The field to filter on.
340
+ # @!attribute [rw] value
341
+ # @return [::String]
342
+ # Required. The value f field to filter on.
343
+ class Filter
344
+ include ::Google::Protobuf::MessageExts
345
+ extend ::Google::Protobuf::MessageExts::ClassMethods
346
+ end
347
+ end
348
+
349
+ # A query for retrieving data.
350
+ # @!attribute [rw] question
351
+ # @return [::String]
352
+ # Optional. A natural language question to answer.
353
+ # @!attribute [rw] name
354
+ # @return [::String]
355
+ # Optional. A snake-case name for the query that reflects its intent. It is
356
+ # used to name the corresponding data result, so that it can be referenced in
357
+ # later steps.
358
+ #
359
+ # * Example: "total_sales_by_product"
360
+ # * Example: "sales_for_product_12345"
361
+ # @!attribute [rw] datasources
362
+ # @return [::Array<::Google::Cloud::GeminiDataAnalytics::V1beta::Datasource>]
363
+ # Optional. The datasources available to answer the question.
364
+ class DataQuery
365
+ include ::Google::Protobuf::MessageExts
366
+ extend ::Google::Protobuf::MessageExts::ClassMethods
367
+ end
368
+
369
+ # Retrieved data.
370
+ # @!attribute [rw] name
371
+ # @return [::String]
372
+ # Optional. A snake-case name for the data result that reflects its contents.
373
+ # The name is used to pass the result around by reference, and serves as a
374
+ # signal about its meaning.
375
+ #
376
+ # * Example: "total_sales_by_product"
377
+ # * Example: "sales_for_product_12345"
378
+ # @!attribute [rw] schema
379
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::Schema]
380
+ # Optional. The schema of the data.
381
+ # @!attribute [rw] data
382
+ # @return [::Array<::Google::Protobuf::Struct>]
383
+ # Optional. The content of the data. Each row is a struct that matches the
384
+ # schema. Simple values are represented as strings, while nested structures
385
+ # are represented as lists or structs.
386
+ class DataResult
387
+ include ::Google::Protobuf::MessageExts
388
+ extend ::Google::Protobuf::MessageExts::ClassMethods
389
+ end
390
+
391
+ # A BigQuery job executed by the system.
392
+ # @!attribute [rw] project_id
393
+ # @return [::String]
394
+ # Required. The project that the job belongs to.
395
+ #
396
+ # See
397
+ # [JobReference](https://cloud.google.com/bigquery/docs/reference/rest/v2/JobReference).
398
+ # @!attribute [rw] job_id
399
+ # @return [::String]
400
+ # Required. The ID of the job.
401
+ #
402
+ # See
403
+ # [JobReference](https://cloud.google.com/bigquery/docs/reference/rest/v2/JobReference).
404
+ # @!attribute [rw] location
405
+ # @return [::String]
406
+ # Optional. The location of the job.
407
+ #
408
+ # See
409
+ # [JobReference](https://cloud.google.com/bigquery/docs/reference/rest/v2/JobReference).
410
+ # @!attribute [rw] destination_table
411
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::BigQueryTableReference]
412
+ # Optional. A reference to the destination table of the job's query results.
413
+ #
414
+ # See
415
+ # [JobConfigurationQuery](https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#jobconfigurationquery).
416
+ # @!attribute [rw] schema
417
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::Schema]
418
+ # Optional. The schema of the job's query results.
419
+ #
420
+ # See
421
+ # [JobStatistics2](https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#jobstatistics2).
422
+ class BigQueryJob
423
+ include ::Google::Protobuf::MessageExts
424
+ extend ::Google::Protobuf::MessageExts::ClassMethods
425
+ end
426
+
427
+ # A message produced during analysis.
428
+ # @!attribute [rw] query
429
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::AnalysisQuery]
430
+ # An analysis query.
431
+ #
432
+ # Note: The following fields are mutually exclusive: `query`, `progress_event`. If a field in that set is populated, all other fields in the set will automatically be cleared.
433
+ # @!attribute [rw] progress_event
434
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::AnalysisEvent]
435
+ # An event indicating the progress of the analysis.
436
+ #
437
+ # Note: The following fields are mutually exclusive: `progress_event`, `query`. If a field in that set is populated, all other fields in the set will automatically be cleared.
438
+ class AnalysisMessage
439
+ include ::Google::Protobuf::MessageExts
440
+ extend ::Google::Protobuf::MessageExts::ClassMethods
441
+ end
442
+
443
+ # A query for performing an analysis.
444
+ # @!attribute [rw] question
445
+ # @return [::String]
446
+ # Optional. An analysis question to help answer the user's original question.
447
+ # @!attribute [rw] data_result_names
448
+ # @return [::Array<::String>]
449
+ # Optional. The names of previously retrieved data results to analyze.
450
+ class AnalysisQuery
451
+ include ::Google::Protobuf::MessageExts
452
+ extend ::Google::Protobuf::MessageExts::ClassMethods
453
+ end
454
+
455
+ # An event indicating the progress of an analysis.
456
+ # @!attribute [rw] planner_reasoning
457
+ # @return [::String]
458
+ # Python codegen planner's reasoning.
459
+ #
460
+ # Note: The following fields are mutually exclusive: `planner_reasoning`, `coder_instruction`, `code`, `execution_output`, `execution_error`, `result_vega_chart_json`, `result_natural_language`, `result_csv_data`, `result_reference_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
461
+ # @!attribute [rw] coder_instruction
462
+ # @return [::String]
463
+ # Instructions issued for code generation.
464
+ #
465
+ # Note: The following fields are mutually exclusive: `coder_instruction`, `planner_reasoning`, `code`, `execution_output`, `execution_error`, `result_vega_chart_json`, `result_natural_language`, `result_csv_data`, `result_reference_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
466
+ # @!attribute [rw] code
467
+ # @return [::String]
468
+ # Generated code.
469
+ #
470
+ # Note: The following fields are mutually exclusive: `code`, `planner_reasoning`, `coder_instruction`, `execution_output`, `execution_error`, `result_vega_chart_json`, `result_natural_language`, `result_csv_data`, `result_reference_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
471
+ # @!attribute [rw] execution_output
472
+ # @return [::String]
473
+ # Output from code execution.
474
+ #
475
+ # Note: The following fields are mutually exclusive: `execution_output`, `planner_reasoning`, `coder_instruction`, `code`, `execution_error`, `result_vega_chart_json`, `result_natural_language`, `result_csv_data`, `result_reference_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
476
+ # @!attribute [rw] execution_error
477
+ # @return [::String]
478
+ # An error from code execution.
479
+ #
480
+ # Note: The following fields are mutually exclusive: `execution_error`, `planner_reasoning`, `coder_instruction`, `code`, `execution_output`, `result_vega_chart_json`, `result_natural_language`, `result_csv_data`, `result_reference_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
481
+ # @!attribute [rw] result_vega_chart_json
482
+ # @return [::String]
483
+ # Result as Vega chart JSON string.
484
+ #
485
+ # Note: The following fields are mutually exclusive: `result_vega_chart_json`, `planner_reasoning`, `coder_instruction`, `code`, `execution_output`, `execution_error`, `result_natural_language`, `result_csv_data`, `result_reference_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
486
+ # @!attribute [rw] result_natural_language
487
+ # @return [::String]
488
+ # Result as NL string.
489
+ #
490
+ # Note: The following fields are mutually exclusive: `result_natural_language`, `planner_reasoning`, `coder_instruction`, `code`, `execution_output`, `execution_error`, `result_vega_chart_json`, `result_csv_data`, `result_reference_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
491
+ # @!attribute [rw] result_csv_data
492
+ # @return [::String]
493
+ # Result as CSV string.
494
+ #
495
+ # Note: The following fields are mutually exclusive: `result_csv_data`, `planner_reasoning`, `coder_instruction`, `code`, `execution_output`, `execution_error`, `result_vega_chart_json`, `result_natural_language`, `result_reference_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
496
+ # @!attribute [rw] result_reference_data
497
+ # @return [::String]
498
+ # Result as a reference to a data source.
499
+ #
500
+ # Note: The following fields are mutually exclusive: `result_reference_data`, `planner_reasoning`, `coder_instruction`, `code`, `execution_output`, `execution_error`, `result_vega_chart_json`, `result_natural_language`, `result_csv_data`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
501
+ # @!attribute [rw] error
502
+ # @return [::String]
503
+ # A generic error message.
504
+ #
505
+ # Note: The following fields are mutually exclusive: `error`, `planner_reasoning`, `coder_instruction`, `code`, `execution_output`, `execution_error`, `result_vega_chart_json`, `result_natural_language`, `result_csv_data`, `result_reference_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
506
+ class AnalysisEvent
507
+ include ::Google::Protobuf::MessageExts
508
+ extend ::Google::Protobuf::MessageExts::ClassMethods
509
+ end
510
+
511
+ # A message produced during chart generation.
512
+ # @!attribute [rw] query
513
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::ChartQuery]
514
+ # A query for generating a chart.
515
+ #
516
+ # Note: The following fields are mutually exclusive: `query`, `result`. If a field in that set is populated, all other fields in the set will automatically be cleared.
517
+ # @!attribute [rw] result
518
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::ChartResult]
519
+ # The result of a chart generation query.
520
+ #
521
+ # Note: The following fields are mutually exclusive: `result`, `query`. If a field in that set is populated, all other fields in the set will automatically be cleared.
522
+ class ChartMessage
523
+ include ::Google::Protobuf::MessageExts
524
+ extend ::Google::Protobuf::MessageExts::ClassMethods
525
+ end
526
+
527
+ # A query for generating a chart.
528
+ # @!attribute [rw] instructions
529
+ # @return [::String]
530
+ # Optional. Natural language instructions for generating the chart.
531
+ # @!attribute [rw] data_result_name
532
+ # @return [::String]
533
+ # Optional. The name of a previously retrieved data result to use in the
534
+ # chart.
535
+ class ChartQuery
536
+ include ::Google::Protobuf::MessageExts
537
+ extend ::Google::Protobuf::MessageExts::ClassMethods
538
+ end
539
+
540
+ # The result of a chart generation query.
541
+ # @!attribute [rw] vega_config
542
+ # @return [::Google::Protobuf::Struct]
543
+ # Optional. A generated Vega chart config.
544
+ # See https://vega.github.io/vega/docs/config/
545
+ # @!attribute [rw] image
546
+ # @return [::Google::Cloud::GeminiDataAnalytics::V1beta::Blob]
547
+ # Optional. A rendering of the chart if this was requested in the context.
548
+ class ChartResult
549
+ include ::Google::Protobuf::MessageExts
550
+ extend ::Google::Protobuf::MessageExts::ClassMethods
551
+ end
552
+
553
+ # An error message.
554
+ # @!attribute [r] text
555
+ # @return [::String]
556
+ # Output only. The text of the error.
557
+ class ErrorMessage
558
+ include ::Google::Protobuf::MessageExts
559
+ extend ::Google::Protobuf::MessageExts::ClassMethods
560
+ end
561
+
562
+ # A blob of data with a MIME type.
563
+ # @!attribute [rw] mime_type
564
+ # @return [::String]
565
+ # Required. The IANA standard MIME type of the message data.
566
+ # @!attribute [rw] data
567
+ # @return [::String]
568
+ # Required. The data represented as bytes.
569
+ class Blob
570
+ include ::Google::Protobuf::MessageExts
571
+ extend ::Google::Protobuf::MessageExts::ClassMethods
572
+ end
573
+ end
574
+ end
575
+ end
576
+ end