google-api-client 0.24.3 → 0.25.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (262) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +0 -2
  3. data/CHANGELOG.md +99 -0
  4. data/Gemfile +1 -0
  5. data/generated/google/apis/abusiveexperiencereport_v1.rb +2 -2
  6. data/generated/google/apis/abusiveexperiencereport_v1/classes.rb +0 -1
  7. data/generated/google/apis/abusiveexperiencereport_v1/service.rb +1 -1
  8. data/generated/google/apis/{content_v2sandbox.rb → accesscontextmanager_v1beta.rb} +11 -12
  9. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +697 -0
  10. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +240 -0
  11. data/generated/google/apis/accesscontextmanager_v1beta/service.rb +666 -0
  12. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  13. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +16 -0
  14. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +2 -0
  15. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +2 -2
  16. data/generated/google/apis/adexperiencereport_v1.rb +2 -2
  17. data/generated/google/apis/adexperiencereport_v1/service.rb +1 -1
  18. data/generated/google/apis/alertcenter_v1beta1.rb +4 -3
  19. data/generated/google/apis/alertcenter_v1beta1/classes.rb +9 -2
  20. data/generated/google/apis/alertcenter_v1beta1/representations.rb +1 -0
  21. data/generated/google/apis/alertcenter_v1beta1/service.rb +3 -2
  22. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  23. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +3 -2
  24. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  25. data/generated/google/apis/androidenterprise_v1/classes.rb +68 -6
  26. data/generated/google/apis/androidenterprise_v1/representations.rb +20 -0
  27. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  28. data/generated/google/apis/androidmanagement_v1/classes.rb +92 -0
  29. data/generated/google/apis/androidmanagement_v1/representations.rb +36 -0
  30. data/generated/google/apis/androidpublisher_v1.rb +2 -2
  31. data/generated/google/apis/androidpublisher_v1/service.rb +1 -1
  32. data/generated/google/apis/androidpublisher_v1_1.rb +2 -2
  33. data/generated/google/apis/androidpublisher_v1_1/service.rb +1 -1
  34. data/generated/google/apis/androidpublisher_v2.rb +2 -2
  35. data/generated/google/apis/androidpublisher_v2/service.rb +3 -2
  36. data/generated/google/apis/androidpublisher_v3.rb +2 -2
  37. data/generated/google/apis/androidpublisher_v3/service.rb +3 -2
  38. data/generated/google/apis/appengine_v1.rb +2 -3
  39. data/generated/google/apis/appengine_v1/service.rb +1 -2
  40. data/generated/google/apis/appengine_v1alpha.rb +2 -3
  41. data/generated/google/apis/appengine_v1alpha/service.rb +1 -2
  42. data/generated/google/apis/appengine_v1beta.rb +2 -3
  43. data/generated/google/apis/appengine_v1beta/service.rb +1 -2
  44. data/generated/google/apis/appengine_v1beta4.rb +2 -3
  45. data/generated/google/apis/appengine_v1beta4/service.rb +1 -2
  46. data/generated/google/apis/appengine_v1beta5.rb +2 -3
  47. data/generated/google/apis/appengine_v1beta5/service.rb +1 -2
  48. data/generated/google/apis/bigquery_v2.rb +1 -1
  49. data/generated/google/apis/bigquery_v2/classes.rb +98 -7
  50. data/generated/google/apis/bigquery_v2/representations.rb +35 -0
  51. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  52. data/generated/google/apis/civicinfo_v2.rb +1 -1
  53. data/generated/google/apis/civicinfo_v2/classes.rb +18 -0
  54. data/generated/google/apis/civicinfo_v2/representations.rb +2 -0
  55. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  56. data/generated/google/apis/cloudasset_v1beta1/classes.rb +5 -5
  57. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  58. data/generated/google/apis/cloudbuild_v1/classes.rb +10 -1
  59. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  60. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  61. data/generated/google/apis/cloudfunctions_v1/classes.rb +418 -0
  62. data/generated/google/apis/cloudfunctions_v1/representations.rb +121 -0
  63. data/generated/google/apis/cloudfunctions_v1/service.rb +107 -0
  64. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  65. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +16 -0
  66. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +1 -0
  67. data/generated/google/apis/cloudkms_v1.rb +1 -1
  68. data/generated/google/apis/cloudresourcemanager_v1.rb +3 -3
  69. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +2 -1
  70. data/generated/google/apis/cloudresourcemanager_v1/service.rb +2 -2
  71. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +3 -3
  72. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +2 -1
  73. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +2 -2
  74. data/generated/google/apis/cloudresourcemanager_v2.rb +3 -3
  75. data/generated/google/apis/cloudresourcemanager_v2/service.rb +2 -2
  76. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +3 -3
  77. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +2 -2
  78. data/generated/google/apis/cloudsearch_v1.rb +59 -0
  79. data/generated/google/apis/cloudsearch_v1/classes.rb +4697 -0
  80. data/generated/google/apis/cloudsearch_v1/representations.rb +2151 -0
  81. data/generated/google/apis/cloudsearch_v1/service.rb +1351 -0
  82. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  83. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +34 -0
  84. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  85. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +34 -30
  86. data/generated/google/apis/composer_v1beta1.rb +1 -1
  87. data/generated/google/apis/composer_v1beta1/classes.rb +5 -8
  88. data/generated/google/apis/compute_alpha.rb +1 -1
  89. data/generated/google/apis/compute_beta.rb +1 -1
  90. data/generated/google/apis/compute_v1.rb +1 -1
  91. data/generated/google/apis/content_v2.rb +1 -1
  92. data/generated/google/apis/content_v2/classes.rb +197 -69
  93. data/generated/google/apis/content_v2/representations.rb +64 -33
  94. data/generated/google/apis/content_v2/service.rb +1 -1
  95. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  96. data/generated/google/apis/dataflow_v1b3/classes.rb +42 -0
  97. data/generated/google/apis/dataflow_v1b3/representations.rb +17 -0
  98. data/generated/google/apis/dataproc_v1.rb +1 -1
  99. data/generated/google/apis/dataproc_v1/classes.rb +19 -19
  100. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  101. data/generated/google/apis/dataproc_v1beta2/classes.rb +19 -19
  102. data/generated/google/apis/dialogflow_v2.rb +6 -3
  103. data/generated/google/apis/dialogflow_v2/classes.rb +112 -8
  104. data/generated/google/apis/dialogflow_v2/representations.rb +30 -0
  105. data/generated/google/apis/dialogflow_v2/service.rb +7 -2
  106. data/generated/google/apis/dialogflow_v2beta1.rb +6 -3
  107. data/generated/google/apis/dialogflow_v2beta1/classes.rb +116 -8
  108. data/generated/google/apis/dialogflow_v2beta1/representations.rb +30 -0
  109. data/generated/google/apis/dialogflow_v2beta1/service.rb +19 -8
  110. data/generated/google/apis/digitalassetlinks_v1.rb +2 -3
  111. data/generated/google/apis/digitalassetlinks_v1/service.rb +1 -2
  112. data/generated/google/apis/dlp_v2.rb +1 -1
  113. data/generated/google/apis/dlp_v2/classes.rb +17 -5
  114. data/generated/google/apis/dlp_v2/representations.rb +2 -0
  115. data/generated/google/apis/dns_v1beta2.rb +1 -1
  116. data/generated/google/apis/dns_v1beta2/classes.rb +81 -0
  117. data/generated/google/apis/dns_v1beta2/representations.rb +34 -0
  118. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  119. data/generated/google/apis/doubleclicksearch_v2/classes.rb +1 -1
  120. data/generated/google/apis/drive_v2.rb +1 -1
  121. data/generated/google/apis/drive_v2/classes.rb +3 -1
  122. data/generated/google/apis/firebaserules_v1.rb +1 -1
  123. data/generated/google/apis/firestore_v1.rb +1 -1
  124. data/generated/google/apis/firestore_v1/classes.rb +637 -0
  125. data/generated/google/apis/firestore_v1/representations.rb +260 -0
  126. data/generated/google/apis/firestore_v1/service.rb +377 -0
  127. data/generated/google/apis/firestore_v1beta2.rb +1 -1
  128. data/generated/google/apis/firestore_v1beta2/classes.rb +205 -0
  129. data/generated/google/apis/firestore_v1beta2/representations.rb +83 -0
  130. data/generated/google/apis/firestore_v1beta2/service.rb +79 -0
  131. data/generated/google/apis/genomics_v1.rb +2 -2
  132. data/generated/google/apis/genomics_v1/service.rb +1 -1
  133. data/generated/google/apis/genomics_v1alpha2.rb +2 -2
  134. data/generated/google/apis/genomics_v1alpha2/service.rb +1 -1
  135. data/generated/google/apis/genomics_v2alpha1.rb +2 -2
  136. data/generated/google/apis/genomics_v2alpha1/service.rb +1 -1
  137. data/generated/google/apis/iam_v1.rb +1 -1
  138. data/generated/google/apis/iam_v1/classes.rb +4 -3
  139. data/generated/google/apis/iamcredentials_v1.rb +2 -2
  140. data/generated/google/apis/iamcredentials_v1/service.rb +1 -1
  141. data/generated/google/apis/indexing_v3.rb +2 -3
  142. data/generated/google/apis/indexing_v3/service.rb +1 -2
  143. data/generated/google/apis/jobs_v2.rb +1 -1
  144. data/generated/google/apis/jobs_v2/classes.rb +2 -2
  145. data/generated/google/apis/jobs_v3.rb +1 -1
  146. data/generated/google/apis/jobs_v3/classes.rb +3 -3
  147. data/generated/google/apis/jobs_v3/service.rb +20 -2
  148. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  149. data/generated/google/apis/jobs_v3p1beta1/classes.rb +3 -3
  150. data/generated/google/apis/jobs_v3p1beta1/service.rb +20 -2
  151. data/generated/google/apis/language_v1.rb +4 -4
  152. data/generated/google/apis/language_v1/service.rb +3 -3
  153. data/generated/google/apis/language_v1beta1.rb +4 -4
  154. data/generated/google/apis/language_v1beta1/service.rb +3 -3
  155. data/generated/google/apis/language_v1beta2.rb +4 -4
  156. data/generated/google/apis/language_v1beta2/service.rb +3 -3
  157. data/generated/google/apis/logging_v2.rb +1 -1
  158. data/generated/google/apis/logging_v2/classes.rb +2 -13
  159. data/generated/google/apis/logging_v2/representations.rb +0 -2
  160. data/generated/google/apis/logging_v2beta1.rb +1 -1
  161. data/generated/google/apis/logging_v2beta1/classes.rb +2 -41
  162. data/generated/google/apis/logging_v2beta1/representations.rb +0 -16
  163. data/generated/google/apis/logging_v2beta1/service.rb +0 -255
  164. data/generated/google/apis/monitoring_v3.rb +1 -1
  165. data/generated/google/apis/monitoring_v3/classes.rb +25 -15
  166. data/generated/google/apis/monitoring_v3/representations.rb +1 -0
  167. data/generated/google/apis/monitoring_v3/service.rb +366 -1
  168. data/generated/google/apis/oslogin_v1.rb +1 -1
  169. data/generated/google/apis/oslogin_v1/service.rb +7 -1
  170. data/generated/google/apis/oslogin_v1alpha.rb +1 -1
  171. data/generated/google/apis/oslogin_v1alpha/service.rb +10 -1
  172. data/generated/google/apis/oslogin_v1beta.rb +1 -1
  173. data/generated/google/apis/oslogin_v1beta/service.rb +7 -1
  174. data/generated/google/apis/redis_v1.rb +1 -1
  175. data/generated/google/apis/redis_v1/classes.rb +6 -0
  176. data/generated/google/apis/redis_v1/representations.rb +1 -0
  177. data/generated/google/apis/redis_v1beta1.rb +1 -1
  178. data/generated/google/apis/redis_v1beta1/classes.rb +6 -0
  179. data/generated/google/apis/redis_v1beta1/representations.rb +1 -0
  180. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  181. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +7 -6
  182. data/generated/google/apis/script_v1.rb +2 -2
  183. data/generated/google/apis/script_v1/service.rb +7 -3
  184. data/generated/google/apis/serviceconsumermanagement_v1.rb +2 -3
  185. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +7 -0
  186. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +1 -0
  187. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +1 -2
  188. data/generated/google/apis/servicecontrol_v1.rb +3 -3
  189. data/generated/google/apis/servicecontrol_v1/classes.rb +18 -230
  190. data/generated/google/apis/servicecontrol_v1/representations.rb +2 -99
  191. data/generated/google/apis/servicecontrol_v1/service.rb +2 -140
  192. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  193. data/generated/google/apis/servicemanagement_v1/classes.rb +1 -1
  194. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  195. data/generated/google/apis/servicenetworking_v1beta/classes.rb +24 -0
  196. data/generated/google/apis/servicenetworking_v1beta/representations.rb +3 -0
  197. data/generated/google/apis/serviceusage_v1.rb +1 -1
  198. data/generated/google/apis/serviceusage_v1/classes.rb +7 -0
  199. data/generated/google/apis/serviceusage_v1/representations.rb +1 -0
  200. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  201. data/generated/google/apis/serviceusage_v1beta1/classes.rb +7 -0
  202. data/generated/google/apis/serviceusage_v1beta1/representations.rb +1 -0
  203. data/generated/google/apis/slides_v1.rb +2 -2
  204. data/generated/google/apis/slides_v1/classes.rb +4 -3
  205. data/generated/google/apis/slides_v1/service.rb +1 -1
  206. data/generated/google/apis/storage_v1.rb +1 -1
  207. data/generated/google/apis/storage_v1/service.rb +2 -3
  208. data/generated/google/apis/testing_v1.rb +1 -1
  209. data/generated/google/apis/testing_v1/classes.rb +9 -0
  210. data/generated/google/apis/testing_v1/representations.rb +1 -0
  211. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  212. data/generated/google/apis/toolresults_v1beta3/service.rb +1 -1
  213. data/generated/google/apis/tpu_v1.rb +1 -1
  214. data/generated/google/apis/tpu_v1/classes.rb +6 -0
  215. data/generated/google/apis/tpu_v1/representations.rb +1 -0
  216. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  217. data/generated/google/apis/tpu_v1alpha1/classes.rb +6 -0
  218. data/generated/google/apis/tpu_v1alpha1/representations.rb +1 -0
  219. data/generated/google/apis/vault_v1.rb +1 -1
  220. data/generated/google/apis/vault_v1/classes.rb +7 -0
  221. data/generated/google/apis/vault_v1/representations.rb +1 -0
  222. data/generated/google/apis/videointelligence_v1.rb +3 -2
  223. data/generated/google/apis/videointelligence_v1/classes.rb +547 -12
  224. data/generated/google/apis/videointelligence_v1/representations.rb +190 -2
  225. data/generated/google/apis/videointelligence_v1/service.rb +2 -1
  226. data/generated/google/apis/videointelligence_v1beta2.rb +3 -2
  227. data/generated/google/apis/videointelligence_v1beta2/classes.rb +547 -12
  228. data/generated/google/apis/videointelligence_v1beta2/representations.rb +190 -2
  229. data/generated/google/apis/videointelligence_v1beta2/service.rb +2 -1
  230. data/generated/google/apis/videointelligence_v1p1beta1.rb +3 -2
  231. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +418 -13
  232. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +153 -2
  233. data/generated/google/apis/videointelligence_v1p1beta1/service.rb +2 -1
  234. data/generated/google/apis/vision_v1.rb +1 -1
  235. data/generated/google/apis/vision_v1/classes.rb +1139 -54
  236. data/generated/google/apis/vision_v1/representations.rb +478 -0
  237. data/generated/google/apis/vision_v1/service.rb +744 -0
  238. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  239. data/generated/google/apis/vision_v1p1beta1/classes.rb +761 -16
  240. data/generated/google/apis/vision_v1p1beta1/representations.rb +333 -0
  241. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  242. data/generated/google/apis/vision_v1p2beta1/classes.rb +758 -13
  243. data/generated/google/apis/vision_v1p2beta1/representations.rb +333 -0
  244. data/generated/google/apis/websecurityscanner_v1alpha.rb +2 -2
  245. data/generated/google/apis/websecurityscanner_v1alpha/service.rb +1 -1
  246. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  247. data/generated/google/apis/youtube_v3.rb +1 -1
  248. data/lib/google/apis/core/http_command.rb +83 -10
  249. data/lib/google/apis/options.rb +5 -1
  250. data/lib/google/apis/version.rb +1 -1
  251. metadata +10 -14
  252. data/generated/google/apis/content_v2sandbox/classes.rb +0 -4436
  253. data/generated/google/apis/content_v2sandbox/representations.rb +0 -1956
  254. data/generated/google/apis/content_v2sandbox/service.rb +0 -1296
  255. data/generated/google/apis/dfareporting_v2_8.rb +0 -40
  256. data/generated/google/apis/dfareporting_v2_8/classes.rb +0 -12043
  257. data/generated/google/apis/dfareporting_v2_8/representations.rb +0 -4311
  258. data/generated/google/apis/dfareporting_v2_8/service.rb +0 -8727
  259. data/generated/google/apis/serviceuser_v1.rb +0 -42
  260. data/generated/google/apis/serviceuser_v1/classes.rb +0 -3472
  261. data/generated/google/apis/serviceuser_v1/representations.rb +0 -1030
  262. data/generated/google/apis/serviceuser_v1/service.rb +0 -215
@@ -27,7 +27,7 @@ module Google
27
27
  # @see https://cloud.google.com/vision/
28
28
  module VisionV1p1beta1
29
29
  VERSION = 'V1p1beta1'
30
- REVISION = '20180928'
30
+ REVISION = '20181031'
31
31
 
32
32
  # View and manage your data across Google Cloud Platform services
33
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -148,6 +148,11 @@ module Google
148
148
  # @return [Array<Google::Apis::VisionV1p1beta1::EntityAnnotation>]
149
149
  attr_accessor :logo_annotations
150
150
 
151
+ # Results for a product search request.
152
+ # Corresponds to the JSON property `productSearchResults`
153
+ # @return [Google::Apis::VisionV1p1beta1::ProductSearchResults]
154
+ attr_accessor :product_search_results
155
+
151
156
  # Set of features pertaining to the image, computed by computer vision
152
157
  # methods over safe-search verticals (for example, adult, spoof, medical,
153
158
  # violence).
@@ -181,6 +186,7 @@ module Google
181
186
  @landmark_annotations = args[:landmark_annotations] if args.key?(:landmark_annotations)
182
187
  @localized_object_annotations = args[:localized_object_annotations] if args.key?(:localized_object_annotations)
183
188
  @logo_annotations = args[:logo_annotations] if args.key?(:logo_annotations)
189
+ @product_search_results = args[:product_search_results] if args.key?(:product_search_results)
184
190
  @safe_search_annotation = args[:safe_search_annotation] if args.key?(:safe_search_annotation)
185
191
  @text_annotations = args[:text_annotations] if args.key?(:text_annotations)
186
192
  @web_detection = args[:web_detection] if args.key?(:web_detection)
@@ -226,6 +232,40 @@ module Google
226
232
  end
227
233
  end
228
234
 
235
+ # Metadata for the batch operations such as the current state.
236
+ # This is included in the `metadata` field of the `Operation` returned by the
237
+ # `GetOperation` call of the `google::longrunning::Operations` service.
238
+ class BatchOperationMetadata
239
+ include Google::Apis::Core::Hashable
240
+
241
+ # The time when the batch request is finished and
242
+ # google.longrunning.Operation.done is set to true.
243
+ # Corresponds to the JSON property `endTime`
244
+ # @return [String]
245
+ attr_accessor :end_time
246
+
247
+ # The current state of the batch operation.
248
+ # Corresponds to the JSON property `state`
249
+ # @return [String]
250
+ attr_accessor :state
251
+
252
+ # The time when the batch request was submitted to the server.
253
+ # Corresponds to the JSON property `submitTime`
254
+ # @return [String]
255
+ attr_accessor :submit_time
256
+
257
+ def initialize(**args)
258
+ update!(**args)
259
+ end
260
+
261
+ # Update properties of this object
262
+ def update!(**args)
263
+ @end_time = args[:end_time] if args.key?(:end_time)
264
+ @state = args[:state] if args.key?(:state)
265
+ @submit_time = args[:submit_time] if args.key?(:submit_time)
266
+ end
267
+ end
268
+
229
269
  # Logical element on the page.
230
270
  class Block
231
271
  include Google::Apis::Core::Hashable
@@ -1090,6 +1130,11 @@ module Google
1090
1130
  # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1EntityAnnotation>]
1091
1131
  attr_accessor :logo_annotations
1092
1132
 
1133
+ # Results for a product search request.
1134
+ # Corresponds to the JSON property `productSearchResults`
1135
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1ProductSearchResults]
1136
+ attr_accessor :product_search_results
1137
+
1093
1138
  # Set of features pertaining to the image, computed by computer vision
1094
1139
  # methods over safe-search verticals (for example, adult, spoof, medical,
1095
1140
  # violence).
@@ -1123,6 +1168,7 @@ module Google
1123
1168
  @landmark_annotations = args[:landmark_annotations] if args.key?(:landmark_annotations)
1124
1169
  @localized_object_annotations = args[:localized_object_annotations] if args.key?(:localized_object_annotations)
1125
1170
  @logo_annotations = args[:logo_annotations] if args.key?(:logo_annotations)
1171
+ @product_search_results = args[:product_search_results] if args.key?(:product_search_results)
1126
1172
  @safe_search_annotation = args[:safe_search_annotation] if args.key?(:safe_search_annotation)
1127
1173
  @text_annotations = args[:text_annotations] if args.key?(:text_annotations)
1128
1174
  @web_detection = args[:web_detection] if args.key?(:web_detection)
@@ -1935,6 +1981,11 @@ module Google
1935
1981
  # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1LatLongRect]
1936
1982
  attr_accessor :lat_long_rect
1937
1983
 
1984
+ # Parameters for a product search request.
1985
+ # Corresponds to the JSON property `productSearchParams`
1986
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1ProductSearchParams]
1987
+ attr_accessor :product_search_params
1988
+
1938
1989
  # Parameters for web detection request.
1939
1990
  # Corresponds to the JSON property `webDetectionParams`
1940
1991
  # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1WebDetectionParams]
@@ -1949,6 +2000,7 @@ module Google
1949
2000
  @crop_hints_params = args[:crop_hints_params] if args.key?(:crop_hints_params)
1950
2001
  @language_hints = args[:language_hints] if args.key?(:language_hints)
1951
2002
  @lat_long_rect = args[:lat_long_rect] if args.key?(:lat_long_rect)
2003
+ @product_search_params = args[:product_search_params] if args.key?(:product_search_params)
1952
2004
  @web_detection_params = args[:web_detection_params] if args.key?(:web_detection_params)
1953
2005
  end
1954
2006
  end
@@ -2320,6 +2372,228 @@ module Google
2320
2372
  end
2321
2373
  end
2322
2374
 
2375
+ # A Product contains ReferenceImages.
2376
+ class GoogleCloudVisionV1p1beta1Product
2377
+ include Google::Apis::Core::Hashable
2378
+
2379
+ # User-provided metadata to be stored with this product. Must be at most 4096
2380
+ # characters long.
2381
+ # Corresponds to the JSON property `description`
2382
+ # @return [String]
2383
+ attr_accessor :description
2384
+
2385
+ # The user-provided name for this Product. Must not be empty. Must be at most
2386
+ # 4096 characters long.
2387
+ # Corresponds to the JSON property `displayName`
2388
+ # @return [String]
2389
+ attr_accessor :display_name
2390
+
2391
+ # The resource name of the product.
2392
+ # Format is:
2393
+ # `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
2394
+ # This field is ignored when creating a product.
2395
+ # Corresponds to the JSON property `name`
2396
+ # @return [String]
2397
+ attr_accessor :name
2398
+
2399
+ # The category for the product identified by the reference image. This should
2400
+ # be either "homegoods", "apparel", or "toys".
2401
+ # This field is immutable.
2402
+ # Corresponds to the JSON property `productCategory`
2403
+ # @return [String]
2404
+ attr_accessor :product_category
2405
+
2406
+ # Key-value pairs that can be attached to a product. At query time,
2407
+ # constraints can be specified based on the product_labels.
2408
+ # Note that integer values can be provided as strings, e.g. "1199". Only
2409
+ # strings with integer values can match a range-based restriction which is
2410
+ # to be supported soon.
2411
+ # Multiple values can be assigned to the same key. One product may have up to
2412
+ # 100 product_labels.
2413
+ # Corresponds to the JSON property `productLabels`
2414
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1ProductKeyValue>]
2415
+ attr_accessor :product_labels
2416
+
2417
+ def initialize(**args)
2418
+ update!(**args)
2419
+ end
2420
+
2421
+ # Update properties of this object
2422
+ def update!(**args)
2423
+ @description = args[:description] if args.key?(:description)
2424
+ @display_name = args[:display_name] if args.key?(:display_name)
2425
+ @name = args[:name] if args.key?(:name)
2426
+ @product_category = args[:product_category] if args.key?(:product_category)
2427
+ @product_labels = args[:product_labels] if args.key?(:product_labels)
2428
+ end
2429
+ end
2430
+
2431
+ # A product label represented as a key-value pair.
2432
+ class GoogleCloudVisionV1p1beta1ProductKeyValue
2433
+ include Google::Apis::Core::Hashable
2434
+
2435
+ # The key of the label attached to the product. Cannot be empty and cannot
2436
+ # exceed 128 bytes.
2437
+ # Corresponds to the JSON property `key`
2438
+ # @return [String]
2439
+ attr_accessor :key
2440
+
2441
+ # The value of the label attached to the product. Cannot be empty and
2442
+ # cannot exceed 128 bytes.
2443
+ # Corresponds to the JSON property `value`
2444
+ # @return [String]
2445
+ attr_accessor :value
2446
+
2447
+ def initialize(**args)
2448
+ update!(**args)
2449
+ end
2450
+
2451
+ # Update properties of this object
2452
+ def update!(**args)
2453
+ @key = args[:key] if args.key?(:key)
2454
+ @value = args[:value] if args.key?(:value)
2455
+ end
2456
+ end
2457
+
2458
+ # Parameters for a product search request.
2459
+ class GoogleCloudVisionV1p1beta1ProductSearchParams
2460
+ include Google::Apis::Core::Hashable
2461
+
2462
+ # A bounding polygon for the detected image annotation.
2463
+ # Corresponds to the JSON property `boundingPoly`
2464
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1BoundingPoly]
2465
+ attr_accessor :bounding_poly
2466
+
2467
+ # The filtering expression. This can be used to restrict search results based
2468
+ # on Product labels. We currently support an AND of OR of key-value
2469
+ # expressions, where each expression within an OR must have the same key.
2470
+ # For example, "(color = red OR color = blue) AND brand = Google" is
2471
+ # acceptable, but not "(color = red OR brand = Google)" or "color: red".
2472
+ # Corresponds to the JSON property `filter`
2473
+ # @return [String]
2474
+ attr_accessor :filter
2475
+
2476
+ # The list of product categories to search in. Currently, we only consider
2477
+ # the first category, and either "homegoods", "apparel", or "toys" should be
2478
+ # specified.
2479
+ # Corresponds to the JSON property `productCategories`
2480
+ # @return [Array<String>]
2481
+ attr_accessor :product_categories
2482
+
2483
+ # The resource name of a ProductSet to be searched for similar images.
2484
+ # Format is:
2485
+ # `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
2486
+ # Corresponds to the JSON property `productSet`
2487
+ # @return [String]
2488
+ attr_accessor :product_set
2489
+
2490
+ def initialize(**args)
2491
+ update!(**args)
2492
+ end
2493
+
2494
+ # Update properties of this object
2495
+ def update!(**args)
2496
+ @bounding_poly = args[:bounding_poly] if args.key?(:bounding_poly)
2497
+ @filter = args[:filter] if args.key?(:filter)
2498
+ @product_categories = args[:product_categories] if args.key?(:product_categories)
2499
+ @product_set = args[:product_set] if args.key?(:product_set)
2500
+ end
2501
+ end
2502
+
2503
+ # Results for a product search request.
2504
+ class GoogleCloudVisionV1p1beta1ProductSearchResults
2505
+ include Google::Apis::Core::Hashable
2506
+
2507
+ # Timestamp of the index which provided these results. Changes made after
2508
+ # this time are not reflected in the current results.
2509
+ # Corresponds to the JSON property `indexTime`
2510
+ # @return [String]
2511
+ attr_accessor :index_time
2512
+
2513
+ # List of results grouped by products detected in the query image. Each entry
2514
+ # corresponds to one bounding polygon in the query image, and contains the
2515
+ # matching products specific to that region. There may be duplicate product
2516
+ # matches in the union of all the per-product results.
2517
+ # Corresponds to the JSON property `productGroupedResults`
2518
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1ProductSearchResultsGroupedResult>]
2519
+ attr_accessor :product_grouped_results
2520
+
2521
+ # List of results, one for each product match.
2522
+ # Corresponds to the JSON property `results`
2523
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1ProductSearchResultsResult>]
2524
+ attr_accessor :results
2525
+
2526
+ def initialize(**args)
2527
+ update!(**args)
2528
+ end
2529
+
2530
+ # Update properties of this object
2531
+ def update!(**args)
2532
+ @index_time = args[:index_time] if args.key?(:index_time)
2533
+ @product_grouped_results = args[:product_grouped_results] if args.key?(:product_grouped_results)
2534
+ @results = args[:results] if args.key?(:results)
2535
+ end
2536
+ end
2537
+
2538
+ # Information about the products similar to a single product in a query
2539
+ # image.
2540
+ class GoogleCloudVisionV1p1beta1ProductSearchResultsGroupedResult
2541
+ include Google::Apis::Core::Hashable
2542
+
2543
+ # A bounding polygon for the detected image annotation.
2544
+ # Corresponds to the JSON property `boundingPoly`
2545
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1BoundingPoly]
2546
+ attr_accessor :bounding_poly
2547
+
2548
+ # List of results, one for each product match.
2549
+ # Corresponds to the JSON property `results`
2550
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1ProductSearchResultsResult>]
2551
+ attr_accessor :results
2552
+
2553
+ def initialize(**args)
2554
+ update!(**args)
2555
+ end
2556
+
2557
+ # Update properties of this object
2558
+ def update!(**args)
2559
+ @bounding_poly = args[:bounding_poly] if args.key?(:bounding_poly)
2560
+ @results = args[:results] if args.key?(:results)
2561
+ end
2562
+ end
2563
+
2564
+ # Information about a product.
2565
+ class GoogleCloudVisionV1p1beta1ProductSearchResultsResult
2566
+ include Google::Apis::Core::Hashable
2567
+
2568
+ # The resource name of the image from the product that is the closest match
2569
+ # to the query.
2570
+ # Corresponds to the JSON property `image`
2571
+ # @return [String]
2572
+ attr_accessor :image
2573
+
2574
+ # A Product contains ReferenceImages.
2575
+ # Corresponds to the JSON property `product`
2576
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p1beta1Product]
2577
+ attr_accessor :product
2578
+
2579
+ # A confidence level on the match, ranging from 0 (no confidence) to
2580
+ # 1 (full confidence).
2581
+ # Corresponds to the JSON property `score`
2582
+ # @return [Float]
2583
+ attr_accessor :score
2584
+
2585
+ def initialize(**args)
2586
+ update!(**args)
2587
+ end
2588
+
2589
+ # Update properties of this object
2590
+ def update!(**args)
2591
+ @image = args[:image] if args.key?(:image)
2592
+ @product = args[:product] if args.key?(:product)
2593
+ @score = args[:score] if args.key?(:score)
2594
+ end
2595
+ end
2596
+
2323
2597
  # A `Property` consists of a user-supplied name/value pair.
2324
2598
  class GoogleCloudVisionV1p1beta1Property
2325
2599
  include Google::Apis::Core::Hashable
@@ -2943,6 +3217,11 @@ module Google
2943
3217
  # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p2beta1EntityAnnotation>]
2944
3218
  attr_accessor :logo_annotations
2945
3219
 
3220
+ # Results for a product search request.
3221
+ # Corresponds to the JSON property `productSearchResults`
3222
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p2beta1ProductSearchResults]
3223
+ attr_accessor :product_search_results
3224
+
2946
3225
  # Set of features pertaining to the image, computed by computer vision
2947
3226
  # methods over safe-search verticals (for example, adult, spoof, medical,
2948
3227
  # violence).
@@ -2976,6 +3255,7 @@ module Google
2976
3255
  @landmark_annotations = args[:landmark_annotations] if args.key?(:landmark_annotations)
2977
3256
  @localized_object_annotations = args[:localized_object_annotations] if args.key?(:localized_object_annotations)
2978
3257
  @logo_annotations = args[:logo_annotations] if args.key?(:logo_annotations)
3258
+ @product_search_results = args[:product_search_results] if args.key?(:product_search_results)
2979
3259
  @safe_search_annotation = args[:safe_search_annotation] if args.key?(:safe_search_annotation)
2980
3260
  @text_annotations = args[:text_annotations] if args.key?(:text_annotations)
2981
3261
  @web_detection = args[:web_detection] if args.key?(:web_detection)
@@ -3904,28 +4184,205 @@ module Google
3904
4184
  end
3905
4185
  end
3906
4186
 
3907
- # A `Property` consists of a user-supplied name/value pair.
3908
- class GoogleCloudVisionV1p2beta1Property
4187
+ # A Product contains ReferenceImages.
4188
+ class GoogleCloudVisionV1p2beta1Product
3909
4189
  include Google::Apis::Core::Hashable
3910
4190
 
3911
- # Name of the property.
3912
- # Corresponds to the JSON property `name`
4191
+ # User-provided metadata to be stored with this product. Must be at most 4096
4192
+ # characters long.
4193
+ # Corresponds to the JSON property `description`
3913
4194
  # @return [String]
3914
- attr_accessor :name
3915
-
3916
- # Value of numeric properties.
3917
- # Corresponds to the JSON property `uint64Value`
3918
- # @return [Fixnum]
3919
- attr_accessor :uint64_value
4195
+ attr_accessor :description
3920
4196
 
3921
- # Value of the property.
3922
- # Corresponds to the JSON property `value`
4197
+ # The user-provided name for this Product. Must not be empty. Must be at most
4198
+ # 4096 characters long.
4199
+ # Corresponds to the JSON property `displayName`
3923
4200
  # @return [String]
3924
- attr_accessor :value
4201
+ attr_accessor :display_name
3925
4202
 
3926
- def initialize(**args)
3927
- update!(**args)
3928
- end
4203
+ # The resource name of the product.
4204
+ # Format is:
4205
+ # `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
4206
+ # This field is ignored when creating a product.
4207
+ # Corresponds to the JSON property `name`
4208
+ # @return [String]
4209
+ attr_accessor :name
4210
+
4211
+ # The category for the product identified by the reference image. This should
4212
+ # be either "homegoods", "apparel", or "toys".
4213
+ # This field is immutable.
4214
+ # Corresponds to the JSON property `productCategory`
4215
+ # @return [String]
4216
+ attr_accessor :product_category
4217
+
4218
+ # Key-value pairs that can be attached to a product. At query time,
4219
+ # constraints can be specified based on the product_labels.
4220
+ # Note that integer values can be provided as strings, e.g. "1199". Only
4221
+ # strings with integer values can match a range-based restriction which is
4222
+ # to be supported soon.
4223
+ # Multiple values can be assigned to the same key. One product may have up to
4224
+ # 100 product_labels.
4225
+ # Corresponds to the JSON property `productLabels`
4226
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p2beta1ProductKeyValue>]
4227
+ attr_accessor :product_labels
4228
+
4229
+ def initialize(**args)
4230
+ update!(**args)
4231
+ end
4232
+
4233
+ # Update properties of this object
4234
+ def update!(**args)
4235
+ @description = args[:description] if args.key?(:description)
4236
+ @display_name = args[:display_name] if args.key?(:display_name)
4237
+ @name = args[:name] if args.key?(:name)
4238
+ @product_category = args[:product_category] if args.key?(:product_category)
4239
+ @product_labels = args[:product_labels] if args.key?(:product_labels)
4240
+ end
4241
+ end
4242
+
4243
+ # A product label represented as a key-value pair.
4244
+ class GoogleCloudVisionV1p2beta1ProductKeyValue
4245
+ include Google::Apis::Core::Hashable
4246
+
4247
+ # The key of the label attached to the product. Cannot be empty and cannot
4248
+ # exceed 128 bytes.
4249
+ # Corresponds to the JSON property `key`
4250
+ # @return [String]
4251
+ attr_accessor :key
4252
+
4253
+ # The value of the label attached to the product. Cannot be empty and
4254
+ # cannot exceed 128 bytes.
4255
+ # Corresponds to the JSON property `value`
4256
+ # @return [String]
4257
+ attr_accessor :value
4258
+
4259
+ def initialize(**args)
4260
+ update!(**args)
4261
+ end
4262
+
4263
+ # Update properties of this object
4264
+ def update!(**args)
4265
+ @key = args[:key] if args.key?(:key)
4266
+ @value = args[:value] if args.key?(:value)
4267
+ end
4268
+ end
4269
+
4270
+ # Results for a product search request.
4271
+ class GoogleCloudVisionV1p2beta1ProductSearchResults
4272
+ include Google::Apis::Core::Hashable
4273
+
4274
+ # Timestamp of the index which provided these results. Changes made after
4275
+ # this time are not reflected in the current results.
4276
+ # Corresponds to the JSON property `indexTime`
4277
+ # @return [String]
4278
+ attr_accessor :index_time
4279
+
4280
+ # List of results grouped by products detected in the query image. Each entry
4281
+ # corresponds to one bounding polygon in the query image, and contains the
4282
+ # matching products specific to that region. There may be duplicate product
4283
+ # matches in the union of all the per-product results.
4284
+ # Corresponds to the JSON property `productGroupedResults`
4285
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p2beta1ProductSearchResultsGroupedResult>]
4286
+ attr_accessor :product_grouped_results
4287
+
4288
+ # List of results, one for each product match.
4289
+ # Corresponds to the JSON property `results`
4290
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p2beta1ProductSearchResultsResult>]
4291
+ attr_accessor :results
4292
+
4293
+ def initialize(**args)
4294
+ update!(**args)
4295
+ end
4296
+
4297
+ # Update properties of this object
4298
+ def update!(**args)
4299
+ @index_time = args[:index_time] if args.key?(:index_time)
4300
+ @product_grouped_results = args[:product_grouped_results] if args.key?(:product_grouped_results)
4301
+ @results = args[:results] if args.key?(:results)
4302
+ end
4303
+ end
4304
+
4305
+ # Information about the products similar to a single product in a query
4306
+ # image.
4307
+ class GoogleCloudVisionV1p2beta1ProductSearchResultsGroupedResult
4308
+ include Google::Apis::Core::Hashable
4309
+
4310
+ # A bounding polygon for the detected image annotation.
4311
+ # Corresponds to the JSON property `boundingPoly`
4312
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p2beta1BoundingPoly]
4313
+ attr_accessor :bounding_poly
4314
+
4315
+ # List of results, one for each product match.
4316
+ # Corresponds to the JSON property `results`
4317
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p2beta1ProductSearchResultsResult>]
4318
+ attr_accessor :results
4319
+
4320
+ def initialize(**args)
4321
+ update!(**args)
4322
+ end
4323
+
4324
+ # Update properties of this object
4325
+ def update!(**args)
4326
+ @bounding_poly = args[:bounding_poly] if args.key?(:bounding_poly)
4327
+ @results = args[:results] if args.key?(:results)
4328
+ end
4329
+ end
4330
+
4331
+ # Information about a product.
4332
+ class GoogleCloudVisionV1p2beta1ProductSearchResultsResult
4333
+ include Google::Apis::Core::Hashable
4334
+
4335
+ # The resource name of the image from the product that is the closest match
4336
+ # to the query.
4337
+ # Corresponds to the JSON property `image`
4338
+ # @return [String]
4339
+ attr_accessor :image
4340
+
4341
+ # A Product contains ReferenceImages.
4342
+ # Corresponds to the JSON property `product`
4343
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p2beta1Product]
4344
+ attr_accessor :product
4345
+
4346
+ # A confidence level on the match, ranging from 0 (no confidence) to
4347
+ # 1 (full confidence).
4348
+ # Corresponds to the JSON property `score`
4349
+ # @return [Float]
4350
+ attr_accessor :score
4351
+
4352
+ def initialize(**args)
4353
+ update!(**args)
4354
+ end
4355
+
4356
+ # Update properties of this object
4357
+ def update!(**args)
4358
+ @image = args[:image] if args.key?(:image)
4359
+ @product = args[:product] if args.key?(:product)
4360
+ @score = args[:score] if args.key?(:score)
4361
+ end
4362
+ end
4363
+
4364
+ # A `Property` consists of a user-supplied name/value pair.
4365
+ class GoogleCloudVisionV1p2beta1Property
4366
+ include Google::Apis::Core::Hashable
4367
+
4368
+ # Name of the property.
4369
+ # Corresponds to the JSON property `name`
4370
+ # @return [String]
4371
+ attr_accessor :name
4372
+
4373
+ # Value of numeric properties.
4374
+ # Corresponds to the JSON property `uint64Value`
4375
+ # @return [Fixnum]
4376
+ attr_accessor :uint64_value
4377
+
4378
+ # Value of the property.
4379
+ # Corresponds to the JSON property `value`
4380
+ # @return [String]
4381
+ attr_accessor :value
4382
+
4383
+ def initialize(**args)
4384
+ update!(**args)
4385
+ end
3929
4386
 
3930
4387
  # Update properties of this object
3931
4388
  def update!(**args)
@@ -5633,6 +6090,14 @@ module Google
5633
6090
  # @return [String]
5634
6091
  attr_accessor :index_time
5635
6092
 
6093
+ # List of results grouped by products detected in the query image. Each entry
6094
+ # corresponds to one bounding polygon in the query image, and contains the
6095
+ # matching products specific to that region. There may be duplicate product
6096
+ # matches in the union of all the per-product results.
6097
+ # Corresponds to the JSON property `productGroupedResults`
6098
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p3beta1ProductSearchResultsGroupedResult>]
6099
+ attr_accessor :product_grouped_results
6100
+
5636
6101
  # List of results, one for each product match.
5637
6102
  # Corresponds to the JSON property `results`
5638
6103
  # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p3beta1ProductSearchResultsResult>]
@@ -5645,6 +6110,33 @@ module Google
5645
6110
  # Update properties of this object
5646
6111
  def update!(**args)
5647
6112
  @index_time = args[:index_time] if args.key?(:index_time)
6113
+ @product_grouped_results = args[:product_grouped_results] if args.key?(:product_grouped_results)
6114
+ @results = args[:results] if args.key?(:results)
6115
+ end
6116
+ end
6117
+
6118
+ # Information about the products similar to a single product in a query
6119
+ # image.
6120
+ class GoogleCloudVisionV1p3beta1ProductSearchResultsGroupedResult
6121
+ include Google::Apis::Core::Hashable
6122
+
6123
+ # A bounding polygon for the detected image annotation.
6124
+ # Corresponds to the JSON property `boundingPoly`
6125
+ # @return [Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p3beta1BoundingPoly]
6126
+ attr_accessor :bounding_poly
6127
+
6128
+ # List of results, one for each product match.
6129
+ # Corresponds to the JSON property `results`
6130
+ # @return [Array<Google::Apis::VisionV1p1beta1::GoogleCloudVisionV1p3beta1ProductSearchResultsResult>]
6131
+ attr_accessor :results
6132
+
6133
+ def initialize(**args)
6134
+ update!(**args)
6135
+ end
6136
+
6137
+ # Update properties of this object
6138
+ def update!(**args)
6139
+ @bounding_poly = args[:bounding_poly] if args.key?(:bounding_poly)
5648
6140
  @results = args[:results] if args.key?(:results)
5649
6141
  end
5650
6142
  end
@@ -6203,6 +6695,32 @@ module Google
6203
6695
  end
6204
6696
  end
6205
6697
 
6698
+ # Information about the products similar to a single product in a query
6699
+ # image.
6700
+ class GroupedResult
6701
+ include Google::Apis::Core::Hashable
6702
+
6703
+ # A bounding polygon for the detected image annotation.
6704
+ # Corresponds to the JSON property `boundingPoly`
6705
+ # @return [Google::Apis::VisionV1p1beta1::BoundingPoly]
6706
+ attr_accessor :bounding_poly
6707
+
6708
+ # List of results, one for each product match.
6709
+ # Corresponds to the JSON property `results`
6710
+ # @return [Array<Google::Apis::VisionV1p1beta1::Result>]
6711
+ attr_accessor :results
6712
+
6713
+ def initialize(**args)
6714
+ update!(**args)
6715
+ end
6716
+
6717
+ # Update properties of this object
6718
+ def update!(**args)
6719
+ @bounding_poly = args[:bounding_poly] if args.key?(:bounding_poly)
6720
+ @results = args[:results] if args.key?(:results)
6721
+ end
6722
+ end
6723
+
6206
6724
  # If an image was produced from a file (e.g. a PDF), this message gives
6207
6725
  # information about the source of that image.
6208
6726
  class ImageAnnotationContext
@@ -6249,6 +6767,38 @@ module Google
6249
6767
  end
6250
6768
  end
6251
6769
 
6770
+ # Response message for the `ImportProductSets` method.
6771
+ # This message is returned by the
6772
+ # google.longrunning.Operations.GetOperation method in the returned
6773
+ # google.longrunning.Operation.response field.
6774
+ class ImportProductSetsResponse
6775
+ include Google::Apis::Core::Hashable
6776
+
6777
+ # The list of reference_images that are imported successfully.
6778
+ # Corresponds to the JSON property `referenceImages`
6779
+ # @return [Array<Google::Apis::VisionV1p1beta1::ReferenceImage>]
6780
+ attr_accessor :reference_images
6781
+
6782
+ # The rpc status for each ImportProductSet request, including both successes
6783
+ # and errors.
6784
+ # The number of statuses here matches the number of lines in the csv file,
6785
+ # and statuses[i] stores the success or failure status of processing the i-th
6786
+ # line of the csv, starting from line 0.
6787
+ # Corresponds to the JSON property `statuses`
6788
+ # @return [Array<Google::Apis::VisionV1p1beta1::Status>]
6789
+ attr_accessor :statuses
6790
+
6791
+ def initialize(**args)
6792
+ update!(**args)
6793
+ end
6794
+
6795
+ # Update properties of this object
6796
+ def update!(**args)
6797
+ @reference_images = args[:reference_images] if args.key?(:reference_images)
6798
+ @statuses = args[:statuses] if args.key?(:statuses)
6799
+ end
6800
+ end
6801
+
6252
6802
  # The desired input location and metadata.
6253
6803
  class InputConfig
6254
6804
  include Google::Apis::Core::Hashable
@@ -6275,6 +6825,33 @@ module Google
6275
6825
  end
6276
6826
  end
6277
6827
 
6828
+ # A product label represented as a key-value pair.
6829
+ class KeyValue
6830
+ include Google::Apis::Core::Hashable
6831
+
6832
+ # The key of the label attached to the product. Cannot be empty and cannot
6833
+ # exceed 128 bytes.
6834
+ # Corresponds to the JSON property `key`
6835
+ # @return [String]
6836
+ attr_accessor :key
6837
+
6838
+ # The value of the label attached to the product. Cannot be empty and
6839
+ # cannot exceed 128 bytes.
6840
+ # Corresponds to the JSON property `value`
6841
+ # @return [String]
6842
+ attr_accessor :value
6843
+
6844
+ def initialize(**args)
6845
+ update!(**args)
6846
+ end
6847
+
6848
+ # Update properties of this object
6849
+ def update!(**args)
6850
+ @key = args[:key] if args.key?(:key)
6851
+ @value = args[:value] if args.key?(:value)
6852
+ end
6853
+ end
6854
+
6278
6855
  # A face-specific landmark (for example, a face feature).
6279
6856
  class Landmark
6280
6857
  include Google::Apis::Core::Hashable
@@ -6702,6 +7279,97 @@ module Google
6702
7279
  end
6703
7280
  end
6704
7281
 
7282
+ # A Product contains ReferenceImages.
7283
+ class Product
7284
+ include Google::Apis::Core::Hashable
7285
+
7286
+ # User-provided metadata to be stored with this product. Must be at most 4096
7287
+ # characters long.
7288
+ # Corresponds to the JSON property `description`
7289
+ # @return [String]
7290
+ attr_accessor :description
7291
+
7292
+ # The user-provided name for this Product. Must not be empty. Must be at most
7293
+ # 4096 characters long.
7294
+ # Corresponds to the JSON property `displayName`
7295
+ # @return [String]
7296
+ attr_accessor :display_name
7297
+
7298
+ # The resource name of the product.
7299
+ # Format is:
7300
+ # `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
7301
+ # This field is ignored when creating a product.
7302
+ # Corresponds to the JSON property `name`
7303
+ # @return [String]
7304
+ attr_accessor :name
7305
+
7306
+ # The category for the product identified by the reference image. This should
7307
+ # be either "homegoods", "apparel", or "toys".
7308
+ # This field is immutable.
7309
+ # Corresponds to the JSON property `productCategory`
7310
+ # @return [String]
7311
+ attr_accessor :product_category
7312
+
7313
+ # Key-value pairs that can be attached to a product. At query time,
7314
+ # constraints can be specified based on the product_labels.
7315
+ # Note that integer values can be provided as strings, e.g. "1199". Only
7316
+ # strings with integer values can match a range-based restriction which is
7317
+ # to be supported soon.
7318
+ # Multiple values can be assigned to the same key. One product may have up to
7319
+ # 100 product_labels.
7320
+ # Corresponds to the JSON property `productLabels`
7321
+ # @return [Array<Google::Apis::VisionV1p1beta1::KeyValue>]
7322
+ attr_accessor :product_labels
7323
+
7324
+ def initialize(**args)
7325
+ update!(**args)
7326
+ end
7327
+
7328
+ # Update properties of this object
7329
+ def update!(**args)
7330
+ @description = args[:description] if args.key?(:description)
7331
+ @display_name = args[:display_name] if args.key?(:display_name)
7332
+ @name = args[:name] if args.key?(:name)
7333
+ @product_category = args[:product_category] if args.key?(:product_category)
7334
+ @product_labels = args[:product_labels] if args.key?(:product_labels)
7335
+ end
7336
+ end
7337
+
7338
+ # Results for a product search request.
7339
+ class ProductSearchResults
7340
+ include Google::Apis::Core::Hashable
7341
+
7342
+ # Timestamp of the index which provided these results. Changes made after
7343
+ # this time are not reflected in the current results.
7344
+ # Corresponds to the JSON property `indexTime`
7345
+ # @return [String]
7346
+ attr_accessor :index_time
7347
+
7348
+ # List of results grouped by products detected in the query image. Each entry
7349
+ # corresponds to one bounding polygon in the query image, and contains the
7350
+ # matching products specific to that region. There may be duplicate product
7351
+ # matches in the union of all the per-product results.
7352
+ # Corresponds to the JSON property `productGroupedResults`
7353
+ # @return [Array<Google::Apis::VisionV1p1beta1::GroupedResult>]
7354
+ attr_accessor :product_grouped_results
7355
+
7356
+ # List of results, one for each product match.
7357
+ # Corresponds to the JSON property `results`
7358
+ # @return [Array<Google::Apis::VisionV1p1beta1::Result>]
7359
+ attr_accessor :results
7360
+
7361
+ def initialize(**args)
7362
+ update!(**args)
7363
+ end
7364
+
7365
+ # Update properties of this object
7366
+ def update!(**args)
7367
+ @index_time = args[:index_time] if args.key?(:index_time)
7368
+ @product_grouped_results = args[:product_grouped_results] if args.key?(:product_grouped_results)
7369
+ @results = args[:results] if args.key?(:results)
7370
+ end
7371
+ end
7372
+
6705
7373
  # A `Property` consists of a user-supplied name/value pair.
6706
7374
  class Property
6707
7375
  include Google::Apis::Core::Hashable
@@ -6733,6 +7401,83 @@ module Google
6733
7401
  end
6734
7402
  end
6735
7403
 
7404
+ # A `ReferenceImage` represents a product image and its associated metadata,
7405
+ # such as bounding boxes.
7406
+ class ReferenceImage
7407
+ include Google::Apis::Core::Hashable
7408
+
7409
+ # Bounding polygons around the areas of interest in the reference image.
7410
+ # Optional. If this field is empty, the system will try to detect regions of
7411
+ # interest. At most 10 bounding polygons will be used.
7412
+ # The provided shape is converted into a non-rotated rectangle. Once
7413
+ # converted, the small edge of the rectangle must be greater than or equal
7414
+ # to 300 pixels. The aspect ratio must be 1:4 or less (i.e. 1:3 is ok; 1:5
7415
+ # is not).
7416
+ # Corresponds to the JSON property `boundingPolys`
7417
+ # @return [Array<Google::Apis::VisionV1p1beta1::BoundingPoly>]
7418
+ attr_accessor :bounding_polys
7419
+
7420
+ # The resource name of the reference image.
7421
+ # Format is:
7422
+ # `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/
7423
+ # IMAGE_ID`.
7424
+ # This field is ignored when creating a reference image.
7425
+ # Corresponds to the JSON property `name`
7426
+ # @return [String]
7427
+ attr_accessor :name
7428
+
7429
+ # The Google Cloud Storage URI of the reference image.
7430
+ # The URI must start with `gs://`.
7431
+ # Required.
7432
+ # Corresponds to the JSON property `uri`
7433
+ # @return [String]
7434
+ attr_accessor :uri
7435
+
7436
+ def initialize(**args)
7437
+ update!(**args)
7438
+ end
7439
+
7440
+ # Update properties of this object
7441
+ def update!(**args)
7442
+ @bounding_polys = args[:bounding_polys] if args.key?(:bounding_polys)
7443
+ @name = args[:name] if args.key?(:name)
7444
+ @uri = args[:uri] if args.key?(:uri)
7445
+ end
7446
+ end
7447
+
7448
+ # Information about a product.
7449
+ class Result
7450
+ include Google::Apis::Core::Hashable
7451
+
7452
+ # The resource name of the image from the product that is the closest match
7453
+ # to the query.
7454
+ # Corresponds to the JSON property `image`
7455
+ # @return [String]
7456
+ attr_accessor :image
7457
+
7458
+ # A Product contains ReferenceImages.
7459
+ # Corresponds to the JSON property `product`
7460
+ # @return [Google::Apis::VisionV1p1beta1::Product]
7461
+ attr_accessor :product
7462
+
7463
+ # A confidence level on the match, ranging from 0 (no confidence) to
7464
+ # 1 (full confidence).
7465
+ # Corresponds to the JSON property `score`
7466
+ # @return [Float]
7467
+ attr_accessor :score
7468
+
7469
+ def initialize(**args)
7470
+ update!(**args)
7471
+ end
7472
+
7473
+ # Update properties of this object
7474
+ def update!(**args)
7475
+ @image = args[:image] if args.key?(:image)
7476
+ @product = args[:product] if args.key?(:product)
7477
+ @score = args[:score] if args.key?(:score)
7478
+ end
7479
+ end
7480
+
6736
7481
  # Set of features pertaining to the image, computed by computer vision
6737
7482
  # methods over safe-search verticals (for example, adult, spoof, medical,
6738
7483
  # violence).