google-api-client 0.20.1 → 0.21.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (451) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +140 -0
  3. data/README.md +3 -12
  4. data/generated/google/apis/abusiveexperiencereport_v1.rb +2 -2
  5. data/generated/google/apis/abusiveexperiencereport_v1/classes.rb +1 -0
  6. data/generated/google/apis/abusiveexperiencereport_v1/service.rb +1 -1
  7. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +11 -1
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  10. data/generated/google/apis/adexchangebuyer_v1_2.rb +1 -1
  11. data/generated/google/apis/adexchangebuyer_v1_2/service.rb +24 -40
  12. data/generated/google/apis/adexchangebuyer_v1_3.rb +1 -1
  13. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +66 -110
  14. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +117 -195
  15. data/generated/google/apis/adexchangeseller_v1.rb +1 -1
  16. data/generated/google/apis/adexchangeseller_v1/service.rb +36 -60
  17. data/generated/google/apis/adexchangeseller_v1_1.rb +1 -1
  18. data/generated/google/apis/adexchangeseller_v1_1/service.rb +54 -90
  19. data/generated/google/apis/adexchangeseller_v2_0.rb +1 -1
  20. data/generated/google/apis/adexchangeseller_v2_0/service.rb +45 -75
  21. data/generated/google/apis/adexperiencereport_v1.rb +2 -2
  22. data/generated/google/apis/adexperiencereport_v1/classes.rb +1 -0
  23. data/generated/google/apis/adexperiencereport_v1/service.rb +1 -1
  24. data/generated/google/apis/admin_datatransfer_v1/service.rb +18 -30
  25. data/generated/google/apis/admin_directory_v1.rb +3 -3
  26. data/generated/google/apis/admin_directory_v1/classes.rb +18 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +3 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +363 -577
  29. data/generated/google/apis/admin_reports_v1.rb +1 -1
  30. data/generated/google/apis/admin_reports_v1/service.rb +21 -35
  31. data/generated/google/apis/adsense_v1_4.rb +1 -1
  32. data/generated/google/apis/adsense_v1_4/service.rb +117 -195
  33. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  34. data/generated/google/apis/adsensehost_v4_1/service.rb +81 -135
  35. data/generated/google/apis/analytics_v2_4.rb +1 -1
  36. data/generated/google/apis/analytics_v2_4/service.rb +21 -35
  37. data/generated/google/apis/analytics_v3.rb +1 -1
  38. data/generated/google/apis/analytics_v3/classes.rb +32 -60
  39. data/generated/google/apis/analytics_v3/representations.rb +8 -12
  40. data/generated/google/apis/analytics_v3/service.rb +261 -435
  41. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  42. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +2 -1
  43. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  44. data/generated/google/apis/androidenterprise_v1/classes.rb +8 -12
  45. data/generated/google/apis/androidenterprise_v1/service.rb +254 -425
  46. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  47. data/generated/google/apis/androidmanagement_v1/classes.rb +38 -6
  48. data/generated/google/apis/androidmanagement_v1/representations.rb +18 -0
  49. data/generated/google/apis/androidpublisher_v1.rb +1 -1
  50. data/generated/google/apis/androidpublisher_v1/service.rb +9 -15
  51. data/generated/google/apis/androidpublisher_v1_1.rb +1 -1
  52. data/generated/google/apis/androidpublisher_v1_1/service.rb +12 -20
  53. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  54. data/generated/google/apis/androidpublisher_v2/classes.rb +102 -1
  55. data/generated/google/apis/androidpublisher_v2/representations.rb +46 -0
  56. data/generated/google/apis/androidpublisher_v2/service.rb +255 -286
  57. data/generated/google/apis/androidpublisher_v3.rb +34 -0
  58. data/generated/google/apis/androidpublisher_v3/classes.rb +1899 -0
  59. data/generated/google/apis/androidpublisher_v3/representations.rb +882 -0
  60. data/generated/google/apis/androidpublisher_v3/service.rb +2208 -0
  61. data/generated/google/apis/appsactivity_v1.rb +1 -1
  62. data/generated/google/apis/appsactivity_v1/service.rb +6 -10
  63. data/generated/google/apis/appsmarket_v2/service.rb +12 -20
  64. data/generated/google/apis/appstate_v1.rb +1 -1
  65. data/generated/google/apis/appstate_v1/service.rb +18 -30
  66. data/generated/google/apis/bigquery_v2.rb +1 -1
  67. data/generated/google/apis/bigquery_v2/classes.rb +67 -9
  68. data/generated/google/apis/bigquery_v2/representations.rb +22 -0
  69. data/generated/google/apis/bigquery_v2/service.rb +69 -115
  70. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  71. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +1 -2
  72. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +2 -2
  73. data/generated/google/apis/blogger_v2/service.rb +30 -50
  74. data/generated/google/apis/blogger_v3/service.rb +102 -170
  75. data/generated/google/apis/books_v1.rb +1 -1
  76. data/generated/google/apis/books_v1/service.rb +156 -260
  77. data/generated/google/apis/calendar_v3.rb +1 -1
  78. data/generated/google/apis/calendar_v3/service.rb +114 -190
  79. data/generated/google/apis/chat_v1.rb +1 -1
  80. data/generated/google/apis/chat_v1/classes.rb +6 -0
  81. data/generated/google/apis/chat_v1/representations.rb +1 -0
  82. data/generated/google/apis/civicinfo_v2/service.rb +18 -30
  83. data/generated/google/apis/classroom_v1.rb +1 -1
  84. data/generated/google/apis/classroom_v1/classes.rb +0 -69
  85. data/generated/google/apis/classroom_v1/representations.rb +0 -31
  86. data/generated/google/apis/classroom_v1/service.rb +0 -88
  87. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  88. data/generated/google/apis/cloudbilling_v1/classes.rb +0 -1
  89. data/generated/google/apis/cloudbilling_v1/service.rb +2 -1
  90. data/generated/google/apis/cloudfunctions_v1.rb +3 -4
  91. data/generated/google/apis/cloudfunctions_v1/classes.rb +14 -0
  92. data/generated/google/apis/cloudfunctions_v1/representations.rb +2 -0
  93. data/generated/google/apis/cloudfunctions_v1/service.rb +3 -4
  94. data/generated/google/apis/cloudfunctions_v1beta2.rb +3 -4
  95. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +14 -0
  96. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +2 -0
  97. data/generated/google/apis/cloudfunctions_v1beta2/service.rb +3 -4
  98. data/generated/google/apis/cloudiot_v1.rb +1 -1
  99. data/generated/google/apis/cloudiot_v1/classes.rb +29 -7
  100. data/generated/google/apis/cloudiot_v1/service.rb +398 -1
  101. data/generated/google/apis/cloudkms_v1.rb +2 -2
  102. data/generated/google/apis/cloudkms_v1/classes.rb +29 -7
  103. data/generated/google/apis/cloudkms_v1/service.rb +1 -1
  104. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  105. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +30 -8
  106. data/generated/google/apis/cloudresourcemanager_v1/service.rb +5 -3
  107. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  108. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +29 -7
  109. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  110. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +29 -7
  111. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  112. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +29 -7
  113. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  114. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +39 -10
  115. data/generated/google/apis/cloudtasks_v2beta2/service.rb +9 -11
  116. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  117. data/generated/google/apis/cloudtrace_v1/classes.rb +1 -1
  118. data/generated/google/apis/{dlp_v2beta1.rb → composer_v1beta1.rb} +9 -11
  119. data/generated/google/apis/composer_v1beta1/classes.rb +643 -0
  120. data/generated/google/apis/composer_v1beta1/representations.rb +195 -0
  121. data/generated/google/apis/composer_v1beta1/service.rb +462 -0
  122. data/generated/google/apis/compute_alpha.rb +1 -1
  123. data/generated/google/apis/compute_alpha/classes.rb +3939 -2239
  124. data/generated/google/apis/compute_alpha/representations.rb +1063 -335
  125. data/generated/google/apis/compute_alpha/service.rb +3532 -3368
  126. data/generated/google/apis/compute_beta.rb +1 -1
  127. data/generated/google/apis/compute_beta/classes.rb +150 -53
  128. data/generated/google/apis/compute_beta/representations.rb +23 -0
  129. data/generated/google/apis/compute_beta/service.rb +1269 -2077
  130. data/generated/google/apis/compute_v1.rb +1 -1
  131. data/generated/google/apis/compute_v1/classes.rb +46 -43
  132. data/generated/google/apis/compute_v1/service.rb +1022 -1666
  133. data/generated/google/apis/container_v1.rb +2 -2
  134. data/generated/google/apis/container_v1/classes.rb +20 -15
  135. data/generated/google/apis/container_v1/representations.rb +1 -0
  136. data/generated/google/apis/container_v1/service.rb +33 -31
  137. data/generated/google/apis/container_v1beta1.rb +2 -2
  138. data/generated/google/apis/container_v1beta1/classes.rb +186 -14
  139. data/generated/google/apis/container_v1beta1/representations.rb +77 -0
  140. data/generated/google/apis/container_v1beta1/service.rb +111 -31
  141. data/generated/google/apis/content_v2.rb +1 -1
  142. data/generated/google/apis/content_v2/classes.rb +173 -8
  143. data/generated/google/apis/content_v2/representations.rb +71 -0
  144. data/generated/google/apis/content_v2/service.rb +246 -410
  145. data/generated/google/apis/content_v2sandbox.rb +1 -1
  146. data/generated/google/apis/content_v2sandbox/classes.rb +75 -8
  147. data/generated/google/apis/content_v2sandbox/representations.rb +33 -0
  148. data/generated/google/apis/content_v2sandbox/service.rb +63 -105
  149. data/generated/google/apis/customsearch_v1.rb +1 -1
  150. data/generated/google/apis/customsearch_v1/service.rb +9 -15
  151. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  152. data/generated/google/apis/dataflow_v1b3/classes.rb +15 -0
  153. data/generated/google/apis/dataflow_v1b3/representations.rb +2 -0
  154. data/generated/google/apis/dataproc_v1.rb +2 -2
  155. data/generated/google/apis/dataproc_v1/classes.rb +6 -6
  156. data/generated/google/apis/dataproc_v1/service.rb +1 -1
  157. data/generated/google/apis/dataproc_v1beta2.rb +2 -2
  158. data/generated/google/apis/dataproc_v1beta2/classes.rb +48 -13
  159. data/generated/google/apis/dataproc_v1beta2/representations.rb +12 -0
  160. data/generated/google/apis/dataproc_v1beta2/service.rb +1 -1
  161. data/generated/google/apis/datastore_v1.rb +2 -2
  162. data/generated/google/apis/datastore_v1/service.rb +1 -1
  163. data/generated/google/apis/datastore_v1beta1.rb +2 -2
  164. data/generated/google/apis/datastore_v1beta1/service.rb +1 -1
  165. data/generated/google/apis/datastore_v1beta3.rb +2 -2
  166. data/generated/google/apis/datastore_v1beta3/service.rb +1 -1
  167. data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
  168. data/generated/google/apis/deploymentmanager_alpha/classes.rb +60 -5
  169. data/generated/google/apis/deploymentmanager_alpha/representations.rb +17 -0
  170. data/generated/google/apis/deploymentmanager_alpha/service.rb +118 -194
  171. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  172. data/generated/google/apis/deploymentmanager_v2/classes.rb +60 -5
  173. data/generated/google/apis/deploymentmanager_v2/representations.rb +17 -0
  174. data/generated/google/apis/deploymentmanager_v2/service.rb +61 -99
  175. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  176. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +60 -5
  177. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +17 -0
  178. data/generated/google/apis/deploymentmanager_v2beta/service.rb +103 -169
  179. data/generated/google/apis/dfareporting_v2_8/service.rb +618 -1030
  180. data/generated/google/apis/dfareporting_v3_0/service.rb +615 -1025
  181. data/generated/google/apis/dialogflow_v2.rb +1 -1
  182. data/generated/google/apis/dialogflow_v2/classes.rb +94 -24
  183. data/generated/google/apis/dialogflow_v2/representations.rb +13 -0
  184. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  185. data/generated/google/apis/dialogflow_v2beta1/classes.rb +94 -24
  186. data/generated/google/apis/dialogflow_v2beta1/representations.rb +13 -0
  187. data/generated/google/apis/discovery_v1/service.rb +9 -15
  188. data/generated/google/apis/dlp_v2.rb +1 -1
  189. data/generated/google/apis/dlp_v2/classes.rb +116 -1572
  190. data/generated/google/apis/dlp_v2/representations.rb +673 -1405
  191. data/generated/google/apis/dlp_v2/service.rb +24 -24
  192. data/generated/google/apis/dns_v1.rb +1 -1
  193. data/generated/google/apis/dns_v1/classes.rb +7 -0
  194. data/generated/google/apis/dns_v1/representations.rb +1 -0
  195. data/generated/google/apis/dns_v1/service.rb +49 -81
  196. data/generated/google/apis/dns_v1beta2.rb +1 -1
  197. data/generated/google/apis/dns_v1beta2/classes.rb +7 -0
  198. data/generated/google/apis/dns_v1beta2/representations.rb +1 -0
  199. data/generated/google/apis/dns_v1beta2/service.rb +49 -81
  200. data/generated/google/apis/dns_v2beta1.rb +1 -1
  201. data/generated/google/apis/dns_v2beta1/classes.rb +7 -0
  202. data/generated/google/apis/dns_v2beta1/representations.rb +1 -0
  203. data/generated/google/apis/dns_v2beta1/service.rb +49 -81
  204. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +30 -50
  205. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  206. data/generated/google/apis/doubleclicksearch_v2/service.rb +33 -55
  207. data/generated/google/apis/drive_v2.rb +1 -1
  208. data/generated/google/apis/drive_v2/service.rb +205 -341
  209. data/generated/google/apis/drive_v3.rb +1 -1
  210. data/generated/google/apis/drive_v3/service.rb +120 -200
  211. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  212. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +1 -1
  213. data/generated/google/apis/firestore_v1beta1.rb +2 -2
  214. data/generated/google/apis/firestore_v1beta1/service.rb +1 -1
  215. data/generated/google/apis/fitness_v1/service.rb +45 -75
  216. data/generated/google/apis/fusiontables_v1.rb +1 -1
  217. data/generated/google/apis/fusiontables_v1/service.rb +99 -165
  218. data/generated/google/apis/fusiontables_v2/service.rb +105 -175
  219. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  220. data/generated/google/apis/games_configuration_v1configuration/service.rb +42 -70
  221. data/generated/google/apis/games_management_v1management.rb +1 -1
  222. data/generated/google/apis/games_management_v1management/service.rb +84 -140
  223. data/generated/google/apis/games_v1.rb +1 -1
  224. data/generated/google/apis/games_v1/service.rb +162 -270
  225. data/generated/google/apis/genomics_v1.rb +1 -1
  226. data/generated/google/apis/genomics_v1/classes.rb +41 -7
  227. data/generated/google/apis/genomics_v1/representations.rb +1 -0
  228. data/generated/google/apis/genomics_v1alpha2.rb +1 -1
  229. data/generated/google/apis/genomics_v1alpha2/classes.rb +12 -0
  230. data/generated/google/apis/genomics_v1alpha2/representations.rb +1 -0
  231. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  232. data/generated/google/apis/genomics_v2alpha1/classes.rb +70 -0
  233. data/generated/google/apis/genomics_v2alpha1/representations.rb +20 -0
  234. data/generated/google/apis/gmail_v1/service.rb +189 -315
  235. data/generated/google/apis/groupsmigration_v1/service.rb +6 -10
  236. data/generated/google/apis/groupssettings_v1/service.rb +12 -20
  237. data/generated/google/apis/iam_v1.rb +2 -2
  238. data/generated/google/apis/iam_v1/classes.rb +29 -7
  239. data/generated/google/apis/iam_v1/service.rb +1 -1
  240. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  241. data/generated/google/apis/identitytoolkit_v3/service.rb +63 -105
  242. data/generated/google/apis/jobs_v2.rb +38 -0
  243. data/generated/google/apis/jobs_v2/classes.rb +3378 -0
  244. data/generated/google/apis/jobs_v2/representations.rb +1067 -0
  245. data/generated/google/apis/jobs_v2/service.rb +754 -0
  246. data/generated/google/apis/licensing_v1/service.rb +24 -40
  247. data/generated/google/apis/logging_v2.rb +1 -1
  248. data/generated/google/apis/logging_v2/classes.rb +55 -5
  249. data/generated/google/apis/logging_v2/representations.rb +16 -0
  250. data/generated/google/apis/logging_v2/service.rb +6 -4
  251. data/generated/google/apis/logging_v2beta1.rb +1 -1
  252. data/generated/google/apis/logging_v2beta1/classes.rb +55 -5
  253. data/generated/google/apis/logging_v2beta1/representations.rb +16 -0
  254. data/generated/google/apis/logging_v2beta1/service.rb +6 -4
  255. data/generated/google/apis/mirror_v1.rb +1 -1
  256. data/generated/google/apis/mirror_v1/service.rb +75 -125
  257. data/generated/google/apis/ml_v1.rb +1 -1
  258. data/generated/google/apis/ml_v1/classes.rb +65 -28
  259. data/generated/google/apis/ml_v1/representations.rb +1 -0
  260. data/generated/google/apis/ml_v1/service.rb +2 -2
  261. data/generated/google/apis/oauth2_v1.rb +1 -1
  262. data/generated/google/apis/oauth2_v1/service.rb +27 -45
  263. data/generated/google/apis/oauth2_v2.rb +1 -1
  264. data/generated/google/apis/oauth2_v2/service.rb +15 -25
  265. data/generated/google/apis/oslogin_v1.rb +1 -1
  266. data/generated/google/apis/oslogin_v1/classes.rb +6 -0
  267. data/generated/google/apis/oslogin_v1/representations.rb +1 -0
  268. data/generated/google/apis/oslogin_v1alpha.rb +1 -1
  269. data/generated/google/apis/oslogin_v1alpha/classes.rb +7 -1
  270. data/generated/google/apis/oslogin_v1alpha/representations.rb +1 -0
  271. data/generated/google/apis/oslogin_v1alpha/service.rb +4 -1
  272. data/generated/google/apis/oslogin_v1beta.rb +1 -1
  273. data/generated/google/apis/oslogin_v1beta/classes.rb +6 -0
  274. data/generated/google/apis/oslogin_v1beta/representations.rb +1 -0
  275. data/generated/google/apis/pagespeedonline_v1.rb +1 -1
  276. data/generated/google/apis/pagespeedonline_v1/service.rb +6 -10
  277. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  278. data/generated/google/apis/pagespeedonline_v2/service.rb +6 -10
  279. data/generated/google/apis/pagespeedonline_v4/service.rb +6 -10
  280. data/generated/google/apis/photoslibrary_v1.rb +49 -0
  281. data/generated/google/apis/photoslibrary_v1/classes.rb +1330 -0
  282. data/generated/google/apis/photoslibrary_v1/representations.rb +625 -0
  283. data/generated/google/apis/photoslibrary_v1/service.rb +399 -0
  284. data/generated/google/apis/playcustomapp_v1/service.rb +6 -10
  285. data/generated/google/apis/plus_domains_v1.rb +1 -1
  286. data/generated/google/apis/plus_domains_v1/service.rb +63 -105
  287. data/generated/google/apis/plus_v1.rb +1 -1
  288. data/generated/google/apis/plus_v1/service.rb +30 -50
  289. data/generated/google/apis/pubsub_v1.rb +2 -2
  290. data/generated/google/apis/pubsub_v1/classes.rb +29 -7
  291. data/generated/google/apis/pubsub_v1/service.rb +1 -1
  292. data/generated/google/apis/pubsub_v1beta1a.rb +2 -2
  293. data/generated/google/apis/pubsub_v1beta1a/service.rb +1 -1
  294. data/generated/google/apis/pubsub_v1beta2.rb +2 -2
  295. data/generated/google/apis/pubsub_v1beta2/classes.rb +29 -7
  296. data/generated/google/apis/pubsub_v1beta2/service.rb +1 -1
  297. data/generated/google/apis/{dlp_v2beta2.rb → redis_v1beta1.rb} +10 -11
  298. data/generated/google/apis/redis_v1beta1/classes.rb +681 -0
  299. data/generated/google/apis/redis_v1beta1/representations.rb +240 -0
  300. data/generated/google/apis/redis_v1beta1/service.rb +426 -0
  301. data/generated/google/apis/replicapool_v1beta1/service.rb +33 -55
  302. data/generated/google/apis/replicapool_v1beta2/service.rb +39 -65
  303. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +33 -55
  304. data/generated/google/apis/reseller_v1/service.rb +54 -90
  305. data/generated/google/apis/resourceviews_v1beta1/service.rb +45 -75
  306. data/generated/google/apis/resourceviews_v1beta2/service.rb +36 -60
  307. data/generated/google/apis/runtimeconfig_v1.rb +2 -2
  308. data/generated/google/apis/runtimeconfig_v1/service.rb +1 -1
  309. data/generated/google/apis/runtimeconfig_v1beta1.rb +2 -2
  310. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +28 -6
  311. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +1 -1
  312. data/generated/google/apis/script_v1.rb +8 -2
  313. data/generated/google/apis/script_v1/classes.rb +3 -3
  314. data/generated/google/apis/script_v1/service.rb +8 -2
  315. data/generated/google/apis/servicebroker_v1.rb +36 -0
  316. data/generated/google/apis/servicebroker_v1/classes.rb +240 -0
  317. data/generated/google/apis/servicebroker_v1/representations.rb +96 -0
  318. data/generated/google/apis/servicebroker_v1/service.rb +168 -0
  319. data/generated/google/apis/servicebroker_v1alpha1.rb +36 -0
  320. data/generated/google/apis/servicebroker_v1alpha1/classes.rb +939 -0
  321. data/generated/google/apis/servicebroker_v1alpha1/representations.rb +348 -0
  322. data/generated/google/apis/servicebroker_v1alpha1/service.rb +728 -0
  323. data/generated/google/apis/servicebroker_v1beta1.rb +36 -0
  324. data/generated/google/apis/servicebroker_v1beta1/classes.rb +1046 -0
  325. data/generated/google/apis/servicebroker_v1beta1/representations.rb +393 -0
  326. data/generated/google/apis/servicebroker_v1beta1/service.rb +917 -0
  327. data/generated/google/apis/servicecontrol_v1.rb +2 -2
  328. data/generated/google/apis/servicecontrol_v1/classes.rb +1 -0
  329. data/generated/google/apis/servicecontrol_v1/service.rb +1 -1
  330. data/generated/google/apis/servicemanagement_v1.rb +2 -2
  331. data/generated/google/apis/servicemanagement_v1/classes.rb +29 -7
  332. data/generated/google/apis/servicemanagement_v1/service.rb +1 -1
  333. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  334. data/generated/google/apis/serviceusage_v1beta1/classes.rb +299 -0
  335. data/generated/google/apis/serviceusage_v1beta1/representations.rb +101 -0
  336. data/generated/google/apis/sheets_v4.rb +1 -1
  337. data/generated/google/apis/sheets_v4/classes.rb +421 -0
  338. data/generated/google/apis/sheets_v4/representations.rb +120 -0
  339. data/generated/google/apis/site_verification_v1/service.rb +24 -40
  340. data/generated/google/apis/slides_v1.rb +1 -1
  341. data/generated/google/apis/slides_v1/classes.rb +6 -2
  342. data/generated/google/apis/spanner_v1.rb +1 -1
  343. data/generated/google/apis/spanner_v1/classes.rb +39 -12
  344. data/generated/google/apis/spanner_v1/service.rb +2 -2
  345. data/generated/google/apis/spectrum_v1explorer.rb +1 -1
  346. data/generated/google/apis/spectrum_v1explorer/service.rb +21 -35
  347. data/generated/google/apis/speech_v1.rb +1 -1
  348. data/generated/google/apis/speech_v1/classes.rb +12 -0
  349. data/generated/google/apis/speech_v1/representations.rb +1 -0
  350. data/generated/google/apis/sqladmin_v1beta3.rb +1 -1
  351. data/generated/google/apis/sqladmin_v1beta3/service.rb +75 -125
  352. data/generated/google/apis/sqladmin_v1beta4/service.rb +126 -210
  353. data/generated/google/apis/storage_v1.rb +1 -1
  354. data/generated/google/apis/storage_v1/classes.rb +3 -6
  355. data/generated/google/apis/storage_v1/service.rb +144 -240
  356. data/generated/google/apis/storage_v1beta1.rb +1 -1
  357. data/generated/google/apis/storage_v1beta1/service.rb +75 -125
  358. data/generated/google/apis/storage_v1beta2.rb +1 -1
  359. data/generated/google/apis/storage_v1beta2/service.rb +105 -175
  360. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  361. data/generated/google/apis/storagetransfer_v1/classes.rb +4 -3
  362. data/generated/google/apis/surveys_v2.rb +1 -1
  363. data/generated/google/apis/surveys_v2/classes.rb +19 -122
  364. data/generated/google/apis/surveys_v2/representations.rb +0 -38
  365. data/generated/google/apis/surveys_v2/service.rb +27 -157
  366. data/generated/google/apis/tagmanager_v1/service.rb +153 -255
  367. data/generated/google/apis/tagmanager_v2/service.rb +222 -370
  368. data/generated/google/apis/tasks_v1/service.rb +45 -75
  369. data/generated/google/apis/texttospeech_v1beta1.rb +2 -2
  370. data/generated/google/apis/texttospeech_v1beta1/service.rb +1 -1
  371. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  372. data/generated/google/apis/toolresults_v1beta3/service.rb +75 -125
  373. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  374. data/generated/google/apis/urlshortener_v1/service.rb +12 -20
  375. data/generated/google/apis/vault_v1.rb +2 -2
  376. data/generated/google/apis/vault_v1/service.rb +1 -1
  377. data/generated/google/apis/videointelligence_v1.rb +34 -0
  378. data/generated/google/apis/videointelligence_v1/classes.rb +2149 -0
  379. data/generated/google/apis/videointelligence_v1/representations.rb +972 -0
  380. data/generated/google/apis/videointelligence_v1/service.rb +246 -0
  381. data/generated/google/apis/videointelligence_v1beta1.rb +1 -1
  382. data/generated/google/apis/videointelligence_v1beta1/classes.rb +18 -18
  383. data/generated/google/apis/{taskqueue_v1beta2.rb → videointelligence_v1beta2.rb} +10 -13
  384. data/generated/google/apis/videointelligence_v1beta2/classes.rb +2092 -0
  385. data/generated/google/apis/videointelligence_v1beta2/representations.rb +933 -0
  386. data/generated/google/apis/videointelligence_v1beta2/service.rb +92 -0
  387. data/generated/google/apis/vision_v1.rb +1 -1
  388. data/generated/google/apis/vision_v1/classes.rb +1441 -62
  389. data/generated/google/apis/vision_v1/representations.rb +582 -0
  390. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  391. data/generated/google/apis/vision_v1p1beta1/classes.rb +1441 -62
  392. data/generated/google/apis/vision_v1p1beta1/representations.rb +582 -0
  393. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  394. data/generated/google/apis/vision_v1p2beta1/classes.rb +63 -3
  395. data/generated/google/apis/vision_v1p2beta1/representations.rb +32 -0
  396. data/generated/google/apis/webfonts_v1/service.rb +6 -10
  397. data/generated/google/apis/webmasters_v3/service.rb +42 -70
  398. data/generated/google/apis/websecurityscanner_v1alpha.rb +34 -0
  399. data/generated/google/apis/websecurityscanner_v1alpha/classes.rb +760 -0
  400. data/generated/google/apis/websecurityscanner_v1alpha/representations.rb +354 -0
  401. data/generated/google/apis/websecurityscanner_v1alpha/service.rb +548 -0
  402. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  403. data/generated/google/apis/youtube_analytics_v1/service.rb +27 -45
  404. data/generated/google/apis/youtube_analytics_v1beta1.rb +1 -1
  405. data/generated/google/apis/youtube_analytics_v1beta1/service.rb +27 -45
  406. data/generated/google/apis/youtube_analytics_v2.rb +46 -0
  407. data/generated/google/apis/youtube_analytics_v2/classes.rb +532 -0
  408. data/generated/google/apis/youtube_analytics_v2/representations.rb +232 -0
  409. data/generated/google/apis/youtube_analytics_v2/service.rb +478 -0
  410. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  411. data/generated/google/apis/youtube_partner_v1/service.rb +225 -375
  412. data/generated/google/apis/youtube_v3.rb +1 -1
  413. data/generated/google/apis/youtube_v3/classes.rb +0 -168
  414. data/generated/google/apis/youtube_v3/representations.rb +0 -62
  415. data/generated/google/apis/youtube_v3/service.rb +216 -415
  416. data/lib/google/apis/generator/helpers.rb +3 -1
  417. data/lib/google/apis/version.rb +1 -1
  418. metadata +50 -38
  419. data/generated/google/apis/dlp_v2beta1/classes.rb +0 -3820
  420. data/generated/google/apis/dlp_v2beta1/representations.rb +0 -1879
  421. data/generated/google/apis/dlp_v2beta1/service.rb +0 -603
  422. data/generated/google/apis/dlp_v2beta2/classes.rb +0 -6386
  423. data/generated/google/apis/dlp_v2beta2/representations.rb +0 -3085
  424. data/generated/google/apis/dlp_v2beta2/service.rb +0 -1332
  425. data/generated/google/apis/prediction_v1_2.rb +0 -44
  426. data/generated/google/apis/prediction_v1_2/classes.rb +0 -237
  427. data/generated/google/apis/prediction_v1_2/representations.rb +0 -133
  428. data/generated/google/apis/prediction_v1_2/service.rb +0 -287
  429. data/generated/google/apis/prediction_v1_3.rb +0 -44
  430. data/generated/google/apis/prediction_v1_3/classes.rb +0 -286
  431. data/generated/google/apis/prediction_v1_3/representations.rb +0 -139
  432. data/generated/google/apis/prediction_v1_3/service.rb +0 -284
  433. data/generated/google/apis/prediction_v1_4.rb +0 -44
  434. data/generated/google/apis/prediction_v1_4/classes.rb +0 -336
  435. data/generated/google/apis/prediction_v1_4/representations.rb +0 -158
  436. data/generated/google/apis/prediction_v1_4/service.rb +0 -284
  437. data/generated/google/apis/prediction_v1_5.rb +0 -44
  438. data/generated/google/apis/prediction_v1_5/classes.rb +0 -708
  439. data/generated/google/apis/prediction_v1_5/representations.rb +0 -352
  440. data/generated/google/apis/prediction_v1_5/service.rb +0 -357
  441. data/generated/google/apis/prediction_v1_6.rb +0 -47
  442. data/generated/google/apis/prediction_v1_6/classes.rb +0 -751
  443. data/generated/google/apis/prediction_v1_6/representations.rb +0 -369
  444. data/generated/google/apis/prediction_v1_6/service.rb +0 -381
  445. data/generated/google/apis/taskqueue_v1beta1.rb +0 -37
  446. data/generated/google/apis/taskqueue_v1beta1/classes.rb +0 -242
  447. data/generated/google/apis/taskqueue_v1beta1/representations.rb +0 -124
  448. data/generated/google/apis/taskqueue_v1beta1/service.rb +0 -269
  449. data/generated/google/apis/taskqueue_v1beta2/classes.rb +0 -254
  450. data/generated/google/apis/taskqueue_v1beta2/representations.rb +0 -126
  451. data/generated/google/apis/taskqueue_v1beta2/service.rb +0 -409
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/tpu/
26
26
  module TpuV1alpha1
27
27
  VERSION = 'V1alpha1'
28
- REVISION = '20180330'
28
+ REVISION = '20180411'
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'
@@ -38,14 +38,12 @@ module Google
38
38
  attr_accessor :key
39
39
 
40
40
  # @return [String]
41
- # Available to use for quota purposes for server-side applications. Can be any
42
- # arbitrary string assigned to a user, but should not exceed 40 characters.
43
- # Overrides userIp if both are provided.
41
+ # An opaque string that represents a user for quota purposes. Must not exceed 40
42
+ # characters.
44
43
  attr_accessor :quota_user
45
44
 
46
45
  # @return [String]
47
- # IP address of the site where the request originates. Use this if you want to
48
- # enforce per-user limits.
46
+ # Deprecated. Please use quotaUser instead.
49
47
  attr_accessor :user_ip
50
48
 
51
49
  def initialize
@@ -61,12 +59,10 @@ module Google
61
59
  # @param [String] fields
62
60
  # Selector specifying which fields to include in a partial response.
63
61
  # @param [String] quota_user
64
- # Available to use for quota purposes for server-side applications. Can be any
65
- # arbitrary string assigned to a user, but should not exceed 40 characters.
66
- # Overrides userIp if both are provided.
62
+ # An opaque string that represents a user for quota purposes. Must not exceed 40
63
+ # characters.
67
64
  # @param [String] user_ip
68
- # IP address of the site where the request originates. Use this if you want to
69
- # enforce per-user limits.
65
+ # Deprecated. Please use quotaUser instead.
70
66
  # @param [Google::Apis::RequestOptions] options
71
67
  # Request-specific options
72
68
  #
@@ -96,12 +92,10 @@ module Google
96
92
  # @param [String] fields
97
93
  # Selector specifying which fields to include in a partial response.
98
94
  # @param [String] quota_user
99
- # Available to use for quota purposes for server-side applications. Can be any
100
- # arbitrary string assigned to a user, but should not exceed 40 characters.
101
- # Overrides userIp if both are provided.
95
+ # An opaque string that represents a user for quota purposes. Must not exceed 40
96
+ # characters.
102
97
  # @param [String] user_ip
103
- # IP address of the site where the request originates. Use this if you want to
104
- # enforce per-user limits.
98
+ # Deprecated. Please use quotaUser instead.
105
99
  # @param [Google::Apis::RequestOptions] options
106
100
  # Request-specific options
107
101
  #
@@ -134,12 +128,10 @@ module Google
134
128
  # @param [String] fields
135
129
  # Selector specifying which fields to include in a partial response.
136
130
  # @param [String] quota_user
137
- # Available to use for quota purposes for server-side applications. Can be any
138
- # arbitrary string assigned to a user, but should not exceed 40 characters.
139
- # Overrides userIp if both are provided.
131
+ # An opaque string that represents a user for quota purposes. Must not exceed 40
132
+ # characters.
140
133
  # @param [String] user_ip
141
- # IP address of the site where the request originates. Use this if you want to
142
- # enforce per-user limits.
134
+ # Deprecated. Please use quotaUser instead.
143
135
  # @param [Google::Apis::RequestOptions] options
144
136
  # Request-specific options
145
137
  #
@@ -18,14 +18,14 @@ require 'google/apis/vault_v1/representations.rb'
18
18
 
19
19
  module Google
20
20
  module Apis
21
- # Google Vault API
21
+ # G Suite Vault API
22
22
  #
23
23
  # Archiving and eDiscovery for G Suite.
24
24
  #
25
25
  # @see https://developers.google.com/vault
26
26
  module VaultV1
27
27
  VERSION = 'V1'
28
- REVISION = '20180303'
28
+ REVISION = '20180403'
29
29
 
30
30
  # Manage your eDiscovery data
31
31
  AUTH_EDISCOVERY = 'https://www.googleapis.com/auth/ediscovery'
@@ -20,7 +20,7 @@ require 'google/apis/errors'
20
20
  module Google
21
21
  module Apis
22
22
  module VaultV1
23
- # Google Vault API
23
+ # G Suite Vault API
24
24
  #
25
25
  # Archiving and eDiscovery for G Suite.
26
26
  #
@@ -0,0 +1,34 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/videointelligence_v1/service.rb'
16
+ require 'google/apis/videointelligence_v1/classes.rb'
17
+ require 'google/apis/videointelligence_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Cloud Video Intelligence API
22
+ #
23
+ # Cloud Video Intelligence API.
24
+ #
25
+ # @see https://cloud.google.com/video-intelligence/docs/
26
+ module VideointelligenceV1
27
+ VERSION = 'V1'
28
+ REVISION = '20180502'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,2149 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module VideointelligenceV1
24
+
25
+ # Video annotation progress. Included in the `metadata`
26
+ # field of the `Operation` returned by the `GetOperation`
27
+ # call of the `google::longrunning::Operations` service.
28
+ class GoogleCloudVideointelligenceV1AnnotateVideoProgress
29
+ include Google::Apis::Core::Hashable
30
+
31
+ # Progress metadata for all videos specified in `AnnotateVideoRequest`.
32
+ # Corresponds to the JSON property `annotationProgress`
33
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1VideoAnnotationProgress>]
34
+ attr_accessor :annotation_progress
35
+
36
+ def initialize(**args)
37
+ update!(**args)
38
+ end
39
+
40
+ # Update properties of this object
41
+ def update!(**args)
42
+ @annotation_progress = args[:annotation_progress] if args.key?(:annotation_progress)
43
+ end
44
+ end
45
+
46
+ # Video annotation request.
47
+ class GoogleCloudVideointelligenceV1AnnotateVideoRequest
48
+ include Google::Apis::Core::Hashable
49
+
50
+ # Requested video annotation features.
51
+ # Corresponds to the JSON property `features`
52
+ # @return [Array<String>]
53
+ attr_accessor :features
54
+
55
+ # The video data bytes.
56
+ # If unset, the input video(s) should be specified via `input_uri`.
57
+ # If set, `input_uri` should be unset.
58
+ # Corresponds to the JSON property `inputContent`
59
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
60
+ # @return [String]
61
+ attr_accessor :input_content
62
+
63
+ # Input video location. Currently, only
64
+ # [Google Cloud Storage](https://cloud.google.com/storage/) URIs are
65
+ # supported, which must be specified in the following format:
66
+ # `gs://bucket-id/object-id` (other URI formats return
67
+ # google.rpc.Code.INVALID_ARGUMENT). For more information, see
68
+ # [Request URIs](/storage/docs/reference-uris).
69
+ # A video URI may include wildcards in `object-id`, and thus identify
70
+ # multiple videos. Supported wildcards: '*' to match 0 or more characters;
71
+ # '?' to match 1 character. If unset, the input video should be embedded
72
+ # in the request as `input_content`. If set, `input_content` should be unset.
73
+ # Corresponds to the JSON property `inputUri`
74
+ # @return [String]
75
+ attr_accessor :input_uri
76
+
77
+ # Optional cloud region where annotation should take place. Supported cloud
78
+ # regions: `us-east1`, `us-west1`, `europe-west1`, `asia-east1`. If no region
79
+ # is specified, a region will be determined based on video file location.
80
+ # Corresponds to the JSON property `locationId`
81
+ # @return [String]
82
+ attr_accessor :location_id
83
+
84
+ # Optional location where the output (in JSON format) should be stored.
85
+ # Currently, only [Google Cloud Storage](https://cloud.google.com/storage/)
86
+ # URIs are supported, which must be specified in the following format:
87
+ # `gs://bucket-id/object-id` (other URI formats return
88
+ # google.rpc.Code.INVALID_ARGUMENT). For more information, see
89
+ # [Request URIs](/storage/docs/reference-uris).
90
+ # Corresponds to the JSON property `outputUri`
91
+ # @return [String]
92
+ attr_accessor :output_uri
93
+
94
+ # Video context and/or feature-specific parameters.
95
+ # Corresponds to the JSON property `videoContext`
96
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1VideoContext]
97
+ attr_accessor :video_context
98
+
99
+ def initialize(**args)
100
+ update!(**args)
101
+ end
102
+
103
+ # Update properties of this object
104
+ def update!(**args)
105
+ @features = args[:features] if args.key?(:features)
106
+ @input_content = args[:input_content] if args.key?(:input_content)
107
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
108
+ @location_id = args[:location_id] if args.key?(:location_id)
109
+ @output_uri = args[:output_uri] if args.key?(:output_uri)
110
+ @video_context = args[:video_context] if args.key?(:video_context)
111
+ end
112
+ end
113
+
114
+ # Video annotation response. Included in the `response`
115
+ # field of the `Operation` returned by the `GetOperation`
116
+ # call of the `google::longrunning::Operations` service.
117
+ class GoogleCloudVideointelligenceV1AnnotateVideoResponse
118
+ include Google::Apis::Core::Hashable
119
+
120
+ # Annotation results for all videos specified in `AnnotateVideoRequest`.
121
+ # Corresponds to the JSON property `annotationResults`
122
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1VideoAnnotationResults>]
123
+ attr_accessor :annotation_results
124
+
125
+ def initialize(**args)
126
+ update!(**args)
127
+ end
128
+
129
+ # Update properties of this object
130
+ def update!(**args)
131
+ @annotation_results = args[:annotation_results] if args.key?(:annotation_results)
132
+ end
133
+ end
134
+
135
+ # Detected entity from video analysis.
136
+ class GoogleCloudVideointelligenceV1Entity
137
+ include Google::Apis::Core::Hashable
138
+
139
+ # Textual description, e.g. `Fixed-gear bicycle`.
140
+ # Corresponds to the JSON property `description`
141
+ # @return [String]
142
+ attr_accessor :description
143
+
144
+ # Opaque entity ID. Some IDs may be available in
145
+ # [Google Knowledge Graph Search
146
+ # API](https://developers.google.com/knowledge-graph/).
147
+ # Corresponds to the JSON property `entityId`
148
+ # @return [String]
149
+ attr_accessor :entity_id
150
+
151
+ # Language code for `description` in BCP-47 format.
152
+ # Corresponds to the JSON property `languageCode`
153
+ # @return [String]
154
+ attr_accessor :language_code
155
+
156
+ def initialize(**args)
157
+ update!(**args)
158
+ end
159
+
160
+ # Update properties of this object
161
+ def update!(**args)
162
+ @description = args[:description] if args.key?(:description)
163
+ @entity_id = args[:entity_id] if args.key?(:entity_id)
164
+ @language_code = args[:language_code] if args.key?(:language_code)
165
+ end
166
+ end
167
+
168
+ # Explicit content annotation (based on per-frame visual signals only).
169
+ # If no explicit content has been detected in a frame, no annotations are
170
+ # present for that frame.
171
+ class GoogleCloudVideointelligenceV1ExplicitContentAnnotation
172
+ include Google::Apis::Core::Hashable
173
+
174
+ # All video frames where explicit content was detected.
175
+ # Corresponds to the JSON property `frames`
176
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1ExplicitContentFrame>]
177
+ attr_accessor :frames
178
+
179
+ def initialize(**args)
180
+ update!(**args)
181
+ end
182
+
183
+ # Update properties of this object
184
+ def update!(**args)
185
+ @frames = args[:frames] if args.key?(:frames)
186
+ end
187
+ end
188
+
189
+ # Config for EXPLICIT_CONTENT_DETECTION.
190
+ class GoogleCloudVideointelligenceV1ExplicitContentDetectionConfig
191
+ include Google::Apis::Core::Hashable
192
+
193
+ # Model to use for explicit content detection.
194
+ # Supported values: "builtin/stable" (the default if unset) and
195
+ # "builtin/latest".
196
+ # Corresponds to the JSON property `model`
197
+ # @return [String]
198
+ attr_accessor :model
199
+
200
+ def initialize(**args)
201
+ update!(**args)
202
+ end
203
+
204
+ # Update properties of this object
205
+ def update!(**args)
206
+ @model = args[:model] if args.key?(:model)
207
+ end
208
+ end
209
+
210
+ # Video frame level annotation results for explicit content.
211
+ class GoogleCloudVideointelligenceV1ExplicitContentFrame
212
+ include Google::Apis::Core::Hashable
213
+
214
+ # Likelihood of the pornography content..
215
+ # Corresponds to the JSON property `pornographyLikelihood`
216
+ # @return [String]
217
+ attr_accessor :pornography_likelihood
218
+
219
+ # Time-offset, relative to the beginning of the video, corresponding to the
220
+ # video frame for this location.
221
+ # Corresponds to the JSON property `timeOffset`
222
+ # @return [String]
223
+ attr_accessor :time_offset
224
+
225
+ def initialize(**args)
226
+ update!(**args)
227
+ end
228
+
229
+ # Update properties of this object
230
+ def update!(**args)
231
+ @pornography_likelihood = args[:pornography_likelihood] if args.key?(:pornography_likelihood)
232
+ @time_offset = args[:time_offset] if args.key?(:time_offset)
233
+ end
234
+ end
235
+
236
+ # Label annotation.
237
+ class GoogleCloudVideointelligenceV1LabelAnnotation
238
+ include Google::Apis::Core::Hashable
239
+
240
+ # Common categories for the detected entity.
241
+ # E.g. when the label is `Terrier` the category is likely `dog`. And in some
242
+ # cases there might be more than one categories e.g. `Terrier` could also be
243
+ # a `pet`.
244
+ # Corresponds to the JSON property `categoryEntities`
245
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1Entity>]
246
+ attr_accessor :category_entities
247
+
248
+ # Detected entity from video analysis.
249
+ # Corresponds to the JSON property `entity`
250
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1Entity]
251
+ attr_accessor :entity
252
+
253
+ # All video frames where a label was detected.
254
+ # Corresponds to the JSON property `frames`
255
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1LabelFrame>]
256
+ attr_accessor :frames
257
+
258
+ # All video segments where a label was detected.
259
+ # Corresponds to the JSON property `segments`
260
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1LabelSegment>]
261
+ attr_accessor :segments
262
+
263
+ def initialize(**args)
264
+ update!(**args)
265
+ end
266
+
267
+ # Update properties of this object
268
+ def update!(**args)
269
+ @category_entities = args[:category_entities] if args.key?(:category_entities)
270
+ @entity = args[:entity] if args.key?(:entity)
271
+ @frames = args[:frames] if args.key?(:frames)
272
+ @segments = args[:segments] if args.key?(:segments)
273
+ end
274
+ end
275
+
276
+ # Config for LABEL_DETECTION.
277
+ class GoogleCloudVideointelligenceV1LabelDetectionConfig
278
+ include Google::Apis::Core::Hashable
279
+
280
+ # What labels should be detected with LABEL_DETECTION, in addition to
281
+ # video-level labels or segment-level labels.
282
+ # If unspecified, defaults to `SHOT_MODE`.
283
+ # Corresponds to the JSON property `labelDetectionMode`
284
+ # @return [String]
285
+ attr_accessor :label_detection_mode
286
+
287
+ # Model to use for label detection.
288
+ # Supported values: "builtin/stable" (the default if unset) and
289
+ # "builtin/latest".
290
+ # Corresponds to the JSON property `model`
291
+ # @return [String]
292
+ attr_accessor :model
293
+
294
+ # Whether the video has been shot from a stationary (i.e. non-moving) camera.
295
+ # When set to true, might improve detection accuracy for moving objects.
296
+ # Should be used with `SHOT_AND_FRAME_MODE` enabled.
297
+ # Corresponds to the JSON property `stationaryCamera`
298
+ # @return [Boolean]
299
+ attr_accessor :stationary_camera
300
+ alias_method :stationary_camera?, :stationary_camera
301
+
302
+ def initialize(**args)
303
+ update!(**args)
304
+ end
305
+
306
+ # Update properties of this object
307
+ def update!(**args)
308
+ @label_detection_mode = args[:label_detection_mode] if args.key?(:label_detection_mode)
309
+ @model = args[:model] if args.key?(:model)
310
+ @stationary_camera = args[:stationary_camera] if args.key?(:stationary_camera)
311
+ end
312
+ end
313
+
314
+ # Video frame level annotation results for label detection.
315
+ class GoogleCloudVideointelligenceV1LabelFrame
316
+ include Google::Apis::Core::Hashable
317
+
318
+ # Confidence that the label is accurate. Range: [0, 1].
319
+ # Corresponds to the JSON property `confidence`
320
+ # @return [Float]
321
+ attr_accessor :confidence
322
+
323
+ # Time-offset, relative to the beginning of the video, corresponding to the
324
+ # video frame for this location.
325
+ # Corresponds to the JSON property `timeOffset`
326
+ # @return [String]
327
+ attr_accessor :time_offset
328
+
329
+ def initialize(**args)
330
+ update!(**args)
331
+ end
332
+
333
+ # Update properties of this object
334
+ def update!(**args)
335
+ @confidence = args[:confidence] if args.key?(:confidence)
336
+ @time_offset = args[:time_offset] if args.key?(:time_offset)
337
+ end
338
+ end
339
+
340
+ # Video segment level annotation results for label detection.
341
+ class GoogleCloudVideointelligenceV1LabelSegment
342
+ include Google::Apis::Core::Hashable
343
+
344
+ # Confidence that the label is accurate. Range: [0, 1].
345
+ # Corresponds to the JSON property `confidence`
346
+ # @return [Float]
347
+ attr_accessor :confidence
348
+
349
+ # Video segment.
350
+ # Corresponds to the JSON property `segment`
351
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1VideoSegment]
352
+ attr_accessor :segment
353
+
354
+ def initialize(**args)
355
+ update!(**args)
356
+ end
357
+
358
+ # Update properties of this object
359
+ def update!(**args)
360
+ @confidence = args[:confidence] if args.key?(:confidence)
361
+ @segment = args[:segment] if args.key?(:segment)
362
+ end
363
+ end
364
+
365
+ # Config for SHOT_CHANGE_DETECTION.
366
+ class GoogleCloudVideointelligenceV1ShotChangeDetectionConfig
367
+ include Google::Apis::Core::Hashable
368
+
369
+ # Model to use for shot change detection.
370
+ # Supported values: "builtin/stable" (the default if unset) and
371
+ # "builtin/latest".
372
+ # Corresponds to the JSON property `model`
373
+ # @return [String]
374
+ attr_accessor :model
375
+
376
+ def initialize(**args)
377
+ update!(**args)
378
+ end
379
+
380
+ # Update properties of this object
381
+ def update!(**args)
382
+ @model = args[:model] if args.key?(:model)
383
+ end
384
+ end
385
+
386
+ # Annotation progress for a single video.
387
+ class GoogleCloudVideointelligenceV1VideoAnnotationProgress
388
+ include Google::Apis::Core::Hashable
389
+
390
+ # Output only. Video file location in
391
+ # [Google Cloud Storage](https://cloud.google.com/storage/).
392
+ # Corresponds to the JSON property `inputUri`
393
+ # @return [String]
394
+ attr_accessor :input_uri
395
+
396
+ # Output only. Approximate percentage processed thus far. Guaranteed to be
397
+ # 100 when fully processed.
398
+ # Corresponds to the JSON property `progressPercent`
399
+ # @return [Fixnum]
400
+ attr_accessor :progress_percent
401
+
402
+ # Output only. Time when the request was received.
403
+ # Corresponds to the JSON property `startTime`
404
+ # @return [String]
405
+ attr_accessor :start_time
406
+
407
+ # Output only. Time of the most recent update.
408
+ # Corresponds to the JSON property `updateTime`
409
+ # @return [String]
410
+ attr_accessor :update_time
411
+
412
+ def initialize(**args)
413
+ update!(**args)
414
+ end
415
+
416
+ # Update properties of this object
417
+ def update!(**args)
418
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
419
+ @progress_percent = args[:progress_percent] if args.key?(:progress_percent)
420
+ @start_time = args[:start_time] if args.key?(:start_time)
421
+ @update_time = args[:update_time] if args.key?(:update_time)
422
+ end
423
+ end
424
+
425
+ # Annotation results for a single video.
426
+ class GoogleCloudVideointelligenceV1VideoAnnotationResults
427
+ include Google::Apis::Core::Hashable
428
+
429
+ # The `Status` type defines a logical error model that is suitable for different
430
+ # programming environments, including REST APIs and RPC APIs. It is used by
431
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
432
+ # - Simple to use and understand for most users
433
+ # - Flexible enough to meet unexpected needs
434
+ # # Overview
435
+ # The `Status` message contains three pieces of data: error code, error message,
436
+ # and error details. The error code should be an enum value of
437
+ # google.rpc.Code, but it may accept additional error codes if needed. The
438
+ # error message should be a developer-facing English message that helps
439
+ # developers *understand* and *resolve* the error. If a localized user-facing
440
+ # error message is needed, put the localized message in the error details or
441
+ # localize it in the client. The optional error details may contain arbitrary
442
+ # information about the error. There is a predefined set of error detail types
443
+ # in the package `google.rpc` that can be used for common error conditions.
444
+ # # Language mapping
445
+ # The `Status` message is the logical representation of the error model, but it
446
+ # is not necessarily the actual wire format. When the `Status` message is
447
+ # exposed in different client libraries and different wire protocols, it can be
448
+ # mapped differently. For example, it will likely be mapped to some exceptions
449
+ # in Java, but more likely mapped to some error codes in C.
450
+ # # Other uses
451
+ # The error model and the `Status` message can be used in a variety of
452
+ # environments, either with or without APIs, to provide a
453
+ # consistent developer experience across different environments.
454
+ # Example uses of this error model include:
455
+ # - Partial errors. If a service needs to return partial errors to the client,
456
+ # it may embed the `Status` in the normal response to indicate the partial
457
+ # errors.
458
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
459
+ # have a `Status` message for error reporting.
460
+ # - Batch operations. If a client uses batch request and batch response, the
461
+ # `Status` message should be used directly inside batch response, one for
462
+ # each error sub-response.
463
+ # - Asynchronous operations. If an API call embeds asynchronous operation
464
+ # results in its response, the status of those operations should be
465
+ # represented directly using the `Status` message.
466
+ # - Logging. If some API errors are stored in logs, the message `Status` could
467
+ # be used directly after any stripping needed for security/privacy reasons.
468
+ # Corresponds to the JSON property `error`
469
+ # @return [Google::Apis::VideointelligenceV1::GoogleRpcStatus]
470
+ attr_accessor :error
471
+
472
+ # Explicit content annotation (based on per-frame visual signals only).
473
+ # If no explicit content has been detected in a frame, no annotations are
474
+ # present for that frame.
475
+ # Corresponds to the JSON property `explicitAnnotation`
476
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1ExplicitContentAnnotation]
477
+ attr_accessor :explicit_annotation
478
+
479
+ # Label annotations on frame level.
480
+ # There is exactly one element for each unique label.
481
+ # Corresponds to the JSON property `frameLabelAnnotations`
482
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1LabelAnnotation>]
483
+ attr_accessor :frame_label_annotations
484
+
485
+ # Output only. Video file location in
486
+ # [Google Cloud Storage](https://cloud.google.com/storage/).
487
+ # Corresponds to the JSON property `inputUri`
488
+ # @return [String]
489
+ attr_accessor :input_uri
490
+
491
+ # Label annotations on video level or user specified segment level.
492
+ # There is exactly one element for each unique label.
493
+ # Corresponds to the JSON property `segmentLabelAnnotations`
494
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1LabelAnnotation>]
495
+ attr_accessor :segment_label_annotations
496
+
497
+ # Shot annotations. Each shot is represented as a video segment.
498
+ # Corresponds to the JSON property `shotAnnotations`
499
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1VideoSegment>]
500
+ attr_accessor :shot_annotations
501
+
502
+ # Label annotations on shot level.
503
+ # There is exactly one element for each unique label.
504
+ # Corresponds to the JSON property `shotLabelAnnotations`
505
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1LabelAnnotation>]
506
+ attr_accessor :shot_label_annotations
507
+
508
+ def initialize(**args)
509
+ update!(**args)
510
+ end
511
+
512
+ # Update properties of this object
513
+ def update!(**args)
514
+ @error = args[:error] if args.key?(:error)
515
+ @explicit_annotation = args[:explicit_annotation] if args.key?(:explicit_annotation)
516
+ @frame_label_annotations = args[:frame_label_annotations] if args.key?(:frame_label_annotations)
517
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
518
+ @segment_label_annotations = args[:segment_label_annotations] if args.key?(:segment_label_annotations)
519
+ @shot_annotations = args[:shot_annotations] if args.key?(:shot_annotations)
520
+ @shot_label_annotations = args[:shot_label_annotations] if args.key?(:shot_label_annotations)
521
+ end
522
+ end
523
+
524
+ # Video context and/or feature-specific parameters.
525
+ class GoogleCloudVideointelligenceV1VideoContext
526
+ include Google::Apis::Core::Hashable
527
+
528
+ # Config for EXPLICIT_CONTENT_DETECTION.
529
+ # Corresponds to the JSON property `explicitContentDetectionConfig`
530
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1ExplicitContentDetectionConfig]
531
+ attr_accessor :explicit_content_detection_config
532
+
533
+ # Config for LABEL_DETECTION.
534
+ # Corresponds to the JSON property `labelDetectionConfig`
535
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1LabelDetectionConfig]
536
+ attr_accessor :label_detection_config
537
+
538
+ # Non-streaming request only. Video segments to annotate. The segments may
539
+ # overlap and are not required to be contiguous or span the whole video. If
540
+ # unspecified, each video is treated as a single segment.
541
+ # Corresponds to the JSON property `segments`
542
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1VideoSegment>]
543
+ attr_accessor :segments
544
+
545
+ # Config for SHOT_CHANGE_DETECTION.
546
+ # Corresponds to the JSON property `shotChangeDetectionConfig`
547
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1ShotChangeDetectionConfig]
548
+ attr_accessor :shot_change_detection_config
549
+
550
+ def initialize(**args)
551
+ update!(**args)
552
+ end
553
+
554
+ # Update properties of this object
555
+ def update!(**args)
556
+ @explicit_content_detection_config = args[:explicit_content_detection_config] if args.key?(:explicit_content_detection_config)
557
+ @label_detection_config = args[:label_detection_config] if args.key?(:label_detection_config)
558
+ @segments = args[:segments] if args.key?(:segments)
559
+ @shot_change_detection_config = args[:shot_change_detection_config] if args.key?(:shot_change_detection_config)
560
+ end
561
+ end
562
+
563
+ # Video segment.
564
+ class GoogleCloudVideointelligenceV1VideoSegment
565
+ include Google::Apis::Core::Hashable
566
+
567
+ # Time-offset, relative to the beginning of the video,
568
+ # corresponding to the end of the segment (inclusive).
569
+ # Corresponds to the JSON property `endTimeOffset`
570
+ # @return [String]
571
+ attr_accessor :end_time_offset
572
+
573
+ # Time-offset, relative to the beginning of the video,
574
+ # corresponding to the start of the segment (inclusive).
575
+ # Corresponds to the JSON property `startTimeOffset`
576
+ # @return [String]
577
+ attr_accessor :start_time_offset
578
+
579
+ def initialize(**args)
580
+ update!(**args)
581
+ end
582
+
583
+ # Update properties of this object
584
+ def update!(**args)
585
+ @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset)
586
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
587
+ end
588
+ end
589
+
590
+ # Video annotation progress. Included in the `metadata`
591
+ # field of the `Operation` returned by the `GetOperation`
592
+ # call of the `google::longrunning::Operations` service.
593
+ class GoogleCloudVideointelligenceV1beta1AnnotateVideoProgress
594
+ include Google::Apis::Core::Hashable
595
+
596
+ # Progress metadata for all videos specified in `AnnotateVideoRequest`.
597
+ # Corresponds to the JSON property `annotationProgress`
598
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta1VideoAnnotationProgress>]
599
+ attr_accessor :annotation_progress
600
+
601
+ def initialize(**args)
602
+ update!(**args)
603
+ end
604
+
605
+ # Update properties of this object
606
+ def update!(**args)
607
+ @annotation_progress = args[:annotation_progress] if args.key?(:annotation_progress)
608
+ end
609
+ end
610
+
611
+ # Video annotation response. Included in the `response`
612
+ # field of the `Operation` returned by the `GetOperation`
613
+ # call of the `google::longrunning::Operations` service.
614
+ class GoogleCloudVideointelligenceV1beta1AnnotateVideoResponse
615
+ include Google::Apis::Core::Hashable
616
+
617
+ # Annotation results for all videos specified in `AnnotateVideoRequest`.
618
+ # Corresponds to the JSON property `annotationResults`
619
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta1VideoAnnotationResults>]
620
+ attr_accessor :annotation_results
621
+
622
+ def initialize(**args)
623
+ update!(**args)
624
+ end
625
+
626
+ # Update properties of this object
627
+ def update!(**args)
628
+ @annotation_results = args[:annotation_results] if args.key?(:annotation_results)
629
+ end
630
+ end
631
+
632
+ # Label annotation.
633
+ class GoogleCloudVideointelligenceV1beta1LabelAnnotation
634
+ include Google::Apis::Core::Hashable
635
+
636
+ # Textual description, e.g. `Fixed-gear bicycle`.
637
+ # Corresponds to the JSON property `description`
638
+ # @return [String]
639
+ attr_accessor :description
640
+
641
+ # Language code for `description` in BCP-47 format.
642
+ # Corresponds to the JSON property `languageCode`
643
+ # @return [String]
644
+ attr_accessor :language_code
645
+
646
+ # Where the label was detected and with what confidence.
647
+ # Corresponds to the JSON property `locations`
648
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta1LabelLocation>]
649
+ attr_accessor :locations
650
+
651
+ def initialize(**args)
652
+ update!(**args)
653
+ end
654
+
655
+ # Update properties of this object
656
+ def update!(**args)
657
+ @description = args[:description] if args.key?(:description)
658
+ @language_code = args[:language_code] if args.key?(:language_code)
659
+ @locations = args[:locations] if args.key?(:locations)
660
+ end
661
+ end
662
+
663
+ # Label location.
664
+ class GoogleCloudVideointelligenceV1beta1LabelLocation
665
+ include Google::Apis::Core::Hashable
666
+
667
+ # Confidence that the label is accurate. Range: [0, 1].
668
+ # Corresponds to the JSON property `confidence`
669
+ # @return [Float]
670
+ attr_accessor :confidence
671
+
672
+ # Label level.
673
+ # Corresponds to the JSON property `level`
674
+ # @return [String]
675
+ attr_accessor :level
676
+
677
+ # Video segment.
678
+ # Corresponds to the JSON property `segment`
679
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta1VideoSegment]
680
+ attr_accessor :segment
681
+
682
+ def initialize(**args)
683
+ update!(**args)
684
+ end
685
+
686
+ # Update properties of this object
687
+ def update!(**args)
688
+ @confidence = args[:confidence] if args.key?(:confidence)
689
+ @level = args[:level] if args.key?(:level)
690
+ @segment = args[:segment] if args.key?(:segment)
691
+ end
692
+ end
693
+
694
+ # Safe search annotation (based on per-frame visual signals only).
695
+ # If no unsafe content has been detected in a frame, no annotations
696
+ # are present for that frame. If only some types of unsafe content
697
+ # have been detected in a frame, the likelihood is set to `UNKNOWN`
698
+ # for all other types of unsafe content.
699
+ class GoogleCloudVideointelligenceV1beta1SafeSearchAnnotation
700
+ include Google::Apis::Core::Hashable
701
+
702
+ # Likelihood of adult content.
703
+ # Corresponds to the JSON property `adult`
704
+ # @return [String]
705
+ attr_accessor :adult
706
+
707
+ # Likelihood of medical content.
708
+ # Corresponds to the JSON property `medical`
709
+ # @return [String]
710
+ attr_accessor :medical
711
+
712
+ # Likelihood of racy content.
713
+ # Corresponds to the JSON property `racy`
714
+ # @return [String]
715
+ attr_accessor :racy
716
+
717
+ # Likelihood that an obvious modification was made to the original
718
+ # version to make it appear funny or offensive.
719
+ # Corresponds to the JSON property `spoof`
720
+ # @return [String]
721
+ attr_accessor :spoof
722
+
723
+ # Video time offset in microseconds.
724
+ # Corresponds to the JSON property `timeOffset`
725
+ # @return [Fixnum]
726
+ attr_accessor :time_offset
727
+
728
+ # Likelihood of violent content.
729
+ # Corresponds to the JSON property `violent`
730
+ # @return [String]
731
+ attr_accessor :violent
732
+
733
+ def initialize(**args)
734
+ update!(**args)
735
+ end
736
+
737
+ # Update properties of this object
738
+ def update!(**args)
739
+ @adult = args[:adult] if args.key?(:adult)
740
+ @medical = args[:medical] if args.key?(:medical)
741
+ @racy = args[:racy] if args.key?(:racy)
742
+ @spoof = args[:spoof] if args.key?(:spoof)
743
+ @time_offset = args[:time_offset] if args.key?(:time_offset)
744
+ @violent = args[:violent] if args.key?(:violent)
745
+ end
746
+ end
747
+
748
+ # Annotation progress for a single video.
749
+ class GoogleCloudVideointelligenceV1beta1VideoAnnotationProgress
750
+ include Google::Apis::Core::Hashable
751
+
752
+ # Video file location in
753
+ # [Google Cloud Storage](https://cloud.google.com/storage/).
754
+ # Corresponds to the JSON property `inputUri`
755
+ # @return [String]
756
+ attr_accessor :input_uri
757
+
758
+ # Approximate percentage processed thus far.
759
+ # Guaranteed to be 100 when fully processed.
760
+ # Corresponds to the JSON property `progressPercent`
761
+ # @return [Fixnum]
762
+ attr_accessor :progress_percent
763
+
764
+ # Time when the request was received.
765
+ # Corresponds to the JSON property `startTime`
766
+ # @return [String]
767
+ attr_accessor :start_time
768
+
769
+ # Time of the most recent update.
770
+ # Corresponds to the JSON property `updateTime`
771
+ # @return [String]
772
+ attr_accessor :update_time
773
+
774
+ def initialize(**args)
775
+ update!(**args)
776
+ end
777
+
778
+ # Update properties of this object
779
+ def update!(**args)
780
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
781
+ @progress_percent = args[:progress_percent] if args.key?(:progress_percent)
782
+ @start_time = args[:start_time] if args.key?(:start_time)
783
+ @update_time = args[:update_time] if args.key?(:update_time)
784
+ end
785
+ end
786
+
787
+ # Annotation results for a single video.
788
+ class GoogleCloudVideointelligenceV1beta1VideoAnnotationResults
789
+ include Google::Apis::Core::Hashable
790
+
791
+ # The `Status` type defines a logical error model that is suitable for different
792
+ # programming environments, including REST APIs and RPC APIs. It is used by
793
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
794
+ # - Simple to use and understand for most users
795
+ # - Flexible enough to meet unexpected needs
796
+ # # Overview
797
+ # The `Status` message contains three pieces of data: error code, error message,
798
+ # and error details. The error code should be an enum value of
799
+ # google.rpc.Code, but it may accept additional error codes if needed. The
800
+ # error message should be a developer-facing English message that helps
801
+ # developers *understand* and *resolve* the error. If a localized user-facing
802
+ # error message is needed, put the localized message in the error details or
803
+ # localize it in the client. The optional error details may contain arbitrary
804
+ # information about the error. There is a predefined set of error detail types
805
+ # in the package `google.rpc` that can be used for common error conditions.
806
+ # # Language mapping
807
+ # The `Status` message is the logical representation of the error model, but it
808
+ # is not necessarily the actual wire format. When the `Status` message is
809
+ # exposed in different client libraries and different wire protocols, it can be
810
+ # mapped differently. For example, it will likely be mapped to some exceptions
811
+ # in Java, but more likely mapped to some error codes in C.
812
+ # # Other uses
813
+ # The error model and the `Status` message can be used in a variety of
814
+ # environments, either with or without APIs, to provide a
815
+ # consistent developer experience across different environments.
816
+ # Example uses of this error model include:
817
+ # - Partial errors. If a service needs to return partial errors to the client,
818
+ # it may embed the `Status` in the normal response to indicate the partial
819
+ # errors.
820
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
821
+ # have a `Status` message for error reporting.
822
+ # - Batch operations. If a client uses batch request and batch response, the
823
+ # `Status` message should be used directly inside batch response, one for
824
+ # each error sub-response.
825
+ # - Asynchronous operations. If an API call embeds asynchronous operation
826
+ # results in its response, the status of those operations should be
827
+ # represented directly using the `Status` message.
828
+ # - Logging. If some API errors are stored in logs, the message `Status` could
829
+ # be used directly after any stripping needed for security/privacy reasons.
830
+ # Corresponds to the JSON property `error`
831
+ # @return [Google::Apis::VideointelligenceV1::GoogleRpcStatus]
832
+ attr_accessor :error
833
+
834
+ # Video file location in
835
+ # [Google Cloud Storage](https://cloud.google.com/storage/).
836
+ # Corresponds to the JSON property `inputUri`
837
+ # @return [String]
838
+ attr_accessor :input_uri
839
+
840
+ # Label annotations. There is exactly one element for each unique label.
841
+ # Corresponds to the JSON property `labelAnnotations`
842
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta1LabelAnnotation>]
843
+ attr_accessor :label_annotations
844
+
845
+ # Safe search annotations.
846
+ # Corresponds to the JSON property `safeSearchAnnotations`
847
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta1SafeSearchAnnotation>]
848
+ attr_accessor :safe_search_annotations
849
+
850
+ # Shot annotations. Each shot is represented as a video segment.
851
+ # Corresponds to the JSON property `shotAnnotations`
852
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta1VideoSegment>]
853
+ attr_accessor :shot_annotations
854
+
855
+ def initialize(**args)
856
+ update!(**args)
857
+ end
858
+
859
+ # Update properties of this object
860
+ def update!(**args)
861
+ @error = args[:error] if args.key?(:error)
862
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
863
+ @label_annotations = args[:label_annotations] if args.key?(:label_annotations)
864
+ @safe_search_annotations = args[:safe_search_annotations] if args.key?(:safe_search_annotations)
865
+ @shot_annotations = args[:shot_annotations] if args.key?(:shot_annotations)
866
+ end
867
+ end
868
+
869
+ # Video segment.
870
+ class GoogleCloudVideointelligenceV1beta1VideoSegment
871
+ include Google::Apis::Core::Hashable
872
+
873
+ # End offset in microseconds (inclusive). Unset means 0.
874
+ # Corresponds to the JSON property `endTimeOffset`
875
+ # @return [Fixnum]
876
+ attr_accessor :end_time_offset
877
+
878
+ # Start offset in microseconds (inclusive). Unset means 0.
879
+ # Corresponds to the JSON property `startTimeOffset`
880
+ # @return [Fixnum]
881
+ attr_accessor :start_time_offset
882
+
883
+ def initialize(**args)
884
+ update!(**args)
885
+ end
886
+
887
+ # Update properties of this object
888
+ def update!(**args)
889
+ @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset)
890
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
891
+ end
892
+ end
893
+
894
+ # Video annotation progress. Included in the `metadata`
895
+ # field of the `Operation` returned by the `GetOperation`
896
+ # call of the `google::longrunning::Operations` service.
897
+ class GoogleCloudVideointelligenceV1beta2AnnotateVideoProgress
898
+ include Google::Apis::Core::Hashable
899
+
900
+ # Progress metadata for all videos specified in `AnnotateVideoRequest`.
901
+ # Corresponds to the JSON property `annotationProgress`
902
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2VideoAnnotationProgress>]
903
+ attr_accessor :annotation_progress
904
+
905
+ def initialize(**args)
906
+ update!(**args)
907
+ end
908
+
909
+ # Update properties of this object
910
+ def update!(**args)
911
+ @annotation_progress = args[:annotation_progress] if args.key?(:annotation_progress)
912
+ end
913
+ end
914
+
915
+ # Video annotation response. Included in the `response`
916
+ # field of the `Operation` returned by the `GetOperation`
917
+ # call of the `google::longrunning::Operations` service.
918
+ class GoogleCloudVideointelligenceV1beta2AnnotateVideoResponse
919
+ include Google::Apis::Core::Hashable
920
+
921
+ # Annotation results for all videos specified in `AnnotateVideoRequest`.
922
+ # Corresponds to the JSON property `annotationResults`
923
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2VideoAnnotationResults>]
924
+ attr_accessor :annotation_results
925
+
926
+ def initialize(**args)
927
+ update!(**args)
928
+ end
929
+
930
+ # Update properties of this object
931
+ def update!(**args)
932
+ @annotation_results = args[:annotation_results] if args.key?(:annotation_results)
933
+ end
934
+ end
935
+
936
+ # Detected entity from video analysis.
937
+ class GoogleCloudVideointelligenceV1beta2Entity
938
+ include Google::Apis::Core::Hashable
939
+
940
+ # Textual description, e.g. `Fixed-gear bicycle`.
941
+ # Corresponds to the JSON property `description`
942
+ # @return [String]
943
+ attr_accessor :description
944
+
945
+ # Opaque entity ID. Some IDs may be available in
946
+ # [Google Knowledge Graph Search
947
+ # API](https://developers.google.com/knowledge-graph/).
948
+ # Corresponds to the JSON property `entityId`
949
+ # @return [String]
950
+ attr_accessor :entity_id
951
+
952
+ # Language code for `description` in BCP-47 format.
953
+ # Corresponds to the JSON property `languageCode`
954
+ # @return [String]
955
+ attr_accessor :language_code
956
+
957
+ def initialize(**args)
958
+ update!(**args)
959
+ end
960
+
961
+ # Update properties of this object
962
+ def update!(**args)
963
+ @description = args[:description] if args.key?(:description)
964
+ @entity_id = args[:entity_id] if args.key?(:entity_id)
965
+ @language_code = args[:language_code] if args.key?(:language_code)
966
+ end
967
+ end
968
+
969
+ # Explicit content annotation (based on per-frame visual signals only).
970
+ # If no explicit content has been detected in a frame, no annotations are
971
+ # present for that frame.
972
+ class GoogleCloudVideointelligenceV1beta2ExplicitContentAnnotation
973
+ include Google::Apis::Core::Hashable
974
+
975
+ # All video frames where explicit content was detected.
976
+ # Corresponds to the JSON property `frames`
977
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2ExplicitContentFrame>]
978
+ attr_accessor :frames
979
+
980
+ def initialize(**args)
981
+ update!(**args)
982
+ end
983
+
984
+ # Update properties of this object
985
+ def update!(**args)
986
+ @frames = args[:frames] if args.key?(:frames)
987
+ end
988
+ end
989
+
990
+ # Video frame level annotation results for explicit content.
991
+ class GoogleCloudVideointelligenceV1beta2ExplicitContentFrame
992
+ include Google::Apis::Core::Hashable
993
+
994
+ # Likelihood of the pornography content..
995
+ # Corresponds to the JSON property `pornographyLikelihood`
996
+ # @return [String]
997
+ attr_accessor :pornography_likelihood
998
+
999
+ # Time-offset, relative to the beginning of the video, corresponding to the
1000
+ # video frame for this location.
1001
+ # Corresponds to the JSON property `timeOffset`
1002
+ # @return [String]
1003
+ attr_accessor :time_offset
1004
+
1005
+ def initialize(**args)
1006
+ update!(**args)
1007
+ end
1008
+
1009
+ # Update properties of this object
1010
+ def update!(**args)
1011
+ @pornography_likelihood = args[:pornography_likelihood] if args.key?(:pornography_likelihood)
1012
+ @time_offset = args[:time_offset] if args.key?(:time_offset)
1013
+ end
1014
+ end
1015
+
1016
+ # Label annotation.
1017
+ class GoogleCloudVideointelligenceV1beta2LabelAnnotation
1018
+ include Google::Apis::Core::Hashable
1019
+
1020
+ # Common categories for the detected entity.
1021
+ # E.g. when the label is `Terrier` the category is likely `dog`. And in some
1022
+ # cases there might be more than one categories e.g. `Terrier` could also be
1023
+ # a `pet`.
1024
+ # Corresponds to the JSON property `categoryEntities`
1025
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2Entity>]
1026
+ attr_accessor :category_entities
1027
+
1028
+ # Detected entity from video analysis.
1029
+ # Corresponds to the JSON property `entity`
1030
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2Entity]
1031
+ attr_accessor :entity
1032
+
1033
+ # All video frames where a label was detected.
1034
+ # Corresponds to the JSON property `frames`
1035
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2LabelFrame>]
1036
+ attr_accessor :frames
1037
+
1038
+ # All video segments where a label was detected.
1039
+ # Corresponds to the JSON property `segments`
1040
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2LabelSegment>]
1041
+ attr_accessor :segments
1042
+
1043
+ def initialize(**args)
1044
+ update!(**args)
1045
+ end
1046
+
1047
+ # Update properties of this object
1048
+ def update!(**args)
1049
+ @category_entities = args[:category_entities] if args.key?(:category_entities)
1050
+ @entity = args[:entity] if args.key?(:entity)
1051
+ @frames = args[:frames] if args.key?(:frames)
1052
+ @segments = args[:segments] if args.key?(:segments)
1053
+ end
1054
+ end
1055
+
1056
+ # Video frame level annotation results for label detection.
1057
+ class GoogleCloudVideointelligenceV1beta2LabelFrame
1058
+ include Google::Apis::Core::Hashable
1059
+
1060
+ # Confidence that the label is accurate. Range: [0, 1].
1061
+ # Corresponds to the JSON property `confidence`
1062
+ # @return [Float]
1063
+ attr_accessor :confidence
1064
+
1065
+ # Time-offset, relative to the beginning of the video, corresponding to the
1066
+ # video frame for this location.
1067
+ # Corresponds to the JSON property `timeOffset`
1068
+ # @return [String]
1069
+ attr_accessor :time_offset
1070
+
1071
+ def initialize(**args)
1072
+ update!(**args)
1073
+ end
1074
+
1075
+ # Update properties of this object
1076
+ def update!(**args)
1077
+ @confidence = args[:confidence] if args.key?(:confidence)
1078
+ @time_offset = args[:time_offset] if args.key?(:time_offset)
1079
+ end
1080
+ end
1081
+
1082
+ # Video segment level annotation results for label detection.
1083
+ class GoogleCloudVideointelligenceV1beta2LabelSegment
1084
+ include Google::Apis::Core::Hashable
1085
+
1086
+ # Confidence that the label is accurate. Range: [0, 1].
1087
+ # Corresponds to the JSON property `confidence`
1088
+ # @return [Float]
1089
+ attr_accessor :confidence
1090
+
1091
+ # Video segment.
1092
+ # Corresponds to the JSON property `segment`
1093
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2VideoSegment]
1094
+ attr_accessor :segment
1095
+
1096
+ def initialize(**args)
1097
+ update!(**args)
1098
+ end
1099
+
1100
+ # Update properties of this object
1101
+ def update!(**args)
1102
+ @confidence = args[:confidence] if args.key?(:confidence)
1103
+ @segment = args[:segment] if args.key?(:segment)
1104
+ end
1105
+ end
1106
+
1107
+ # Annotation progress for a single video.
1108
+ class GoogleCloudVideointelligenceV1beta2VideoAnnotationProgress
1109
+ include Google::Apis::Core::Hashable
1110
+
1111
+ # Output only. Video file location in
1112
+ # [Google Cloud Storage](https://cloud.google.com/storage/).
1113
+ # Corresponds to the JSON property `inputUri`
1114
+ # @return [String]
1115
+ attr_accessor :input_uri
1116
+
1117
+ # Output only. Approximate percentage processed thus far. Guaranteed to be
1118
+ # 100 when fully processed.
1119
+ # Corresponds to the JSON property `progressPercent`
1120
+ # @return [Fixnum]
1121
+ attr_accessor :progress_percent
1122
+
1123
+ # Output only. Time when the request was received.
1124
+ # Corresponds to the JSON property `startTime`
1125
+ # @return [String]
1126
+ attr_accessor :start_time
1127
+
1128
+ # Output only. Time of the most recent update.
1129
+ # Corresponds to the JSON property `updateTime`
1130
+ # @return [String]
1131
+ attr_accessor :update_time
1132
+
1133
+ def initialize(**args)
1134
+ update!(**args)
1135
+ end
1136
+
1137
+ # Update properties of this object
1138
+ def update!(**args)
1139
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
1140
+ @progress_percent = args[:progress_percent] if args.key?(:progress_percent)
1141
+ @start_time = args[:start_time] if args.key?(:start_time)
1142
+ @update_time = args[:update_time] if args.key?(:update_time)
1143
+ end
1144
+ end
1145
+
1146
+ # Annotation results for a single video.
1147
+ class GoogleCloudVideointelligenceV1beta2VideoAnnotationResults
1148
+ include Google::Apis::Core::Hashable
1149
+
1150
+ # The `Status` type defines a logical error model that is suitable for different
1151
+ # programming environments, including REST APIs and RPC APIs. It is used by
1152
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
1153
+ # - Simple to use and understand for most users
1154
+ # - Flexible enough to meet unexpected needs
1155
+ # # Overview
1156
+ # The `Status` message contains three pieces of data: error code, error message,
1157
+ # and error details. The error code should be an enum value of
1158
+ # google.rpc.Code, but it may accept additional error codes if needed. The
1159
+ # error message should be a developer-facing English message that helps
1160
+ # developers *understand* and *resolve* the error. If a localized user-facing
1161
+ # error message is needed, put the localized message in the error details or
1162
+ # localize it in the client. The optional error details may contain arbitrary
1163
+ # information about the error. There is a predefined set of error detail types
1164
+ # in the package `google.rpc` that can be used for common error conditions.
1165
+ # # Language mapping
1166
+ # The `Status` message is the logical representation of the error model, but it
1167
+ # is not necessarily the actual wire format. When the `Status` message is
1168
+ # exposed in different client libraries and different wire protocols, it can be
1169
+ # mapped differently. For example, it will likely be mapped to some exceptions
1170
+ # in Java, but more likely mapped to some error codes in C.
1171
+ # # Other uses
1172
+ # The error model and the `Status` message can be used in a variety of
1173
+ # environments, either with or without APIs, to provide a
1174
+ # consistent developer experience across different environments.
1175
+ # Example uses of this error model include:
1176
+ # - Partial errors. If a service needs to return partial errors to the client,
1177
+ # it may embed the `Status` in the normal response to indicate the partial
1178
+ # errors.
1179
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
1180
+ # have a `Status` message for error reporting.
1181
+ # - Batch operations. If a client uses batch request and batch response, the
1182
+ # `Status` message should be used directly inside batch response, one for
1183
+ # each error sub-response.
1184
+ # - Asynchronous operations. If an API call embeds asynchronous operation
1185
+ # results in its response, the status of those operations should be
1186
+ # represented directly using the `Status` message.
1187
+ # - Logging. If some API errors are stored in logs, the message `Status` could
1188
+ # be used directly after any stripping needed for security/privacy reasons.
1189
+ # Corresponds to the JSON property `error`
1190
+ # @return [Google::Apis::VideointelligenceV1::GoogleRpcStatus]
1191
+ attr_accessor :error
1192
+
1193
+ # Explicit content annotation (based on per-frame visual signals only).
1194
+ # If no explicit content has been detected in a frame, no annotations are
1195
+ # present for that frame.
1196
+ # Corresponds to the JSON property `explicitAnnotation`
1197
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2ExplicitContentAnnotation]
1198
+ attr_accessor :explicit_annotation
1199
+
1200
+ # Label annotations on frame level.
1201
+ # There is exactly one element for each unique label.
1202
+ # Corresponds to the JSON property `frameLabelAnnotations`
1203
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2LabelAnnotation>]
1204
+ attr_accessor :frame_label_annotations
1205
+
1206
+ # Output only. Video file location in
1207
+ # [Google Cloud Storage](https://cloud.google.com/storage/).
1208
+ # Corresponds to the JSON property `inputUri`
1209
+ # @return [String]
1210
+ attr_accessor :input_uri
1211
+
1212
+ # Label annotations on video level or user specified segment level.
1213
+ # There is exactly one element for each unique label.
1214
+ # Corresponds to the JSON property `segmentLabelAnnotations`
1215
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2LabelAnnotation>]
1216
+ attr_accessor :segment_label_annotations
1217
+
1218
+ # Shot annotations. Each shot is represented as a video segment.
1219
+ # Corresponds to the JSON property `shotAnnotations`
1220
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2VideoSegment>]
1221
+ attr_accessor :shot_annotations
1222
+
1223
+ # Label annotations on shot level.
1224
+ # There is exactly one element for each unique label.
1225
+ # Corresponds to the JSON property `shotLabelAnnotations`
1226
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1beta2LabelAnnotation>]
1227
+ attr_accessor :shot_label_annotations
1228
+
1229
+ def initialize(**args)
1230
+ update!(**args)
1231
+ end
1232
+
1233
+ # Update properties of this object
1234
+ def update!(**args)
1235
+ @error = args[:error] if args.key?(:error)
1236
+ @explicit_annotation = args[:explicit_annotation] if args.key?(:explicit_annotation)
1237
+ @frame_label_annotations = args[:frame_label_annotations] if args.key?(:frame_label_annotations)
1238
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
1239
+ @segment_label_annotations = args[:segment_label_annotations] if args.key?(:segment_label_annotations)
1240
+ @shot_annotations = args[:shot_annotations] if args.key?(:shot_annotations)
1241
+ @shot_label_annotations = args[:shot_label_annotations] if args.key?(:shot_label_annotations)
1242
+ end
1243
+ end
1244
+
1245
+ # Video segment.
1246
+ class GoogleCloudVideointelligenceV1beta2VideoSegment
1247
+ include Google::Apis::Core::Hashable
1248
+
1249
+ # Time-offset, relative to the beginning of the video,
1250
+ # corresponding to the end of the segment (inclusive).
1251
+ # Corresponds to the JSON property `endTimeOffset`
1252
+ # @return [String]
1253
+ attr_accessor :end_time_offset
1254
+
1255
+ # Time-offset, relative to the beginning of the video,
1256
+ # corresponding to the start of the segment (inclusive).
1257
+ # Corresponds to the JSON property `startTimeOffset`
1258
+ # @return [String]
1259
+ attr_accessor :start_time_offset
1260
+
1261
+ def initialize(**args)
1262
+ update!(**args)
1263
+ end
1264
+
1265
+ # Update properties of this object
1266
+ def update!(**args)
1267
+ @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset)
1268
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
1269
+ end
1270
+ end
1271
+
1272
+ # Video annotation progress. Included in the `metadata`
1273
+ # field of the `Operation` returned by the `GetOperation`
1274
+ # call of the `google::longrunning::Operations` service.
1275
+ class GoogleCloudVideointelligenceV1p1beta1AnnotateVideoProgress
1276
+ include Google::Apis::Core::Hashable
1277
+
1278
+ # Progress metadata for all videos specified in `AnnotateVideoRequest`.
1279
+ # Corresponds to the JSON property `annotationProgress`
1280
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1VideoAnnotationProgress>]
1281
+ attr_accessor :annotation_progress
1282
+
1283
+ def initialize(**args)
1284
+ update!(**args)
1285
+ end
1286
+
1287
+ # Update properties of this object
1288
+ def update!(**args)
1289
+ @annotation_progress = args[:annotation_progress] if args.key?(:annotation_progress)
1290
+ end
1291
+ end
1292
+
1293
+ # Video annotation response. Included in the `response`
1294
+ # field of the `Operation` returned by the `GetOperation`
1295
+ # call of the `google::longrunning::Operations` service.
1296
+ class GoogleCloudVideointelligenceV1p1beta1AnnotateVideoResponse
1297
+ include Google::Apis::Core::Hashable
1298
+
1299
+ # Annotation results for all videos specified in `AnnotateVideoRequest`.
1300
+ # Corresponds to the JSON property `annotationResults`
1301
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1VideoAnnotationResults>]
1302
+ attr_accessor :annotation_results
1303
+
1304
+ def initialize(**args)
1305
+ update!(**args)
1306
+ end
1307
+
1308
+ # Update properties of this object
1309
+ def update!(**args)
1310
+ @annotation_results = args[:annotation_results] if args.key?(:annotation_results)
1311
+ end
1312
+ end
1313
+
1314
+ # Emotion attribute.
1315
+ class GoogleCloudVideointelligenceV1p1beta1EmotionAttribute
1316
+ include Google::Apis::Core::Hashable
1317
+
1318
+ # Emotion entry.
1319
+ # Corresponds to the JSON property `emotion`
1320
+ # @return [String]
1321
+ attr_accessor :emotion
1322
+
1323
+ # Confidence score.
1324
+ # Corresponds to the JSON property `score`
1325
+ # @return [Float]
1326
+ attr_accessor :score
1327
+
1328
+ def initialize(**args)
1329
+ update!(**args)
1330
+ end
1331
+
1332
+ # Update properties of this object
1333
+ def update!(**args)
1334
+ @emotion = args[:emotion] if args.key?(:emotion)
1335
+ @score = args[:score] if args.key?(:score)
1336
+ end
1337
+ end
1338
+
1339
+ # Detected entity from video analysis.
1340
+ class GoogleCloudVideointelligenceV1p1beta1Entity
1341
+ include Google::Apis::Core::Hashable
1342
+
1343
+ # Textual description, e.g. `Fixed-gear bicycle`.
1344
+ # Corresponds to the JSON property `description`
1345
+ # @return [String]
1346
+ attr_accessor :description
1347
+
1348
+ # Opaque entity ID. Some IDs may be available in
1349
+ # [Google Knowledge Graph Search
1350
+ # API](https://developers.google.com/knowledge-graph/).
1351
+ # Corresponds to the JSON property `entityId`
1352
+ # @return [String]
1353
+ attr_accessor :entity_id
1354
+
1355
+ # Language code for `description` in BCP-47 format.
1356
+ # Corresponds to the JSON property `languageCode`
1357
+ # @return [String]
1358
+ attr_accessor :language_code
1359
+
1360
+ def initialize(**args)
1361
+ update!(**args)
1362
+ end
1363
+
1364
+ # Update properties of this object
1365
+ def update!(**args)
1366
+ @description = args[:description] if args.key?(:description)
1367
+ @entity_id = args[:entity_id] if args.key?(:entity_id)
1368
+ @language_code = args[:language_code] if args.key?(:language_code)
1369
+ end
1370
+ end
1371
+
1372
+ # Explicit content annotation (based on per-frame visual signals only).
1373
+ # If no explicit content has been detected in a frame, no annotations are
1374
+ # present for that frame.
1375
+ class GoogleCloudVideointelligenceV1p1beta1ExplicitContentAnnotation
1376
+ include Google::Apis::Core::Hashable
1377
+
1378
+ # All video frames where explicit content was detected.
1379
+ # Corresponds to the JSON property `frames`
1380
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1ExplicitContentFrame>]
1381
+ attr_accessor :frames
1382
+
1383
+ def initialize(**args)
1384
+ update!(**args)
1385
+ end
1386
+
1387
+ # Update properties of this object
1388
+ def update!(**args)
1389
+ @frames = args[:frames] if args.key?(:frames)
1390
+ end
1391
+ end
1392
+
1393
+ # Video frame level annotation results for explicit content.
1394
+ class GoogleCloudVideointelligenceV1p1beta1ExplicitContentFrame
1395
+ include Google::Apis::Core::Hashable
1396
+
1397
+ # Likelihood of the pornography content..
1398
+ # Corresponds to the JSON property `pornographyLikelihood`
1399
+ # @return [String]
1400
+ attr_accessor :pornography_likelihood
1401
+
1402
+ # Time-offset, relative to the beginning of the video, corresponding to the
1403
+ # video frame for this location.
1404
+ # Corresponds to the JSON property `timeOffset`
1405
+ # @return [String]
1406
+ attr_accessor :time_offset
1407
+
1408
+ def initialize(**args)
1409
+ update!(**args)
1410
+ end
1411
+
1412
+ # Update properties of this object
1413
+ def update!(**args)
1414
+ @pornography_likelihood = args[:pornography_likelihood] if args.key?(:pornography_likelihood)
1415
+ @time_offset = args[:time_offset] if args.key?(:time_offset)
1416
+ end
1417
+ end
1418
+
1419
+ # Face detection annotation.
1420
+ class GoogleCloudVideointelligenceV1p1beta1FaceDetectionAnnotation
1421
+ include Google::Apis::Core::Hashable
1422
+
1423
+ # All video frames where a face was detected.
1424
+ # Corresponds to the JSON property `frames`
1425
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1FaceDetectionFrame>]
1426
+ attr_accessor :frames
1427
+
1428
+ # All video segments where a face was detected.
1429
+ # Corresponds to the JSON property `segments`
1430
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1FaceSegment>]
1431
+ attr_accessor :segments
1432
+
1433
+ def initialize(**args)
1434
+ update!(**args)
1435
+ end
1436
+
1437
+ # Update properties of this object
1438
+ def update!(**args)
1439
+ @frames = args[:frames] if args.key?(:frames)
1440
+ @segments = args[:segments] if args.key?(:segments)
1441
+ end
1442
+ end
1443
+
1444
+ # Face detection attribute.
1445
+ class GoogleCloudVideointelligenceV1p1beta1FaceDetectionAttribute
1446
+ include Google::Apis::Core::Hashable
1447
+
1448
+ # Emotion attributes.
1449
+ # Corresponds to the JSON property `emotions`
1450
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1EmotionAttribute>]
1451
+ attr_accessor :emotions
1452
+
1453
+ # Normalized bounding box.
1454
+ # The normalized vertex coordinates are relative to the original image.
1455
+ # Range: [0, 1].
1456
+ # Corresponds to the JSON property `normalizedBoundingBox`
1457
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox]
1458
+ attr_accessor :normalized_bounding_box
1459
+
1460
+ def initialize(**args)
1461
+ update!(**args)
1462
+ end
1463
+
1464
+ # Update properties of this object
1465
+ def update!(**args)
1466
+ @emotions = args[:emotions] if args.key?(:emotions)
1467
+ @normalized_bounding_box = args[:normalized_bounding_box] if args.key?(:normalized_bounding_box)
1468
+ end
1469
+ end
1470
+
1471
+ # Video frame level annotation results for face detection.
1472
+ class GoogleCloudVideointelligenceV1p1beta1FaceDetectionFrame
1473
+ include Google::Apis::Core::Hashable
1474
+
1475
+ # Face attributes in a frame.
1476
+ # There can be more than one attributes if the same face is detected in
1477
+ # multiple locations within the current frame.
1478
+ # Corresponds to the JSON property `attributes`
1479
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1FaceDetectionAttribute>]
1480
+ attr_accessor :attributes
1481
+
1482
+ # Time-offset, relative to the beginning of the video,
1483
+ # corresponding to the video frame for this location.
1484
+ # Corresponds to the JSON property `timeOffset`
1485
+ # @return [String]
1486
+ attr_accessor :time_offset
1487
+
1488
+ def initialize(**args)
1489
+ update!(**args)
1490
+ end
1491
+
1492
+ # Update properties of this object
1493
+ def update!(**args)
1494
+ @attributes = args[:attributes] if args.key?(:attributes)
1495
+ @time_offset = args[:time_offset] if args.key?(:time_offset)
1496
+ end
1497
+ end
1498
+
1499
+ # Video segment level annotation results for face detection.
1500
+ class GoogleCloudVideointelligenceV1p1beta1FaceSegment
1501
+ include Google::Apis::Core::Hashable
1502
+
1503
+ # Video segment.
1504
+ # Corresponds to the JSON property `segment`
1505
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1VideoSegment]
1506
+ attr_accessor :segment
1507
+
1508
+ def initialize(**args)
1509
+ update!(**args)
1510
+ end
1511
+
1512
+ # Update properties of this object
1513
+ def update!(**args)
1514
+ @segment = args[:segment] if args.key?(:segment)
1515
+ end
1516
+ end
1517
+
1518
+ # Label annotation.
1519
+ class GoogleCloudVideointelligenceV1p1beta1LabelAnnotation
1520
+ include Google::Apis::Core::Hashable
1521
+
1522
+ # Common categories for the detected entity.
1523
+ # E.g. when the label is `Terrier` the category is likely `dog`. And in some
1524
+ # cases there might be more than one categories e.g. `Terrier` could also be
1525
+ # a `pet`.
1526
+ # Corresponds to the JSON property `categoryEntities`
1527
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1Entity>]
1528
+ attr_accessor :category_entities
1529
+
1530
+ # Detected entity from video analysis.
1531
+ # Corresponds to the JSON property `entity`
1532
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1Entity]
1533
+ attr_accessor :entity
1534
+
1535
+ # All video frames where a label was detected.
1536
+ # Corresponds to the JSON property `frames`
1537
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1LabelFrame>]
1538
+ attr_accessor :frames
1539
+
1540
+ # All video segments where a label was detected.
1541
+ # Corresponds to the JSON property `segments`
1542
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1LabelSegment>]
1543
+ attr_accessor :segments
1544
+
1545
+ def initialize(**args)
1546
+ update!(**args)
1547
+ end
1548
+
1549
+ # Update properties of this object
1550
+ def update!(**args)
1551
+ @category_entities = args[:category_entities] if args.key?(:category_entities)
1552
+ @entity = args[:entity] if args.key?(:entity)
1553
+ @frames = args[:frames] if args.key?(:frames)
1554
+ @segments = args[:segments] if args.key?(:segments)
1555
+ end
1556
+ end
1557
+
1558
+ # Video frame level annotation results for label detection.
1559
+ class GoogleCloudVideointelligenceV1p1beta1LabelFrame
1560
+ include Google::Apis::Core::Hashable
1561
+
1562
+ # Confidence that the label is accurate. Range: [0, 1].
1563
+ # Corresponds to the JSON property `confidence`
1564
+ # @return [Float]
1565
+ attr_accessor :confidence
1566
+
1567
+ # Time-offset, relative to the beginning of the video, corresponding to the
1568
+ # video frame for this location.
1569
+ # Corresponds to the JSON property `timeOffset`
1570
+ # @return [String]
1571
+ attr_accessor :time_offset
1572
+
1573
+ def initialize(**args)
1574
+ update!(**args)
1575
+ end
1576
+
1577
+ # Update properties of this object
1578
+ def update!(**args)
1579
+ @confidence = args[:confidence] if args.key?(:confidence)
1580
+ @time_offset = args[:time_offset] if args.key?(:time_offset)
1581
+ end
1582
+ end
1583
+
1584
+ # Video segment level annotation results for label detection.
1585
+ class GoogleCloudVideointelligenceV1p1beta1LabelSegment
1586
+ include Google::Apis::Core::Hashable
1587
+
1588
+ # Confidence that the label is accurate. Range: [0, 1].
1589
+ # Corresponds to the JSON property `confidence`
1590
+ # @return [Float]
1591
+ attr_accessor :confidence
1592
+
1593
+ # Video segment.
1594
+ # Corresponds to the JSON property `segment`
1595
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1VideoSegment]
1596
+ attr_accessor :segment
1597
+
1598
+ def initialize(**args)
1599
+ update!(**args)
1600
+ end
1601
+
1602
+ # Update properties of this object
1603
+ def update!(**args)
1604
+ @confidence = args[:confidence] if args.key?(:confidence)
1605
+ @segment = args[:segment] if args.key?(:segment)
1606
+ end
1607
+ end
1608
+
1609
+ # Normalized bounding box.
1610
+ # The normalized vertex coordinates are relative to the original image.
1611
+ # Range: [0, 1].
1612
+ class GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox
1613
+ include Google::Apis::Core::Hashable
1614
+
1615
+ # Bottom Y coordinate.
1616
+ # Corresponds to the JSON property `bottom`
1617
+ # @return [Float]
1618
+ attr_accessor :bottom
1619
+
1620
+ # Left X coordinate.
1621
+ # Corresponds to the JSON property `left`
1622
+ # @return [Float]
1623
+ attr_accessor :left
1624
+
1625
+ # Right X coordinate.
1626
+ # Corresponds to the JSON property `right`
1627
+ # @return [Float]
1628
+ attr_accessor :right
1629
+
1630
+ # Top Y coordinate.
1631
+ # Corresponds to the JSON property `top`
1632
+ # @return [Float]
1633
+ attr_accessor :top
1634
+
1635
+ def initialize(**args)
1636
+ update!(**args)
1637
+ end
1638
+
1639
+ # Update properties of this object
1640
+ def update!(**args)
1641
+ @bottom = args[:bottom] if args.key?(:bottom)
1642
+ @left = args[:left] if args.key?(:left)
1643
+ @right = args[:right] if args.key?(:right)
1644
+ @top = args[:top] if args.key?(:top)
1645
+ end
1646
+ end
1647
+
1648
+ # Alternative hypotheses (a.k.a. n-best list).
1649
+ class GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative
1650
+ include Google::Apis::Core::Hashable
1651
+
1652
+ # Output only. The confidence estimate between 0.0 and 1.0. A higher number
1653
+ # indicates an estimated greater likelihood that the recognized words are
1654
+ # correct. This field is typically provided only for the top hypothesis, and
1655
+ # only for `is_final=true` results. Clients should not rely on the
1656
+ # `confidence` field as it is not guaranteed to be accurate or consistent.
1657
+ # The default of 0.0 is a sentinel value indicating `confidence` was not set.
1658
+ # Corresponds to the JSON property `confidence`
1659
+ # @return [Float]
1660
+ attr_accessor :confidence
1661
+
1662
+ # Output only. Transcript text representing the words that the user spoke.
1663
+ # Corresponds to the JSON property `transcript`
1664
+ # @return [String]
1665
+ attr_accessor :transcript
1666
+
1667
+ # Output only. A list of word-specific information for each recognized word.
1668
+ # Corresponds to the JSON property `words`
1669
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1WordInfo>]
1670
+ attr_accessor :words
1671
+
1672
+ def initialize(**args)
1673
+ update!(**args)
1674
+ end
1675
+
1676
+ # Update properties of this object
1677
+ def update!(**args)
1678
+ @confidence = args[:confidence] if args.key?(:confidence)
1679
+ @transcript = args[:transcript] if args.key?(:transcript)
1680
+ @words = args[:words] if args.key?(:words)
1681
+ end
1682
+ end
1683
+
1684
+ # A speech recognition result corresponding to a portion of the audio.
1685
+ class GoogleCloudVideointelligenceV1p1beta1SpeechTranscription
1686
+ include Google::Apis::Core::Hashable
1687
+
1688
+ # Output only. May contain one or more recognition hypotheses (up to the
1689
+ # maximum specified in `max_alternatives`).
1690
+ # These alternatives are ordered in terms of accuracy, with the top (first)
1691
+ # alternative being the most probable, as ranked by the recognizer.
1692
+ # Corresponds to the JSON property `alternatives`
1693
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative>]
1694
+ attr_accessor :alternatives
1695
+
1696
+ def initialize(**args)
1697
+ update!(**args)
1698
+ end
1699
+
1700
+ # Update properties of this object
1701
+ def update!(**args)
1702
+ @alternatives = args[:alternatives] if args.key?(:alternatives)
1703
+ end
1704
+ end
1705
+
1706
+ # Annotation progress for a single video.
1707
+ class GoogleCloudVideointelligenceV1p1beta1VideoAnnotationProgress
1708
+ include Google::Apis::Core::Hashable
1709
+
1710
+ # Output only. Video file location in
1711
+ # [Google Cloud Storage](https://cloud.google.com/storage/).
1712
+ # Corresponds to the JSON property `inputUri`
1713
+ # @return [String]
1714
+ attr_accessor :input_uri
1715
+
1716
+ # Output only. Approximate percentage processed thus far. Guaranteed to be
1717
+ # 100 when fully processed.
1718
+ # Corresponds to the JSON property `progressPercent`
1719
+ # @return [Fixnum]
1720
+ attr_accessor :progress_percent
1721
+
1722
+ # Output only. Time when the request was received.
1723
+ # Corresponds to the JSON property `startTime`
1724
+ # @return [String]
1725
+ attr_accessor :start_time
1726
+
1727
+ # Output only. Time of the most recent update.
1728
+ # Corresponds to the JSON property `updateTime`
1729
+ # @return [String]
1730
+ attr_accessor :update_time
1731
+
1732
+ def initialize(**args)
1733
+ update!(**args)
1734
+ end
1735
+
1736
+ # Update properties of this object
1737
+ def update!(**args)
1738
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
1739
+ @progress_percent = args[:progress_percent] if args.key?(:progress_percent)
1740
+ @start_time = args[:start_time] if args.key?(:start_time)
1741
+ @update_time = args[:update_time] if args.key?(:update_time)
1742
+ end
1743
+ end
1744
+
1745
+ # Annotation results for a single video.
1746
+ class GoogleCloudVideointelligenceV1p1beta1VideoAnnotationResults
1747
+ include Google::Apis::Core::Hashable
1748
+
1749
+ # The `Status` type defines a logical error model that is suitable for different
1750
+ # programming environments, including REST APIs and RPC APIs. It is used by
1751
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
1752
+ # - Simple to use and understand for most users
1753
+ # - Flexible enough to meet unexpected needs
1754
+ # # Overview
1755
+ # The `Status` message contains three pieces of data: error code, error message,
1756
+ # and error details. The error code should be an enum value of
1757
+ # google.rpc.Code, but it may accept additional error codes if needed. The
1758
+ # error message should be a developer-facing English message that helps
1759
+ # developers *understand* and *resolve* the error. If a localized user-facing
1760
+ # error message is needed, put the localized message in the error details or
1761
+ # localize it in the client. The optional error details may contain arbitrary
1762
+ # information about the error. There is a predefined set of error detail types
1763
+ # in the package `google.rpc` that can be used for common error conditions.
1764
+ # # Language mapping
1765
+ # The `Status` message is the logical representation of the error model, but it
1766
+ # is not necessarily the actual wire format. When the `Status` message is
1767
+ # exposed in different client libraries and different wire protocols, it can be
1768
+ # mapped differently. For example, it will likely be mapped to some exceptions
1769
+ # in Java, but more likely mapped to some error codes in C.
1770
+ # # Other uses
1771
+ # The error model and the `Status` message can be used in a variety of
1772
+ # environments, either with or without APIs, to provide a
1773
+ # consistent developer experience across different environments.
1774
+ # Example uses of this error model include:
1775
+ # - Partial errors. If a service needs to return partial errors to the client,
1776
+ # it may embed the `Status` in the normal response to indicate the partial
1777
+ # errors.
1778
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
1779
+ # have a `Status` message for error reporting.
1780
+ # - Batch operations. If a client uses batch request and batch response, the
1781
+ # `Status` message should be used directly inside batch response, one for
1782
+ # each error sub-response.
1783
+ # - Asynchronous operations. If an API call embeds asynchronous operation
1784
+ # results in its response, the status of those operations should be
1785
+ # represented directly using the `Status` message.
1786
+ # - Logging. If some API errors are stored in logs, the message `Status` could
1787
+ # be used directly after any stripping needed for security/privacy reasons.
1788
+ # Corresponds to the JSON property `error`
1789
+ # @return [Google::Apis::VideointelligenceV1::GoogleRpcStatus]
1790
+ attr_accessor :error
1791
+
1792
+ # Explicit content annotation (based on per-frame visual signals only).
1793
+ # If no explicit content has been detected in a frame, no annotations are
1794
+ # present for that frame.
1795
+ # Corresponds to the JSON property `explicitAnnotation`
1796
+ # @return [Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1ExplicitContentAnnotation]
1797
+ attr_accessor :explicit_annotation
1798
+
1799
+ # Face detection annotations.
1800
+ # Corresponds to the JSON property `faceDetectionAnnotations`
1801
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1FaceDetectionAnnotation>]
1802
+ attr_accessor :face_detection_annotations
1803
+
1804
+ # Label annotations on frame level.
1805
+ # There is exactly one element for each unique label.
1806
+ # Corresponds to the JSON property `frameLabelAnnotations`
1807
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1LabelAnnotation>]
1808
+ attr_accessor :frame_label_annotations
1809
+
1810
+ # Output only. Video file location in
1811
+ # [Google Cloud Storage](https://cloud.google.com/storage/).
1812
+ # Corresponds to the JSON property `inputUri`
1813
+ # @return [String]
1814
+ attr_accessor :input_uri
1815
+
1816
+ # Label annotations on video level or user specified segment level.
1817
+ # There is exactly one element for each unique label.
1818
+ # Corresponds to the JSON property `segmentLabelAnnotations`
1819
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1LabelAnnotation>]
1820
+ attr_accessor :segment_label_annotations
1821
+
1822
+ # Shot annotations. Each shot is represented as a video segment.
1823
+ # Corresponds to the JSON property `shotAnnotations`
1824
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1VideoSegment>]
1825
+ attr_accessor :shot_annotations
1826
+
1827
+ # Label annotations on shot level.
1828
+ # There is exactly one element for each unique label.
1829
+ # Corresponds to the JSON property `shotLabelAnnotations`
1830
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1LabelAnnotation>]
1831
+ attr_accessor :shot_label_annotations
1832
+
1833
+ # Speech transcription.
1834
+ # Corresponds to the JSON property `speechTranscriptions`
1835
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleCloudVideointelligenceV1p1beta1SpeechTranscription>]
1836
+ attr_accessor :speech_transcriptions
1837
+
1838
+ def initialize(**args)
1839
+ update!(**args)
1840
+ end
1841
+
1842
+ # Update properties of this object
1843
+ def update!(**args)
1844
+ @error = args[:error] if args.key?(:error)
1845
+ @explicit_annotation = args[:explicit_annotation] if args.key?(:explicit_annotation)
1846
+ @face_detection_annotations = args[:face_detection_annotations] if args.key?(:face_detection_annotations)
1847
+ @frame_label_annotations = args[:frame_label_annotations] if args.key?(:frame_label_annotations)
1848
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
1849
+ @segment_label_annotations = args[:segment_label_annotations] if args.key?(:segment_label_annotations)
1850
+ @shot_annotations = args[:shot_annotations] if args.key?(:shot_annotations)
1851
+ @shot_label_annotations = args[:shot_label_annotations] if args.key?(:shot_label_annotations)
1852
+ @speech_transcriptions = args[:speech_transcriptions] if args.key?(:speech_transcriptions)
1853
+ end
1854
+ end
1855
+
1856
+ # Video segment.
1857
+ class GoogleCloudVideointelligenceV1p1beta1VideoSegment
1858
+ include Google::Apis::Core::Hashable
1859
+
1860
+ # Time-offset, relative to the beginning of the video,
1861
+ # corresponding to the end of the segment (inclusive).
1862
+ # Corresponds to the JSON property `endTimeOffset`
1863
+ # @return [String]
1864
+ attr_accessor :end_time_offset
1865
+
1866
+ # Time-offset, relative to the beginning of the video,
1867
+ # corresponding to the start of the segment (inclusive).
1868
+ # Corresponds to the JSON property `startTimeOffset`
1869
+ # @return [String]
1870
+ attr_accessor :start_time_offset
1871
+
1872
+ def initialize(**args)
1873
+ update!(**args)
1874
+ end
1875
+
1876
+ # Update properties of this object
1877
+ def update!(**args)
1878
+ @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset)
1879
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
1880
+ end
1881
+ end
1882
+
1883
+ # Word-specific information for recognized words. Word information is only
1884
+ # included in the response when certain request parameters are set, such
1885
+ # as `enable_word_time_offsets`.
1886
+ class GoogleCloudVideointelligenceV1p1beta1WordInfo
1887
+ include Google::Apis::Core::Hashable
1888
+
1889
+ # Output only. Time offset relative to the beginning of the audio, and
1890
+ # corresponding to the end of the spoken word. This field is only set if
1891
+ # `enable_word_time_offsets=true` and only in the top hypothesis. This is an
1892
+ # experimental feature and the accuracy of the time offset can vary.
1893
+ # Corresponds to the JSON property `endTime`
1894
+ # @return [String]
1895
+ attr_accessor :end_time
1896
+
1897
+ # Output only. Time offset relative to the beginning of the audio, and
1898
+ # corresponding to the start of the spoken word. This field is only set if
1899
+ # `enable_word_time_offsets=true` and only in the top hypothesis. This is an
1900
+ # experimental feature and the accuracy of the time offset can vary.
1901
+ # Corresponds to the JSON property `startTime`
1902
+ # @return [String]
1903
+ attr_accessor :start_time
1904
+
1905
+ # Output only. The word corresponding to this set of information.
1906
+ # Corresponds to the JSON property `word`
1907
+ # @return [String]
1908
+ attr_accessor :word
1909
+
1910
+ def initialize(**args)
1911
+ update!(**args)
1912
+ end
1913
+
1914
+ # Update properties of this object
1915
+ def update!(**args)
1916
+ @end_time = args[:end_time] if args.key?(:end_time)
1917
+ @start_time = args[:start_time] if args.key?(:start_time)
1918
+ @word = args[:word] if args.key?(:word)
1919
+ end
1920
+ end
1921
+
1922
+ # The request message for Operations.CancelOperation.
1923
+ class GoogleLongrunningCancelOperationRequest
1924
+ include Google::Apis::Core::Hashable
1925
+
1926
+ def initialize(**args)
1927
+ update!(**args)
1928
+ end
1929
+
1930
+ # Update properties of this object
1931
+ def update!(**args)
1932
+ end
1933
+ end
1934
+
1935
+ # The response message for Operations.ListOperations.
1936
+ class GoogleLongrunningListOperationsResponse
1937
+ include Google::Apis::Core::Hashable
1938
+
1939
+ # The standard List next-page token.
1940
+ # Corresponds to the JSON property `nextPageToken`
1941
+ # @return [String]
1942
+ attr_accessor :next_page_token
1943
+
1944
+ # A list of operations that matches the specified filter in the request.
1945
+ # Corresponds to the JSON property `operations`
1946
+ # @return [Array<Google::Apis::VideointelligenceV1::GoogleLongrunningOperation>]
1947
+ attr_accessor :operations
1948
+
1949
+ def initialize(**args)
1950
+ update!(**args)
1951
+ end
1952
+
1953
+ # Update properties of this object
1954
+ def update!(**args)
1955
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1956
+ @operations = args[:operations] if args.key?(:operations)
1957
+ end
1958
+ end
1959
+
1960
+ # This resource represents a long-running operation that is the result of a
1961
+ # network API call.
1962
+ class GoogleLongrunningOperation
1963
+ include Google::Apis::Core::Hashable
1964
+
1965
+ # If the value is `false`, it means the operation is still in progress.
1966
+ # If `true`, the operation is completed, and either `error` or `response` is
1967
+ # available.
1968
+ # Corresponds to the JSON property `done`
1969
+ # @return [Boolean]
1970
+ attr_accessor :done
1971
+ alias_method :done?, :done
1972
+
1973
+ # The `Status` type defines a logical error model that is suitable for different
1974
+ # programming environments, including REST APIs and RPC APIs. It is used by
1975
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
1976
+ # - Simple to use and understand for most users
1977
+ # - Flexible enough to meet unexpected needs
1978
+ # # Overview
1979
+ # The `Status` message contains three pieces of data: error code, error message,
1980
+ # and error details. The error code should be an enum value of
1981
+ # google.rpc.Code, but it may accept additional error codes if needed. The
1982
+ # error message should be a developer-facing English message that helps
1983
+ # developers *understand* and *resolve* the error. If a localized user-facing
1984
+ # error message is needed, put the localized message in the error details or
1985
+ # localize it in the client. The optional error details may contain arbitrary
1986
+ # information about the error. There is a predefined set of error detail types
1987
+ # in the package `google.rpc` that can be used for common error conditions.
1988
+ # # Language mapping
1989
+ # The `Status` message is the logical representation of the error model, but it
1990
+ # is not necessarily the actual wire format. When the `Status` message is
1991
+ # exposed in different client libraries and different wire protocols, it can be
1992
+ # mapped differently. For example, it will likely be mapped to some exceptions
1993
+ # in Java, but more likely mapped to some error codes in C.
1994
+ # # Other uses
1995
+ # The error model and the `Status` message can be used in a variety of
1996
+ # environments, either with or without APIs, to provide a
1997
+ # consistent developer experience across different environments.
1998
+ # Example uses of this error model include:
1999
+ # - Partial errors. If a service needs to return partial errors to the client,
2000
+ # it may embed the `Status` in the normal response to indicate the partial
2001
+ # errors.
2002
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
2003
+ # have a `Status` message for error reporting.
2004
+ # - Batch operations. If a client uses batch request and batch response, the
2005
+ # `Status` message should be used directly inside batch response, one for
2006
+ # each error sub-response.
2007
+ # - Asynchronous operations. If an API call embeds asynchronous operation
2008
+ # results in its response, the status of those operations should be
2009
+ # represented directly using the `Status` message.
2010
+ # - Logging. If some API errors are stored in logs, the message `Status` could
2011
+ # be used directly after any stripping needed for security/privacy reasons.
2012
+ # Corresponds to the JSON property `error`
2013
+ # @return [Google::Apis::VideointelligenceV1::GoogleRpcStatus]
2014
+ attr_accessor :error
2015
+
2016
+ # Service-specific metadata associated with the operation. It typically
2017
+ # contains progress information and common metadata such as create time.
2018
+ # Some services might not provide such metadata. Any method that returns a
2019
+ # long-running operation should document the metadata type, if any.
2020
+ # Corresponds to the JSON property `metadata`
2021
+ # @return [Hash<String,Object>]
2022
+ attr_accessor :metadata
2023
+
2024
+ # The server-assigned name, which is only unique within the same service that
2025
+ # originally returns it. If you use the default HTTP mapping, the
2026
+ # `name` should have the format of `operations/some/unique/name`.
2027
+ # Corresponds to the JSON property `name`
2028
+ # @return [String]
2029
+ attr_accessor :name
2030
+
2031
+ # The normal response of the operation in case of success. If the original
2032
+ # method returns no data on success, such as `Delete`, the response is
2033
+ # `google.protobuf.Empty`. If the original method is standard
2034
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
2035
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
2036
+ # is the original method name. For example, if the original method name
2037
+ # is `TakeSnapshot()`, the inferred response type is
2038
+ # `TakeSnapshotResponse`.
2039
+ # Corresponds to the JSON property `response`
2040
+ # @return [Hash<String,Object>]
2041
+ attr_accessor :response
2042
+
2043
+ def initialize(**args)
2044
+ update!(**args)
2045
+ end
2046
+
2047
+ # Update properties of this object
2048
+ def update!(**args)
2049
+ @done = args[:done] if args.key?(:done)
2050
+ @error = args[:error] if args.key?(:error)
2051
+ @metadata = args[:metadata] if args.key?(:metadata)
2052
+ @name = args[:name] if args.key?(:name)
2053
+ @response = args[:response] if args.key?(:response)
2054
+ end
2055
+ end
2056
+
2057
+ # A generic empty message that you can re-use to avoid defining duplicated
2058
+ # empty messages in your APIs. A typical example is to use it as the request
2059
+ # or the response type of an API method. For instance:
2060
+ # service Foo `
2061
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
2062
+ # `
2063
+ # The JSON representation for `Empty` is empty JSON object ````.
2064
+ class GoogleProtobufEmpty
2065
+ include Google::Apis::Core::Hashable
2066
+
2067
+ def initialize(**args)
2068
+ update!(**args)
2069
+ end
2070
+
2071
+ # Update properties of this object
2072
+ def update!(**args)
2073
+ end
2074
+ end
2075
+
2076
+ # The `Status` type defines a logical error model that is suitable for different
2077
+ # programming environments, including REST APIs and RPC APIs. It is used by
2078
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
2079
+ # - Simple to use and understand for most users
2080
+ # - Flexible enough to meet unexpected needs
2081
+ # # Overview
2082
+ # The `Status` message contains three pieces of data: error code, error message,
2083
+ # and error details. The error code should be an enum value of
2084
+ # google.rpc.Code, but it may accept additional error codes if needed. The
2085
+ # error message should be a developer-facing English message that helps
2086
+ # developers *understand* and *resolve* the error. If a localized user-facing
2087
+ # error message is needed, put the localized message in the error details or
2088
+ # localize it in the client. The optional error details may contain arbitrary
2089
+ # information about the error. There is a predefined set of error detail types
2090
+ # in the package `google.rpc` that can be used for common error conditions.
2091
+ # # Language mapping
2092
+ # The `Status` message is the logical representation of the error model, but it
2093
+ # is not necessarily the actual wire format. When the `Status` message is
2094
+ # exposed in different client libraries and different wire protocols, it can be
2095
+ # mapped differently. For example, it will likely be mapped to some exceptions
2096
+ # in Java, but more likely mapped to some error codes in C.
2097
+ # # Other uses
2098
+ # The error model and the `Status` message can be used in a variety of
2099
+ # environments, either with or without APIs, to provide a
2100
+ # consistent developer experience across different environments.
2101
+ # Example uses of this error model include:
2102
+ # - Partial errors. If a service needs to return partial errors to the client,
2103
+ # it may embed the `Status` in the normal response to indicate the partial
2104
+ # errors.
2105
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
2106
+ # have a `Status` message for error reporting.
2107
+ # - Batch operations. If a client uses batch request and batch response, the
2108
+ # `Status` message should be used directly inside batch response, one for
2109
+ # each error sub-response.
2110
+ # - Asynchronous operations. If an API call embeds asynchronous operation
2111
+ # results in its response, the status of those operations should be
2112
+ # represented directly using the `Status` message.
2113
+ # - Logging. If some API errors are stored in logs, the message `Status` could
2114
+ # be used directly after any stripping needed for security/privacy reasons.
2115
+ class GoogleRpcStatus
2116
+ include Google::Apis::Core::Hashable
2117
+
2118
+ # The status code, which should be an enum value of google.rpc.Code.
2119
+ # Corresponds to the JSON property `code`
2120
+ # @return [Fixnum]
2121
+ attr_accessor :code
2122
+
2123
+ # A list of messages that carry the error details. There is a common set of
2124
+ # message types for APIs to use.
2125
+ # Corresponds to the JSON property `details`
2126
+ # @return [Array<Hash<String,Object>>]
2127
+ attr_accessor :details
2128
+
2129
+ # A developer-facing error message, which should be in English. Any
2130
+ # user-facing error message should be localized and sent in the
2131
+ # google.rpc.Status.details field, or localized by the client.
2132
+ # Corresponds to the JSON property `message`
2133
+ # @return [String]
2134
+ attr_accessor :message
2135
+
2136
+ def initialize(**args)
2137
+ update!(**args)
2138
+ end
2139
+
2140
+ # Update properties of this object
2141
+ def update!(**args)
2142
+ @code = args[:code] if args.key?(:code)
2143
+ @details = args[:details] if args.key?(:details)
2144
+ @message = args[:message] if args.key?(:message)
2145
+ end
2146
+ end
2147
+ end
2148
+ end
2149
+ end