google-api-client 0.20.1 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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