google-api-client 0.45.1 → 0.46.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +61 -0
  3. data/generated/google/apis/accessapproval_v1.rb +1 -1
  4. data/generated/google/apis/accessapproval_v1/classes.rb +25 -16
  5. data/generated/google/apis/accessapproval_v1/service.rb +27 -27
  6. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  7. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  8. data/generated/google/apis/androidpublisher_v3/classes.rb +7 -0
  9. data/generated/google/apis/androidpublisher_v3/representations.rb +1 -0
  10. data/generated/google/apis/apigee_v1.rb +1 -1
  11. data/generated/google/apis/apigee_v1/classes.rb +5 -5
  12. data/generated/google/apis/apigee_v1/service.rb +21 -19
  13. data/generated/google/apis/appsmarket_v2.rb +1 -1
  14. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  15. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +264 -0
  16. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +129 -0
  17. data/generated/google/apis/bigquery_v2.rb +1 -1
  18. data/generated/google/apis/bigquery_v2/classes.rb +38 -18
  19. data/generated/google/apis/bigquery_v2/representations.rb +2 -0
  20. data/generated/google/apis/books_v1.rb +1 -1
  21. data/generated/google/apis/books_v1/service.rb +2 -2
  22. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  23. data/generated/google/apis/cloudidentity_v1/classes.rb +78 -64
  24. data/generated/google/apis/cloudidentity_v1/service.rb +85 -69
  25. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  26. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +3 -0
  27. data/generated/google/apis/cloudidentity_v1beta1/service.rb +26 -11
  28. data/generated/google/apis/composer_v1beta1.rb +1 -1
  29. data/generated/google/apis/composer_v1beta1/classes.rb +2 -1
  30. data/generated/google/apis/compute_alpha.rb +1 -1
  31. data/generated/google/apis/compute_alpha/classes.rb +513 -131
  32. data/generated/google/apis/compute_alpha/representations.rb +124 -8
  33. data/generated/google/apis/compute_alpha/service.rb +1685 -762
  34. data/generated/google/apis/compute_beta.rb +1 -1
  35. data/generated/google/apis/compute_beta/classes.rb +491 -83
  36. data/generated/google/apis/compute_beta/representations.rb +96 -1
  37. data/generated/google/apis/compute_beta/service.rb +802 -133
  38. data/generated/google/apis/compute_v1.rb +1 -1
  39. data/generated/google/apis/compute_v1/classes.rb +308 -45
  40. data/generated/google/apis/compute_v1/representations.rb +54 -1
  41. data/generated/google/apis/compute_v1/service.rb +736 -130
  42. data/generated/google/apis/content_v2.rb +1 -1
  43. data/generated/google/apis/content_v2/classes.rb +2 -1
  44. data/generated/google/apis/content_v2_1.rb +1 -1
  45. data/generated/google/apis/content_v2_1/classes.rb +2 -1
  46. data/generated/google/apis/datafusion_v1.rb +1 -1
  47. data/generated/google/apis/dataproc_v1.rb +1 -1
  48. data/generated/google/apis/dataproc_v1/classes.rb +28 -2
  49. data/generated/google/apis/dataproc_v1/representations.rb +15 -0
  50. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  51. data/generated/google/apis/dataproc_v1beta2/classes.rb +28 -2
  52. data/generated/google/apis/dataproc_v1beta2/representations.rb +15 -0
  53. data/generated/google/apis/dialogflow_v2.rb +1 -1
  54. data/generated/google/apis/dialogflow_v2/classes.rb +87 -0
  55. data/generated/google/apis/dialogflow_v2/representations.rb +45 -0
  56. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  57. data/generated/google/apis/dialogflow_v2beta1/classes.rb +94 -8
  58. data/generated/google/apis/dialogflow_v2beta1/representations.rb +45 -0
  59. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  60. data/generated/google/apis/dialogflow_v3beta1/classes.rb +87 -0
  61. data/generated/google/apis/dialogflow_v3beta1/representations.rb +45 -0
  62. data/generated/google/apis/file_v1.rb +1 -1
  63. data/generated/google/apis/file_v1/classes.rb +1 -1
  64. data/generated/google/apis/file_v1beta1.rb +1 -1
  65. data/generated/google/apis/file_v1beta1/classes.rb +1 -1
  66. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  67. data/generated/google/apis/genomics_v2alpha1/classes.rb +104 -0
  68. data/generated/google/apis/genomics_v2alpha1/representations.rb +47 -0
  69. data/generated/google/apis/jobs_v2.rb +1 -1
  70. data/generated/google/apis/jobs_v2/classes.rb +798 -0
  71. data/generated/google/apis/jobs_v2/representations.rb +272 -0
  72. data/generated/google/apis/jobs_v3.rb +1 -1
  73. data/generated/google/apis/jobs_v3/classes.rb +798 -0
  74. data/generated/google/apis/jobs_v3/representations.rb +272 -0
  75. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  76. data/generated/google/apis/jobs_v3p1beta1/classes.rb +759 -0
  77. data/generated/google/apis/jobs_v3p1beta1/representations.rb +257 -0
  78. data/generated/google/apis/managedidentities_v1.rb +1 -1
  79. data/generated/google/apis/managedidentities_v1/classes.rb +7 -0
  80. data/generated/google/apis/managedidentities_v1/representations.rb +1 -0
  81. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  82. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +7 -0
  83. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +1 -0
  84. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  85. data/generated/google/apis/managedidentities_v1beta1/classes.rb +7 -0
  86. data/generated/google/apis/managedidentities_v1beta1/representations.rb +1 -0
  87. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  88. data/generated/google/apis/memcache_v1beta2/service.rb +5 -5
  89. data/generated/google/apis/monitoring_v3.rb +1 -1
  90. data/generated/google/apis/monitoring_v3/classes.rb +7 -7
  91. data/generated/google/apis/monitoring_v3/service.rb +5 -5
  92. data/generated/google/apis/osconfig_v1.rb +3 -3
  93. data/generated/google/apis/osconfig_v1/service.rb +4 -4
  94. data/generated/google/apis/osconfig_v1beta.rb +3 -3
  95. data/generated/google/apis/osconfig_v1beta/service.rb +4 -4
  96. data/generated/google/apis/pubsublite_v1.rb +1 -1
  97. data/generated/google/apis/pubsublite_v1/classes.rb +2 -2
  98. data/generated/google/apis/recommender_v1.rb +1 -1
  99. data/generated/google/apis/recommender_v1/service.rb +4 -2
  100. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  101. data/generated/google/apis/recommender_v1beta1/service.rb +4 -2
  102. data/generated/google/apis/redis_v1.rb +1 -1
  103. data/generated/google/apis/redis_v1/classes.rb +5 -5
  104. data/generated/google/apis/redis_v1/service.rb +2 -2
  105. data/generated/google/apis/redis_v1beta1.rb +1 -1
  106. data/generated/google/apis/redis_v1beta1/classes.rb +33 -5
  107. data/generated/google/apis/redis_v1beta1/representations.rb +14 -0
  108. data/generated/google/apis/redis_v1beta1/service.rb +36 -2
  109. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  110. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +1 -1
  111. data/generated/google/apis/sheets_v4.rb +1 -1
  112. data/generated/google/apis/sheets_v4/classes.rb +174 -84
  113. data/generated/google/apis/storage_v1.rb +1 -1
  114. data/generated/google/apis/storage_v1/classes.rb +2 -10
  115. data/generated/google/apis/storage_v1/representations.rb +0 -1
  116. data/generated/google/apis/storage_v1/service.rb +3 -2
  117. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  118. data/generated/google/apis/storagetransfer_v1/service.rb +1 -1
  119. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  120. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  121. data/generated/google/apis/translate_v3.rb +1 -1
  122. data/generated/google/apis/translate_v3/classes.rb +2 -2
  123. data/generated/google/apis/videointelligence_v1.rb +1 -1
  124. data/generated/google/apis/videointelligence_v1/classes.rb +308 -13
  125. data/generated/google/apis/videointelligence_v1/representations.rb +162 -3
  126. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  127. data/generated/google/apis/videointelligence_v1beta2/classes.rb +308 -13
  128. data/generated/google/apis/videointelligence_v1beta2/representations.rb +162 -3
  129. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  130. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +308 -13
  131. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +162 -3
  132. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  133. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +308 -13
  134. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +162 -3
  135. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  136. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +224 -13
  137. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +128 -3
  138. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  139. data/generated/google/apis/youtube_v3.rb +1 -1
  140. data/generated/google/apis/youtube_v3/service.rb +2 -2
  141. data/lib/google/apis/version.rb +1 -1
  142. metadata +3 -15
  143. data/generated/google/apis/apigateway_v1alpha1.rb +0 -34
  144. data/generated/google/apis/apigateway_v1alpha1/classes.rb +0 -633
  145. data/generated/google/apis/apigateway_v1alpha1/representations.rb +0 -250
  146. data/generated/google/apis/apigateway_v1alpha1/service.rb +0 -623
  147. data/generated/google/apis/apigateway_v1alpha2.rb +0 -34
  148. data/generated/google/apis/apigateway_v1alpha2/classes.rb +0 -633
  149. data/generated/google/apis/apigateway_v1alpha2/representations.rb +0 -250
  150. data/generated/google/apis/apigateway_v1alpha2/service.rb +0 -623
  151. data/generated/google/apis/appsactivity_v1.rb +0 -34
  152. data/generated/google/apis/appsactivity_v1/classes.rb +0 -415
  153. data/generated/google/apis/appsactivity_v1/representations.rb +0 -209
  154. data/generated/google/apis/appsactivity_v1/service.rb +0 -126
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/genomics
26
26
  module GenomicsV2alpha1
27
27
  VERSION = 'V2alpha1'
28
- REVISION = '20200825'
28
+ REVISION = '20200927'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -565,6 +565,32 @@ module Google
565
565
  end
566
566
  end
567
567
 
568
+ # Configuration for an existing disk to be attached to the VM.
569
+ class ExistingDisk
570
+ include Google::Apis::Core::Hashable
571
+
572
+ # If `disk` contains slashes, the Cloud Life Sciences API assumes that it is a
573
+ # complete URL for the disk. If `disk` does not contain slashes, the Cloud Life
574
+ # Sciences API assumes that the disk is a zonal disk and a URL will be generated
575
+ # of the form `zones//disks/`, where `` is the zone in which the instance is
576
+ # allocated. The disk must be ext4 formatted. If all `Mount` references to this
577
+ # disk have the `read_only` flag set to true, the disk will be attached in `read-
578
+ # only` mode and can be shared with other instances. Otherwise, the disk will be
579
+ # available for writing but cannot be shared.
580
+ # Corresponds to the JSON property `disk`
581
+ # @return [String]
582
+ attr_accessor :disk
583
+
584
+ def initialize(**args)
585
+ update!(**args)
586
+ end
587
+
588
+ # Update properties of this object
589
+ def update!(**args)
590
+ @disk = args[:disk] if args.key?(:disk)
591
+ end
592
+ end
593
+
568
594
  # An event generated when the execution of a pipeline has failed. Note that
569
595
  # other events can continue to occur after this event.
570
596
  class FailedEvent
@@ -900,6 +926,43 @@ module Google
900
926
  end
901
927
  end
902
928
 
929
+ # Configuration for a persistent disk to be attached to the VM. See https://
930
+ # cloud.google.com/compute/docs/disks/performance for more information about
931
+ # disk type, size, and performance considerations.
932
+ class PersistentDisk
933
+ include Google::Apis::Core::Hashable
934
+
935
+ # The size, in GB, of the disk to attach. If the size is not specified, a
936
+ # default is chosen to ensure reasonable I/O performance. If the disk type is
937
+ # specified as `local-ssd`, multiple local drives are automatically combined to
938
+ # provide the requested size. Note, however, that each physical SSD is 375GB in
939
+ # size, and no more than 8 drives can be attached to a single instance.
940
+ # Corresponds to the JSON property `sizeGb`
941
+ # @return [Fixnum]
942
+ attr_accessor :size_gb
943
+
944
+ # An image to put on the disk before attaching it to the VM.
945
+ # Corresponds to the JSON property `sourceImage`
946
+ # @return [String]
947
+ attr_accessor :source_image
948
+
949
+ # The Compute Engine disk type. If unspecified, `pd-standard` is used.
950
+ # Corresponds to the JSON property `type`
951
+ # @return [String]
952
+ attr_accessor :type
953
+
954
+ def initialize(**args)
955
+ update!(**args)
956
+ end
957
+
958
+ # Update properties of this object
959
+ def update!(**args)
960
+ @size_gb = args[:size_gb] if args.key?(:size_gb)
961
+ @source_image = args[:source_image] if args.key?(:source_image)
962
+ @type = args[:type] if args.key?(:type)
963
+ end
964
+ end
965
+
903
966
  # Specifies a series of actions to execute, expressed as Docker containers.
904
967
  class Pipeline
905
968
  include Google::Apis::Core::Hashable
@@ -1342,6 +1405,11 @@ module Google
1342
1405
  # @return [Google::Apis::GenomicsV2alpha1::ServiceAccount]
1343
1406
  attr_accessor :service_account
1344
1407
 
1408
+ # The list of disks and other storage to create or attach to the VM.
1409
+ # Corresponds to the JSON property `volumes`
1410
+ # @return [Array<Google::Apis::GenomicsV2alpha1::Volume>]
1411
+ attr_accessor :volumes
1412
+
1345
1413
  def initialize(**args)
1346
1414
  update!(**args)
1347
1415
  end
@@ -1361,6 +1429,42 @@ module Google
1361
1429
  @nvidia_driver_version = args[:nvidia_driver_version] if args.key?(:nvidia_driver_version)
1362
1430
  @preemptible = args[:preemptible] if args.key?(:preemptible)
1363
1431
  @service_account = args[:service_account] if args.key?(:service_account)
1432
+ @volumes = args[:volumes] if args.key?(:volumes)
1433
+ end
1434
+ end
1435
+
1436
+ # Carries information about storage that can be attached to a VM.
1437
+ class Volume
1438
+ include Google::Apis::Core::Hashable
1439
+
1440
+ # Configuration for an existing disk to be attached to the VM.
1441
+ # Corresponds to the JSON property `existingDisk`
1442
+ # @return [Google::Apis::GenomicsV2alpha1::ExistingDisk]
1443
+ attr_accessor :existing_disk
1444
+
1445
+ # Configuration for a persistent disk to be attached to the VM. See https://
1446
+ # cloud.google.com/compute/docs/disks/performance for more information about
1447
+ # disk type, size, and performance considerations.
1448
+ # Corresponds to the JSON property `persistentDisk`
1449
+ # @return [Google::Apis::GenomicsV2alpha1::PersistentDisk]
1450
+ attr_accessor :persistent_disk
1451
+
1452
+ # A user-supplied name for the volume. Used when mounting the volume into `
1453
+ # Actions`. The name must contain only upper and lowercase alphanumeric
1454
+ # characters and hyphens and cannot start with a hyphen.
1455
+ # Corresponds to the JSON property `volume`
1456
+ # @return [String]
1457
+ attr_accessor :volume
1458
+
1459
+ def initialize(**args)
1460
+ update!(**args)
1461
+ end
1462
+
1463
+ # Update properties of this object
1464
+ def update!(**args)
1465
+ @existing_disk = args[:existing_disk] if args.key?(:existing_disk)
1466
+ @persistent_disk = args[:persistent_disk] if args.key?(:persistent_disk)
1467
+ @volume = args[:volume] if args.key?(:volume)
1364
1468
  end
1365
1469
  end
1366
1470
 
@@ -106,6 +106,12 @@ module Google
106
106
  include Google::Apis::Core::JsonObjectSupport
107
107
  end
108
108
 
109
+ class ExistingDisk
110
+ class Representation < Google::Apis::Core::JsonRepresentation; end
111
+
112
+ include Google::Apis::Core::JsonObjectSupport
113
+ end
114
+
109
115
  class FailedEvent
110
116
  class Representation < Google::Apis::Core::JsonRepresentation; end
111
117
 
@@ -154,6 +160,12 @@ module Google
154
160
  include Google::Apis::Core::JsonObjectSupport
155
161
  end
156
162
 
163
+ class PersistentDisk
164
+ class Representation < Google::Apis::Core::JsonRepresentation; end
165
+
166
+ include Google::Apis::Core::JsonObjectSupport
167
+ end
168
+
157
169
  class Pipeline
158
170
  class Representation < Google::Apis::Core::JsonRepresentation; end
159
171
 
@@ -232,6 +244,12 @@ module Google
232
244
  include Google::Apis::Core::JsonObjectSupport
233
245
  end
234
246
 
247
+ class Volume
248
+ class Representation < Google::Apis::Core::JsonRepresentation; end
249
+
250
+ include Google::Apis::Core::JsonObjectSupport
251
+ end
252
+
235
253
  class WorkerAssignedEvent
236
254
  class Representation < Google::Apis::Core::JsonRepresentation; end
237
255
 
@@ -384,6 +402,13 @@ module Google
384
402
  end
385
403
  end
386
404
 
405
+ class ExistingDisk
406
+ # @private
407
+ class Representation < Google::Apis::Core::JsonRepresentation
408
+ property :disk, as: 'disk'
409
+ end
410
+ end
411
+
387
412
  class FailedEvent
388
413
  # @private
389
414
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -470,6 +495,15 @@ module Google
470
495
  end
471
496
  end
472
497
 
498
+ class PersistentDisk
499
+ # @private
500
+ class Representation < Google::Apis::Core::JsonRepresentation
501
+ property :size_gb, as: 'sizeGb'
502
+ property :source_image, as: 'sourceImage'
503
+ property :type, as: 'type'
504
+ end
505
+ end
506
+
473
507
  class Pipeline
474
508
  # @private
475
509
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -591,6 +625,19 @@ module Google
591
625
  property :preemptible, as: 'preemptible'
592
626
  property :service_account, as: 'serviceAccount', class: Google::Apis::GenomicsV2alpha1::ServiceAccount, decorator: Google::Apis::GenomicsV2alpha1::ServiceAccount::Representation
593
627
 
628
+ collection :volumes, as: 'volumes', class: Google::Apis::GenomicsV2alpha1::Volume, decorator: Google::Apis::GenomicsV2alpha1::Volume::Representation
629
+
630
+ end
631
+ end
632
+
633
+ class Volume
634
+ # @private
635
+ class Representation < Google::Apis::Core::JsonRepresentation
636
+ property :existing_disk, as: 'existingDisk', class: Google::Apis::GenomicsV2alpha1::ExistingDisk, decorator: Google::Apis::GenomicsV2alpha1::ExistingDisk::Representation
637
+
638
+ property :persistent_disk, as: 'persistentDisk', class: Google::Apis::GenomicsV2alpha1::PersistentDisk, decorator: Google::Apis::GenomicsV2alpha1::PersistentDisk::Representation
639
+
640
+ property :volume, as: 'volume'
594
641
  end
595
642
  end
596
643
 
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/talent-solution/job-search/docs/
27
27
  module JobsV2
28
28
  VERSION = 'V2'
29
- REVISION = '20200828'
29
+ REVISION = '20200929'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -1306,6 +1306,765 @@ module Google
1306
1306
  end
1307
1307
  end
1308
1308
 
1309
+ # The result of JobService.BatchCreateJobs. It's used to replace google.
1310
+ # longrunning.Operation.response in case of success.
1311
+ class GoogleCloudTalentV4BatchCreateJobsResponse
1312
+ include Google::Apis::Core::Hashable
1313
+
1314
+ # List of job mutation results from a batch create operation. It can change
1315
+ # until operation status is FINISHED, FAILED or CANCELLED.
1316
+ # Corresponds to the JSON property `jobResults`
1317
+ # @return [Array<Google::Apis::JobsV2::GoogleCloudTalentV4JobResult>]
1318
+ attr_accessor :job_results
1319
+
1320
+ def initialize(**args)
1321
+ update!(**args)
1322
+ end
1323
+
1324
+ # Update properties of this object
1325
+ def update!(**args)
1326
+ @job_results = args[:job_results] if args.key?(:job_results)
1327
+ end
1328
+ end
1329
+
1330
+ # The result of JobService.BatchDeleteJobs. It's used to replace google.
1331
+ # longrunning.Operation.response in case of success.
1332
+ class GoogleCloudTalentV4BatchDeleteJobsResponse
1333
+ include Google::Apis::Core::Hashable
1334
+
1335
+ # List of job mutation results from a batch delete operation. It can change
1336
+ # until operation status is FINISHED, FAILED or CANCELLED.
1337
+ # Corresponds to the JSON property `jobResults`
1338
+ # @return [Array<Google::Apis::JobsV2::GoogleCloudTalentV4JobResult>]
1339
+ attr_accessor :job_results
1340
+
1341
+ def initialize(**args)
1342
+ update!(**args)
1343
+ end
1344
+
1345
+ # Update properties of this object
1346
+ def update!(**args)
1347
+ @job_results = args[:job_results] if args.key?(:job_results)
1348
+ end
1349
+ end
1350
+
1351
+ # Metadata used for long running operations returned by CTS batch APIs. It's
1352
+ # used to replace google.longrunning.Operation.metadata.
1353
+ class GoogleCloudTalentV4BatchOperationMetadata
1354
+ include Google::Apis::Core::Hashable
1355
+
1356
+ # The time when the batch operation is created.
1357
+ # Corresponds to the JSON property `createTime`
1358
+ # @return [String]
1359
+ attr_accessor :create_time
1360
+
1361
+ # The time when the batch operation is finished and google.longrunning.Operation.
1362
+ # done is set to `true`.
1363
+ # Corresponds to the JSON property `endTime`
1364
+ # @return [String]
1365
+ attr_accessor :end_time
1366
+
1367
+ # Count of failed item(s) inside an operation.
1368
+ # Corresponds to the JSON property `failureCount`
1369
+ # @return [Fixnum]
1370
+ attr_accessor :failure_count
1371
+
1372
+ # The state of a long running operation.
1373
+ # Corresponds to the JSON property `state`
1374
+ # @return [String]
1375
+ attr_accessor :state
1376
+
1377
+ # More detailed information about operation state.
1378
+ # Corresponds to the JSON property `stateDescription`
1379
+ # @return [String]
1380
+ attr_accessor :state_description
1381
+
1382
+ # Count of successful item(s) inside an operation.
1383
+ # Corresponds to the JSON property `successCount`
1384
+ # @return [Fixnum]
1385
+ attr_accessor :success_count
1386
+
1387
+ # Count of total item(s) inside an operation.
1388
+ # Corresponds to the JSON property `totalCount`
1389
+ # @return [Fixnum]
1390
+ attr_accessor :total_count
1391
+
1392
+ # The time when the batch operation status is updated. The metadata and the
1393
+ # update_time is refreshed every minute otherwise cached data is returned.
1394
+ # Corresponds to the JSON property `updateTime`
1395
+ # @return [String]
1396
+ attr_accessor :update_time
1397
+
1398
+ def initialize(**args)
1399
+ update!(**args)
1400
+ end
1401
+
1402
+ # Update properties of this object
1403
+ def update!(**args)
1404
+ @create_time = args[:create_time] if args.key?(:create_time)
1405
+ @end_time = args[:end_time] if args.key?(:end_time)
1406
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
1407
+ @state = args[:state] if args.key?(:state)
1408
+ @state_description = args[:state_description] if args.key?(:state_description)
1409
+ @success_count = args[:success_count] if args.key?(:success_count)
1410
+ @total_count = args[:total_count] if args.key?(:total_count)
1411
+ @update_time = args[:update_time] if args.key?(:update_time)
1412
+ end
1413
+ end
1414
+
1415
+ # The result of JobService.BatchUpdateJobs. It's used to replace google.
1416
+ # longrunning.Operation.response in case of success.
1417
+ class GoogleCloudTalentV4BatchUpdateJobsResponse
1418
+ include Google::Apis::Core::Hashable
1419
+
1420
+ # List of job mutation results from a batch update operation. It can change
1421
+ # until operation status is FINISHED, FAILED or CANCELLED.
1422
+ # Corresponds to the JSON property `jobResults`
1423
+ # @return [Array<Google::Apis::JobsV2::GoogleCloudTalentV4JobResult>]
1424
+ attr_accessor :job_results
1425
+
1426
+ def initialize(**args)
1427
+ update!(**args)
1428
+ end
1429
+
1430
+ # Update properties of this object
1431
+ def update!(**args)
1432
+ @job_results = args[:job_results] if args.key?(:job_results)
1433
+ end
1434
+ end
1435
+
1436
+ # Job compensation details.
1437
+ class GoogleCloudTalentV4CompensationInfo
1438
+ include Google::Apis::Core::Hashable
1439
+
1440
+ # Compensation range.
1441
+ # Corresponds to the JSON property `annualizedBaseCompensationRange`
1442
+ # @return [Google::Apis::JobsV2::GoogleCloudTalentV4CompensationInfoCompensationRange]
1443
+ attr_accessor :annualized_base_compensation_range
1444
+
1445
+ # Compensation range.
1446
+ # Corresponds to the JSON property `annualizedTotalCompensationRange`
1447
+ # @return [Google::Apis::JobsV2::GoogleCloudTalentV4CompensationInfoCompensationRange]
1448
+ attr_accessor :annualized_total_compensation_range
1449
+
1450
+ # Job compensation information. At most one entry can be of type
1451
+ # CompensationInfo.CompensationType.BASE, which is referred as **base
1452
+ # compensation entry** for the job.
1453
+ # Corresponds to the JSON property `entries`
1454
+ # @return [Array<Google::Apis::JobsV2::GoogleCloudTalentV4CompensationInfoCompensationEntry>]
1455
+ attr_accessor :entries
1456
+
1457
+ def initialize(**args)
1458
+ update!(**args)
1459
+ end
1460
+
1461
+ # Update properties of this object
1462
+ def update!(**args)
1463
+ @annualized_base_compensation_range = args[:annualized_base_compensation_range] if args.key?(:annualized_base_compensation_range)
1464
+ @annualized_total_compensation_range = args[:annualized_total_compensation_range] if args.key?(:annualized_total_compensation_range)
1465
+ @entries = args[:entries] if args.key?(:entries)
1466
+ end
1467
+ end
1468
+
1469
+ # A compensation entry that represents one component of compensation, such as
1470
+ # base pay, bonus, or other compensation type. Annualization: One compensation
1471
+ # entry can be annualized if - it contains valid amount or range. - and its
1472
+ # expected_units_per_year is set or can be derived. Its annualized range is
1473
+ # determined as (amount or range) times expected_units_per_year.
1474
+ class GoogleCloudTalentV4CompensationInfoCompensationEntry
1475
+ include Google::Apis::Core::Hashable
1476
+
1477
+ # Represents an amount of money with its currency type.
1478
+ # Corresponds to the JSON property `amount`
1479
+ # @return [Google::Apis::JobsV2::Money]
1480
+ attr_accessor :amount
1481
+
1482
+ # Compensation description. For example, could indicate equity terms or provide
1483
+ # additional context to an estimated bonus.
1484
+ # Corresponds to the JSON property `description`
1485
+ # @return [String]
1486
+ attr_accessor :description
1487
+
1488
+ # Expected number of units paid each year. If not specified, when Job.
1489
+ # employment_types is FULLTIME, a default value is inferred based on unit.
1490
+ # Default values: - HOURLY: 2080 - DAILY: 260 - WEEKLY: 52 - MONTHLY: 12 -
1491
+ # ANNUAL: 1
1492
+ # Corresponds to the JSON property `expectedUnitsPerYear`
1493
+ # @return [Float]
1494
+ attr_accessor :expected_units_per_year
1495
+
1496
+ # Compensation range.
1497
+ # Corresponds to the JSON property `range`
1498
+ # @return [Google::Apis::JobsV2::GoogleCloudTalentV4CompensationInfoCompensationRange]
1499
+ attr_accessor :range
1500
+
1501
+ # Compensation type. Default is CompensationType.COMPENSATION_TYPE_UNSPECIFIED.
1502
+ # Corresponds to the JSON property `type`
1503
+ # @return [String]
1504
+ attr_accessor :type
1505
+
1506
+ # Frequency of the specified amount. Default is CompensationUnit.
1507
+ # COMPENSATION_UNIT_UNSPECIFIED.
1508
+ # Corresponds to the JSON property `unit`
1509
+ # @return [String]
1510
+ attr_accessor :unit
1511
+
1512
+ def initialize(**args)
1513
+ update!(**args)
1514
+ end
1515
+
1516
+ # Update properties of this object
1517
+ def update!(**args)
1518
+ @amount = args[:amount] if args.key?(:amount)
1519
+ @description = args[:description] if args.key?(:description)
1520
+ @expected_units_per_year = args[:expected_units_per_year] if args.key?(:expected_units_per_year)
1521
+ @range = args[:range] if args.key?(:range)
1522
+ @type = args[:type] if args.key?(:type)
1523
+ @unit = args[:unit] if args.key?(:unit)
1524
+ end
1525
+ end
1526
+
1527
+ # Compensation range.
1528
+ class GoogleCloudTalentV4CompensationInfoCompensationRange
1529
+ include Google::Apis::Core::Hashable
1530
+
1531
+ # Represents an amount of money with its currency type.
1532
+ # Corresponds to the JSON property `maxCompensation`
1533
+ # @return [Google::Apis::JobsV2::Money]
1534
+ attr_accessor :max_compensation
1535
+
1536
+ # Represents an amount of money with its currency type.
1537
+ # Corresponds to the JSON property `minCompensation`
1538
+ # @return [Google::Apis::JobsV2::Money]
1539
+ attr_accessor :min_compensation
1540
+
1541
+ def initialize(**args)
1542
+ update!(**args)
1543
+ end
1544
+
1545
+ # Update properties of this object
1546
+ def update!(**args)
1547
+ @max_compensation = args[:max_compensation] if args.key?(:max_compensation)
1548
+ @min_compensation = args[:min_compensation] if args.key?(:min_compensation)
1549
+ end
1550
+ end
1551
+
1552
+ # Custom attribute values that are either filterable or non-filterable.
1553
+ class GoogleCloudTalentV4CustomAttribute
1554
+ include Google::Apis::Core::Hashable
1555
+
1556
+ # If the `filterable` flag is true, the custom field values may be used for
1557
+ # custom attribute filters JobQuery.custom_attribute_filter. If false, these
1558
+ # values may not be used for custom attribute filters. Default is false.
1559
+ # Corresponds to the JSON property `filterable`
1560
+ # @return [Boolean]
1561
+ attr_accessor :filterable
1562
+ alias_method :filterable?, :filterable
1563
+
1564
+ # If the `keyword_searchable` flag is true, the keywords in custom fields are
1565
+ # searchable by keyword match. If false, the values are not searchable by
1566
+ # keyword match. Default is false.
1567
+ # Corresponds to the JSON property `keywordSearchable`
1568
+ # @return [Boolean]
1569
+ attr_accessor :keyword_searchable
1570
+ alias_method :keyword_searchable?, :keyword_searchable
1571
+
1572
+ # Exactly one of string_values or long_values must be specified. This field is
1573
+ # used to perform number range search. (`EQ`, `GT`, `GE`, `LE`, `LT`) over
1574
+ # filterable `long_value`. Currently at most 1 long_values is supported.
1575
+ # Corresponds to the JSON property `longValues`
1576
+ # @return [Array<Fixnum>]
1577
+ attr_accessor :long_values
1578
+
1579
+ # Exactly one of string_values or long_values must be specified. This field is
1580
+ # used to perform a string match (`CASE_SENSITIVE_MATCH` or `
1581
+ # CASE_INSENSITIVE_MATCH`) search. For filterable `string_value`s, a maximum
1582
+ # total number of 200 values is allowed, with each `string_value` has a byte
1583
+ # size of no more than 500B. For unfilterable `string_values`, the maximum total
1584
+ # byte size of unfilterable `string_values` is 50KB. Empty string isn't allowed.
1585
+ # Corresponds to the JSON property `stringValues`
1586
+ # @return [Array<String>]
1587
+ attr_accessor :string_values
1588
+
1589
+ def initialize(**args)
1590
+ update!(**args)
1591
+ end
1592
+
1593
+ # Update properties of this object
1594
+ def update!(**args)
1595
+ @filterable = args[:filterable] if args.key?(:filterable)
1596
+ @keyword_searchable = args[:keyword_searchable] if args.key?(:keyword_searchable)
1597
+ @long_values = args[:long_values] if args.key?(:long_values)
1598
+ @string_values = args[:string_values] if args.key?(:string_values)
1599
+ end
1600
+ end
1601
+
1602
+ # A Job resource represents a job posting (also referred to as a "job listing"
1603
+ # or "job requisition"). A job belongs to a Company, which is the hiring entity
1604
+ # responsible for the job.
1605
+ class GoogleCloudTalentV4Job
1606
+ include Google::Apis::Core::Hashable
1607
+
1608
+ # Strongly recommended for the best service experience. Location(s) where the
1609
+ # employer is looking to hire for this job posting. Specifying the full street
1610
+ # address(es) of the hiring location enables better API results, especially job
1611
+ # searches by commute time. At most 50 locations are allowed for best search
1612
+ # performance. If a job has more locations, it is suggested to split it into
1613
+ # multiple jobs with unique requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-
1614
+ # 2', and so on.) as multiple jobs with the same company, language_code and
1615
+ # requisition_id are not allowed. If the original requisition_id must be
1616
+ # preserved, a custom field should be used for storage. It is also suggested to
1617
+ # group the locations that close to each other in the same job for better search
1618
+ # experience. The maximum number of allowed characters is 500.
1619
+ # Corresponds to the JSON property `addresses`
1620
+ # @return [Array<String>]
1621
+ attr_accessor :addresses
1622
+
1623
+ # Application related details of a job posting.
1624
+ # Corresponds to the JSON property `applicationInfo`
1625
+ # @return [Google::Apis::JobsV2::GoogleCloudTalentV4JobApplicationInfo]
1626
+ attr_accessor :application_info
1627
+
1628
+ # Required. The resource name of the company listing the job. The format is "
1629
+ # projects/`project_id`/tenants/`tenant_id`/companies/`company_id`". For example,
1630
+ # "projects/foo/tenants/bar/companies/baz".
1631
+ # Corresponds to the JSON property `company`
1632
+ # @return [String]
1633
+ attr_accessor :company
1634
+
1635
+ # Output only. Display name of the company listing the job.
1636
+ # Corresponds to the JSON property `companyDisplayName`
1637
+ # @return [String]
1638
+ attr_accessor :company_display_name
1639
+
1640
+ # Job compensation details.
1641
+ # Corresponds to the JSON property `compensationInfo`
1642
+ # @return [Google::Apis::JobsV2::GoogleCloudTalentV4CompensationInfo]
1643
+ attr_accessor :compensation_info
1644
+
1645
+ # A map of fields to hold both filterable and non-filterable custom job
1646
+ # attributes that are not covered by the provided structured fields. The keys of
1647
+ # the map are strings up to 64 bytes and must match the pattern: a-zA-Z*. For
1648
+ # example, key0LikeThis or KEY_1_LIKE_THIS. At most 100 filterable and at most
1649
+ # 100 unfilterable keys are supported. For filterable `string_values`, across
1650
+ # all keys at most 200 values are allowed, with each string no more than 255
1651
+ # characters. For unfilterable `string_values`, the maximum total size of `
1652
+ # string_values` across all keys is 50KB.
1653
+ # Corresponds to the JSON property `customAttributes`
1654
+ # @return [Hash<String,Google::Apis::JobsV2::GoogleCloudTalentV4CustomAttribute>]
1655
+ attr_accessor :custom_attributes
1656
+
1657
+ # The desired education degrees for the job, such as Bachelors, Masters.
1658
+ # Corresponds to the JSON property `degreeTypes`
1659
+ # @return [Array<String>]
1660
+ attr_accessor :degree_types
1661
+
1662
+ # The department or functional area within the company with the open position.
1663
+ # The maximum number of allowed characters is 255.
1664
+ # Corresponds to the JSON property `department`
1665
+ # @return [String]
1666
+ attr_accessor :department
1667
+
1668
+ # Derived details about the job posting.
1669
+ # Corresponds to the JSON property `derivedInfo`
1670
+ # @return [Google::Apis::JobsV2::GoogleCloudTalentV4JobDerivedInfo]
1671
+ attr_accessor :derived_info
1672
+
1673
+ # Required. The description of the job, which typically includes a multi-
1674
+ # paragraph description of the company and related information. Separate fields
1675
+ # are provided on the job object for responsibilities, qualifications, and other
1676
+ # job characteristics. Use of these separate job fields is recommended. This
1677
+ # field accepts and sanitizes HTML input, and also accepts bold, italic, ordered
1678
+ # list, and unordered list markup tags. The maximum number of allowed characters
1679
+ # is 100,000.
1680
+ # Corresponds to the JSON property `description`
1681
+ # @return [String]
1682
+ attr_accessor :description
1683
+
1684
+ # The employment type(s) of a job, for example, full time or part time.
1685
+ # Corresponds to the JSON property `employmentTypes`
1686
+ # @return [Array<String>]
1687
+ attr_accessor :employment_types
1688
+
1689
+ # A description of bonus, commission, and other compensation incentives
1690
+ # associated with the job not including salary or pay. The maximum number of
1691
+ # allowed characters is 10,000.
1692
+ # Corresponds to the JSON property `incentives`
1693
+ # @return [String]
1694
+ attr_accessor :incentives
1695
+
1696
+ # The benefits included with the job.
1697
+ # Corresponds to the JSON property `jobBenefits`
1698
+ # @return [Array<String>]
1699
+ attr_accessor :job_benefits
1700
+
1701
+ # The end timestamp of the job. Typically this field is used for contracting
1702
+ # engagements. Invalid timestamps are ignored.
1703
+ # Corresponds to the JSON property `jobEndTime`
1704
+ # @return [String]
1705
+ attr_accessor :job_end_time
1706
+
1707
+ # The experience level associated with the job, such as "Entry Level".
1708
+ # Corresponds to the JSON property `jobLevel`
1709
+ # @return [String]
1710
+ attr_accessor :job_level
1711
+
1712
+ # The start timestamp of the job in UTC time zone. Typically this field is used
1713
+ # for contracting engagements. Invalid timestamps are ignored.
1714
+ # Corresponds to the JSON property `jobStartTime`
1715
+ # @return [String]
1716
+ attr_accessor :job_start_time
1717
+
1718
+ # The language of the posting. This field is distinct from any requirements for
1719
+ # fluency that are associated with the job. Language codes must be in BCP-47
1720
+ # format, such as "en-US" or "sr-Latn". For more information, see [Tags for
1721
+ # Identifying Languages](https://tools.ietf.org/html/bcp47)`: class="external"
1722
+ # target="_blank" `. If this field is unspecified and Job.description is present,
1723
+ # detected language code based on Job.description is assigned, otherwise
1724
+ # defaults to 'en_US'.
1725
+ # Corresponds to the JSON property `languageCode`
1726
+ # @return [String]
1727
+ attr_accessor :language_code
1728
+
1729
+ # Required during job update. The resource name for the job. This is generated
1730
+ # by the service when a job is created. The format is "projects/`project_id`/
1731
+ # tenants/`tenant_id`/jobs/`job_id`". For example, "projects/foo/tenants/bar/
1732
+ # jobs/baz". Use of this field in job queries and API calls is preferred over
1733
+ # the use of requisition_id since this value is unique.
1734
+ # Corresponds to the JSON property `name`
1735
+ # @return [String]
1736
+ attr_accessor :name
1737
+
1738
+ # Output only. The timestamp when this job posting was created.
1739
+ # Corresponds to the JSON property `postingCreateTime`
1740
+ # @return [String]
1741
+ attr_accessor :posting_create_time
1742
+
1743
+ # Strongly recommended for the best service experience. The expiration timestamp
1744
+ # of the job. After this timestamp, the job is marked as expired, and it no
1745
+ # longer appears in search results. The expired job can't be listed by the
1746
+ # ListJobs API, but it can be retrieved with the GetJob API or updated with the
1747
+ # UpdateJob API or deleted with the DeleteJob API. An expired job can be updated
1748
+ # and opened again by using a future expiration timestamp. Updating an expired
1749
+ # job fails if there is another existing open job with same company,
1750
+ # language_code and requisition_id. The expired jobs are retained in our system
1751
+ # for 90 days. However, the overall expired job count cannot exceed 3 times the
1752
+ # maximum number of open jobs over previous 7 days. If this threshold is
1753
+ # exceeded, expired jobs are cleaned out in order of earliest expire time.
1754
+ # Expired jobs are no longer accessible after they are cleaned out. Invalid
1755
+ # timestamps are ignored, and treated as expire time not provided. If the
1756
+ # timestamp is before the instant request is made, the job is treated as expired
1757
+ # immediately on creation. This kind of job can not be updated. And when
1758
+ # creating a job with past timestamp, the posting_publish_time must be set
1759
+ # before posting_expire_time. The purpose of this feature is to allow other
1760
+ # objects, such as Application, to refer a job that didn't exist in the system
1761
+ # prior to becoming expired. If you want to modify a job that was expired on
1762
+ # creation, delete it and create a new one. If this value isn't provided at the
1763
+ # time of job creation or is invalid, the job posting expires after 30 days from
1764
+ # the job's creation time. For example, if the job was created on 2017/01/01 13:
1765
+ # 00AM UTC with an unspecified expiration date, the job expires after 2017/01/31
1766
+ # 13:00AM UTC. If this value isn't provided on job update, it depends on the
1767
+ # field masks set by UpdateJobRequest.update_mask. If the field masks include
1768
+ # job_end_time, or the masks are empty meaning that every field is updated, the
1769
+ # job posting expires after 30 days from the job's last update time. Otherwise
1770
+ # the expiration date isn't updated.
1771
+ # Corresponds to the JSON property `postingExpireTime`
1772
+ # @return [String]
1773
+ attr_accessor :posting_expire_time
1774
+
1775
+ # The timestamp this job posting was most recently published. The default value
1776
+ # is the time the request arrives at the server. Invalid timestamps are ignored.
1777
+ # Corresponds to the JSON property `postingPublishTime`
1778
+ # @return [String]
1779
+ attr_accessor :posting_publish_time
1780
+
1781
+ # The job PostingRegion (for example, state, country) throughout which the job
1782
+ # is available. If this field is set, a LocationFilter in a search query within
1783
+ # the job region finds this job posting if an exact location match isn't
1784
+ # specified. If this field is set to PostingRegion.NATION or PostingRegion.
1785
+ # ADMINISTRATIVE_AREA, setting job Job.addresses to the same location level as
1786
+ # this field is strongly recommended.
1787
+ # Corresponds to the JSON property `postingRegion`
1788
+ # @return [String]
1789
+ attr_accessor :posting_region
1790
+
1791
+ # Output only. The timestamp when this job posting was last updated.
1792
+ # Corresponds to the JSON property `postingUpdateTime`
1793
+ # @return [String]
1794
+ attr_accessor :posting_update_time
1795
+
1796
+ # Options for job processing.
1797
+ # Corresponds to the JSON property `processingOptions`
1798
+ # @return [Google::Apis::JobsV2::GoogleCloudTalentV4JobProcessingOptions]
1799
+ attr_accessor :processing_options
1800
+
1801
+ # A promotion value of the job, as determined by the client. The value
1802
+ # determines the sort order of the jobs returned when searching for jobs using
1803
+ # the featured jobs search call, with higher promotional values being returned
1804
+ # first and ties being resolved by relevance sort. Only the jobs with a
1805
+ # promotionValue >0 are returned in a FEATURED_JOB_SEARCH. Default value is 0,
1806
+ # and negative values are treated as 0.
1807
+ # Corresponds to the JSON property `promotionValue`
1808
+ # @return [Fixnum]
1809
+ attr_accessor :promotion_value
1810
+
1811
+ # A description of the qualifications required to perform the job. The use of
1812
+ # this field is recommended as an alternative to using the more general
1813
+ # description field. This field accepts and sanitizes HTML input, and also
1814
+ # accepts bold, italic, ordered list, and unordered list markup tags. The
1815
+ # maximum number of allowed characters is 10,000.
1816
+ # Corresponds to the JSON property `qualifications`
1817
+ # @return [String]
1818
+ attr_accessor :qualifications
1819
+
1820
+ # Required. The requisition ID, also referred to as the posting ID, is assigned
1821
+ # by the client to identify a job. This field is intended to be used by clients
1822
+ # for client identification and tracking of postings. A job isn't allowed to be
1823
+ # created if there is another job with the same company, language_code and
1824
+ # requisition_id. The maximum number of allowed characters is 255.
1825
+ # Corresponds to the JSON property `requisitionId`
1826
+ # @return [String]
1827
+ attr_accessor :requisition_id
1828
+
1829
+ # A description of job responsibilities. The use of this field is recommended as
1830
+ # an alternative to using the more general description field. This field accepts
1831
+ # and sanitizes HTML input, and also accepts bold, italic, ordered list, and
1832
+ # unordered list markup tags. The maximum number of allowed characters is 10,000.
1833
+ # Corresponds to the JSON property `responsibilities`
1834
+ # @return [String]
1835
+ attr_accessor :responsibilities
1836
+
1837
+ # Required. The title of the job, such as "Software Engineer" The maximum number
1838
+ # of allowed characters is 500.
1839
+ # Corresponds to the JSON property `title`
1840
+ # @return [String]
1841
+ attr_accessor :title
1842
+
1843
+ # Deprecated. The job is only visible to the owner. The visibility of the job.
1844
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
1845
+ # Corresponds to the JSON property `visibility`
1846
+ # @return [String]
1847
+ attr_accessor :visibility
1848
+
1849
+ def initialize(**args)
1850
+ update!(**args)
1851
+ end
1852
+
1853
+ # Update properties of this object
1854
+ def update!(**args)
1855
+ @addresses = args[:addresses] if args.key?(:addresses)
1856
+ @application_info = args[:application_info] if args.key?(:application_info)
1857
+ @company = args[:company] if args.key?(:company)
1858
+ @company_display_name = args[:company_display_name] if args.key?(:company_display_name)
1859
+ @compensation_info = args[:compensation_info] if args.key?(:compensation_info)
1860
+ @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
1861
+ @degree_types = args[:degree_types] if args.key?(:degree_types)
1862
+ @department = args[:department] if args.key?(:department)
1863
+ @derived_info = args[:derived_info] if args.key?(:derived_info)
1864
+ @description = args[:description] if args.key?(:description)
1865
+ @employment_types = args[:employment_types] if args.key?(:employment_types)
1866
+ @incentives = args[:incentives] if args.key?(:incentives)
1867
+ @job_benefits = args[:job_benefits] if args.key?(:job_benefits)
1868
+ @job_end_time = args[:job_end_time] if args.key?(:job_end_time)
1869
+ @job_level = args[:job_level] if args.key?(:job_level)
1870
+ @job_start_time = args[:job_start_time] if args.key?(:job_start_time)
1871
+ @language_code = args[:language_code] if args.key?(:language_code)
1872
+ @name = args[:name] if args.key?(:name)
1873
+ @posting_create_time = args[:posting_create_time] if args.key?(:posting_create_time)
1874
+ @posting_expire_time = args[:posting_expire_time] if args.key?(:posting_expire_time)
1875
+ @posting_publish_time = args[:posting_publish_time] if args.key?(:posting_publish_time)
1876
+ @posting_region = args[:posting_region] if args.key?(:posting_region)
1877
+ @posting_update_time = args[:posting_update_time] if args.key?(:posting_update_time)
1878
+ @processing_options = args[:processing_options] if args.key?(:processing_options)
1879
+ @promotion_value = args[:promotion_value] if args.key?(:promotion_value)
1880
+ @qualifications = args[:qualifications] if args.key?(:qualifications)
1881
+ @requisition_id = args[:requisition_id] if args.key?(:requisition_id)
1882
+ @responsibilities = args[:responsibilities] if args.key?(:responsibilities)
1883
+ @title = args[:title] if args.key?(:title)
1884
+ @visibility = args[:visibility] if args.key?(:visibility)
1885
+ end
1886
+ end
1887
+
1888
+ # Application related details of a job posting.
1889
+ class GoogleCloudTalentV4JobApplicationInfo
1890
+ include Google::Apis::Core::Hashable
1891
+
1892
+ # Use this field to specify email address(es) to which resumes or applications
1893
+ # can be sent. The maximum number of allowed characters for each entry is 255.
1894
+ # Corresponds to the JSON property `emails`
1895
+ # @return [Array<String>]
1896
+ attr_accessor :emails
1897
+
1898
+ # Use this field to provide instructions, such as "Mail your application to ...",
1899
+ # that a candidate can follow to apply for the job. This field accepts and
1900
+ # sanitizes HTML input, and also accepts bold, italic, ordered list, and
1901
+ # unordered list markup tags. The maximum number of allowed characters is 3,000.
1902
+ # Corresponds to the JSON property `instruction`
1903
+ # @return [String]
1904
+ attr_accessor :instruction
1905
+
1906
+ # Use this URI field to direct an applicant to a website, for example to link to
1907
+ # an online application form. The maximum number of allowed characters for each
1908
+ # entry is 2,000.
1909
+ # Corresponds to the JSON property `uris`
1910
+ # @return [Array<String>]
1911
+ attr_accessor :uris
1912
+
1913
+ def initialize(**args)
1914
+ update!(**args)
1915
+ end
1916
+
1917
+ # Update properties of this object
1918
+ def update!(**args)
1919
+ @emails = args[:emails] if args.key?(:emails)
1920
+ @instruction = args[:instruction] if args.key?(:instruction)
1921
+ @uris = args[:uris] if args.key?(:uris)
1922
+ end
1923
+ end
1924
+
1925
+ # Derived details about the job posting.
1926
+ class GoogleCloudTalentV4JobDerivedInfo
1927
+ include Google::Apis::Core::Hashable
1928
+
1929
+ # Job categories derived from Job.title and Job.description.
1930
+ # Corresponds to the JSON property `jobCategories`
1931
+ # @return [Array<String>]
1932
+ attr_accessor :job_categories
1933
+
1934
+ # Structured locations of the job, resolved from Job.addresses. locations are
1935
+ # exactly matched to Job.addresses in the same order.
1936
+ # Corresponds to the JSON property `locations`
1937
+ # @return [Array<Google::Apis::JobsV2::GoogleCloudTalentV4Location>]
1938
+ attr_accessor :locations
1939
+
1940
+ def initialize(**args)
1941
+ update!(**args)
1942
+ end
1943
+
1944
+ # Update properties of this object
1945
+ def update!(**args)
1946
+ @job_categories = args[:job_categories] if args.key?(:job_categories)
1947
+ @locations = args[:locations] if args.key?(:locations)
1948
+ end
1949
+ end
1950
+
1951
+ # Options for job processing.
1952
+ class GoogleCloudTalentV4JobProcessingOptions
1953
+ include Google::Apis::Core::Hashable
1954
+
1955
+ # If set to `true`, the service does not attempt to resolve a more precise
1956
+ # address for the job.
1957
+ # Corresponds to the JSON property `disableStreetAddressResolution`
1958
+ # @return [Boolean]
1959
+ attr_accessor :disable_street_address_resolution
1960
+ alias_method :disable_street_address_resolution?, :disable_street_address_resolution
1961
+
1962
+ # Option for job HTML content sanitization. Applied fields are: * description *
1963
+ # applicationInfo.instruction * incentives * qualifications * responsibilities
1964
+ # HTML tags in these fields may be stripped if sanitiazation isn't disabled.
1965
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
1966
+ # Corresponds to the JSON property `htmlSanitization`
1967
+ # @return [String]
1968
+ attr_accessor :html_sanitization
1969
+
1970
+ def initialize(**args)
1971
+ update!(**args)
1972
+ end
1973
+
1974
+ # Update properties of this object
1975
+ def update!(**args)
1976
+ @disable_street_address_resolution = args[:disable_street_address_resolution] if args.key?(:disable_street_address_resolution)
1977
+ @html_sanitization = args[:html_sanitization] if args.key?(:html_sanitization)
1978
+ end
1979
+ end
1980
+
1981
+ # Mutation result of a job from a batch operation.
1982
+ class GoogleCloudTalentV4JobResult
1983
+ include Google::Apis::Core::Hashable
1984
+
1985
+ # A Job resource represents a job posting (also referred to as a "job listing"
1986
+ # or "job requisition"). A job belongs to a Company, which is the hiring entity
1987
+ # responsible for the job.
1988
+ # Corresponds to the JSON property `job`
1989
+ # @return [Google::Apis::JobsV2::GoogleCloudTalentV4Job]
1990
+ attr_accessor :job
1991
+
1992
+ # The `Status` type defines a logical error model that is suitable for different
1993
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1994
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1995
+ # data: error code, error message, and error details. You can find out more
1996
+ # about this error model and how to work with it in the [API Design Guide](https:
1997
+ # //cloud.google.com/apis/design/errors).
1998
+ # Corresponds to the JSON property `status`
1999
+ # @return [Google::Apis::JobsV2::Status]
2000
+ attr_accessor :status
2001
+
2002
+ def initialize(**args)
2003
+ update!(**args)
2004
+ end
2005
+
2006
+ # Update properties of this object
2007
+ def update!(**args)
2008
+ @job = args[:job] if args.key?(:job)
2009
+ @status = args[:status] if args.key?(:status)
2010
+ end
2011
+ end
2012
+
2013
+ # A resource that represents a location with full geographic information.
2014
+ class GoogleCloudTalentV4Location
2015
+ include Google::Apis::Core::Hashable
2016
+
2017
+ # An object representing a latitude/longitude pair. This is expressed as a pair
2018
+ # of doubles representing degrees latitude and degrees longitude. Unless
2019
+ # specified otherwise, this must conform to the WGS84 standard. Values must be
2020
+ # within normalized ranges.
2021
+ # Corresponds to the JSON property `latLng`
2022
+ # @return [Google::Apis::JobsV2::LatLng]
2023
+ attr_accessor :lat_lng
2024
+
2025
+ # The type of a location, which corresponds to the address lines field of google.
2026
+ # type.PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
2027
+ # LocationType.NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
2028
+ # LocationType.LOCALITY.
2029
+ # Corresponds to the JSON property `locationType`
2030
+ # @return [String]
2031
+ attr_accessor :location_type
2032
+
2033
+ # Represents a postal address, e.g. for postal delivery or payments addresses.
2034
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
2035
+ # Box or similar. It is not intended to model geographical locations (roads,
2036
+ # towns, mountains). In typical usage an address would be created via user input
2037
+ # or from importing existing data, depending on the type of process. Advice on
2038
+ # address input / editing: - Use an i18n-ready address widget such as https://
2039
+ # github.com/google/libaddressinput) - Users should not be presented with UI
2040
+ # elements for input or editing of fields outside countries where that field is
2041
+ # used. For more guidance on how to use this schema, please see: https://support.
2042
+ # google.com/business/answer/6397478
2043
+ # Corresponds to the JSON property `postalAddress`
2044
+ # @return [Google::Apis::JobsV2::PostalAddress]
2045
+ attr_accessor :postal_address
2046
+
2047
+ # Radius in miles of the job location. This value is derived from the location
2048
+ # bounding box in which a circle with the specified radius centered from google.
2049
+ # type.LatLng covers the area associated with the job location. For example,
2050
+ # currently, "Mountain View, CA, USA" has a radius of 6.17 miles.
2051
+ # Corresponds to the JSON property `radiusMiles`
2052
+ # @return [Float]
2053
+ attr_accessor :radius_miles
2054
+
2055
+ def initialize(**args)
2056
+ update!(**args)
2057
+ end
2058
+
2059
+ # Update properties of this object
2060
+ def update!(**args)
2061
+ @lat_lng = args[:lat_lng] if args.key?(:lat_lng)
2062
+ @location_type = args[:location_type] if args.key?(:location_type)
2063
+ @postal_address = args[:postal_address] if args.key?(:postal_address)
2064
+ @radius_miles = args[:radius_miles] if args.key?(:radius_miles)
2065
+ end
2066
+ end
2067
+
1309
2068
  # Input only. Histogram facets to be specified in SearchJobsRequest.
1310
2069
  class HistogramFacets
1311
2070
  include Google::Apis::Core::Hashable
@@ -3140,6 +3899,45 @@ module Google
3140
3899
  end
3141
3900
  end
3142
3901
 
3902
+ # The `Status` type defines a logical error model that is suitable for different
3903
+ # programming environments, including REST APIs and RPC APIs. It is used by [
3904
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
3905
+ # data: error code, error message, and error details. You can find out more
3906
+ # about this error model and how to work with it in the [API Design Guide](https:
3907
+ # //cloud.google.com/apis/design/errors).
3908
+ class Status
3909
+ include Google::Apis::Core::Hashable
3910
+
3911
+ # The status code, which should be an enum value of google.rpc.Code.
3912
+ # Corresponds to the JSON property `code`
3913
+ # @return [Fixnum]
3914
+ attr_accessor :code
3915
+
3916
+ # A list of messages that carry the error details. There is a common set of
3917
+ # message types for APIs to use.
3918
+ # Corresponds to the JSON property `details`
3919
+ # @return [Array<Hash<String,Object>>]
3920
+ attr_accessor :details
3921
+
3922
+ # A developer-facing error message, which should be in English. Any user-facing
3923
+ # error message should be localized and sent in the google.rpc.Status.details
3924
+ # field, or localized by the client.
3925
+ # Corresponds to the JSON property `message`
3926
+ # @return [String]
3927
+ attr_accessor :message
3928
+
3929
+ def initialize(**args)
3930
+ update!(**args)
3931
+ end
3932
+
3933
+ # Update properties of this object
3934
+ def update!(**args)
3935
+ @code = args[:code] if args.key?(:code)
3936
+ @details = args[:details] if args.key?(:details)
3937
+ @message = args[:message] if args.key?(:message)
3938
+ end
3939
+ end
3940
+
3143
3941
  # Represents array of string values.
3144
3942
  class StringValues
3145
3943
  include Google::Apis::Core::Hashable