google-api-client 0.14.5 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  4. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +11 -0
  5. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  6. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  7. data/generated/google/apis/androidenterprise_v1/classes.rb +63 -0
  8. data/generated/google/apis/androidenterprise_v1/representations.rb +18 -0
  9. data/generated/google/apis/bigquery_v2.rb +1 -1
  10. data/generated/google/apis/bigquery_v2/classes.rb +14 -0
  11. data/generated/google/apis/bigquery_v2/representations.rb +2 -0
  12. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  13. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +28 -50
  14. data/generated/google/apis/classroom_v1.rb +1 -1
  15. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  16. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +116 -111
  17. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +17 -17
  18. data/generated/google/apis/cloudtasks_v2beta2/service.rb +8 -0
  19. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  20. data/generated/google/apis/cloudtrace_v2/classes.rb +51 -58
  21. data/generated/google/apis/cloudtrace_v2/representations.rb +14 -15
  22. data/generated/google/apis/compute_alpha.rb +1 -1
  23. data/generated/google/apis/compute_alpha/classes.rb +157 -17
  24. data/generated/google/apis/compute_alpha/representations.rb +52 -0
  25. data/generated/google/apis/compute_alpha/service.rb +57 -0
  26. data/generated/google/apis/compute_beta.rb +1 -1
  27. data/generated/google/apis/compute_beta/classes.rb +46 -17
  28. data/generated/google/apis/compute_beta/representations.rb +2 -0
  29. data/generated/google/apis/compute_beta/service.rb +10 -1
  30. data/generated/google/apis/compute_v1.rb +1 -1
  31. data/generated/google/apis/compute_v1/classes.rb +4767 -337
  32. data/generated/google/apis/compute_v1/representations.rb +2044 -27
  33. data/generated/google/apis/compute_v1/service.rb +111 -0
  34. data/generated/google/apis/container_v1.rb +1 -1
  35. data/generated/google/apis/container_v1/classes.rb +1 -1
  36. data/generated/google/apis/container_v1beta1.rb +1 -1
  37. data/generated/google/apis/container_v1beta1/classes.rb +34 -1
  38. data/generated/google/apis/container_v1beta1/representations.rb +17 -0
  39. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  40. data/generated/google/apis/dataflow_v1b3/classes.rb +0 -2
  41. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  42. data/generated/google/apis/dataproc_v1beta2/service.rb +5 -1
  43. data/generated/google/apis/{ml_v1beta1.rb → firestore_v1beta1.rb} +11 -8
  44. data/generated/google/apis/firestore_v1beta1/classes.rb +2115 -0
  45. data/generated/google/apis/firestore_v1beta1/representations.rb +899 -0
  46. data/generated/google/apis/firestore_v1beta1/service.rb +734 -0
  47. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  48. data/generated/google/apis/identitytoolkit_v3/classes.rb +93 -0
  49. data/generated/google/apis/identitytoolkit_v3/representations.rb +35 -0
  50. data/generated/google/apis/identitytoolkit_v3/service.rb +35 -0
  51. data/generated/google/apis/logging_v2.rb +1 -1
  52. data/generated/google/apis/logging_v2/classes.rb +4 -9
  53. data/generated/google/apis/logging_v2beta1.rb +1 -1
  54. data/generated/google/apis/logging_v2beta1/classes.rb +4 -9
  55. data/generated/google/apis/ml_v1.rb +1 -1
  56. data/generated/google/apis/ml_v1/service.rb +102 -0
  57. data/generated/google/apis/monitoring_v3.rb +1 -1
  58. data/generated/google/apis/monitoring_v3/classes.rb +4 -9
  59. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  60. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +17 -0
  61. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +1 -0
  62. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  63. data/generated/google/apis/servicecontrol_v1/classes.rb +5 -11
  64. data/generated/google/apis/servicecontrol_v1/representations.rb +1 -1
  65. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  66. data/generated/google/apis/serviceuser_v1.rb +1 -1
  67. data/generated/google/apis/sheets_v4.rb +1 -1
  68. data/generated/google/apis/sheets_v4/classes.rb +81 -26
  69. data/generated/google/apis/sheets_v4/representations.rb +23 -0
  70. data/generated/google/apis/sheets_v4/service.rb +5 -5
  71. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  72. data/generated/google/apis/streetviewpublish_v1/classes.rb +97 -0
  73. data/generated/google/apis/streetviewpublish_v1/representations.rb +18 -0
  74. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  75. data/generated/google/apis/toolresults_v1beta3/classes.rb +121 -0
  76. data/generated/google/apis/toolresults_v1beta3/representations.rb +41 -0
  77. data/generated/google/apis/vision_v1.rb +1 -1
  78. data/generated/google/apis/vision_v1/classes.rb +4 -2
  79. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  80. data/lib/google/apis/version.rb +1 -1
  81. metadata +6 -6
  82. data/generated/google/apis/ml_v1beta1/classes.rb +0 -2396
  83. data/generated/google/apis/ml_v1beta1/representations.rb +0 -755
  84. data/generated/google/apis/ml_v1beta1/service.rb +0 -975
@@ -1,2396 +0,0 @@
1
- # Copyright 2015 Google Inc.
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
- require 'date'
16
- require 'google/apis/core/base_service'
17
- require 'google/apis/core/json_representation'
18
- require 'google/apis/core/hashable'
19
- require 'google/apis/errors'
20
-
21
- module Google
22
- module Apis
23
- module MlV1beta1
24
-
25
- # Message that represents an arbitrary HTTP body. It should only be used for
26
- # payload formats that can't be represented as JSON, such as raw binary or
27
- # an HTML page.
28
- # This message can be used both in streaming and non-streaming API methods in
29
- # the request as well as the response.
30
- # It can be used as a top-level request field, which is convenient if one
31
- # wants to extract parameters from either the URL or HTTP template into the
32
- # request fields and also want access to the raw HTTP body.
33
- # Example:
34
- # message GetResourceRequest `
35
- # // A unique request id.
36
- # string request_id = 1;
37
- # // The raw HTTP body is bound to this field.
38
- # google.api.HttpBody http_body = 2;
39
- # `
40
- # service ResourceService `
41
- # rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);
42
- # rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);
43
- # `
44
- # Example with streaming methods:
45
- # service CaldavService `
46
- # rpc GetCalendar(stream google.api.HttpBody)
47
- # returns (stream google.api.HttpBody);
48
- # rpc UpdateCalendar(stream google.api.HttpBody)
49
- # returns (stream google.api.HttpBody);
50
- # `
51
- # Use of this type only changes how the request and response bodies are
52
- # handled, all other features will continue to work unchanged.
53
- class GoogleApiHttpBody
54
- include Google::Apis::Core::Hashable
55
-
56
- # The HTTP Content-Type string representing the content type of the body.
57
- # Corresponds to the JSON property `contentType`
58
- # @return [String]
59
- attr_accessor :content_type
60
-
61
- # HTTP body binary data.
62
- # Corresponds to the JSON property `data`
63
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
64
- # @return [String]
65
- attr_accessor :data
66
-
67
- # Application specific response metadata. Must be set in the first response
68
- # for streaming APIs.
69
- # Corresponds to the JSON property `extensions`
70
- # @return [Array<Hash<String,Object>>]
71
- attr_accessor :extensions
72
-
73
- def initialize(**args)
74
- update!(**args)
75
- end
76
-
77
- # Update properties of this object
78
- def update!(**args)
79
- @content_type = args[:content_type] if args.key?(:content_type)
80
- @data = args[:data] if args.key?(:data)
81
- @extensions = args[:extensions] if args.key?(:extensions)
82
- end
83
- end
84
-
85
- # Options for automatically scaling a model.
86
- class GoogleCloudMlV1AutoScaling
87
- include Google::Apis::Core::Hashable
88
-
89
- # Optional. The minimum number of nodes to allocate for this model. These
90
- # nodes are always up, starting from the time the model is deployed, so the
91
- # cost of operating this model will be at least
92
- # `rate` * `min_nodes` * number of hours since last billing cycle,
93
- # where `rate` is the cost per node-hour as documented in
94
- # [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing),
95
- # even if no predictions are performed. There is additional cost for each
96
- # prediction performed.
97
- # Unlike manual scaling, if the load gets too heavy for the nodes
98
- # that are up, the service will automatically add nodes to handle the
99
- # increased load as well as scale back as traffic drops, always maintaining
100
- # at least `min_nodes`. You will be charged for the time in which additional
101
- # nodes are used.
102
- # If not specified, `min_nodes` defaults to 0, in which case, when traffic
103
- # to a model stops (and after a cool-down period), nodes will be shut down
104
- # and no charges will be incurred until traffic to the model resumes.
105
- # Corresponds to the JSON property `minNodes`
106
- # @return [Fixnum]
107
- attr_accessor :min_nodes
108
-
109
- def initialize(**args)
110
- update!(**args)
111
- end
112
-
113
- # Update properties of this object
114
- def update!(**args)
115
- @min_nodes = args[:min_nodes] if args.key?(:min_nodes)
116
- end
117
- end
118
-
119
- # Options for manually scaling a model.
120
- class GoogleCloudMlV1ManualScaling
121
- include Google::Apis::Core::Hashable
122
-
123
- # The number of nodes to allocate for this model. These nodes are always up,
124
- # starting from the time the model is deployed, so the cost of operating
125
- # this model will be proportional to `nodes` * number of hours since
126
- # last billing cycle plus the cost for each prediction performed.
127
- # Corresponds to the JSON property `nodes`
128
- # @return [Fixnum]
129
- attr_accessor :nodes
130
-
131
- def initialize(**args)
132
- update!(**args)
133
- end
134
-
135
- # Update properties of this object
136
- def update!(**args)
137
- @nodes = args[:nodes] if args.key?(:nodes)
138
- end
139
- end
140
-
141
- # Represents the metadata of the long-running operation.
142
- # Next ID: 9
143
- class GoogleCloudMlV1OperationMetadata
144
- include Google::Apis::Core::Hashable
145
-
146
- # The time the operation was submitted.
147
- # Corresponds to the JSON property `createTime`
148
- # @return [String]
149
- attr_accessor :create_time
150
-
151
- # The time operation processing completed.
152
- # Corresponds to the JSON property `endTime`
153
- # @return [String]
154
- attr_accessor :end_time
155
-
156
- # Indicates whether a request to cancel this operation has been made.
157
- # Corresponds to the JSON property `isCancellationRequested`
158
- # @return [Boolean]
159
- attr_accessor :is_cancellation_requested
160
- alias_method :is_cancellation_requested?, :is_cancellation_requested
161
-
162
- # Contains the name of the model associated with the operation.
163
- # Corresponds to the JSON property `modelName`
164
- # @return [String]
165
- attr_accessor :model_name
166
-
167
- # The operation type.
168
- # Corresponds to the JSON property `operationType`
169
- # @return [String]
170
- attr_accessor :operation_type
171
-
172
- # The time operation processing started.
173
- # Corresponds to the JSON property `startTime`
174
- # @return [String]
175
- attr_accessor :start_time
176
-
177
- # Represents a version of the model.
178
- # Each version is a trained model deployed in the cloud, ready to handle
179
- # prediction requests. A model can have multiple versions. You can get
180
- # information about all of the versions of a given model by calling
181
- # [projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.
182
- # versions/list).
183
- # Next ID: 18
184
- # Corresponds to the JSON property `version`
185
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1Version]
186
- attr_accessor :version
187
-
188
- def initialize(**args)
189
- update!(**args)
190
- end
191
-
192
- # Update properties of this object
193
- def update!(**args)
194
- @create_time = args[:create_time] if args.key?(:create_time)
195
- @end_time = args[:end_time] if args.key?(:end_time)
196
- @is_cancellation_requested = args[:is_cancellation_requested] if args.key?(:is_cancellation_requested)
197
- @model_name = args[:model_name] if args.key?(:model_name)
198
- @operation_type = args[:operation_type] if args.key?(:operation_type)
199
- @start_time = args[:start_time] if args.key?(:start_time)
200
- @version = args[:version] if args.key?(:version)
201
- end
202
- end
203
-
204
- # Represents a version of the model.
205
- # Each version is a trained model deployed in the cloud, ready to handle
206
- # prediction requests. A model can have multiple versions. You can get
207
- # information about all of the versions of a given model by calling
208
- # [projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.
209
- # versions/list).
210
- # Next ID: 18
211
- class GoogleCloudMlV1Version
212
- include Google::Apis::Core::Hashable
213
-
214
- # Options for automatically scaling a model.
215
- # Corresponds to the JSON property `autoScaling`
216
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1AutoScaling]
217
- attr_accessor :auto_scaling
218
-
219
- # Output only. The time the version was created.
220
- # Corresponds to the JSON property `createTime`
221
- # @return [String]
222
- attr_accessor :create_time
223
-
224
- # Required. The Google Cloud Storage location of the trained model used to
225
- # create the version. See the
226
- # [overview of model
227
- # deployment](/ml-engine/docs/concepts/deployment-overview) for more
228
- # information.
229
- # When passing Version to
230
- # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.
231
- # versions/create)
232
- # the model service uses the specified location as the source of the model.
233
- # Once deployed, the model version is hosted by the prediction service, so
234
- # this location is useful only as a historical record.
235
- # The total number of model files can't exceed 1000.
236
- # Corresponds to the JSON property `deploymentUri`
237
- # @return [String]
238
- attr_accessor :deployment_uri
239
-
240
- # Optional. The description specified for the version when it was created.
241
- # Corresponds to the JSON property `description`
242
- # @return [String]
243
- attr_accessor :description
244
-
245
- # Output only. The details of a failure or a cancellation.
246
- # Corresponds to the JSON property `errorMessage`
247
- # @return [String]
248
- attr_accessor :error_message
249
-
250
- # Output only. If true, this version will be used to handle prediction
251
- # requests that do not specify a version.
252
- # You can change the default version by calling
253
- # [projects.methods.versions.setDefault](/ml-engine/reference/rest/v1/projects.
254
- # models.versions/setDefault).
255
- # Corresponds to the JSON property `isDefault`
256
- # @return [Boolean]
257
- attr_accessor :is_default
258
- alias_method :is_default?, :is_default
259
-
260
- # Output only. The time the version was last used for prediction.
261
- # Corresponds to the JSON property `lastUseTime`
262
- # @return [String]
263
- attr_accessor :last_use_time
264
-
265
- # Options for manually scaling a model.
266
- # Corresponds to the JSON property `manualScaling`
267
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1ManualScaling]
268
- attr_accessor :manual_scaling
269
-
270
- # Required.The name specified for the version when it was created.
271
- # The version name must be unique within the model it is created in.
272
- # Corresponds to the JSON property `name`
273
- # @return [String]
274
- attr_accessor :name
275
-
276
- # Optional. The Google Cloud ML runtime version to use for this deployment.
277
- # If not set, Google Cloud ML will choose a version.
278
- # Corresponds to the JSON property `runtimeVersion`
279
- # @return [String]
280
- attr_accessor :runtime_version
281
-
282
- # Output only. The state of a version.
283
- # Corresponds to the JSON property `state`
284
- # @return [String]
285
- attr_accessor :state
286
-
287
- def initialize(**args)
288
- update!(**args)
289
- end
290
-
291
- # Update properties of this object
292
- def update!(**args)
293
- @auto_scaling = args[:auto_scaling] if args.key?(:auto_scaling)
294
- @create_time = args[:create_time] if args.key?(:create_time)
295
- @deployment_uri = args[:deployment_uri] if args.key?(:deployment_uri)
296
- @description = args[:description] if args.key?(:description)
297
- @error_message = args[:error_message] if args.key?(:error_message)
298
- @is_default = args[:is_default] if args.key?(:is_default)
299
- @last_use_time = args[:last_use_time] if args.key?(:last_use_time)
300
- @manual_scaling = args[:manual_scaling] if args.key?(:manual_scaling)
301
- @name = args[:name] if args.key?(:name)
302
- @runtime_version = args[:runtime_version] if args.key?(:runtime_version)
303
- @state = args[:state] if args.key?(:state)
304
- end
305
- end
306
-
307
- # An observed value of a metric.
308
- class GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric
309
- include Google::Apis::Core::Hashable
310
-
311
- # The objective value at this training step.
312
- # Corresponds to the JSON property `objectiveValue`
313
- # @return [Float]
314
- attr_accessor :objective_value
315
-
316
- # The global training step for this metric.
317
- # Corresponds to the JSON property `trainingStep`
318
- # @return [Fixnum]
319
- attr_accessor :training_step
320
-
321
- def initialize(**args)
322
- update!(**args)
323
- end
324
-
325
- # Update properties of this object
326
- def update!(**args)
327
- @objective_value = args[:objective_value] if args.key?(:objective_value)
328
- @training_step = args[:training_step] if args.key?(:training_step)
329
- end
330
- end
331
-
332
- # Options for automatically scaling a model.
333
- class GoogleCloudMlV1beta1AutoScaling
334
- include Google::Apis::Core::Hashable
335
-
336
- # Optional. The minimum number of nodes to allocate for this model. These
337
- # nodes are always up, starting from the time the model is deployed, so the
338
- # cost of operating this model will be at least
339
- # `rate` * `min_nodes` * number of hours since last billing cycle,
340
- # where `rate` is the cost per node-hour as documented in
341
- # [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing),
342
- # even if no predictions are performed. There is additional cost for each
343
- # prediction performed.
344
- # Unlike manual scaling, if the load gets too heavy for the nodes
345
- # that are up, the service will automatically add nodes to handle the
346
- # increased load as well as scale back as traffic drops, always maintaining
347
- # at least `min_nodes`. You will be charged for the time in which additional
348
- # nodes are used.
349
- # If not specified, `min_nodes` defaults to 0, in which case, when traffic
350
- # to a model stops (and after a cool-down period), nodes will be shut down
351
- # and no charges will be incurred until traffic to the model resumes.
352
- # Corresponds to the JSON property `minNodes`
353
- # @return [Fixnum]
354
- attr_accessor :min_nodes
355
-
356
- def initialize(**args)
357
- update!(**args)
358
- end
359
-
360
- # Update properties of this object
361
- def update!(**args)
362
- @min_nodes = args[:min_nodes] if args.key?(:min_nodes)
363
- end
364
- end
365
-
366
- # Request message for the CancelJob method.
367
- class GoogleCloudMlV1beta1CancelJobRequest
368
- include Google::Apis::Core::Hashable
369
-
370
- def initialize(**args)
371
- update!(**args)
372
- end
373
-
374
- # Update properties of this object
375
- def update!(**args)
376
- end
377
- end
378
-
379
- # Returns service account information associated with a project.
380
- class GoogleCloudMlV1beta1GetConfigResponse
381
- include Google::Apis::Core::Hashable
382
-
383
- # The service account Cloud ML uses to access resources in the project.
384
- # Corresponds to the JSON property `serviceAccount`
385
- # @return [String]
386
- attr_accessor :service_account
387
-
388
- # The project number for `service_account`.
389
- # Corresponds to the JSON property `serviceAccountProject`
390
- # @return [Fixnum]
391
- attr_accessor :service_account_project
392
-
393
- def initialize(**args)
394
- update!(**args)
395
- end
396
-
397
- # Update properties of this object
398
- def update!(**args)
399
- @service_account = args[:service_account] if args.key?(:service_account)
400
- @service_account_project = args[:service_account_project] if args.key?(:service_account_project)
401
- end
402
- end
403
-
404
- # Represents the result of a single hyperparameter tuning trial from a
405
- # training job. The TrainingOutput object that is returned on successful
406
- # completion of a training job with hyperparameter tuning includes a list
407
- # of HyperparameterOutput objects, one for each successful trial.
408
- class GoogleCloudMlV1beta1HyperparameterOutput
409
- include Google::Apis::Core::Hashable
410
-
411
- # All recorded object metrics for this trial.
412
- # Corresponds to the JSON property `allMetrics`
413
- # @return [Array<Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric>]
414
- attr_accessor :all_metrics
415
-
416
- # An observed value of a metric.
417
- # Corresponds to the JSON property `finalMetric`
418
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric]
419
- attr_accessor :final_metric
420
-
421
- # The hyperparameters given to this trial.
422
- # Corresponds to the JSON property `hyperparameters`
423
- # @return [Hash<String,String>]
424
- attr_accessor :hyperparameters
425
-
426
- # The trial id for these results.
427
- # Corresponds to the JSON property `trialId`
428
- # @return [String]
429
- attr_accessor :trial_id
430
-
431
- def initialize(**args)
432
- update!(**args)
433
- end
434
-
435
- # Update properties of this object
436
- def update!(**args)
437
- @all_metrics = args[:all_metrics] if args.key?(:all_metrics)
438
- @final_metric = args[:final_metric] if args.key?(:final_metric)
439
- @hyperparameters = args[:hyperparameters] if args.key?(:hyperparameters)
440
- @trial_id = args[:trial_id] if args.key?(:trial_id)
441
- end
442
- end
443
-
444
- # Represents a set of hyperparameters to optimize.
445
- class GoogleCloudMlV1beta1HyperparameterSpec
446
- include Google::Apis::Core::Hashable
447
-
448
- # Required. The type of goal to use for tuning. Available types are
449
- # `MAXIMIZE` and `MINIMIZE`.
450
- # Defaults to `MAXIMIZE`.
451
- # Corresponds to the JSON property `goal`
452
- # @return [String]
453
- attr_accessor :goal
454
-
455
- # Optional. The Tensorflow summary tag name to use for optimizing trials. For
456
- # current versions of Tensorflow, this tag name should exactly match what is
457
- # shown in Tensorboard, including all scopes. For versions of Tensorflow
458
- # prior to 0.12, this should be only the tag passed to tf.Summary.
459
- # By default, "training/hptuning/metric" will be used.
460
- # Corresponds to the JSON property `hyperparameterMetricTag`
461
- # @return [String]
462
- attr_accessor :hyperparameter_metric_tag
463
-
464
- # Optional. The number of training trials to run concurrently.
465
- # You can reduce the time it takes to perform hyperparameter tuning by adding
466
- # trials in parallel. However, each trail only benefits from the information
467
- # gained in completed trials. That means that a trial does not get access to
468
- # the results of trials running at the same time, which could reduce the
469
- # quality of the overall optimization.
470
- # Each trial will use the same scale tier and machine types.
471
- # Defaults to one.
472
- # Corresponds to the JSON property `maxParallelTrials`
473
- # @return [Fixnum]
474
- attr_accessor :max_parallel_trials
475
-
476
- # Optional. How many training trials should be attempted to optimize
477
- # the specified hyperparameters.
478
- # Defaults to one.
479
- # Corresponds to the JSON property `maxTrials`
480
- # @return [Fixnum]
481
- attr_accessor :max_trials
482
-
483
- # Required. The set of parameters to tune.
484
- # Corresponds to the JSON property `params`
485
- # @return [Array<Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ParameterSpec>]
486
- attr_accessor :params
487
-
488
- def initialize(**args)
489
- update!(**args)
490
- end
491
-
492
- # Update properties of this object
493
- def update!(**args)
494
- @goal = args[:goal] if args.key?(:goal)
495
- @hyperparameter_metric_tag = args[:hyperparameter_metric_tag] if args.key?(:hyperparameter_metric_tag)
496
- @max_parallel_trials = args[:max_parallel_trials] if args.key?(:max_parallel_trials)
497
- @max_trials = args[:max_trials] if args.key?(:max_trials)
498
- @params = args[:params] if args.key?(:params)
499
- end
500
- end
501
-
502
- # Represents a training or prediction job.
503
- # Next ID: 16
504
- class GoogleCloudMlV1beta1Job
505
- include Google::Apis::Core::Hashable
506
-
507
- # Output only. When the job was created.
508
- # Corresponds to the JSON property `createTime`
509
- # @return [String]
510
- attr_accessor :create_time
511
-
512
- # Output only. When the job processing was completed.
513
- # Corresponds to the JSON property `endTime`
514
- # @return [String]
515
- attr_accessor :end_time
516
-
517
- # Output only. The details of a failure or a cancellation.
518
- # Corresponds to the JSON property `errorMessage`
519
- # @return [String]
520
- attr_accessor :error_message
521
-
522
- # Required. The user-specified id of the job.
523
- # Corresponds to the JSON property `jobId`
524
- # @return [String]
525
- attr_accessor :job_id
526
-
527
- # Represents input parameters for a prediction job.
528
- # Corresponds to the JSON property `predictionInput`
529
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictionInput]
530
- attr_accessor :prediction_input
531
-
532
- # Represents results of a prediction job.
533
- # Corresponds to the JSON property `predictionOutput`
534
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictionOutput]
535
- attr_accessor :prediction_output
536
-
537
- # Output only. When the job processing was started.
538
- # Corresponds to the JSON property `startTime`
539
- # @return [String]
540
- attr_accessor :start_time
541
-
542
- # Output only. The detailed state of a job.
543
- # Corresponds to the JSON property `state`
544
- # @return [String]
545
- attr_accessor :state
546
-
547
- # Represents input parameters for a training job.
548
- # Corresponds to the JSON property `trainingInput`
549
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1TrainingInput]
550
- attr_accessor :training_input
551
-
552
- # Represents results of a training job. Output only.
553
- # Corresponds to the JSON property `trainingOutput`
554
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1TrainingOutput]
555
- attr_accessor :training_output
556
-
557
- def initialize(**args)
558
- update!(**args)
559
- end
560
-
561
- # Update properties of this object
562
- def update!(**args)
563
- @create_time = args[:create_time] if args.key?(:create_time)
564
- @end_time = args[:end_time] if args.key?(:end_time)
565
- @error_message = args[:error_message] if args.key?(:error_message)
566
- @job_id = args[:job_id] if args.key?(:job_id)
567
- @prediction_input = args[:prediction_input] if args.key?(:prediction_input)
568
- @prediction_output = args[:prediction_output] if args.key?(:prediction_output)
569
- @start_time = args[:start_time] if args.key?(:start_time)
570
- @state = args[:state] if args.key?(:state)
571
- @training_input = args[:training_input] if args.key?(:training_input)
572
- @training_output = args[:training_output] if args.key?(:training_output)
573
- end
574
- end
575
-
576
- # Response message for the ListJobs method.
577
- class GoogleCloudMlV1beta1ListJobsResponse
578
- include Google::Apis::Core::Hashable
579
-
580
- # The list of jobs.
581
- # Corresponds to the JSON property `jobs`
582
- # @return [Array<Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job>]
583
- attr_accessor :jobs
584
-
585
- # Optional. Pass this token as the `page_token` field of the request for a
586
- # subsequent call.
587
- # Corresponds to the JSON property `nextPageToken`
588
- # @return [String]
589
- attr_accessor :next_page_token
590
-
591
- def initialize(**args)
592
- update!(**args)
593
- end
594
-
595
- # Update properties of this object
596
- def update!(**args)
597
- @jobs = args[:jobs] if args.key?(:jobs)
598
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
599
- end
600
- end
601
-
602
- # Response message for the ListModels method.
603
- class GoogleCloudMlV1beta1ListModelsResponse
604
- include Google::Apis::Core::Hashable
605
-
606
- # The list of models.
607
- # Corresponds to the JSON property `models`
608
- # @return [Array<Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model>]
609
- attr_accessor :models
610
-
611
- # Optional. Pass this token as the `page_token` field of the request for a
612
- # subsequent call.
613
- # Corresponds to the JSON property `nextPageToken`
614
- # @return [String]
615
- attr_accessor :next_page_token
616
-
617
- def initialize(**args)
618
- update!(**args)
619
- end
620
-
621
- # Update properties of this object
622
- def update!(**args)
623
- @models = args[:models] if args.key?(:models)
624
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
625
- end
626
- end
627
-
628
- # Response message for the ListVersions method.
629
- class GoogleCloudMlV1beta1ListVersionsResponse
630
- include Google::Apis::Core::Hashable
631
-
632
- # Optional. Pass this token as the `page_token` field of the request for a
633
- # subsequent call.
634
- # Corresponds to the JSON property `nextPageToken`
635
- # @return [String]
636
- attr_accessor :next_page_token
637
-
638
- # The list of versions.
639
- # Corresponds to the JSON property `versions`
640
- # @return [Array<Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version>]
641
- attr_accessor :versions
642
-
643
- def initialize(**args)
644
- update!(**args)
645
- end
646
-
647
- # Update properties of this object
648
- def update!(**args)
649
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
650
- @versions = args[:versions] if args.key?(:versions)
651
- end
652
- end
653
-
654
- # Options for manually scaling a model.
655
- class GoogleCloudMlV1beta1ManualScaling
656
- include Google::Apis::Core::Hashable
657
-
658
- # The number of nodes to allocate for this model. These nodes are always up,
659
- # starting from the time the model is deployed, so the cost of operating
660
- # this model will be proportional to `nodes` * number of hours since
661
- # last billing cycle plus the cost for each prediction performed.
662
- # Corresponds to the JSON property `nodes`
663
- # @return [Fixnum]
664
- attr_accessor :nodes
665
-
666
- def initialize(**args)
667
- update!(**args)
668
- end
669
-
670
- # Update properties of this object
671
- def update!(**args)
672
- @nodes = args[:nodes] if args.key?(:nodes)
673
- end
674
- end
675
-
676
- # Represents a machine learning solution.
677
- # A model can have multiple versions, each of which is a deployed, trained
678
- # model ready to receive prediction requests. The model itself is just a
679
- # container.
680
- # Next ID: 8
681
- class GoogleCloudMlV1beta1Model
682
- include Google::Apis::Core::Hashable
683
-
684
- # Represents a version of the model.
685
- # Each version is a trained model deployed in the cloud, ready to handle
686
- # prediction requests. A model can have multiple versions. You can get
687
- # information about all of the versions of a given model by calling
688
- # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.
689
- # models.versions/list).
690
- # Next ID: 18
691
- # Corresponds to the JSON property `defaultVersion`
692
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version]
693
- attr_accessor :default_version
694
-
695
- # Optional. The description specified for the model when it was created.
696
- # Corresponds to the JSON property `description`
697
- # @return [String]
698
- attr_accessor :description
699
-
700
- # Required. The name specified for the model when it was created.
701
- # The model name must be unique within the project it is created in.
702
- # Corresponds to the JSON property `name`
703
- # @return [String]
704
- attr_accessor :name
705
-
706
- # Optional. If true, enables StackDriver Logging for online prediction.
707
- # Default is false.
708
- # Corresponds to the JSON property `onlinePredictionLogging`
709
- # @return [Boolean]
710
- attr_accessor :online_prediction_logging
711
- alias_method :online_prediction_logging?, :online_prediction_logging
712
-
713
- # Optional. The list of regions where the model is going to be deployed.
714
- # Currently only one region per model is supported.
715
- # Defaults to 'us-central1' if nothing is set.
716
- # Note:
717
- # * No matter where a model is deployed, it can always be accessed by
718
- # users from anywhere, both for online and batch prediction.
719
- # * The region for a batch prediction job is set by the region field when
720
- # submitting the batch prediction job and does not take its value from
721
- # this field.
722
- # Corresponds to the JSON property `regions`
723
- # @return [Array<String>]
724
- attr_accessor :regions
725
-
726
- def initialize(**args)
727
- update!(**args)
728
- end
729
-
730
- # Update properties of this object
731
- def update!(**args)
732
- @default_version = args[:default_version] if args.key?(:default_version)
733
- @description = args[:description] if args.key?(:description)
734
- @name = args[:name] if args.key?(:name)
735
- @online_prediction_logging = args[:online_prediction_logging] if args.key?(:online_prediction_logging)
736
- @regions = args[:regions] if args.key?(:regions)
737
- end
738
- end
739
-
740
- # Represents the metadata of the long-running operation.
741
- # Next ID: 9
742
- class GoogleCloudMlV1beta1OperationMetadata
743
- include Google::Apis::Core::Hashable
744
-
745
- # The time the operation was submitted.
746
- # Corresponds to the JSON property `createTime`
747
- # @return [String]
748
- attr_accessor :create_time
749
-
750
- # The time operation processing completed.
751
- # Corresponds to the JSON property `endTime`
752
- # @return [String]
753
- attr_accessor :end_time
754
-
755
- # Indicates whether a request to cancel this operation has been made.
756
- # Corresponds to the JSON property `isCancellationRequested`
757
- # @return [Boolean]
758
- attr_accessor :is_cancellation_requested
759
- alias_method :is_cancellation_requested?, :is_cancellation_requested
760
-
761
- # Contains the name of the model associated with the operation.
762
- # Corresponds to the JSON property `modelName`
763
- # @return [String]
764
- attr_accessor :model_name
765
-
766
- # The operation type.
767
- # Corresponds to the JSON property `operationType`
768
- # @return [String]
769
- attr_accessor :operation_type
770
-
771
- # The time operation processing started.
772
- # Corresponds to the JSON property `startTime`
773
- # @return [String]
774
- attr_accessor :start_time
775
-
776
- # Represents a version of the model.
777
- # Each version is a trained model deployed in the cloud, ready to handle
778
- # prediction requests. A model can have multiple versions. You can get
779
- # information about all of the versions of a given model by calling
780
- # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.
781
- # models.versions/list).
782
- # Next ID: 18
783
- # Corresponds to the JSON property `version`
784
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version]
785
- attr_accessor :version
786
-
787
- def initialize(**args)
788
- update!(**args)
789
- end
790
-
791
- # Update properties of this object
792
- def update!(**args)
793
- @create_time = args[:create_time] if args.key?(:create_time)
794
- @end_time = args[:end_time] if args.key?(:end_time)
795
- @is_cancellation_requested = args[:is_cancellation_requested] if args.key?(:is_cancellation_requested)
796
- @model_name = args[:model_name] if args.key?(:model_name)
797
- @operation_type = args[:operation_type] if args.key?(:operation_type)
798
- @start_time = args[:start_time] if args.key?(:start_time)
799
- @version = args[:version] if args.key?(:version)
800
- end
801
- end
802
-
803
- # Represents a single hyperparameter to optimize.
804
- class GoogleCloudMlV1beta1ParameterSpec
805
- include Google::Apis::Core::Hashable
806
-
807
- # Required if type is `CATEGORICAL`. The list of possible categories.
808
- # Corresponds to the JSON property `categoricalValues`
809
- # @return [Array<String>]
810
- attr_accessor :categorical_values
811
-
812
- # Required if type is `DISCRETE`.
813
- # A list of feasible points.
814
- # The list should be in strictly increasing order. For instance, this
815
- # parameter might have possible settings of 1.5, 2.5, and 4.0. This list
816
- # should not contain more than 1,000 values.
817
- # Corresponds to the JSON property `discreteValues`
818
- # @return [Array<Float>]
819
- attr_accessor :discrete_values
820
-
821
- # Required if typeis `DOUBLE` or `INTEGER`. This field
822
- # should be unset if type is `CATEGORICAL`. This value should be integers if
823
- # type is `INTEGER`.
824
- # Corresponds to the JSON property `maxValue`
825
- # @return [Float]
826
- attr_accessor :max_value
827
-
828
- # Required if type is `DOUBLE` or `INTEGER`. This field
829
- # should be unset if type is `CATEGORICAL`. This value should be integers if
830
- # type is INTEGER.
831
- # Corresponds to the JSON property `minValue`
832
- # @return [Float]
833
- attr_accessor :min_value
834
-
835
- # Required. The parameter name must be unique amongst all ParameterConfigs in
836
- # a HyperparameterSpec message. E.g., "learning_rate".
837
- # Corresponds to the JSON property `parameterName`
838
- # @return [String]
839
- attr_accessor :parameter_name
840
-
841
- # Optional. How the parameter should be scaled to the hypercube.
842
- # Leave unset for categorical parameters.
843
- # Some kind of scaling is strongly recommended for real or integral
844
- # parameters (e.g., `UNIT_LINEAR_SCALE`).
845
- # Corresponds to the JSON property `scaleType`
846
- # @return [String]
847
- attr_accessor :scale_type
848
-
849
- # Required. The type of the parameter.
850
- # Corresponds to the JSON property `type`
851
- # @return [String]
852
- attr_accessor :type
853
-
854
- def initialize(**args)
855
- update!(**args)
856
- end
857
-
858
- # Update properties of this object
859
- def update!(**args)
860
- @categorical_values = args[:categorical_values] if args.key?(:categorical_values)
861
- @discrete_values = args[:discrete_values] if args.key?(:discrete_values)
862
- @max_value = args[:max_value] if args.key?(:max_value)
863
- @min_value = args[:min_value] if args.key?(:min_value)
864
- @parameter_name = args[:parameter_name] if args.key?(:parameter_name)
865
- @scale_type = args[:scale_type] if args.key?(:scale_type)
866
- @type = args[:type] if args.key?(:type)
867
- end
868
- end
869
-
870
- # Request for predictions to be issued against a trained model.
871
- # The body of the request is a single JSON object with a single top-level
872
- # field:
873
- # <dl>
874
- # <dt>instances</dt>
875
- # <dd>A JSON array containing values representing the instances to use for
876
- # prediction.</dd>
877
- # </dl>
878
- # The structure of each element of the instances list is determined by your
879
- # model's input definition. Instances can include named inputs or can contain
880
- # only unlabeled values.
881
- # Not all data includes named inputs. Some instances will be simple
882
- # JSON values (boolean, number, or string). However, instances are often lists
883
- # of simple values, or complex nested lists. Here are some examples of request
884
- # bodies:
885
- # CSV data with each row encoded as a string value:
886
- # <pre>
887
- # `"instances": ["1.0,true,\\"x\\"", "-2.0,false,\\"y\\""]`
888
- # </pre>
889
- # Plain text:
890
- # <pre>
891
- # `"instances": ["the quick brown fox", "la bruja le dio"]`
892
- # </pre>
893
- # Sentences encoded as lists of words (vectors of strings):
894
- # <pre>
895
- # `
896
- # "instances": [
897
- # ["the","quick","brown"],
898
- # ["la","bruja","le"],
899
- # ...
900
- # ]
901
- # `
902
- # </pre>
903
- # Floating point scalar values:
904
- # <pre>
905
- # `"instances": [0.0, 1.1, 2.2]`
906
- # </pre>
907
- # Vectors of integers:
908
- # <pre>
909
- # `
910
- # "instances": [
911
- # [0, 1, 2],
912
- # [3, 4, 5],
913
- # ...
914
- # ]
915
- # `
916
- # </pre>
917
- # Tensors (in this case, two-dimensional tensors):
918
- # <pre>
919
- # `
920
- # "instances": [
921
- # [
922
- # [0, 1, 2],
923
- # [3, 4, 5]
924
- # ],
925
- # ...
926
- # ]
927
- # `
928
- # </pre>
929
- # Images can be represented different ways. In this encoding scheme the first
930
- # two dimensions represent the rows and columns of the image, and the third
931
- # contains lists (vectors) of the R, G, and B values for each pixel.
932
- # <pre>
933
- # `
934
- # "instances": [
935
- # [
936
- # [
937
- # [138, 30, 66],
938
- # [130, 20, 56],
939
- # ...
940
- # ],
941
- # [
942
- # [126, 38, 61],
943
- # [122, 24, 57],
944
- # ...
945
- # ],
946
- # ...
947
- # ],
948
- # ...
949
- # ]
950
- # `
951
- # </pre>
952
- # JSON strings must be encoded as UTF-8. To send binary data, you must
953
- # base64-encode the data and mark it as binary. To mark a JSON string
954
- # as binary, replace it with a JSON object with a single attribute named `b64`:
955
- # <pre>`"b64": "..."` </pre>
956
- # For example:
957
- # Two Serialized tf.Examples (fake data, for illustrative purposes only):
958
- # <pre>
959
- # `"instances": [`"b64": "X5ad6u"`, `"b64": "IA9j4nx"`]`
960
- # </pre>
961
- # Two JPEG image byte strings (fake data, for illustrative purposes only):
962
- # <pre>
963
- # `"instances": [`"b64": "ASa8asdf"`, `"b64": "JLK7ljk3"`]`
964
- # </pre>
965
- # If your data includes named references, format each instance as a JSON object
966
- # with the named references as the keys:
967
- # JSON input data to be preprocessed:
968
- # <pre>
969
- # `
970
- # "instances": [
971
- # `
972
- # "a": 1.0,
973
- # "b": true,
974
- # "c": "x"
975
- # `,
976
- # `
977
- # "a": -2.0,
978
- # "b": false,
979
- # "c": "y"
980
- # `
981
- # ]
982
- # `
983
- # </pre>
984
- # Some models have an underlying TensorFlow graph that accepts multiple input
985
- # tensors. In this case, you should use the names of JSON name/value pairs to
986
- # identify the input tensors, as shown in the following exmaples:
987
- # For a graph with input tensor aliases "tag" (string) and "image"
988
- # (base64-encoded string):
989
- # <pre>
990
- # `
991
- # "instances": [
992
- # `
993
- # "tag": "beach",
994
- # "image": `"b64": "ASa8asdf"`
995
- # `,
996
- # `
997
- # "tag": "car",
998
- # "image": `"b64": "JLK7ljk3"`
999
- # `
1000
- # ]
1001
- # `
1002
- # </pre>
1003
- # For a graph with input tensor aliases "tag" (string) and "image"
1004
- # (3-dimensional array of 8-bit ints):
1005
- # <pre>
1006
- # `
1007
- # "instances": [
1008
- # `
1009
- # "tag": "beach",
1010
- # "image": [
1011
- # [
1012
- # [138, 30, 66],
1013
- # [130, 20, 56],
1014
- # ...
1015
- # ],
1016
- # [
1017
- # [126, 38, 61],
1018
- # [122, 24, 57],
1019
- # ...
1020
- # ],
1021
- # ...
1022
- # ]
1023
- # `,
1024
- # `
1025
- # "tag": "car",
1026
- # "image": [
1027
- # [
1028
- # [255, 0, 102],
1029
- # [255, 0, 97],
1030
- # ...
1031
- # ],
1032
- # [
1033
- # [254, 1, 101],
1034
- # [254, 2, 93],
1035
- # ...
1036
- # ],
1037
- # ...
1038
- # ]
1039
- # `,
1040
- # ...
1041
- # ]
1042
- # `
1043
- # </pre>
1044
- # If the call is successful, the response body will contain one prediction
1045
- # entry per instance in the request body. If prediction fails for any
1046
- # instance, the response body will contain no predictions and will contian
1047
- # a single error entry instead.
1048
- class GoogleCloudMlV1beta1PredictRequest
1049
- include Google::Apis::Core::Hashable
1050
-
1051
- # Message that represents an arbitrary HTTP body. It should only be used for
1052
- # payload formats that can't be represented as JSON, such as raw binary or
1053
- # an HTML page.
1054
- # This message can be used both in streaming and non-streaming API methods in
1055
- # the request as well as the response.
1056
- # It can be used as a top-level request field, which is convenient if one
1057
- # wants to extract parameters from either the URL or HTTP template into the
1058
- # request fields and also want access to the raw HTTP body.
1059
- # Example:
1060
- # message GetResourceRequest `
1061
- # // A unique request id.
1062
- # string request_id = 1;
1063
- # // The raw HTTP body is bound to this field.
1064
- # google.api.HttpBody http_body = 2;
1065
- # `
1066
- # service ResourceService `
1067
- # rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);
1068
- # rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);
1069
- # `
1070
- # Example with streaming methods:
1071
- # service CaldavService `
1072
- # rpc GetCalendar(stream google.api.HttpBody)
1073
- # returns (stream google.api.HttpBody);
1074
- # rpc UpdateCalendar(stream google.api.HttpBody)
1075
- # returns (stream google.api.HttpBody);
1076
- # `
1077
- # Use of this type only changes how the request and response bodies are
1078
- # handled, all other features will continue to work unchanged.
1079
- # Corresponds to the JSON property `httpBody`
1080
- # @return [Google::Apis::MlV1beta1::GoogleApiHttpBody]
1081
- attr_accessor :http_body
1082
-
1083
- def initialize(**args)
1084
- update!(**args)
1085
- end
1086
-
1087
- # Update properties of this object
1088
- def update!(**args)
1089
- @http_body = args[:http_body] if args.key?(:http_body)
1090
- end
1091
- end
1092
-
1093
- # Represents input parameters for a prediction job.
1094
- class GoogleCloudMlV1beta1PredictionInput
1095
- include Google::Apis::Core::Hashable
1096
-
1097
- # Optional. Number of records per batch, defaults to 64.
1098
- # The service will buffer batch_size number of records in memory before
1099
- # invoking one Tensorflow prediction call internally. So take the record
1100
- # size and memory available into consideration when setting this parameter.
1101
- # Corresponds to the JSON property `batchSize`
1102
- # @return [Fixnum]
1103
- attr_accessor :batch_size
1104
-
1105
- # Required. The format of the input data files.
1106
- # Corresponds to the JSON property `dataFormat`
1107
- # @return [String]
1108
- attr_accessor :data_format
1109
-
1110
- # Required. The Google Cloud Storage location of the input data files.
1111
- # May contain wildcards.
1112
- # Corresponds to the JSON property `inputPaths`
1113
- # @return [Array<String>]
1114
- attr_accessor :input_paths
1115
-
1116
- # Optional. The maximum number of workers to be used for parallel processing.
1117
- # Defaults to 10 if not specified.
1118
- # Corresponds to the JSON property `maxWorkerCount`
1119
- # @return [Fixnum]
1120
- attr_accessor :max_worker_count
1121
-
1122
- # Use this field if you want to use the default version for the specified
1123
- # model. The string must use the following format:
1124
- # `"projects/<var>[YOUR_PROJECT]</var>/models/<var>[YOUR_MODEL]</var>"`
1125
- # Corresponds to the JSON property `modelName`
1126
- # @return [String]
1127
- attr_accessor :model_name
1128
-
1129
- # Required. The output Google Cloud Storage location.
1130
- # Corresponds to the JSON property `outputPath`
1131
- # @return [String]
1132
- attr_accessor :output_path
1133
-
1134
- # Required. The Google Compute Engine region to run the prediction job in.
1135
- # Corresponds to the JSON property `region`
1136
- # @return [String]
1137
- attr_accessor :region
1138
-
1139
- # Optional. The Google Cloud ML runtime version to use for this batch
1140
- # prediction. If not set, Google Cloud ML will pick the runtime version used
1141
- # during the CreateVersion request for this model version, or choose the
1142
- # latest stable version when model version information is not available
1143
- # such as when the model is specified by uri.
1144
- # Corresponds to the JSON property `runtimeVersion`
1145
- # @return [String]
1146
- attr_accessor :runtime_version
1147
-
1148
- # Use this field if you want to specify a Google Cloud Storage path for
1149
- # the model to use.
1150
- # Corresponds to the JSON property `uri`
1151
- # @return [String]
1152
- attr_accessor :uri
1153
-
1154
- # Use this field if you want to specify a version of the model to use. The
1155
- # string is formatted the same way as `model_version`, with the addition
1156
- # of the version information:
1157
- # `"projects/<var>[YOUR_PROJECT]</var>/models/<var>YOUR_MODEL/versions/<var>[
1158
- # YOUR_VERSION]</var>"`
1159
- # Corresponds to the JSON property `versionName`
1160
- # @return [String]
1161
- attr_accessor :version_name
1162
-
1163
- def initialize(**args)
1164
- update!(**args)
1165
- end
1166
-
1167
- # Update properties of this object
1168
- def update!(**args)
1169
- @batch_size = args[:batch_size] if args.key?(:batch_size)
1170
- @data_format = args[:data_format] if args.key?(:data_format)
1171
- @input_paths = args[:input_paths] if args.key?(:input_paths)
1172
- @max_worker_count = args[:max_worker_count] if args.key?(:max_worker_count)
1173
- @model_name = args[:model_name] if args.key?(:model_name)
1174
- @output_path = args[:output_path] if args.key?(:output_path)
1175
- @region = args[:region] if args.key?(:region)
1176
- @runtime_version = args[:runtime_version] if args.key?(:runtime_version)
1177
- @uri = args[:uri] if args.key?(:uri)
1178
- @version_name = args[:version_name] if args.key?(:version_name)
1179
- end
1180
- end
1181
-
1182
- # Represents results of a prediction job.
1183
- class GoogleCloudMlV1beta1PredictionOutput
1184
- include Google::Apis::Core::Hashable
1185
-
1186
- # The number of data instances which resulted in errors.
1187
- # Corresponds to the JSON property `errorCount`
1188
- # @return [Fixnum]
1189
- attr_accessor :error_count
1190
-
1191
- # Node hours used by the batch prediction job.
1192
- # Corresponds to the JSON property `nodeHours`
1193
- # @return [Float]
1194
- attr_accessor :node_hours
1195
-
1196
- # The output Google Cloud Storage location provided at the job creation time.
1197
- # Corresponds to the JSON property `outputPath`
1198
- # @return [String]
1199
- attr_accessor :output_path
1200
-
1201
- # The number of generated predictions.
1202
- # Corresponds to the JSON property `predictionCount`
1203
- # @return [Fixnum]
1204
- attr_accessor :prediction_count
1205
-
1206
- def initialize(**args)
1207
- update!(**args)
1208
- end
1209
-
1210
- # Update properties of this object
1211
- def update!(**args)
1212
- @error_count = args[:error_count] if args.key?(:error_count)
1213
- @node_hours = args[:node_hours] if args.key?(:node_hours)
1214
- @output_path = args[:output_path] if args.key?(:output_path)
1215
- @prediction_count = args[:prediction_count] if args.key?(:prediction_count)
1216
- end
1217
- end
1218
-
1219
- # Request message for the SetDefaultVersion request.
1220
- class GoogleCloudMlV1beta1SetDefaultVersionRequest
1221
- include Google::Apis::Core::Hashable
1222
-
1223
- def initialize(**args)
1224
- update!(**args)
1225
- end
1226
-
1227
- # Update properties of this object
1228
- def update!(**args)
1229
- end
1230
- end
1231
-
1232
- # Represents input parameters for a training job.
1233
- class GoogleCloudMlV1beta1TrainingInput
1234
- include Google::Apis::Core::Hashable
1235
-
1236
- # Optional. Command line arguments to pass to the program.
1237
- # Corresponds to the JSON property `args`
1238
- # @return [Array<String>]
1239
- attr_accessor :args
1240
-
1241
- # Represents a set of hyperparameters to optimize.
1242
- # Corresponds to the JSON property `hyperparameters`
1243
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterSpec]
1244
- attr_accessor :hyperparameters
1245
-
1246
- # Optional. A Google Cloud Storage path in which to store training outputs
1247
- # and other data needed for training. This path is passed to your TensorFlow
1248
- # program as the 'job_dir' command-line argument. The benefit of specifying
1249
- # this field is that Cloud ML validates the path for use in training.
1250
- # Corresponds to the JSON property `jobDir`
1251
- # @return [String]
1252
- attr_accessor :job_dir
1253
-
1254
- # Optional. Specifies the type of virtual machine to use for your training
1255
- # job's master worker.
1256
- # The following types are supported:
1257
- # <dl>
1258
- # <dt>standard</dt>
1259
- # <dd>
1260
- # A basic machine configuration suitable for training simple models with
1261
- # small to moderate datasets.
1262
- # </dd>
1263
- # <dt>large_model</dt>
1264
- # <dd>
1265
- # A machine with a lot of memory, specially suited for parameter servers
1266
- # when your model is large (having many hidden layers or layers with very
1267
- # large numbers of nodes).
1268
- # </dd>
1269
- # <dt>complex_model_s</dt>
1270
- # <dd>
1271
- # A machine suitable for the master and workers of the cluster when your
1272
- # model requires more computation than the standard machine can handle
1273
- # satisfactorily.
1274
- # </dd>
1275
- # <dt>complex_model_m</dt>
1276
- # <dd>
1277
- # A machine with roughly twice the number of cores and roughly double the
1278
- # memory of <code suppresswarning="true">complex_model_s</code>.
1279
- # </dd>
1280
- # <dt>complex_model_l</dt>
1281
- # <dd>
1282
- # A machine with roughly twice the number of cores and roughly double the
1283
- # memory of <code suppresswarning="true">complex_model_m</code>.
1284
- # </dd>
1285
- # <dt>standard_gpu</dt>
1286
- # <dd>
1287
- # A machine equivalent to <code suppresswarning="true">standard</code> that
1288
- # also includes a
1289
- # <a href="/ml-engine/docs/how-tos/using-gpus">
1290
- # GPU that you can use in your trainer</a>.
1291
- # </dd>
1292
- # <dt>complex_model_m_gpu</dt>
1293
- # <dd>
1294
- # A machine equivalent to
1295
- # <code suppresswarning="true">complex_model_m</code> that also includes
1296
- # four GPUs.
1297
- # </dd>
1298
- # </dl>
1299
- # You must set this value when `scaleTier` is set to `CUSTOM`.
1300
- # Corresponds to the JSON property `masterType`
1301
- # @return [String]
1302
- attr_accessor :master_type
1303
-
1304
- # Required. The Google Cloud Storage location of the packages with
1305
- # the training program and any additional dependencies.
1306
- # The maximum number of package URIs is 100.
1307
- # Corresponds to the JSON property `packageUris`
1308
- # @return [Array<String>]
1309
- attr_accessor :package_uris
1310
-
1311
- # Optional. The number of parameter server replicas to use for the training
1312
- # job. Each replica in the cluster will be of the type specified in
1313
- # `parameter_server_type`.
1314
- # This value can only be used when `scale_tier` is set to `CUSTOM`.If you
1315
- # set this value, you must also set `parameter_server_type`.
1316
- # Corresponds to the JSON property `parameterServerCount`
1317
- # @return [Fixnum]
1318
- attr_accessor :parameter_server_count
1319
-
1320
- # Optional. Specifies the type of virtual machine to use for your training
1321
- # job's parameter server.
1322
- # The supported values are the same as those described in the entry for
1323
- # `master_type`.
1324
- # This value must be present when `scaleTier` is set to `CUSTOM` and
1325
- # `parameter_server_count` is greater than zero.
1326
- # Corresponds to the JSON property `parameterServerType`
1327
- # @return [String]
1328
- attr_accessor :parameter_server_type
1329
-
1330
- # Required. The Python module name to run after installing the packages.
1331
- # Corresponds to the JSON property `pythonModule`
1332
- # @return [String]
1333
- attr_accessor :python_module
1334
-
1335
- # Required. The Google Compute Engine region to run the training job in.
1336
- # Corresponds to the JSON property `region`
1337
- # @return [String]
1338
- attr_accessor :region
1339
-
1340
- # Optional. The Google Cloud ML runtime version to use for training. If not
1341
- # set, Google Cloud ML will choose the latest stable version.
1342
- # Corresponds to the JSON property `runtimeVersion`
1343
- # @return [String]
1344
- attr_accessor :runtime_version
1345
-
1346
- # Required. Specifies the machine types, the number of replicas for workers
1347
- # and parameter servers.
1348
- # Corresponds to the JSON property `scaleTier`
1349
- # @return [String]
1350
- attr_accessor :scale_tier
1351
-
1352
- # Optional. The number of worker replicas to use for the training job. Each
1353
- # replica in the cluster will be of the type specified in `worker_type`.
1354
- # This value can only be used when `scale_tier` is set to `CUSTOM`. If you
1355
- # set this value, you must also set `worker_type`.
1356
- # Corresponds to the JSON property `workerCount`
1357
- # @return [Fixnum]
1358
- attr_accessor :worker_count
1359
-
1360
- # Optional. Specifies the type of virtual machine to use for your training
1361
- # job's worker nodes.
1362
- # The supported values are the same as those described in the entry for
1363
- # `masterType`.
1364
- # This value must be present when `scaleTier` is set to `CUSTOM` and
1365
- # `workerCount` is greater than zero.
1366
- # Corresponds to the JSON property `workerType`
1367
- # @return [String]
1368
- attr_accessor :worker_type
1369
-
1370
- def initialize(**args)
1371
- update!(**args)
1372
- end
1373
-
1374
- # Update properties of this object
1375
- def update!(**args)
1376
- @args = args[:args] if args.key?(:args)
1377
- @hyperparameters = args[:hyperparameters] if args.key?(:hyperparameters)
1378
- @job_dir = args[:job_dir] if args.key?(:job_dir)
1379
- @master_type = args[:master_type] if args.key?(:master_type)
1380
- @package_uris = args[:package_uris] if args.key?(:package_uris)
1381
- @parameter_server_count = args[:parameter_server_count] if args.key?(:parameter_server_count)
1382
- @parameter_server_type = args[:parameter_server_type] if args.key?(:parameter_server_type)
1383
- @python_module = args[:python_module] if args.key?(:python_module)
1384
- @region = args[:region] if args.key?(:region)
1385
- @runtime_version = args[:runtime_version] if args.key?(:runtime_version)
1386
- @scale_tier = args[:scale_tier] if args.key?(:scale_tier)
1387
- @worker_count = args[:worker_count] if args.key?(:worker_count)
1388
- @worker_type = args[:worker_type] if args.key?(:worker_type)
1389
- end
1390
- end
1391
-
1392
- # Represents results of a training job. Output only.
1393
- class GoogleCloudMlV1beta1TrainingOutput
1394
- include Google::Apis::Core::Hashable
1395
-
1396
- # The number of hyperparameter tuning trials that completed successfully.
1397
- # Only set for hyperparameter tuning jobs.
1398
- # Corresponds to the JSON property `completedTrialCount`
1399
- # @return [Fixnum]
1400
- attr_accessor :completed_trial_count
1401
-
1402
- # The amount of ML units consumed by the job.
1403
- # Corresponds to the JSON property `consumedMLUnits`
1404
- # @return [Float]
1405
- attr_accessor :consumed_ml_units
1406
-
1407
- # Whether this job is a hyperparameter tuning job.
1408
- # Corresponds to the JSON property `isHyperparameterTuningJob`
1409
- # @return [Boolean]
1410
- attr_accessor :is_hyperparameter_tuning_job
1411
- alias_method :is_hyperparameter_tuning_job?, :is_hyperparameter_tuning_job
1412
-
1413
- # Results for individual Hyperparameter trials.
1414
- # Only set for hyperparameter tuning jobs.
1415
- # Corresponds to the JSON property `trials`
1416
- # @return [Array<Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutput>]
1417
- attr_accessor :trials
1418
-
1419
- def initialize(**args)
1420
- update!(**args)
1421
- end
1422
-
1423
- # Update properties of this object
1424
- def update!(**args)
1425
- @completed_trial_count = args[:completed_trial_count] if args.key?(:completed_trial_count)
1426
- @consumed_ml_units = args[:consumed_ml_units] if args.key?(:consumed_ml_units)
1427
- @is_hyperparameter_tuning_job = args[:is_hyperparameter_tuning_job] if args.key?(:is_hyperparameter_tuning_job)
1428
- @trials = args[:trials] if args.key?(:trials)
1429
- end
1430
- end
1431
-
1432
- # Represents a version of the model.
1433
- # Each version is a trained model deployed in the cloud, ready to handle
1434
- # prediction requests. A model can have multiple versions. You can get
1435
- # information about all of the versions of a given model by calling
1436
- # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.
1437
- # models.versions/list).
1438
- # Next ID: 18
1439
- class GoogleCloudMlV1beta1Version
1440
- include Google::Apis::Core::Hashable
1441
-
1442
- # Options for automatically scaling a model.
1443
- # Corresponds to the JSON property `autoScaling`
1444
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1AutoScaling]
1445
- attr_accessor :auto_scaling
1446
-
1447
- # Output only. The time the version was created.
1448
- # Corresponds to the JSON property `createTime`
1449
- # @return [String]
1450
- attr_accessor :create_time
1451
-
1452
- # Required. The Google Cloud Storage location of the trained model used to
1453
- # create the version. See the
1454
- # [overview of model
1455
- # deployment](/ml-engine/docs/concepts/deployment-overview) for more
1456
- # information.
1457
- # When passing Version to
1458
- # [projects.models.versions.create](/ml-engine/reference/rest/v1beta1/projects.
1459
- # models.versions/create)
1460
- # the model service uses the specified location as the source of the model.
1461
- # Once deployed, the model version is hosted by the prediction service, so
1462
- # this location is useful only as a historical record.
1463
- # The total number of model files can't exceed 1000.
1464
- # Corresponds to the JSON property `deploymentUri`
1465
- # @return [String]
1466
- attr_accessor :deployment_uri
1467
-
1468
- # Optional. The description specified for the version when it was created.
1469
- # Corresponds to the JSON property `description`
1470
- # @return [String]
1471
- attr_accessor :description
1472
-
1473
- # Output only. The details of a failure or a cancellation.
1474
- # Corresponds to the JSON property `errorMessage`
1475
- # @return [String]
1476
- attr_accessor :error_message
1477
-
1478
- # Output only. If true, this version will be used to handle prediction
1479
- # requests that do not specify a version.
1480
- # You can change the default version by calling
1481
- # [projects.methods.versions.setDefault](/ml-engine/reference/rest/v1beta1/
1482
- # projects.models.versions/setDefault).
1483
- # Corresponds to the JSON property `isDefault`
1484
- # @return [Boolean]
1485
- attr_accessor :is_default
1486
- alias_method :is_default?, :is_default
1487
-
1488
- # Output only. The time the version was last used for prediction.
1489
- # Corresponds to the JSON property `lastUseTime`
1490
- # @return [String]
1491
- attr_accessor :last_use_time
1492
-
1493
- # Options for manually scaling a model.
1494
- # Corresponds to the JSON property `manualScaling`
1495
- # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ManualScaling]
1496
- attr_accessor :manual_scaling
1497
-
1498
- # Required.The name specified for the version when it was created.
1499
- # The version name must be unique within the model it is created in.
1500
- # Corresponds to the JSON property `name`
1501
- # @return [String]
1502
- attr_accessor :name
1503
-
1504
- # Optional. The Google Cloud ML runtime version to use for this deployment.
1505
- # If not set, Google Cloud ML will choose a version.
1506
- # Corresponds to the JSON property `runtimeVersion`
1507
- # @return [String]
1508
- attr_accessor :runtime_version
1509
-
1510
- # Output only. The state of a version.
1511
- # Corresponds to the JSON property `state`
1512
- # @return [String]
1513
- attr_accessor :state
1514
-
1515
- def initialize(**args)
1516
- update!(**args)
1517
- end
1518
-
1519
- # Update properties of this object
1520
- def update!(**args)
1521
- @auto_scaling = args[:auto_scaling] if args.key?(:auto_scaling)
1522
- @create_time = args[:create_time] if args.key?(:create_time)
1523
- @deployment_uri = args[:deployment_uri] if args.key?(:deployment_uri)
1524
- @description = args[:description] if args.key?(:description)
1525
- @error_message = args[:error_message] if args.key?(:error_message)
1526
- @is_default = args[:is_default] if args.key?(:is_default)
1527
- @last_use_time = args[:last_use_time] if args.key?(:last_use_time)
1528
- @manual_scaling = args[:manual_scaling] if args.key?(:manual_scaling)
1529
- @name = args[:name] if args.key?(:name)
1530
- @runtime_version = args[:runtime_version] if args.key?(:runtime_version)
1531
- @state = args[:state] if args.key?(:state)
1532
- end
1533
- end
1534
-
1535
- # Write a Cloud Audit log
1536
- class GoogleIamV1LogConfigCloudAuditOptions
1537
- include Google::Apis::Core::Hashable
1538
-
1539
- # The log_name to populate in the Cloud Audit Record.
1540
- # Corresponds to the JSON property `logName`
1541
- # @return [String]
1542
- attr_accessor :log_name
1543
-
1544
- def initialize(**args)
1545
- update!(**args)
1546
- end
1547
-
1548
- # Update properties of this object
1549
- def update!(**args)
1550
- @log_name = args[:log_name] if args.key?(:log_name)
1551
- end
1552
- end
1553
-
1554
- # Increment a streamz counter with the specified metric and field names.
1555
- # Metric names should start with a '/', generally be lowercase-only,
1556
- # and end in "_count". Field names should not contain an initial slash.
1557
- # The actual exported metric names will have "/iam/policy" prepended.
1558
- # Field names correspond to IAM request parameters and field values are
1559
- # their respective values.
1560
- # At present the only supported field names are
1561
- # - "iam_principal", corresponding to IAMContext.principal;
1562
- # - "" (empty string), resulting in one aggretated counter with no field.
1563
- # Examples:
1564
- # counter ` metric: "/debug_access_count" field: "iam_principal" `
1565
- # ==> increment counter /iam/policy/backend_debug_access_count
1566
- # `iam_principal=[value of IAMContext.principal]`
1567
- # At this time we do not support:
1568
- # * multiple field names (though this may be supported in the future)
1569
- # * decrementing the counter
1570
- # * incrementing it by anything other than 1
1571
- class GoogleIamV1LogConfigCounterOptions
1572
- include Google::Apis::Core::Hashable
1573
-
1574
- # The field value to attribute.
1575
- # Corresponds to the JSON property `field`
1576
- # @return [String]
1577
- attr_accessor :field
1578
-
1579
- # The metric to update.
1580
- # Corresponds to the JSON property `metric`
1581
- # @return [String]
1582
- attr_accessor :metric
1583
-
1584
- def initialize(**args)
1585
- update!(**args)
1586
- end
1587
-
1588
- # Update properties of this object
1589
- def update!(**args)
1590
- @field = args[:field] if args.key?(:field)
1591
- @metric = args[:metric] if args.key?(:metric)
1592
- end
1593
- end
1594
-
1595
- # Write a Data Access (Gin) log
1596
- class GoogleIamV1LogConfigDataAccessOptions
1597
- include Google::Apis::Core::Hashable
1598
-
1599
- # Whether Gin logging should happen in a fail-closed manner at the caller.
1600
- # This is relevant only in the LocalIAM implementation, for now.
1601
- # Corresponds to the JSON property `logMode`
1602
- # @return [String]
1603
- attr_accessor :log_mode
1604
-
1605
- def initialize(**args)
1606
- update!(**args)
1607
- end
1608
-
1609
- # Update properties of this object
1610
- def update!(**args)
1611
- @log_mode = args[:log_mode] if args.key?(:log_mode)
1612
- end
1613
- end
1614
-
1615
- # Specifies the audit configuration for a service.
1616
- # The configuration determines which permission types are logged, and what
1617
- # identities, if any, are exempted from logging.
1618
- # An AuditConfig must have one or more AuditLogConfigs.
1619
- # If there are AuditConfigs for both `allServices` and a specific service,
1620
- # the union of the two AuditConfigs is used for that service: the log_types
1621
- # specified in each AuditConfig are enabled, and the exempted_members in each
1622
- # AuditConfig are exempted.
1623
- # Example Policy with multiple AuditConfigs:
1624
- # `
1625
- # "audit_configs": [
1626
- # `
1627
- # "service": "allServices"
1628
- # "audit_log_configs": [
1629
- # `
1630
- # "log_type": "DATA_READ",
1631
- # "exempted_members": [
1632
- # "user:foo@gmail.com"
1633
- # ]
1634
- # `,
1635
- # `
1636
- # "log_type": "DATA_WRITE",
1637
- # `,
1638
- # `
1639
- # "log_type": "ADMIN_READ",
1640
- # `
1641
- # ]
1642
- # `,
1643
- # `
1644
- # "service": "fooservice.googleapis.com"
1645
- # "audit_log_configs": [
1646
- # `
1647
- # "log_type": "DATA_READ",
1648
- # `,
1649
- # `
1650
- # "log_type": "DATA_WRITE",
1651
- # "exempted_members": [
1652
- # "user:bar@gmail.com"
1653
- # ]
1654
- # `
1655
- # ]
1656
- # `
1657
- # ]
1658
- # `
1659
- # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1660
- # logging. It also exempts foo@gmail.com from DATA_READ logging, and
1661
- # bar@gmail.com from DATA_WRITE logging.
1662
- class GoogleIamV1AuditConfig
1663
- include Google::Apis::Core::Hashable
1664
-
1665
- # The configuration for logging of each type of permission.
1666
- # Next ID: 4
1667
- # Corresponds to the JSON property `auditLogConfigs`
1668
- # @return [Array<Google::Apis::MlV1beta1::GoogleIamV1AuditLogConfig>]
1669
- attr_accessor :audit_log_configs
1670
-
1671
- #
1672
- # Corresponds to the JSON property `exemptedMembers`
1673
- # @return [Array<String>]
1674
- attr_accessor :exempted_members
1675
-
1676
- # Specifies a service that will be enabled for audit logging.
1677
- # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1678
- # `allServices` is a special value that covers all services.
1679
- # Corresponds to the JSON property `service`
1680
- # @return [String]
1681
- attr_accessor :service
1682
-
1683
- def initialize(**args)
1684
- update!(**args)
1685
- end
1686
-
1687
- # Update properties of this object
1688
- def update!(**args)
1689
- @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
1690
- @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
1691
- @service = args[:service] if args.key?(:service)
1692
- end
1693
- end
1694
-
1695
- # Provides the configuration for logging a type of permissions.
1696
- # Example:
1697
- # `
1698
- # "audit_log_configs": [
1699
- # `
1700
- # "log_type": "DATA_READ",
1701
- # "exempted_members": [
1702
- # "user:foo@gmail.com"
1703
- # ]
1704
- # `,
1705
- # `
1706
- # "log_type": "DATA_WRITE",
1707
- # `
1708
- # ]
1709
- # `
1710
- # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
1711
- # foo@gmail.com from DATA_READ logging.
1712
- class GoogleIamV1AuditLogConfig
1713
- include Google::Apis::Core::Hashable
1714
-
1715
- # Specifies the identities that do not cause logging for this type of
1716
- # permission.
1717
- # Follows the same format of Binding.members.
1718
- # Corresponds to the JSON property `exemptedMembers`
1719
- # @return [Array<String>]
1720
- attr_accessor :exempted_members
1721
-
1722
- # The log type that this config enables.
1723
- # Corresponds to the JSON property `logType`
1724
- # @return [String]
1725
- attr_accessor :log_type
1726
-
1727
- def initialize(**args)
1728
- update!(**args)
1729
- end
1730
-
1731
- # Update properties of this object
1732
- def update!(**args)
1733
- @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
1734
- @log_type = args[:log_type] if args.key?(:log_type)
1735
- end
1736
- end
1737
-
1738
- # Associates `members` with a `role`.
1739
- class GoogleIamV1Binding
1740
- include Google::Apis::Core::Hashable
1741
-
1742
- # Represents an expression text. Example:
1743
- # title: "User account presence"
1744
- # description: "Determines whether the request has a user account"
1745
- # expression: "size(request.user) > 0"
1746
- # Corresponds to the JSON property `condition`
1747
- # @return [Google::Apis::MlV1beta1::GoogleTypeExpr]
1748
- attr_accessor :condition
1749
-
1750
- # Specifies the identities requesting access for a Cloud Platform resource.
1751
- # `members` can have the following values:
1752
- # * `allUsers`: A special identifier that represents anyone who is
1753
- # on the internet; with or without a Google account.
1754
- # * `allAuthenticatedUsers`: A special identifier that represents anyone
1755
- # who is authenticated with a Google account or a service account.
1756
- # * `user:`emailid``: An email address that represents a specific Google
1757
- # account. For example, `alice@gmail.com` or `joe@example.com`.
1758
- # * `serviceAccount:`emailid``: An email address that represents a service
1759
- # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1760
- # * `group:`emailid``: An email address that represents a Google group.
1761
- # For example, `admins@example.com`.
1762
- # * `domain:`domain``: A Google Apps domain name that represents all the
1763
- # users of that domain. For example, `google.com` or `example.com`.
1764
- # Corresponds to the JSON property `members`
1765
- # @return [Array<String>]
1766
- attr_accessor :members
1767
-
1768
- # Role that is assigned to `members`.
1769
- # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1770
- # Required
1771
- # Corresponds to the JSON property `role`
1772
- # @return [String]
1773
- attr_accessor :role
1774
-
1775
- def initialize(**args)
1776
- update!(**args)
1777
- end
1778
-
1779
- # Update properties of this object
1780
- def update!(**args)
1781
- @condition = args[:condition] if args.key?(:condition)
1782
- @members = args[:members] if args.key?(:members)
1783
- @role = args[:role] if args.key?(:role)
1784
- end
1785
- end
1786
-
1787
- # A condition to be met.
1788
- class GoogleIamV1Condition
1789
- include Google::Apis::Core::Hashable
1790
-
1791
- # Trusted attributes supplied by the IAM system.
1792
- # Corresponds to the JSON property `iam`
1793
- # @return [String]
1794
- attr_accessor :iam
1795
-
1796
- # An operator to apply the subject with.
1797
- # Corresponds to the JSON property `op`
1798
- # @return [String]
1799
- attr_accessor :op
1800
-
1801
- # Trusted attributes discharged by the service.
1802
- # Corresponds to the JSON property `svc`
1803
- # @return [String]
1804
- attr_accessor :svc
1805
-
1806
- # Trusted attributes supplied by any service that owns resources and uses
1807
- # the IAM system for access control.
1808
- # Corresponds to the JSON property `sys`
1809
- # @return [String]
1810
- attr_accessor :sys
1811
-
1812
- # DEPRECATED. Use 'values' instead.
1813
- # Corresponds to the JSON property `value`
1814
- # @return [String]
1815
- attr_accessor :value
1816
-
1817
- # The objects of the condition. This is mutually exclusive with 'value'.
1818
- # Corresponds to the JSON property `values`
1819
- # @return [Array<String>]
1820
- attr_accessor :values
1821
-
1822
- def initialize(**args)
1823
- update!(**args)
1824
- end
1825
-
1826
- # Update properties of this object
1827
- def update!(**args)
1828
- @iam = args[:iam] if args.key?(:iam)
1829
- @op = args[:op] if args.key?(:op)
1830
- @svc = args[:svc] if args.key?(:svc)
1831
- @sys = args[:sys] if args.key?(:sys)
1832
- @value = args[:value] if args.key?(:value)
1833
- @values = args[:values] if args.key?(:values)
1834
- end
1835
- end
1836
-
1837
- # Specifies what kind of log the caller must write
1838
- class GoogleIamV1LogConfig
1839
- include Google::Apis::Core::Hashable
1840
-
1841
- # Write a Cloud Audit log
1842
- # Corresponds to the JSON property `cloudAudit`
1843
- # @return [Google::Apis::MlV1beta1::GoogleIamV1LogConfigCloudAuditOptions]
1844
- attr_accessor :cloud_audit
1845
-
1846
- # Increment a streamz counter with the specified metric and field names.
1847
- # Metric names should start with a '/', generally be lowercase-only,
1848
- # and end in "_count". Field names should not contain an initial slash.
1849
- # The actual exported metric names will have "/iam/policy" prepended.
1850
- # Field names correspond to IAM request parameters and field values are
1851
- # their respective values.
1852
- # At present the only supported field names are
1853
- # - "iam_principal", corresponding to IAMContext.principal;
1854
- # - "" (empty string), resulting in one aggretated counter with no field.
1855
- # Examples:
1856
- # counter ` metric: "/debug_access_count" field: "iam_principal" `
1857
- # ==> increment counter /iam/policy/backend_debug_access_count
1858
- # `iam_principal=[value of IAMContext.principal]`
1859
- # At this time we do not support:
1860
- # * multiple field names (though this may be supported in the future)
1861
- # * decrementing the counter
1862
- # * incrementing it by anything other than 1
1863
- # Corresponds to the JSON property `counter`
1864
- # @return [Google::Apis::MlV1beta1::GoogleIamV1LogConfigCounterOptions]
1865
- attr_accessor :counter
1866
-
1867
- # Write a Data Access (Gin) log
1868
- # Corresponds to the JSON property `dataAccess`
1869
- # @return [Google::Apis::MlV1beta1::GoogleIamV1LogConfigDataAccessOptions]
1870
- attr_accessor :data_access
1871
-
1872
- def initialize(**args)
1873
- update!(**args)
1874
- end
1875
-
1876
- # Update properties of this object
1877
- def update!(**args)
1878
- @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
1879
- @counter = args[:counter] if args.key?(:counter)
1880
- @data_access = args[:data_access] if args.key?(:data_access)
1881
- end
1882
- end
1883
-
1884
- # Defines an Identity and Access Management (IAM) policy. It is used to
1885
- # specify access control policies for Cloud Platform resources.
1886
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
1887
- # `members` to a `role`, where the members can be user accounts, Google groups,
1888
- # Google domains, and service accounts. A `role` is a named list of permissions
1889
- # defined by IAM.
1890
- # **Example**
1891
- # `
1892
- # "bindings": [
1893
- # `
1894
- # "role": "roles/owner",
1895
- # "members": [
1896
- # "user:mike@example.com",
1897
- # "group:admins@example.com",
1898
- # "domain:google.com",
1899
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
1900
- # ]
1901
- # `,
1902
- # `
1903
- # "role": "roles/viewer",
1904
- # "members": ["user:sean@example.com"]
1905
- # `
1906
- # ]
1907
- # `
1908
- # For a description of IAM and its features, see the
1909
- # [IAM developer's guide](https://cloud.google.com/iam).
1910
- class GoogleIamV1Policy
1911
- include Google::Apis::Core::Hashable
1912
-
1913
- # Specifies cloud audit logging configuration for this policy.
1914
- # Corresponds to the JSON property `auditConfigs`
1915
- # @return [Array<Google::Apis::MlV1beta1::GoogleIamV1AuditConfig>]
1916
- attr_accessor :audit_configs
1917
-
1918
- # Associates a list of `members` to a `role`.
1919
- # `bindings` with no members will result in an error.
1920
- # Corresponds to the JSON property `bindings`
1921
- # @return [Array<Google::Apis::MlV1beta1::GoogleIamV1Binding>]
1922
- attr_accessor :bindings
1923
-
1924
- # `etag` is used for optimistic concurrency control as a way to help
1925
- # prevent simultaneous updates of a policy from overwriting each other.
1926
- # It is strongly suggested that systems make use of the `etag` in the
1927
- # read-modify-write cycle to perform policy updates in order to avoid race
1928
- # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1929
- # systems are expected to put that etag in the request to `setIamPolicy` to
1930
- # ensure that their change will be applied to the same version of the policy.
1931
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1932
- # policy is overwritten blindly.
1933
- # Corresponds to the JSON property `etag`
1934
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
1935
- # @return [String]
1936
- attr_accessor :etag
1937
-
1938
- #
1939
- # Corresponds to the JSON property `iamOwned`
1940
- # @return [Boolean]
1941
- attr_accessor :iam_owned
1942
- alias_method :iam_owned?, :iam_owned
1943
-
1944
- # If more than one rule is specified, the rules are applied in the following
1945
- # manner:
1946
- # - All matching LOG rules are always applied.
1947
- # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
1948
- # Logging will be applied if one or more matching rule requires logging.
1949
- # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
1950
- # granted.
1951
- # Logging will be applied if one or more matching rule requires logging.
1952
- # - Otherwise, if no rule applies, permission is denied.
1953
- # Corresponds to the JSON property `rules`
1954
- # @return [Array<Google::Apis::MlV1beta1::GoogleIamV1Rule>]
1955
- attr_accessor :rules
1956
-
1957
- # Version of the `Policy`. The default version is 0.
1958
- # Corresponds to the JSON property `version`
1959
- # @return [Fixnum]
1960
- attr_accessor :version
1961
-
1962
- def initialize(**args)
1963
- update!(**args)
1964
- end
1965
-
1966
- # Update properties of this object
1967
- def update!(**args)
1968
- @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
1969
- @bindings = args[:bindings] if args.key?(:bindings)
1970
- @etag = args[:etag] if args.key?(:etag)
1971
- @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
1972
- @rules = args[:rules] if args.key?(:rules)
1973
- @version = args[:version] if args.key?(:version)
1974
- end
1975
- end
1976
-
1977
- # A rule to be applied in a Policy.
1978
- class GoogleIamV1Rule
1979
- include Google::Apis::Core::Hashable
1980
-
1981
- # Required
1982
- # Corresponds to the JSON property `action`
1983
- # @return [String]
1984
- attr_accessor :action
1985
-
1986
- # Additional restrictions that must be met
1987
- # Corresponds to the JSON property `conditions`
1988
- # @return [Array<Google::Apis::MlV1beta1::GoogleIamV1Condition>]
1989
- attr_accessor :conditions
1990
-
1991
- # Human-readable description of the rule.
1992
- # Corresponds to the JSON property `description`
1993
- # @return [String]
1994
- attr_accessor :description
1995
-
1996
- # If one or more 'in' clauses are specified, the rule matches if
1997
- # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
1998
- # Corresponds to the JSON property `in`
1999
- # @return [Array<String>]
2000
- attr_accessor :in
2001
-
2002
- # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
2003
- # that match the LOG action.
2004
- # Corresponds to the JSON property `logConfig`
2005
- # @return [Array<Google::Apis::MlV1beta1::GoogleIamV1LogConfig>]
2006
- attr_accessor :log_config
2007
-
2008
- # If one or more 'not_in' clauses are specified, the rule matches
2009
- # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
2010
- # The format for in and not_in entries is the same as for members in a
2011
- # Binding (see google/iam/v1/policy.proto).
2012
- # Corresponds to the JSON property `notIn`
2013
- # @return [Array<String>]
2014
- attr_accessor :not_in
2015
-
2016
- # A permission is a string of form '<service>.<resource type>.<verb>'
2017
- # (e.g., 'storage.buckets.list'). A value of '*' matches all permissions,
2018
- # and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
2019
- # Corresponds to the JSON property `permissions`
2020
- # @return [Array<String>]
2021
- attr_accessor :permissions
2022
-
2023
- def initialize(**args)
2024
- update!(**args)
2025
- end
2026
-
2027
- # Update properties of this object
2028
- def update!(**args)
2029
- @action = args[:action] if args.key?(:action)
2030
- @conditions = args[:conditions] if args.key?(:conditions)
2031
- @description = args[:description] if args.key?(:description)
2032
- @in = args[:in] if args.key?(:in)
2033
- @log_config = args[:log_config] if args.key?(:log_config)
2034
- @not_in = args[:not_in] if args.key?(:not_in)
2035
- @permissions = args[:permissions] if args.key?(:permissions)
2036
- end
2037
- end
2038
-
2039
- # Request message for `SetIamPolicy` method.
2040
- class GoogleIamV1SetIamPolicyRequest
2041
- include Google::Apis::Core::Hashable
2042
-
2043
- # Defines an Identity and Access Management (IAM) policy. It is used to
2044
- # specify access control policies for Cloud Platform resources.
2045
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
2046
- # `members` to a `role`, where the members can be user accounts, Google groups,
2047
- # Google domains, and service accounts. A `role` is a named list of permissions
2048
- # defined by IAM.
2049
- # **Example**
2050
- # `
2051
- # "bindings": [
2052
- # `
2053
- # "role": "roles/owner",
2054
- # "members": [
2055
- # "user:mike@example.com",
2056
- # "group:admins@example.com",
2057
- # "domain:google.com",
2058
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
2059
- # ]
2060
- # `,
2061
- # `
2062
- # "role": "roles/viewer",
2063
- # "members": ["user:sean@example.com"]
2064
- # `
2065
- # ]
2066
- # `
2067
- # For a description of IAM and its features, see the
2068
- # [IAM developer's guide](https://cloud.google.com/iam).
2069
- # Corresponds to the JSON property `policy`
2070
- # @return [Google::Apis::MlV1beta1::GoogleIamV1Policy]
2071
- attr_accessor :policy
2072
-
2073
- # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
2074
- # the fields in the mask will be modified. If no mask is provided, the
2075
- # following default mask is used:
2076
- # paths: "bindings, etag"
2077
- # This field is only used by Cloud IAM.
2078
- # Corresponds to the JSON property `updateMask`
2079
- # @return [String]
2080
- attr_accessor :update_mask
2081
-
2082
- def initialize(**args)
2083
- update!(**args)
2084
- end
2085
-
2086
- # Update properties of this object
2087
- def update!(**args)
2088
- @policy = args[:policy] if args.key?(:policy)
2089
- @update_mask = args[:update_mask] if args.key?(:update_mask)
2090
- end
2091
- end
2092
-
2093
- # Request message for `TestIamPermissions` method.
2094
- class GoogleIamV1TestIamPermissionsRequest
2095
- include Google::Apis::Core::Hashable
2096
-
2097
- # The set of permissions to check for the `resource`. Permissions with
2098
- # wildcards (such as '*' or 'storage.*') are not allowed. For more
2099
- # information see
2100
- # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
2101
- # Corresponds to the JSON property `permissions`
2102
- # @return [Array<String>]
2103
- attr_accessor :permissions
2104
-
2105
- def initialize(**args)
2106
- update!(**args)
2107
- end
2108
-
2109
- # Update properties of this object
2110
- def update!(**args)
2111
- @permissions = args[:permissions] if args.key?(:permissions)
2112
- end
2113
- end
2114
-
2115
- # Response message for `TestIamPermissions` method.
2116
- class GoogleIamV1TestIamPermissionsResponse
2117
- include Google::Apis::Core::Hashable
2118
-
2119
- # A subset of `TestPermissionsRequest.permissions` that the caller is
2120
- # allowed.
2121
- # Corresponds to the JSON property `permissions`
2122
- # @return [Array<String>]
2123
- attr_accessor :permissions
2124
-
2125
- def initialize(**args)
2126
- update!(**args)
2127
- end
2128
-
2129
- # Update properties of this object
2130
- def update!(**args)
2131
- @permissions = args[:permissions] if args.key?(:permissions)
2132
- end
2133
- end
2134
-
2135
- # The response message for Operations.ListOperations.
2136
- class GoogleLongrunningListOperationsResponse
2137
- include Google::Apis::Core::Hashable
2138
-
2139
- # The standard List next-page token.
2140
- # Corresponds to the JSON property `nextPageToken`
2141
- # @return [String]
2142
- attr_accessor :next_page_token
2143
-
2144
- # A list of operations that matches the specified filter in the request.
2145
- # Corresponds to the JSON property `operations`
2146
- # @return [Array<Google::Apis::MlV1beta1::GoogleLongrunningOperation>]
2147
- attr_accessor :operations
2148
-
2149
- def initialize(**args)
2150
- update!(**args)
2151
- end
2152
-
2153
- # Update properties of this object
2154
- def update!(**args)
2155
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2156
- @operations = args[:operations] if args.key?(:operations)
2157
- end
2158
- end
2159
-
2160
- # This resource represents a long-running operation that is the result of a
2161
- # network API call.
2162
- class GoogleLongrunningOperation
2163
- include Google::Apis::Core::Hashable
2164
-
2165
- # If the value is `false`, it means the operation is still in progress.
2166
- # If true, the operation is completed, and either `error` or `response` is
2167
- # available.
2168
- # Corresponds to the JSON property `done`
2169
- # @return [Boolean]
2170
- attr_accessor :done
2171
- alias_method :done?, :done
2172
-
2173
- # The `Status` type defines a logical error model that is suitable for different
2174
- # programming environments, including REST APIs and RPC APIs. It is used by
2175
- # [gRPC](https://github.com/grpc). The error model is designed to be:
2176
- # - Simple to use and understand for most users
2177
- # - Flexible enough to meet unexpected needs
2178
- # # Overview
2179
- # The `Status` message contains three pieces of data: error code, error message,
2180
- # and error details. The error code should be an enum value of
2181
- # google.rpc.Code, but it may accept additional error codes if needed. The
2182
- # error message should be a developer-facing English message that helps
2183
- # developers *understand* and *resolve* the error. If a localized user-facing
2184
- # error message is needed, put the localized message in the error details or
2185
- # localize it in the client. The optional error details may contain arbitrary
2186
- # information about the error. There is a predefined set of error detail types
2187
- # in the package `google.rpc` that can be used for common error conditions.
2188
- # # Language mapping
2189
- # The `Status` message is the logical representation of the error model, but it
2190
- # is not necessarily the actual wire format. When the `Status` message is
2191
- # exposed in different client libraries and different wire protocols, it can be
2192
- # mapped differently. For example, it will likely be mapped to some exceptions
2193
- # in Java, but more likely mapped to some error codes in C.
2194
- # # Other uses
2195
- # The error model and the `Status` message can be used in a variety of
2196
- # environments, either with or without APIs, to provide a
2197
- # consistent developer experience across different environments.
2198
- # Example uses of this error model include:
2199
- # - Partial errors. If a service needs to return partial errors to the client,
2200
- # it may embed the `Status` in the normal response to indicate the partial
2201
- # errors.
2202
- # - Workflow errors. A typical workflow has multiple steps. Each step may
2203
- # have a `Status` message for error reporting.
2204
- # - Batch operations. If a client uses batch request and batch response, the
2205
- # `Status` message should be used directly inside batch response, one for
2206
- # each error sub-response.
2207
- # - Asynchronous operations. If an API call embeds asynchronous operation
2208
- # results in its response, the status of those operations should be
2209
- # represented directly using the `Status` message.
2210
- # - Logging. If some API errors are stored in logs, the message `Status` could
2211
- # be used directly after any stripping needed for security/privacy reasons.
2212
- # Corresponds to the JSON property `error`
2213
- # @return [Google::Apis::MlV1beta1::GoogleRpcStatus]
2214
- attr_accessor :error
2215
-
2216
- # Service-specific metadata associated with the operation. It typically
2217
- # contains progress information and common metadata such as create time.
2218
- # Some services might not provide such metadata. Any method that returns a
2219
- # long-running operation should document the metadata type, if any.
2220
- # Corresponds to the JSON property `metadata`
2221
- # @return [Hash<String,Object>]
2222
- attr_accessor :metadata
2223
-
2224
- # The server-assigned name, which is only unique within the same service that
2225
- # originally returns it. If you use the default HTTP mapping, the
2226
- # `name` should have the format of `operations/some/unique/name`.
2227
- # Corresponds to the JSON property `name`
2228
- # @return [String]
2229
- attr_accessor :name
2230
-
2231
- # The normal response of the operation in case of success. If the original
2232
- # method returns no data on success, such as `Delete`, the response is
2233
- # `google.protobuf.Empty`. If the original method is standard
2234
- # `Get`/`Create`/`Update`, the response should be the resource. For other
2235
- # methods, the response should have the type `XxxResponse`, where `Xxx`
2236
- # is the original method name. For example, if the original method name
2237
- # is `TakeSnapshot()`, the inferred response type is
2238
- # `TakeSnapshotResponse`.
2239
- # Corresponds to the JSON property `response`
2240
- # @return [Hash<String,Object>]
2241
- attr_accessor :response
2242
-
2243
- def initialize(**args)
2244
- update!(**args)
2245
- end
2246
-
2247
- # Update properties of this object
2248
- def update!(**args)
2249
- @done = args[:done] if args.key?(:done)
2250
- @error = args[:error] if args.key?(:error)
2251
- @metadata = args[:metadata] if args.key?(:metadata)
2252
- @name = args[:name] if args.key?(:name)
2253
- @response = args[:response] if args.key?(:response)
2254
- end
2255
- end
2256
-
2257
- # A generic empty message that you can re-use to avoid defining duplicated
2258
- # empty messages in your APIs. A typical example is to use it as the request
2259
- # or the response type of an API method. For instance:
2260
- # service Foo `
2261
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
2262
- # `
2263
- # The JSON representation for `Empty` is empty JSON object ````.
2264
- class GoogleProtobufEmpty
2265
- include Google::Apis::Core::Hashable
2266
-
2267
- def initialize(**args)
2268
- update!(**args)
2269
- end
2270
-
2271
- # Update properties of this object
2272
- def update!(**args)
2273
- end
2274
- end
2275
-
2276
- # The `Status` type defines a logical error model that is suitable for different
2277
- # programming environments, including REST APIs and RPC APIs. It is used by
2278
- # [gRPC](https://github.com/grpc). The error model is designed to be:
2279
- # - Simple to use and understand for most users
2280
- # - Flexible enough to meet unexpected needs
2281
- # # Overview
2282
- # The `Status` message contains three pieces of data: error code, error message,
2283
- # and error details. The error code should be an enum value of
2284
- # google.rpc.Code, but it may accept additional error codes if needed. The
2285
- # error message should be a developer-facing English message that helps
2286
- # developers *understand* and *resolve* the error. If a localized user-facing
2287
- # error message is needed, put the localized message in the error details or
2288
- # localize it in the client. The optional error details may contain arbitrary
2289
- # information about the error. There is a predefined set of error detail types
2290
- # in the package `google.rpc` that can be used for common error conditions.
2291
- # # Language mapping
2292
- # The `Status` message is the logical representation of the error model, but it
2293
- # is not necessarily the actual wire format. When the `Status` message is
2294
- # exposed in different client libraries and different wire protocols, it can be
2295
- # mapped differently. For example, it will likely be mapped to some exceptions
2296
- # in Java, but more likely mapped to some error codes in C.
2297
- # # Other uses
2298
- # The error model and the `Status` message can be used in a variety of
2299
- # environments, either with or without APIs, to provide a
2300
- # consistent developer experience across different environments.
2301
- # Example uses of this error model include:
2302
- # - Partial errors. If a service needs to return partial errors to the client,
2303
- # it may embed the `Status` in the normal response to indicate the partial
2304
- # errors.
2305
- # - Workflow errors. A typical workflow has multiple steps. Each step may
2306
- # have a `Status` message for error reporting.
2307
- # - Batch operations. If a client uses batch request and batch response, the
2308
- # `Status` message should be used directly inside batch response, one for
2309
- # each error sub-response.
2310
- # - Asynchronous operations. If an API call embeds asynchronous operation
2311
- # results in its response, the status of those operations should be
2312
- # represented directly using the `Status` message.
2313
- # - Logging. If some API errors are stored in logs, the message `Status` could
2314
- # be used directly after any stripping needed for security/privacy reasons.
2315
- class GoogleRpcStatus
2316
- include Google::Apis::Core::Hashable
2317
-
2318
- # The status code, which should be an enum value of google.rpc.Code.
2319
- # Corresponds to the JSON property `code`
2320
- # @return [Fixnum]
2321
- attr_accessor :code
2322
-
2323
- # A list of messages that carry the error details. There is a common set of
2324
- # message types for APIs to use.
2325
- # Corresponds to the JSON property `details`
2326
- # @return [Array<Hash<String,Object>>]
2327
- attr_accessor :details
2328
-
2329
- # A developer-facing error message, which should be in English. Any
2330
- # user-facing error message should be localized and sent in the
2331
- # google.rpc.Status.details field, or localized by the client.
2332
- # Corresponds to the JSON property `message`
2333
- # @return [String]
2334
- attr_accessor :message
2335
-
2336
- def initialize(**args)
2337
- update!(**args)
2338
- end
2339
-
2340
- # Update properties of this object
2341
- def update!(**args)
2342
- @code = args[:code] if args.key?(:code)
2343
- @details = args[:details] if args.key?(:details)
2344
- @message = args[:message] if args.key?(:message)
2345
- end
2346
- end
2347
-
2348
- # Represents an expression text. Example:
2349
- # title: "User account presence"
2350
- # description: "Determines whether the request has a user account"
2351
- # expression: "size(request.user) > 0"
2352
- class GoogleTypeExpr
2353
- include Google::Apis::Core::Hashable
2354
-
2355
- # An optional description of the expression. This is a longer text which
2356
- # describes the expression, e.g. when hovered over it in a UI.
2357
- # Corresponds to the JSON property `description`
2358
- # @return [String]
2359
- attr_accessor :description
2360
-
2361
- # Textual representation of an expression in
2362
- # Common Expression Language syntax.
2363
- # The application context of the containing message determines which
2364
- # well-known feature set of CEL is supported.
2365
- # Corresponds to the JSON property `expression`
2366
- # @return [String]
2367
- attr_accessor :expression
2368
-
2369
- # An optional string indicating the location of the expression for error
2370
- # reporting, e.g. a file name and a position in the file.
2371
- # Corresponds to the JSON property `location`
2372
- # @return [String]
2373
- attr_accessor :location
2374
-
2375
- # An optional title for the expression, i.e. a short string describing
2376
- # its purpose. This can be used e.g. in UIs which allow to enter the
2377
- # expression.
2378
- # Corresponds to the JSON property `title`
2379
- # @return [String]
2380
- attr_accessor :title
2381
-
2382
- def initialize(**args)
2383
- update!(**args)
2384
- end
2385
-
2386
- # Update properties of this object
2387
- def update!(**args)
2388
- @description = args[:description] if args.key?(:description)
2389
- @expression = args[:expression] if args.key?(:expression)
2390
- @location = args[:location] if args.key?(:location)
2391
- @title = args[:title] if args.key?(:title)
2392
- end
2393
- end
2394
- end
2395
- end
2396
- end