google-api-client 0.8.6 → 0.9

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 (497) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +22 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +41 -2
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +32 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +181 -148
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +1036 -0
  15. data/api_names_out.yaml +26053 -0
  16. data/bin/generate-api +95 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  21. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  24. data/generated/google/apis/adexchangeseller_v2_0/service.rb +668 -0
  25. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  26. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  27. data/generated/google/apis/admin_datatransfer_v1/representations.rb +118 -0
  28. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  29. data/generated/google/apis/admin_directory_v1.rb +113 -0
  30. data/generated/google/apis/admin_directory_v1/classes.rb +3141 -0
  31. data/generated/google/apis/admin_directory_v1/representations.rb +1029 -0
  32. data/generated/google/apis/admin_directory_v1/service.rb +3818 -0
  33. data/generated/google/apis/admin_reports_v1.rb +38 -0
  34. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  35. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  36. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  37. data/generated/google/apis/adsense_v1_4.rb +38 -0
  38. data/generated/google/apis/adsense_v1_4/classes.rb +1285 -0
  39. data/generated/google/apis/adsense_v1_4/representations.rb +494 -0
  40. data/generated/google/apis/adsense_v1_4/service.rb +1714 -0
  41. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  42. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  43. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  44. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  45. data/generated/google/apis/analytics_v3.rb +49 -0
  46. data/generated/google/apis/analytics_v3/classes.rb +5118 -0
  47. data/generated/google/apis/analytics_v3/representations.rb +1662 -0
  48. data/generated/google/apis/analytics_v3/service.rb +3568 -0
  49. data/generated/google/apis/androidenterprise_v1.rb +35 -0
  50. data/generated/google/apis/androidenterprise_v1/classes.rb +1443 -0
  51. data/generated/google/apis/androidenterprise_v1/representations.rb +538 -0
  52. data/generated/google/apis/androidenterprise_v1/service.rb +2602 -0
  53. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  54. data/generated/google/apis/androidpublisher_v2/classes.rb +1411 -0
  55. data/generated/google/apis/androidpublisher_v2/representations.rb +646 -0
  56. data/generated/google/apis/androidpublisher_v2/service.rb +2338 -0
  57. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  58. data/generated/google/apis/appengine_v1beta4/classes.rb +1532 -0
  59. data/generated/google/apis/appengine_v1beta4/representations.rb +526 -0
  60. data/generated/google/apis/appengine_v1beta4/service.rb +476 -0
  61. data/generated/google/apis/appsactivity_v1.rb +46 -0
  62. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  63. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  64. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  65. data/generated/google/apis/appstate_v1.rb +34 -0
  66. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  67. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  68. data/generated/google/apis/appstate_v1/service.rb +260 -0
  69. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  70. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  71. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  72. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  73. data/generated/google/apis/bigquery_v2.rb +52 -0
  74. data/generated/google/apis/bigquery_v2/classes.rb +2471 -0
  75. data/generated/google/apis/bigquery_v2/representations.rb +816 -0
  76. data/generated/google/apis/bigquery_v2/service.rb +982 -0
  77. data/generated/google/apis/blogger_v3.rb +37 -0
  78. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  79. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  80. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  81. data/generated/google/apis/books_v1.rb +34 -0
  82. data/generated/google/apis/books_v1/classes.rb +3956 -0
  83. data/generated/google/apis/books_v1/representations.rb +1538 -0
  84. data/generated/google/apis/books_v1/service.rb +2290 -0
  85. data/generated/google/apis/calendar_v3.rb +37 -0
  86. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  87. data/generated/google/apis/calendar_v3/representations.rb +567 -0
  88. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  89. data/{lib/google/api_client/service_account.rb → generated/google/apis/civicinfo_v2.rb} +18 -8
  90. data/generated/google/apis/civicinfo_v2/classes.rb +1127 -0
  91. data/generated/google/apis/civicinfo_v2/representations.rb +383 -0
  92. data/generated/google/apis/civicinfo_v2/service.rb +279 -0
  93. data/generated/google/apis/classroom_v1.rb +49 -0
  94. data/generated/google/apis/classroom_v1/classes.rb +512 -0
  95. data/generated/google/apis/classroom_v1/representations.rb +217 -0
  96. data/generated/google/apis/classroom_v1/service.rb +970 -0
  97. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  98. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  99. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  100. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  101. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  102. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  103. data/generated/google/apis/cloudbilling_v1/representations.rb +79 -0
  104. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  105. data/generated/google/apis/clouddebugger_v2.rb +41 -0
  106. data/generated/google/apis/clouddebugger_v2/classes.rb +1004 -0
  107. data/generated/google/apis/clouddebugger_v2/representations.rb +410 -0
  108. data/generated/google/apis/clouddebugger_v2/service.rb +370 -0
  109. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  110. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  111. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  112. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  113. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  114. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +437 -0
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +188 -0
  116. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +623 -0
  117. data/generated/google/apis/cloudtrace_v1.rb +35 -0
  118. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  119. data/generated/google/apis/cloudtrace_v1/representations.rb +92 -0
  120. data/generated/google/apis/cloudtrace_v1/service.rb +190 -0
  121. data/generated/google/apis/clouduseraccounts_beta.rb +43 -0
  122. data/generated/google/apis/clouduseraccounts_beta/classes.rb +823 -0
  123. data/generated/google/apis/clouduseraccounts_beta/representations.rb +313 -0
  124. data/generated/google/apis/clouduseraccounts_beta/service.rb +854 -0
  125. data/generated/google/apis/compute_beta.rb +49 -0
  126. data/generated/google/apis/compute_beta/classes.rb +9128 -0
  127. data/generated/google/apis/compute_beta/representations.rb +3048 -0
  128. data/generated/google/apis/compute_beta/service.rb +10154 -0
  129. data/generated/google/apis/compute_v1.rb +49 -0
  130. data/generated/google/apis/compute_v1/classes.rb +8681 -0
  131. data/generated/google/apis/compute_v1/representations.rb +2895 -0
  132. data/generated/google/apis/compute_v1/service.rb +9252 -0
  133. data/generated/google/apis/container_v1.rb +35 -0
  134. data/generated/google/apis/container_v1/classes.rb +463 -0
  135. data/generated/google/apis/container_v1/representations.rb +175 -0
  136. data/generated/google/apis/container_v1/service.rb +367 -0
  137. data/generated/google/apis/container_v1beta1.rb +35 -0
  138. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  139. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  140. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  141. data/generated/google/apis/content_v2.rb +35 -0
  142. data/generated/google/apis/content_v2/classes.rb +5986 -0
  143. data/generated/google/apis/content_v2/representations.rb +2288 -0
  144. data/generated/google/apis/content_v2/service.rb +2338 -0
  145. data/generated/google/apis/coordinate_v1.rb +37 -0
  146. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  147. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  148. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  149. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  150. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  151. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  152. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  153. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  154. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  155. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  156. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  157. data/generated/google/apis/deploymentmanager_v2.rb +44 -0
  158. data/generated/google/apis/deploymentmanager_v2/classes.rb +1091 -0
  159. data/generated/google/apis/deploymentmanager_v2/representations.rb +422 -0
  160. data/generated/google/apis/deploymentmanager_v2/service.rb +857 -0
  161. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  162. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  163. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  164. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  165. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  166. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  167. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  168. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  169. data/generated/google/apis/discovery_v1.rb +32 -0
  170. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  171. data/generated/google/apis/discovery_v1/representations.rb +357 -0
  172. data/generated/google/apis/discovery_v1/service.rb +142 -0
  173. data/generated/google/apis/dns_v1.rb +44 -0
  174. data/generated/google/apis/dns_v1/classes.rb +406 -0
  175. data/generated/google/apis/dns_v1/representations.rb +151 -0
  176. data/generated/google/apis/dns_v1/service.rb +454 -0
  177. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  178. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +716 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +298 -0
  180. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +341 -0
  181. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  182. data/generated/google/apis/doubleclicksearch_v2/classes.rb +956 -0
  183. data/generated/google/apis/doubleclicksearch_v2/representations.rb +316 -0
  184. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  185. data/generated/google/apis/drive_v2.rb +58 -0
  186. data/generated/google/apis/drive_v2/classes.rb +2562 -0
  187. data/generated/google/apis/drive_v2/representations.rb +795 -0
  188. data/generated/google/apis/drive_v2/service.rb +2696 -0
  189. data/generated/google/apis/drive_v3.rb +55 -0
  190. data/generated/google/apis/drive_v3/classes.rb +1534 -0
  191. data/generated/google/apis/drive_v3/representations.rb +497 -0
  192. data/generated/google/apis/drive_v3/service.rb +1541 -0
  193. data/generated/google/apis/fitness_v1.rb +49 -0
  194. data/generated/google/apis/fitness_v1/classes.rb +885 -0
  195. data/generated/google/apis/fitness_v1/representations.rb +320 -0
  196. data/generated/google/apis/fitness_v1/service.rb +675 -0
  197. data/generated/google/apis/fusiontables_v2.rb +37 -0
  198. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  199. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  200. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  201. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  202. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  203. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  204. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  205. data/generated/google/apis/games_management_v1management.rb +37 -0
  206. data/generated/google/apis/games_management_v1management/classes.rb +524 -0
  207. data/generated/google/apis/games_management_v1management/representations.rb +231 -0
  208. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  209. data/generated/google/apis/games_v1.rb +40 -0
  210. data/generated/google/apis/games_v1/classes.rb +4617 -0
  211. data/generated/google/apis/games_v1/representations.rb +1584 -0
  212. data/generated/google/apis/games_v1/service.rb +2290 -0
  213. data/generated/google/apis/gan_v1beta1.rb +31 -0
  214. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  215. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  216. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  217. data/generated/google/apis/genomics_v1.rb +49 -0
  218. data/generated/google/apis/genomics_v1/classes.rb +2609 -0
  219. data/generated/google/apis/genomics_v1/representations.rb +909 -0
  220. data/generated/google/apis/genomics_v1/service.rb +1676 -0
  221. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  222. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  223. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  224. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  225. data/generated/google/apis/gmail_v1.rb +52 -0
  226. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  227. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  228. data/generated/google/apis/gmail_v1/service.rb +1470 -0
  229. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  230. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  231. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  232. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  233. data/generated/google/apis/groupssettings_v1.rb +34 -0
  234. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  235. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  236. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  237. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  238. data/generated/google/apis/identitytoolkit_v3/classes.rb +1466 -0
  239. data/generated/google/apis/identitytoolkit_v3/representations.rb +509 -0
  240. data/generated/google/apis/identitytoolkit_v3/service.rb +581 -0
  241. data/{spec/google/api_client/request_spec.rb → generated/google/apis/kgsearch_v1.rb} +16 -13
  242. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  243. data/generated/google/apis/kgsearch_v1/representations.rb +39 -0
  244. data/generated/google/apis/kgsearch_v1/service.rb +111 -0
  245. data/generated/google/apis/licensing_v1.rb +34 -0
  246. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  247. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  248. data/generated/google/apis/licensing_v1/service.rb +369 -0
  249. data/generated/google/apis/logging_v1beta3.rb +47 -0
  250. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  251. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  252. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  253. data/generated/google/apis/manager_v1beta2.rb +53 -0
  254. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  255. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  256. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  257. data/generated/google/apis/mapsengine_v1.rb +38 -0
  258. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  259. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  260. data/generated/google/apis/mapsengine_v1/service.rb +3388 -0
  261. data/generated/google/apis/mirror_v1.rb +37 -0
  262. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  263. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  264. data/generated/google/apis/mirror_v1/service.rb +977 -0
  265. data/generated/google/apis/oauth2_v2.rb +43 -0
  266. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  267. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  268. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  269. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  270. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  271. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  272. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  273. data/generated/google/apis/partners_v2.rb +32 -0
  274. data/generated/google/apis/partners_v2/classes.rb +942 -0
  275. data/generated/google/apis/partners_v2/representations.rb +402 -0
  276. data/generated/google/apis/partners_v2/service.rb +400 -0
  277. data/generated/google/apis/plus_domains_v1.rb +61 -0
  278. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  279. data/generated/google/apis/plus_domains_v1/representations.rb +987 -0
  280. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  281. data/generated/google/apis/plus_v1.rb +43 -0
  282. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  283. data/generated/google/apis/plus_v1/representations.rb +805 -0
  284. data/generated/google/apis/plus_v1/service.rb +470 -0
  285. data/generated/google/apis/prediction_v1_6.rb +44 -0
  286. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  287. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  288. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  289. data/generated/google/apis/proximitybeacon_v1beta1.rb +31 -0
  290. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +639 -0
  291. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +274 -0
  292. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +591 -0
  293. data/generated/google/apis/pubsub_v1.rb +37 -0
  294. data/generated/google/apis/pubsub_v1/classes.rb +614 -0
  295. data/generated/google/apis/pubsub_v1/representations.rb +281 -0
  296. data/generated/google/apis/pubsub_v1/service.rb +774 -0
  297. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  298. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  299. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  300. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  301. data/generated/google/apis/qpx_express_v1.rb +31 -0
  302. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  303. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  304. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  305. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  306. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  307. data/generated/google/apis/replicapool_v1beta2/representations.rb +236 -0
  308. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  309. data/generated/google/apis/replicapoolupdater_v1beta1.rb +44 -0
  310. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  311. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +264 -0
  312. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +508 -0
  313. data/generated/google/apis/reseller_v1.rb +37 -0
  314. data/generated/google/apis/reseller_v1/classes.rb +520 -0
  315. data/generated/google/apis/reseller_v1/representations.rb +200 -0
  316. data/generated/google/apis/reseller_v1/service.rb +623 -0
  317. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  318. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  319. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  320. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  321. data/generated/google/apis/script_v1.rb +61 -0
  322. data/generated/google/apis/script_v1/classes.rb +259 -0
  323. data/generated/google/apis/script_v1/representations.rb +106 -0
  324. data/generated/google/apis/script_v1/service.rb +98 -0
  325. data/generated/google/apis/site_verification_v1.rb +37 -0
  326. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  327. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  328. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  329. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  330. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2001 -0
  331. data/generated/google/apis/sqladmin_v1beta4/representations.rb +758 -0
  332. data/generated/google/apis/sqladmin_v1beta4/service.rb +1625 -0
  333. data/generated/google/apis/storage_v1.rb +46 -0
  334. data/generated/google/apis/storage_v1/classes.rb +1222 -0
  335. data/generated/google/apis/storage_v1/representations.rb +445 -0
  336. data/generated/google/apis/storage_v1/service.rb +1903 -0
  337. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  338. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  339. data/generated/google/apis/storagetransfer_v1/representations.rb +370 -0
  340. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  341. data/generated/google/apis/tagmanager_v1.rb +52 -0
  342. data/generated/google/apis/tagmanager_v1/classes.rb +1384 -0
  343. data/generated/google/apis/tagmanager_v1/representations.rb +515 -0
  344. data/generated/google/apis/tagmanager_v1/service.rb +1817 -0
  345. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  346. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  347. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  348. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  349. data/generated/google/apis/tasks_v1.rb +37 -0
  350. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  351. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  352. data/generated/google/apis/tasks_v1/service.rb +643 -0
  353. data/generated/google/apis/translate_v2.rb +31 -0
  354. data/generated/google/apis/translate_v2/classes.rb +168 -0
  355. data/generated/google/apis/translate_v2/representations.rb +109 -0
  356. data/generated/google/apis/translate_v2/service.rb +182 -0
  357. data/generated/google/apis/urlshortener_v1.rb +34 -0
  358. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  359. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  360. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  361. data/generated/google/apis/webmasters_v3.rb +37 -0
  362. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  363. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  364. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  365. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  366. data/generated/google/apis/youtube_analytics_v1/classes.rb +546 -0
  367. data/generated/google/apis/youtube_analytics_v1/representations.rb +243 -0
  368. data/generated/google/apis/youtube_analytics_v1/service.rb +562 -0
  369. data/generated/google/apis/youtube_v3.rb +49 -0
  370. data/generated/google/apis/youtube_v3/classes.rb +8136 -0
  371. data/generated/google/apis/youtube_v3/representations.rb +2838 -0
  372. data/generated/google/apis/youtube_v3/service.rb +4403 -0
  373. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  374. data/generated/google/apis/youtubereporting_v1/classes.rb +258 -0
  375. data/generated/google/apis/youtubereporting_v1/representations.rb +128 -0
  376. data/generated/google/apis/youtubereporting_v1/service.rb +364 -0
  377. data/google-api-client.gemspec +27 -39
  378. data/lib/google/api_client/auth/installed_app.rb +7 -5
  379. data/lib/google/api_client/auth/key_utils.rb +1 -0
  380. data/lib/google/api_client/auth/storage.rb +4 -2
  381. data/lib/google/api_client/auth/storages/file_store.rb +2 -3
  382. data/lib/google/api_client/auth/storages/redis_store.rb +7 -2
  383. data/lib/google/api_client/client_secrets.rb +4 -5
  384. data/lib/google/apis.rb +48 -0
  385. data/lib/google/apis/core/api_command.rb +135 -0
  386. data/lib/google/apis/core/base_service.rb +317 -0
  387. data/lib/google/apis/core/batch.rb +239 -0
  388. data/lib/google/apis/core/download.rb +94 -0
  389. data/lib/google/apis/core/hashable.rb +44 -0
  390. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  391. data/lib/google/apis/core/http_command.rb +312 -0
  392. data/lib/google/apis/core/json_representation.rb +127 -0
  393. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  394. data/lib/google/apis/core/multipart.rb +187 -0
  395. data/lib/google/apis/core/upload.rb +288 -0
  396. data/lib/google/{api_client → apis}/errors.rb +39 -28
  397. data/lib/google/apis/generator.rb +70 -0
  398. data/lib/google/apis/generator/annotator.rb +295 -0
  399. data/lib/google/apis/generator/helpers.rb +74 -0
  400. data/lib/google/apis/generator/model.rb +143 -0
  401. data/lib/google/apis/generator/template.rb +124 -0
  402. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  403. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  404. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  405. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  406. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  407. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  408. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  409. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  410. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  411. data/lib/google/apis/options.rb +85 -0
  412. data/lib/google/apis/version.rb +39 -0
  413. data/rakelib/metrics.rake +22 -0
  414. data/rakelib/rubocop.rake +10 -0
  415. data/rakelib/spec.rake +11 -0
  416. data/rakelib/yard.rake +11 -0
  417. data/samples/Gemfile +7 -0
  418. data/samples/README.md +51 -0
  419. data/samples/google-api-samples +32 -0
  420. data/samples/lib/base_cli.rb +94 -0
  421. data/samples/lib/samples/analytics.rb +62 -0
  422. data/samples/lib/samples/calendar.rb +83 -0
  423. data/samples/lib/samples/drive.rb +82 -0
  424. data/samples/lib/samples/gmail.rb +50 -0
  425. data/samples/lib/samples/pubsub.rb +114 -0
  426. data/samples/lib/samples/translate.rb +44 -0
  427. data/samples/lib/samples/you_tube.rb +44 -0
  428. data/script/generate +95 -0
  429. data/script/package +8 -0
  430. data/script/release +15 -0
  431. data/spec/fixtures/files/api_names.yaml +3 -0
  432. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  433. data/spec/fixtures/files/child/.gitignore +0 -0
  434. data/spec/fixtures/files/client_secrets.json +1 -0
  435. data/spec/fixtures/files/invalid.json +1 -0
  436. data/spec/fixtures/files/test.blah +1 -0
  437. data/spec/fixtures/files/test.txt +1 -0
  438. data/spec/fixtures/files/test_api.json +440 -0
  439. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  440. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  441. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  442. data/spec/google/api_client/client_secrets_spec.rb +38 -1
  443. data/spec/google/apis/core/api_command_spec.rb +209 -0
  444. data/spec/google/apis/core/batch_spec.rb +142 -0
  445. data/spec/google/apis/core/download_spec.rb +103 -0
  446. data/spec/google/apis/core/hashable_spec.rb +60 -0
  447. data/spec/google/apis/core/http_command_spec.rb +284 -0
  448. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  449. data/spec/google/apis/core/service_spec.rb +247 -0
  450. data/spec/google/apis/core/upload_spec.rb +300 -0
  451. data/{lib/google/api_client/discovery.rb → spec/google/apis/generated_spec.rb} +13 -5
  452. data/spec/google/apis/generator/generator_spec.rb +272 -0
  453. data/spec/google/apis/logging_spec.rb +45 -0
  454. data/spec/google/apis/options_spec.rb +40 -0
  455. data/spec/integration_tests/adsense_spec.rb +29 -0
  456. data/spec/integration_tests/drive_spec.rb +35 -0
  457. data/spec/integration_tests/pubsub_spec.rb +48 -0
  458. data/spec/integration_tests/url_shortener_spec.rb +45 -0
  459. data/spec/spec_helper.rb +131 -44
  460. data/spec/spec_helper/load_path_spec.rb +33 -0
  461. data/third_party/hurley_patches.rb +103 -0
  462. metadata +533 -170
  463. data/lib/compat/multi_json.rb +0 -19
  464. data/lib/google/api_client.rb +0 -750
  465. data/lib/google/api_client/auth/file_storage.rb +0 -59
  466. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  467. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  468. data/lib/google/api_client/batch.rb +0 -326
  469. data/lib/google/api_client/charset.rb +0 -33
  470. data/lib/google/api_client/discovery/api.rb +0 -310
  471. data/lib/google/api_client/discovery/media.rb +0 -77
  472. data/lib/google/api_client/discovery/method.rb +0 -363
  473. data/lib/google/api_client/discovery/resource.rb +0 -156
  474. data/lib/google/api_client/discovery/schema.rb +0 -117
  475. data/lib/google/api_client/environment.rb +0 -42
  476. data/lib/google/api_client/gzip.rb +0 -28
  477. data/lib/google/api_client/logging.rb +0 -32
  478. data/lib/google/api_client/media.rb +0 -259
  479. data/lib/google/api_client/railtie.rb +0 -18
  480. data/lib/google/api_client/request.rb +0 -350
  481. data/lib/google/api_client/result.rb +0 -255
  482. data/lib/google/api_client/service.rb +0 -233
  483. data/lib/google/api_client/service/batch.rb +0 -110
  484. data/lib/google/api_client/service/request.rb +0 -144
  485. data/lib/google/api_client/service/resource.rb +0 -40
  486. data/lib/google/api_client/service/result.rb +0 -162
  487. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  488. data/lib/google/api_client/service/stub_generator.rb +0 -61
  489. data/spec/google/api_client/batch_spec.rb +0 -248
  490. data/spec/google/api_client/discovery_spec.rb +0 -708
  491. data/spec/google/api_client/gzip_spec.rb +0 -98
  492. data/spec/google/api_client/media_spec.rb +0 -178
  493. data/spec/google/api_client/result_spec.rb +0 -207
  494. data/spec/google/api_client/service_account_spec.rb +0 -169
  495. data/spec/google/api_client/service_spec.rb +0 -618
  496. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  497. data/spec/google/api_client_spec.rb +0 -352
@@ -0,0 +1,52 @@
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/bigquery_v2/service.rb'
16
+ require 'google/apis/bigquery_v2/classes.rb'
17
+ require 'google/apis/bigquery_v2/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # BigQuery API
22
+ #
23
+ # A data platform for customers to create, manage, share and query data.
24
+ #
25
+ # @see https://cloud.google.com/bigquery/
26
+ module BigqueryV2
27
+ VERSION = 'V2'
28
+ REVISION = '20160104'
29
+
30
+ # View and manage your data in Google BigQuery
31
+ AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery'
32
+
33
+ # Insert data into Google BigQuery
34
+ AUTH_BIGQUERY_INSERTDATA = 'https://www.googleapis.com/auth/bigquery.insertdata'
35
+
36
+ # View and manage your data across Google Cloud Platform services
37
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
38
+
39
+ # View your data across Google Cloud Platform services
40
+ AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only'
41
+
42
+ # Manage your data and permissions in Google Cloud Storage
43
+ AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control'
44
+
45
+ # View your data in Google Cloud Storage
46
+ AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only'
47
+
48
+ # Manage your data in Google Cloud Storage
49
+ AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write'
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,2471 @@
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 BigqueryV2
24
+
25
+ #
26
+ class CsvOptions
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # [Optional] Indicates if BigQuery should accept rows that are missing trailing
30
+ # optional columns. If true, BigQuery treats missing trailing columns as null
31
+ # values. If false, records with missing trailing columns are treated as bad
32
+ # records, and if there are too many bad records, an invalid error is returned
33
+ # in the job result. The default value is false.
34
+ # Corresponds to the JSON property `allowJaggedRows`
35
+ # @return [Boolean]
36
+ attr_accessor :allow_jagged_rows
37
+ alias_method :allow_jagged_rows?, :allow_jagged_rows
38
+
39
+ # [Optional] Indicates if BigQuery should allow quoted data sections that
40
+ # contain newline characters in a CSV file. The default value is false.
41
+ # Corresponds to the JSON property `allowQuotedNewlines`
42
+ # @return [Boolean]
43
+ attr_accessor :allow_quoted_newlines
44
+ alias_method :allow_quoted_newlines?, :allow_quoted_newlines
45
+
46
+ # [Optional] The character encoding of the data. The supported values are UTF-8
47
+ # or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the
48
+ # raw, binary data has been split using the values of the quote and
49
+ # fieldDelimiter properties.
50
+ # Corresponds to the JSON property `encoding`
51
+ # @return [String]
52
+ attr_accessor :encoding
53
+
54
+ # [Optional] The separator for fields in a CSV file. BigQuery converts the
55
+ # string to ISO-8859-1 encoding, and then uses the first byte of the encoded
56
+ # string to split the data in its raw, binary state. BigQuery also supports the
57
+ # escape sequence "\t" to specify a tab separator. The default value is a comma (
58
+ # ',').
59
+ # Corresponds to the JSON property `fieldDelimiter`
60
+ # @return [String]
61
+ attr_accessor :field_delimiter
62
+
63
+ # [Optional] The value that is used to quote data sections in a CSV file.
64
+ # BigQuery converts the string to ISO-8859-1 encoding, and then uses the first
65
+ # byte of the encoded string to split the data in its raw, binary state. The
66
+ # default value is a double-quote ('"'). If your data does not contain quoted
67
+ # sections, set the property value to an empty string. If your data contains
68
+ # quoted newline characters, you must also set the allowQuotedNewlines property
69
+ # to true.
70
+ # Corresponds to the JSON property `quote`
71
+ # @return [String]
72
+ attr_accessor :quote
73
+
74
+ # [Optional] The number of rows at the top of a CSV file that BigQuery will skip
75
+ # when reading the data. The default value is 0. This property is useful if you
76
+ # have header rows in the file that should be skipped.
77
+ # Corresponds to the JSON property `skipLeadingRows`
78
+ # @return [Fixnum]
79
+ attr_accessor :skip_leading_rows
80
+
81
+ def initialize(**args)
82
+ update!(**args)
83
+ end
84
+
85
+ # Update properties of this object
86
+ def update!(**args)
87
+ @allow_jagged_rows = args[:allow_jagged_rows] unless args[:allow_jagged_rows].nil?
88
+ @allow_quoted_newlines = args[:allow_quoted_newlines] unless args[:allow_quoted_newlines].nil?
89
+ @encoding = args[:encoding] unless args[:encoding].nil?
90
+ @field_delimiter = args[:field_delimiter] unless args[:field_delimiter].nil?
91
+ @quote = args[:quote] unless args[:quote].nil?
92
+ @skip_leading_rows = args[:skip_leading_rows] unless args[:skip_leading_rows].nil?
93
+ end
94
+ end
95
+
96
+ #
97
+ class Dataset
98
+ include Google::Apis::Core::Hashable
99
+
100
+ # [Optional] An array of objects that define dataset access for one or more
101
+ # entities. You can set this property when inserting or updating a dataset in
102
+ # order to control who is allowed to access the data. If unspecified at dataset
103
+ # creation time, BigQuery adds default dataset access for the following entities:
104
+ # access.specialGroup: projectReaders; access.role: READER; access.specialGroup:
105
+ # projectWriters; access.role: WRITER; access.specialGroup: projectOwners;
106
+ # access.role: OWNER; access.userByEmail: [dataset creator email]; access.role:
107
+ # OWNER;
108
+ # Corresponds to the JSON property `access`
109
+ # @return [Array<Google::Apis::BigqueryV2::Dataset::Access>]
110
+ attr_accessor :access
111
+
112
+ # [Output-only] The time when this dataset was created, in milliseconds since
113
+ # the epoch.
114
+ # Corresponds to the JSON property `creationTime`
115
+ # @return [String]
116
+ attr_accessor :creation_time
117
+
118
+ # [Required] A reference that identifies the dataset.
119
+ # Corresponds to the JSON property `datasetReference`
120
+ # @return [Google::Apis::BigqueryV2::DatasetReference]
121
+ attr_accessor :dataset_reference
122
+
123
+ # [Experimental] The default lifetime of all tables in the dataset, in
124
+ # milliseconds. The minimum value is 3600000 milliseconds (one hour). Once this
125
+ # property is set, all newly-created tables in the dataset will have an
126
+ # expirationTime property set to the creation time plus the value in this
127
+ # property, and changing the value will only affect new tables, not existing
128
+ # ones. When the expirationTime for a given table is reached, that table will be
129
+ # deleted automatically. If a table's expirationTime is modified or removed
130
+ # before the table expires, or if you provide an explicit expirationTime when
131
+ # creating a table, that value takes precedence over the default expiration time
132
+ # indicated by this property.
133
+ # Corresponds to the JSON property `defaultTableExpirationMs`
134
+ # @return [String]
135
+ attr_accessor :default_table_expiration_ms
136
+
137
+ # [Optional] A user-friendly description of the dataset.
138
+ # Corresponds to the JSON property `description`
139
+ # @return [String]
140
+ attr_accessor :description
141
+
142
+ # [Output-only] A hash of the resource.
143
+ # Corresponds to the JSON property `etag`
144
+ # @return [String]
145
+ attr_accessor :etag
146
+
147
+ # [Optional] A descriptive name for the dataset.
148
+ # Corresponds to the JSON property `friendlyName`
149
+ # @return [String]
150
+ attr_accessor :friendly_name
151
+
152
+ # [Output-only] The fully-qualified unique name of the dataset in the format
153
+ # projectId:datasetId. The dataset name without the project name is given in the
154
+ # datasetId field. When creating a new dataset, leave this field blank, and
155
+ # instead specify the datasetId field.
156
+ # Corresponds to the JSON property `id`
157
+ # @return [String]
158
+ attr_accessor :id
159
+
160
+ # [Output-only] The resource type.
161
+ # Corresponds to the JSON property `kind`
162
+ # @return [String]
163
+ attr_accessor :kind
164
+
165
+ # [Output-only] The date when this dataset or any of its tables was last
166
+ # modified, in milliseconds since the epoch.
167
+ # Corresponds to the JSON property `lastModifiedTime`
168
+ # @return [String]
169
+ attr_accessor :last_modified_time
170
+
171
+ # [Experimental] The geographic location where the dataset should reside.
172
+ # Possible values include EU and US. The default value is US.
173
+ # Corresponds to the JSON property `location`
174
+ # @return [String]
175
+ attr_accessor :location
176
+
177
+ # [Output-only] A URL that can be used to access the resource again. You can use
178
+ # this URL in Get or Update requests to the resource.
179
+ # Corresponds to the JSON property `selfLink`
180
+ # @return [String]
181
+ attr_accessor :self_link
182
+
183
+ def initialize(**args)
184
+ update!(**args)
185
+ end
186
+
187
+ # Update properties of this object
188
+ def update!(**args)
189
+ @access = args[:access] unless args[:access].nil?
190
+ @creation_time = args[:creation_time] unless args[:creation_time].nil?
191
+ @dataset_reference = args[:dataset_reference] unless args[:dataset_reference].nil?
192
+ @default_table_expiration_ms = args[:default_table_expiration_ms] unless args[:default_table_expiration_ms].nil?
193
+ @description = args[:description] unless args[:description].nil?
194
+ @etag = args[:etag] unless args[:etag].nil?
195
+ @friendly_name = args[:friendly_name] unless args[:friendly_name].nil?
196
+ @id = args[:id] unless args[:id].nil?
197
+ @kind = args[:kind] unless args[:kind].nil?
198
+ @last_modified_time = args[:last_modified_time] unless args[:last_modified_time].nil?
199
+ @location = args[:location] unless args[:location].nil?
200
+ @self_link = args[:self_link] unless args[:self_link].nil?
201
+ end
202
+
203
+ #
204
+ class Access
205
+ include Google::Apis::Core::Hashable
206
+
207
+ # [Pick one] A domain to grant access to. Any users signed in with the domain
208
+ # specified will be granted the specified access. Example: "example.com".
209
+ # Corresponds to the JSON property `domain`
210
+ # @return [String]
211
+ attr_accessor :domain
212
+
213
+ # [Pick one] An email address of a Google Group to grant access to.
214
+ # Corresponds to the JSON property `groupByEmail`
215
+ # @return [String]
216
+ attr_accessor :group_by_email
217
+
218
+ # [Required] Describes the rights granted to the user specified by the other
219
+ # member of the access object. The following string values are supported: READER,
220
+ # WRITER, OWNER.
221
+ # Corresponds to the JSON property `role`
222
+ # @return [String]
223
+ attr_accessor :role
224
+
225
+ # [Pick one] A special group to grant access to. Possible values include:
226
+ # projectOwners: Owners of the enclosing project. projectReaders: Readers of the
227
+ # enclosing project. projectWriters: Writers of the enclosing project.
228
+ # allAuthenticatedUsers: All authenticated BigQuery users.
229
+ # Corresponds to the JSON property `specialGroup`
230
+ # @return [String]
231
+ attr_accessor :special_group
232
+
233
+ # [Pick one] An email address of a user to grant access to. For example: fred@
234
+ # example.com.
235
+ # Corresponds to the JSON property `userByEmail`
236
+ # @return [String]
237
+ attr_accessor :user_by_email
238
+
239
+ # [Pick one] A view from a different dataset to grant access to. Queries
240
+ # executed against that view will have read access to tables in this dataset.
241
+ # The role field is not required when this field is set. If that view is updated
242
+ # by any user, access to the view needs to be granted again via an update
243
+ # operation.
244
+ # Corresponds to the JSON property `view`
245
+ # @return [Google::Apis::BigqueryV2::TableReference]
246
+ attr_accessor :view
247
+
248
+ def initialize(**args)
249
+ update!(**args)
250
+ end
251
+
252
+ # Update properties of this object
253
+ def update!(**args)
254
+ @domain = args[:domain] unless args[:domain].nil?
255
+ @group_by_email = args[:group_by_email] unless args[:group_by_email].nil?
256
+ @role = args[:role] unless args[:role].nil?
257
+ @special_group = args[:special_group] unless args[:special_group].nil?
258
+ @user_by_email = args[:user_by_email] unless args[:user_by_email].nil?
259
+ @view = args[:view] unless args[:view].nil?
260
+ end
261
+ end
262
+ end
263
+
264
+ #
265
+ class DatasetList
266
+ include Google::Apis::Core::Hashable
267
+
268
+ # An array of the dataset resources in the project. Each resource contains basic
269
+ # information. For full information about a particular dataset resource, use the
270
+ # Datasets: get method. This property is omitted when there are no datasets in
271
+ # the project.
272
+ # Corresponds to the JSON property `datasets`
273
+ # @return [Array<Google::Apis::BigqueryV2::DatasetList::Dataset>]
274
+ attr_accessor :datasets
275
+
276
+ # A hash value of the results page. You can use this property to determine if
277
+ # the page has changed since the last request.
278
+ # Corresponds to the JSON property `etag`
279
+ # @return [String]
280
+ attr_accessor :etag
281
+
282
+ # The list type. This property always returns the value "bigquery#datasetList".
283
+ # Corresponds to the JSON property `kind`
284
+ # @return [String]
285
+ attr_accessor :kind
286
+
287
+ # A token that can be used to request the next results page. This property is
288
+ # omitted on the final results page.
289
+ # Corresponds to the JSON property `nextPageToken`
290
+ # @return [String]
291
+ attr_accessor :next_page_token
292
+
293
+ def initialize(**args)
294
+ update!(**args)
295
+ end
296
+
297
+ # Update properties of this object
298
+ def update!(**args)
299
+ @datasets = args[:datasets] unless args[:datasets].nil?
300
+ @etag = args[:etag] unless args[:etag].nil?
301
+ @kind = args[:kind] unless args[:kind].nil?
302
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
303
+ end
304
+
305
+ #
306
+ class Dataset
307
+ include Google::Apis::Core::Hashable
308
+
309
+ # The dataset reference. Use this property to access specific parts of the
310
+ # dataset's ID, such as project ID or dataset ID.
311
+ # Corresponds to the JSON property `datasetReference`
312
+ # @return [Google::Apis::BigqueryV2::DatasetReference]
313
+ attr_accessor :dataset_reference
314
+
315
+ # A descriptive name for the dataset, if one exists.
316
+ # Corresponds to the JSON property `friendlyName`
317
+ # @return [String]
318
+ attr_accessor :friendly_name
319
+
320
+ # The fully-qualified, unique, opaque ID of the dataset.
321
+ # Corresponds to the JSON property `id`
322
+ # @return [String]
323
+ attr_accessor :id
324
+
325
+ # The resource type. This property always returns the value "bigquery#dataset".
326
+ # Corresponds to the JSON property `kind`
327
+ # @return [String]
328
+ attr_accessor :kind
329
+
330
+ def initialize(**args)
331
+ update!(**args)
332
+ end
333
+
334
+ # Update properties of this object
335
+ def update!(**args)
336
+ @dataset_reference = args[:dataset_reference] unless args[:dataset_reference].nil?
337
+ @friendly_name = args[:friendly_name] unless args[:friendly_name].nil?
338
+ @id = args[:id] unless args[:id].nil?
339
+ @kind = args[:kind] unless args[:kind].nil?
340
+ end
341
+ end
342
+ end
343
+
344
+ #
345
+ class DatasetReference
346
+ include Google::Apis::Core::Hashable
347
+
348
+ # [Required] A unique ID for this dataset, without the project name. The ID must
349
+ # contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The
350
+ # maximum length is 1,024 characters.
351
+ # Corresponds to the JSON property `datasetId`
352
+ # @return [String]
353
+ attr_accessor :dataset_id
354
+
355
+ # [Optional] The ID of the project containing this dataset.
356
+ # Corresponds to the JSON property `projectId`
357
+ # @return [String]
358
+ attr_accessor :project_id
359
+
360
+ def initialize(**args)
361
+ update!(**args)
362
+ end
363
+
364
+ # Update properties of this object
365
+ def update!(**args)
366
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
367
+ @project_id = args[:project_id] unless args[:project_id].nil?
368
+ end
369
+ end
370
+
371
+ #
372
+ class ErrorProto
373
+ include Google::Apis::Core::Hashable
374
+
375
+ # Debugging information. This property is internal to Google and should not be
376
+ # used.
377
+ # Corresponds to the JSON property `debugInfo`
378
+ # @return [String]
379
+ attr_accessor :debug_info
380
+
381
+ # Specifies where the error occurred, if present.
382
+ # Corresponds to the JSON property `location`
383
+ # @return [String]
384
+ attr_accessor :location
385
+
386
+ # A human-readable description of the error.
387
+ # Corresponds to the JSON property `message`
388
+ # @return [String]
389
+ attr_accessor :message
390
+
391
+ # A short error code that summarizes the error.
392
+ # Corresponds to the JSON property `reason`
393
+ # @return [String]
394
+ attr_accessor :reason
395
+
396
+ def initialize(**args)
397
+ update!(**args)
398
+ end
399
+
400
+ # Update properties of this object
401
+ def update!(**args)
402
+ @debug_info = args[:debug_info] unless args[:debug_info].nil?
403
+ @location = args[:location] unless args[:location].nil?
404
+ @message = args[:message] unless args[:message].nil?
405
+ @reason = args[:reason] unless args[:reason].nil?
406
+ end
407
+ end
408
+
409
+ #
410
+ class ExplainQueryStage
411
+ include Google::Apis::Core::Hashable
412
+
413
+ # Relative amount of time the average shard spent on CPU-bound tasks.
414
+ # Corresponds to the JSON property `computeRatioAvg`
415
+ # @return [Float]
416
+ attr_accessor :compute_ratio_avg
417
+
418
+ # Relative amount of time the slowest shard spent on CPU-bound tasks.
419
+ # Corresponds to the JSON property `computeRatioMax`
420
+ # @return [Float]
421
+ attr_accessor :compute_ratio_max
422
+
423
+ # Unique ID for stage within plan.
424
+ # Corresponds to the JSON property `id`
425
+ # @return [String]
426
+ attr_accessor :id
427
+
428
+ # Human-readable name for stage.
429
+ # Corresponds to the JSON property `name`
430
+ # @return [String]
431
+ attr_accessor :name
432
+
433
+ # Relative amount of time the average shard spent reading input.
434
+ # Corresponds to the JSON property `readRatioAvg`
435
+ # @return [Float]
436
+ attr_accessor :read_ratio_avg
437
+
438
+ # Relative amount of time the slowest shard spent reading input.
439
+ # Corresponds to the JSON property `readRatioMax`
440
+ # @return [Float]
441
+ attr_accessor :read_ratio_max
442
+
443
+ # Number of records read into the stage.
444
+ # Corresponds to the JSON property `recordsRead`
445
+ # @return [String]
446
+ attr_accessor :records_read
447
+
448
+ # Number of records written by the stage.
449
+ # Corresponds to the JSON property `recordsWritten`
450
+ # @return [String]
451
+ attr_accessor :records_written
452
+
453
+ # List of operations within the stage in dependency order (approximately
454
+ # chronological).
455
+ # Corresponds to the JSON property `steps`
456
+ # @return [Array<Google::Apis::BigqueryV2::ExplainQueryStep>]
457
+ attr_accessor :steps
458
+
459
+ # Relative amount of time the average shard spent waiting to be scheduled.
460
+ # Corresponds to the JSON property `waitRatioAvg`
461
+ # @return [Float]
462
+ attr_accessor :wait_ratio_avg
463
+
464
+ # Relative amount of time the slowest shard spent waiting to be scheduled.
465
+ # Corresponds to the JSON property `waitRatioMax`
466
+ # @return [Float]
467
+ attr_accessor :wait_ratio_max
468
+
469
+ # Relative amount of time the average shard spent on writing output.
470
+ # Corresponds to the JSON property `writeRatioAvg`
471
+ # @return [Float]
472
+ attr_accessor :write_ratio_avg
473
+
474
+ # Relative amount of time the slowest shard spent on writing output.
475
+ # Corresponds to the JSON property `writeRatioMax`
476
+ # @return [Float]
477
+ attr_accessor :write_ratio_max
478
+
479
+ def initialize(**args)
480
+ update!(**args)
481
+ end
482
+
483
+ # Update properties of this object
484
+ def update!(**args)
485
+ @compute_ratio_avg = args[:compute_ratio_avg] unless args[:compute_ratio_avg].nil?
486
+ @compute_ratio_max = args[:compute_ratio_max] unless args[:compute_ratio_max].nil?
487
+ @id = args[:id] unless args[:id].nil?
488
+ @name = args[:name] unless args[:name].nil?
489
+ @read_ratio_avg = args[:read_ratio_avg] unless args[:read_ratio_avg].nil?
490
+ @read_ratio_max = args[:read_ratio_max] unless args[:read_ratio_max].nil?
491
+ @records_read = args[:records_read] unless args[:records_read].nil?
492
+ @records_written = args[:records_written] unless args[:records_written].nil?
493
+ @steps = args[:steps] unless args[:steps].nil?
494
+ @wait_ratio_avg = args[:wait_ratio_avg] unless args[:wait_ratio_avg].nil?
495
+ @wait_ratio_max = args[:wait_ratio_max] unless args[:wait_ratio_max].nil?
496
+ @write_ratio_avg = args[:write_ratio_avg] unless args[:write_ratio_avg].nil?
497
+ @write_ratio_max = args[:write_ratio_max] unless args[:write_ratio_max].nil?
498
+ end
499
+ end
500
+
501
+ #
502
+ class ExplainQueryStep
503
+ include Google::Apis::Core::Hashable
504
+
505
+ # Machine-readable operation type.
506
+ # Corresponds to the JSON property `kind`
507
+ # @return [String]
508
+ attr_accessor :kind
509
+
510
+ # Human-readable stage descriptions.
511
+ # Corresponds to the JSON property `substeps`
512
+ # @return [Array<String>]
513
+ attr_accessor :substeps
514
+
515
+ def initialize(**args)
516
+ update!(**args)
517
+ end
518
+
519
+ # Update properties of this object
520
+ def update!(**args)
521
+ @kind = args[:kind] unless args[:kind].nil?
522
+ @substeps = args[:substeps] unless args[:substeps].nil?
523
+ end
524
+ end
525
+
526
+ #
527
+ class ExternalDataConfiguration
528
+ include Google::Apis::Core::Hashable
529
+
530
+ # [Optional] The compression type of the data source. Possible values include
531
+ # GZIP and NONE. The default value is NONE. This setting is ignored for Google
532
+ # Cloud Datastore backups.
533
+ # Corresponds to the JSON property `compression`
534
+ # @return [String]
535
+ attr_accessor :compression
536
+
537
+ # Additional properties to set if sourceFormat is set to CSV.
538
+ # Corresponds to the JSON property `csvOptions`
539
+ # @return [Google::Apis::BigqueryV2::CsvOptions]
540
+ attr_accessor :csv_options
541
+
542
+ # [Optional] Indicates if BigQuery should allow extra values that are not
543
+ # represented in the table schema. If true, the extra values are ignored. If
544
+ # false, records with extra columns are treated as bad records, and if there are
545
+ # too many bad records, an invalid error is returned in the job result. The
546
+ # default value is false. The sourceFormat property determines what BigQuery
547
+ # treats as an extra value: CSV: Trailing columns JSON: Named values that don't
548
+ # match any column names Google Cloud Datastore backups: This setting is ignored.
549
+ # Corresponds to the JSON property `ignoreUnknownValues`
550
+ # @return [Boolean]
551
+ attr_accessor :ignore_unknown_values
552
+ alias_method :ignore_unknown_values?, :ignore_unknown_values
553
+
554
+ # [Optional] The maximum number of bad records that BigQuery can ignore when
555
+ # reading data. If the number of bad records exceeds this value, an invalid
556
+ # error is returned in the job result. The default value is 0, which requires
557
+ # that all records are valid. This setting is ignored for Google Cloud Datastore
558
+ # backups.
559
+ # Corresponds to the JSON property `maxBadRecords`
560
+ # @return [Fixnum]
561
+ attr_accessor :max_bad_records
562
+
563
+ # [Optional] The schema for the data. Schema is required for CSV and JSON
564
+ # formats. Schema is disallowed for Google Cloud Datastore backups.
565
+ # Corresponds to the JSON property `schema`
566
+ # @return [Google::Apis::BigqueryV2::TableSchema]
567
+ attr_accessor :schema
568
+
569
+ # [Required] The data format. For CSV files, specify "CSV". For newline-
570
+ # delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Google Cloud Datastore
571
+ # backups, specify "DATASTORE_BACKUP".
572
+ # Corresponds to the JSON property `sourceFormat`
573
+ # @return [String]
574
+ attr_accessor :source_format
575
+
576
+ # [Required] The fully-qualified URIs that point to your data in Google Cloud
577
+ # Storage. Each URI can contain one '*' wildcard character and it must come
578
+ # after the 'bucket' name. Size limits related to load jobs apply to external
579
+ # data sources, plus an additional limit of 10 GB maximum size across all URIs.
580
+ # For Google Cloud Datastore backups, exactly one URI can be specified, and it
581
+ # must end with '.backup_info'. Also, the '*' wildcard character is not allowed.
582
+ # Corresponds to the JSON property `sourceUris`
583
+ # @return [Array<String>]
584
+ attr_accessor :source_uris
585
+
586
+ def initialize(**args)
587
+ update!(**args)
588
+ end
589
+
590
+ # Update properties of this object
591
+ def update!(**args)
592
+ @compression = args[:compression] unless args[:compression].nil?
593
+ @csv_options = args[:csv_options] unless args[:csv_options].nil?
594
+ @ignore_unknown_values = args[:ignore_unknown_values] unless args[:ignore_unknown_values].nil?
595
+ @max_bad_records = args[:max_bad_records] unless args[:max_bad_records].nil?
596
+ @schema = args[:schema] unless args[:schema].nil?
597
+ @source_format = args[:source_format] unless args[:source_format].nil?
598
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
599
+ end
600
+ end
601
+
602
+ #
603
+ class GetQueryResultsResponse
604
+ include Google::Apis::Core::Hashable
605
+
606
+ # Whether the query result was fetched from the query cache.
607
+ # Corresponds to the JSON property `cacheHit`
608
+ # @return [Boolean]
609
+ attr_accessor :cache_hit
610
+ alias_method :cache_hit?, :cache_hit
611
+
612
+ # [Output-only] All errors and warnings encountered during the running of the
613
+ # job. Errors here do not necessarily mean that the job has completed or was
614
+ # unsuccessful.
615
+ # Corresponds to the JSON property `errors`
616
+ # @return [Array<Google::Apis::BigqueryV2::ErrorProto>]
617
+ attr_accessor :errors
618
+
619
+ # A hash of this response.
620
+ # Corresponds to the JSON property `etag`
621
+ # @return [String]
622
+ attr_accessor :etag
623
+
624
+ # Whether the query has completed or not. If rows or totalRows are present, this
625
+ # will always be true. If this is false, totalRows will not be available.
626
+ # Corresponds to the JSON property `jobComplete`
627
+ # @return [Boolean]
628
+ attr_accessor :job_complete
629
+ alias_method :job_complete?, :job_complete
630
+
631
+ # Reference to the BigQuery Job that was created to run the query. This field
632
+ # will be present even if the original request timed out, in which case
633
+ # GetQueryResults can be used to read the results once the query has completed.
634
+ # Since this API only returns the first page of results, subsequent pages can be
635
+ # fetched via the same mechanism (GetQueryResults).
636
+ # Corresponds to the JSON property `jobReference`
637
+ # @return [Google::Apis::BigqueryV2::JobReference]
638
+ attr_accessor :job_reference
639
+
640
+ # The resource type of the response.
641
+ # Corresponds to the JSON property `kind`
642
+ # @return [String]
643
+ attr_accessor :kind
644
+
645
+ # A token used for paging results.
646
+ # Corresponds to the JSON property `pageToken`
647
+ # @return [String]
648
+ attr_accessor :page_token
649
+
650
+ # An object with as many results as can be contained within the maximum
651
+ # permitted reply size. To get any additional rows, you can call GetQueryResults
652
+ # and specify the jobReference returned above. Present only when the query
653
+ # completes successfully.
654
+ # Corresponds to the JSON property `rows`
655
+ # @return [Array<Google::Apis::BigqueryV2::TableRow>]
656
+ attr_accessor :rows
657
+
658
+ # The schema of the results. Present only when the query completes successfully.
659
+ # Corresponds to the JSON property `schema`
660
+ # @return [Google::Apis::BigqueryV2::TableSchema]
661
+ attr_accessor :schema
662
+
663
+ # The total number of bytes processed for this query.
664
+ # Corresponds to the JSON property `totalBytesProcessed`
665
+ # @return [String]
666
+ attr_accessor :total_bytes_processed
667
+
668
+ # The total number of rows in the complete query result set, which can be more
669
+ # than the number of rows in this single page of results. Present only when the
670
+ # query completes successfully.
671
+ # Corresponds to the JSON property `totalRows`
672
+ # @return [String]
673
+ attr_accessor :total_rows
674
+
675
+ def initialize(**args)
676
+ update!(**args)
677
+ end
678
+
679
+ # Update properties of this object
680
+ def update!(**args)
681
+ @cache_hit = args[:cache_hit] unless args[:cache_hit].nil?
682
+ @errors = args[:errors] unless args[:errors].nil?
683
+ @etag = args[:etag] unless args[:etag].nil?
684
+ @job_complete = args[:job_complete] unless args[:job_complete].nil?
685
+ @job_reference = args[:job_reference] unless args[:job_reference].nil?
686
+ @kind = args[:kind] unless args[:kind].nil?
687
+ @page_token = args[:page_token] unless args[:page_token].nil?
688
+ @rows = args[:rows] unless args[:rows].nil?
689
+ @schema = args[:schema] unless args[:schema].nil?
690
+ @total_bytes_processed = args[:total_bytes_processed] unless args[:total_bytes_processed].nil?
691
+ @total_rows = args[:total_rows] unless args[:total_rows].nil?
692
+ end
693
+ end
694
+
695
+ #
696
+ class Job
697
+ include Google::Apis::Core::Hashable
698
+
699
+ # [Required] Describes the job configuration.
700
+ # Corresponds to the JSON property `configuration`
701
+ # @return [Google::Apis::BigqueryV2::JobConfiguration]
702
+ attr_accessor :configuration
703
+
704
+ # [Output-only] A hash of this resource.
705
+ # Corresponds to the JSON property `etag`
706
+ # @return [String]
707
+ attr_accessor :etag
708
+
709
+ # [Output-only] Opaque ID field of the job
710
+ # Corresponds to the JSON property `id`
711
+ # @return [String]
712
+ attr_accessor :id
713
+
714
+ # [Optional] Reference describing the unique-per-user name of the job.
715
+ # Corresponds to the JSON property `jobReference`
716
+ # @return [Google::Apis::BigqueryV2::JobReference]
717
+ attr_accessor :job_reference
718
+
719
+ # [Output-only] The type of the resource.
720
+ # Corresponds to the JSON property `kind`
721
+ # @return [String]
722
+ attr_accessor :kind
723
+
724
+ # [Output-only] A URL that can be used to access this resource again.
725
+ # Corresponds to the JSON property `selfLink`
726
+ # @return [String]
727
+ attr_accessor :self_link
728
+
729
+ # [Output-only] Information about the job, including starting time and ending
730
+ # time of the job.
731
+ # Corresponds to the JSON property `statistics`
732
+ # @return [Google::Apis::BigqueryV2::JobStatistics]
733
+ attr_accessor :statistics
734
+
735
+ # [Output-only] The status of this job. Examine this value when polling an
736
+ # asynchronous job to see if the job is complete.
737
+ # Corresponds to the JSON property `status`
738
+ # @return [Google::Apis::BigqueryV2::JobStatus]
739
+ attr_accessor :status
740
+
741
+ # [Output-only] Email address of the user who ran the job.
742
+ # Corresponds to the JSON property `user_email`
743
+ # @return [String]
744
+ attr_accessor :user_email
745
+
746
+ def initialize(**args)
747
+ update!(**args)
748
+ end
749
+
750
+ # Update properties of this object
751
+ def update!(**args)
752
+ @configuration = args[:configuration] unless args[:configuration].nil?
753
+ @etag = args[:etag] unless args[:etag].nil?
754
+ @id = args[:id] unless args[:id].nil?
755
+ @job_reference = args[:job_reference] unless args[:job_reference].nil?
756
+ @kind = args[:kind] unless args[:kind].nil?
757
+ @self_link = args[:self_link] unless args[:self_link].nil?
758
+ @statistics = args[:statistics] unless args[:statistics].nil?
759
+ @status = args[:status] unless args[:status].nil?
760
+ @user_email = args[:user_email] unless args[:user_email].nil?
761
+ end
762
+ end
763
+
764
+ #
765
+ class CancelJobResponse
766
+ include Google::Apis::Core::Hashable
767
+
768
+ # The final state of the job.
769
+ # Corresponds to the JSON property `job`
770
+ # @return [Google::Apis::BigqueryV2::Job]
771
+ attr_accessor :job
772
+
773
+ # The resource type of the response.
774
+ # Corresponds to the JSON property `kind`
775
+ # @return [String]
776
+ attr_accessor :kind
777
+
778
+ def initialize(**args)
779
+ update!(**args)
780
+ end
781
+
782
+ # Update properties of this object
783
+ def update!(**args)
784
+ @job = args[:job] unless args[:job].nil?
785
+ @kind = args[:kind] unless args[:kind].nil?
786
+ end
787
+ end
788
+
789
+ #
790
+ class JobConfiguration
791
+ include Google::Apis::Core::Hashable
792
+
793
+ # [Pick one] Copies a table.
794
+ # Corresponds to the JSON property `copy`
795
+ # @return [Google::Apis::BigqueryV2::JobConfigurationTableCopy]
796
+ attr_accessor :copy
797
+
798
+ # [Optional] If set, don't actually run this job. A valid query will return a
799
+ # mostly empty response with some processing statistics, while an invalid query
800
+ # will return the same error it would if it wasn't a dry run. Behavior of non-
801
+ # query jobs is undefined.
802
+ # Corresponds to the JSON property `dryRun`
803
+ # @return [Boolean]
804
+ attr_accessor :dry_run
805
+ alias_method :dry_run?, :dry_run
806
+
807
+ # [Pick one] Configures an extract job.
808
+ # Corresponds to the JSON property `extract`
809
+ # @return [Google::Apis::BigqueryV2::JobConfigurationExtract]
810
+ attr_accessor :extract
811
+
812
+ # [Pick one] Configures a load job.
813
+ # Corresponds to the JSON property `load`
814
+ # @return [Google::Apis::BigqueryV2::JobConfigurationLoad]
815
+ attr_accessor :load
816
+
817
+ # [Pick one] Configures a query job.
818
+ # Corresponds to the JSON property `query`
819
+ # @return [Google::Apis::BigqueryV2::JobConfigurationQuery]
820
+ attr_accessor :query
821
+
822
+ def initialize(**args)
823
+ update!(**args)
824
+ end
825
+
826
+ # Update properties of this object
827
+ def update!(**args)
828
+ @copy = args[:copy] unless args[:copy].nil?
829
+ @dry_run = args[:dry_run] unless args[:dry_run].nil?
830
+ @extract = args[:extract] unless args[:extract].nil?
831
+ @load = args[:load] unless args[:load].nil?
832
+ @query = args[:query] unless args[:query].nil?
833
+ end
834
+ end
835
+
836
+ #
837
+ class JobConfigurationExtract
838
+ include Google::Apis::Core::Hashable
839
+
840
+ # [Optional] The compression type to use for exported files. Possible values
841
+ # include GZIP and NONE. The default value is NONE.
842
+ # Corresponds to the JSON property `compression`
843
+ # @return [String]
844
+ attr_accessor :compression
845
+
846
+ # [Optional] The exported file format. Possible values include CSV,
847
+ # NEWLINE_DELIMITED_JSON and AVRO. The default value is CSV. Tables with nested
848
+ # or repeated fields cannot be exported as CSV.
849
+ # Corresponds to the JSON property `destinationFormat`
850
+ # @return [String]
851
+ attr_accessor :destination_format
852
+
853
+ # [Pick one] DEPRECATED: Use destinationUris instead, passing only one URI as
854
+ # necessary. The fully-qualified Google Cloud Storage URI where the extracted
855
+ # table should be written.
856
+ # Corresponds to the JSON property `destinationUri`
857
+ # @return [String]
858
+ attr_accessor :destination_uri
859
+
860
+ # [Pick one] A list of fully-qualified Google Cloud Storage URIs where the
861
+ # extracted table should be written.
862
+ # Corresponds to the JSON property `destinationUris`
863
+ # @return [Array<String>]
864
+ attr_accessor :destination_uris
865
+
866
+ # [Optional] Delimiter to use between fields in the exported data. Default is ','
867
+ # Corresponds to the JSON property `fieldDelimiter`
868
+ # @return [String]
869
+ attr_accessor :field_delimiter
870
+
871
+ # [Optional] Whether to print out a header row in the results. Default is true.
872
+ # Corresponds to the JSON property `printHeader`
873
+ # @return [Boolean]
874
+ attr_accessor :print_header
875
+ alias_method :print_header?, :print_header
876
+
877
+ # [Required] A reference to the table being exported.
878
+ # Corresponds to the JSON property `sourceTable`
879
+ # @return [Google::Apis::BigqueryV2::TableReference]
880
+ attr_accessor :source_table
881
+
882
+ def initialize(**args)
883
+ update!(**args)
884
+ end
885
+
886
+ # Update properties of this object
887
+ def update!(**args)
888
+ @compression = args[:compression] unless args[:compression].nil?
889
+ @destination_format = args[:destination_format] unless args[:destination_format].nil?
890
+ @destination_uri = args[:destination_uri] unless args[:destination_uri].nil?
891
+ @destination_uris = args[:destination_uris] unless args[:destination_uris].nil?
892
+ @field_delimiter = args[:field_delimiter] unless args[:field_delimiter].nil?
893
+ @print_header = args[:print_header] unless args[:print_header].nil?
894
+ @source_table = args[:source_table] unless args[:source_table].nil?
895
+ end
896
+ end
897
+
898
+ #
899
+ class JobConfigurationLoad
900
+ include Google::Apis::Core::Hashable
901
+
902
+ # [Optional] Accept rows that are missing trailing optional columns. The missing
903
+ # values are treated as nulls. If false, records with missing trailing columns
904
+ # are treated as bad records, and if there are too many bad records, an invalid
905
+ # error is returned in the job result. The default value is false. Only
906
+ # applicable to CSV, ignored for other formats.
907
+ # Corresponds to the JSON property `allowJaggedRows`
908
+ # @return [Boolean]
909
+ attr_accessor :allow_jagged_rows
910
+ alias_method :allow_jagged_rows?, :allow_jagged_rows
911
+
912
+ # Indicates if BigQuery should allow quoted data sections that contain newline
913
+ # characters in a CSV file. The default value is false.
914
+ # Corresponds to the JSON property `allowQuotedNewlines`
915
+ # @return [Boolean]
916
+ attr_accessor :allow_quoted_newlines
917
+ alias_method :allow_quoted_newlines?, :allow_quoted_newlines
918
+
919
+ # [Optional] Specifies whether the job is allowed to create new tables. The
920
+ # following values are supported: CREATE_IF_NEEDED: If the table does not exist,
921
+ # BigQuery creates the table. CREATE_NEVER: The table must already exist. If it
922
+ # does not, a 'notFound' error is returned in the job result. The default value
923
+ # is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one
924
+ # atomic update upon job completion.
925
+ # Corresponds to the JSON property `createDisposition`
926
+ # @return [String]
927
+ attr_accessor :create_disposition
928
+
929
+ # [Required] The destination table to load the data into.
930
+ # Corresponds to the JSON property `destinationTable`
931
+ # @return [Google::Apis::BigqueryV2::TableReference]
932
+ attr_accessor :destination_table
933
+
934
+ # [Optional] The character encoding of the data. The supported values are UTF-8
935
+ # or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the
936
+ # raw, binary data has been split using the values of the quote and
937
+ # fieldDelimiter properties.
938
+ # Corresponds to the JSON property `encoding`
939
+ # @return [String]
940
+ attr_accessor :encoding
941
+
942
+ # [Optional] The separator for fields in a CSV file. The separator can be any
943
+ # ISO-8859-1 single-byte character. To use a character in the range 128-255, you
944
+ # must encode the character as UTF8. BigQuery converts the string to ISO-8859-1
945
+ # encoding, and then uses the first byte of the encoded string to split the data
946
+ # in its raw, binary state. BigQuery also supports the escape sequence "\t" to
947
+ # specify a tab separator. The default value is a comma (',').
948
+ # Corresponds to the JSON property `fieldDelimiter`
949
+ # @return [String]
950
+ attr_accessor :field_delimiter
951
+
952
+ # [Optional] Indicates if BigQuery should allow extra values that are not
953
+ # represented in the table schema. If true, the extra values are ignored. If
954
+ # false, records with extra columns are treated as bad records, and if there are
955
+ # too many bad records, an invalid error is returned in the job result. The
956
+ # default value is false. The sourceFormat property determines what BigQuery
957
+ # treats as an extra value: CSV: Trailing columns JSON: Named values that don't
958
+ # match any column names
959
+ # Corresponds to the JSON property `ignoreUnknownValues`
960
+ # @return [Boolean]
961
+ attr_accessor :ignore_unknown_values
962
+ alias_method :ignore_unknown_values?, :ignore_unknown_values
963
+
964
+ # [Optional] The maximum number of bad records that BigQuery can ignore when
965
+ # running the job. If the number of bad records exceeds this value, an invalid
966
+ # error is returned in the job result. The default value is 0, which requires
967
+ # that all records are valid.
968
+ # Corresponds to the JSON property `maxBadRecords`
969
+ # @return [Fixnum]
970
+ attr_accessor :max_bad_records
971
+
972
+ # [Experimental] If sourceFormat is set to "DATASTORE_BACKUP", indicates which
973
+ # entity properties to load into BigQuery from a Cloud Datastore backup.
974
+ # Property names are case sensitive and must be top-level properties. If no
975
+ # properties are specified, BigQuery loads all properties. If any named property
976
+ # isn't found in the Cloud Datastore backup, an invalid error is returned in the
977
+ # job result.
978
+ # Corresponds to the JSON property `projectionFields`
979
+ # @return [Array<String>]
980
+ attr_accessor :projection_fields
981
+
982
+ # [Optional] The value that is used to quote data sections in a CSV file.
983
+ # BigQuery converts the string to ISO-8859-1 encoding, and then uses the first
984
+ # byte of the encoded string to split the data in its raw, binary state. The
985
+ # default value is a double-quote ('"'). If your data does not contain quoted
986
+ # sections, set the property value to an empty string. If your data contains
987
+ # quoted newline characters, you must also set the allowQuotedNewlines property
988
+ # to true.
989
+ # Corresponds to the JSON property `quote`
990
+ # @return [String]
991
+ attr_accessor :quote
992
+
993
+ # [Optional] The schema for the destination table. The schema can be omitted if
994
+ # the destination table already exists, or if you're loading data from Google
995
+ # Cloud Datastore.
996
+ # Corresponds to the JSON property `schema`
997
+ # @return [Google::Apis::BigqueryV2::TableSchema]
998
+ attr_accessor :schema
999
+
1000
+ # [Deprecated] The inline schema. For CSV schemas, specify as "Field1:Type1[,
1001
+ # Field2:Type2]*". For example, "foo:STRING, bar:INTEGER, baz:FLOAT".
1002
+ # Corresponds to the JSON property `schemaInline`
1003
+ # @return [String]
1004
+ attr_accessor :schema_inline
1005
+
1006
+ # [Deprecated] The format of the schemaInline property.
1007
+ # Corresponds to the JSON property `schemaInlineFormat`
1008
+ # @return [String]
1009
+ attr_accessor :schema_inline_format
1010
+
1011
+ # [Optional] The number of rows at the top of a CSV file that BigQuery will skip
1012
+ # when loading the data. The default value is 0. This property is useful if you
1013
+ # have header rows in the file that should be skipped.
1014
+ # Corresponds to the JSON property `skipLeadingRows`
1015
+ # @return [Fixnum]
1016
+ attr_accessor :skip_leading_rows
1017
+
1018
+ # [Optional] The format of the data files. For CSV files, specify "CSV". For
1019
+ # datastore backups, specify "DATASTORE_BACKUP". For newline-delimited JSON,
1020
+ # specify "NEWLINE_DELIMITED_JSON". The default value is CSV.
1021
+ # Corresponds to the JSON property `sourceFormat`
1022
+ # @return [String]
1023
+ attr_accessor :source_format
1024
+
1025
+ # [Required] The fully-qualified URIs that point to your data in Google Cloud
1026
+ # Storage. Each URI can contain one '*' wildcard character and it must come
1027
+ # after the 'bucket' name.
1028
+ # Corresponds to the JSON property `sourceUris`
1029
+ # @return [Array<String>]
1030
+ attr_accessor :source_uris
1031
+
1032
+ # [Optional] Specifies the action that occurs if the destination table already
1033
+ # exists. The following values are supported: WRITE_TRUNCATE: If the table
1034
+ # already exists, BigQuery overwrites the table data. WRITE_APPEND: If the table
1035
+ # already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the
1036
+ # table already exists and contains data, a 'duplicate' error is returned in the
1037
+ # job result. The default value is WRITE_APPEND. Each action is atomic and only
1038
+ # occurs if BigQuery is able to complete the job successfully. Creation,
1039
+ # truncation and append actions occur as one atomic update upon job completion.
1040
+ # Corresponds to the JSON property `writeDisposition`
1041
+ # @return [String]
1042
+ attr_accessor :write_disposition
1043
+
1044
+ def initialize(**args)
1045
+ update!(**args)
1046
+ end
1047
+
1048
+ # Update properties of this object
1049
+ def update!(**args)
1050
+ @allow_jagged_rows = args[:allow_jagged_rows] unless args[:allow_jagged_rows].nil?
1051
+ @allow_quoted_newlines = args[:allow_quoted_newlines] unless args[:allow_quoted_newlines].nil?
1052
+ @create_disposition = args[:create_disposition] unless args[:create_disposition].nil?
1053
+ @destination_table = args[:destination_table] unless args[:destination_table].nil?
1054
+ @encoding = args[:encoding] unless args[:encoding].nil?
1055
+ @field_delimiter = args[:field_delimiter] unless args[:field_delimiter].nil?
1056
+ @ignore_unknown_values = args[:ignore_unknown_values] unless args[:ignore_unknown_values].nil?
1057
+ @max_bad_records = args[:max_bad_records] unless args[:max_bad_records].nil?
1058
+ @projection_fields = args[:projection_fields] unless args[:projection_fields].nil?
1059
+ @quote = args[:quote] unless args[:quote].nil?
1060
+ @schema = args[:schema] unless args[:schema].nil?
1061
+ @schema_inline = args[:schema_inline] unless args[:schema_inline].nil?
1062
+ @schema_inline_format = args[:schema_inline_format] unless args[:schema_inline_format].nil?
1063
+ @skip_leading_rows = args[:skip_leading_rows] unless args[:skip_leading_rows].nil?
1064
+ @source_format = args[:source_format] unless args[:source_format].nil?
1065
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
1066
+ @write_disposition = args[:write_disposition] unless args[:write_disposition].nil?
1067
+ end
1068
+ end
1069
+
1070
+ #
1071
+ class JobConfigurationQuery
1072
+ include Google::Apis::Core::Hashable
1073
+
1074
+ # If true, allows the query to produce arbitrarily large result tables at a
1075
+ # slight cost in performance. Requires destinationTable to be set.
1076
+ # Corresponds to the JSON property `allowLargeResults`
1077
+ # @return [Boolean]
1078
+ attr_accessor :allow_large_results
1079
+ alias_method :allow_large_results?, :allow_large_results
1080
+
1081
+ # [Optional] Specifies whether the job is allowed to create new tables. The
1082
+ # following values are supported: CREATE_IF_NEEDED: If the table does not exist,
1083
+ # BigQuery creates the table. CREATE_NEVER: The table must already exist. If it
1084
+ # does not, a 'notFound' error is returned in the job result. The default value
1085
+ # is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one
1086
+ # atomic update upon job completion.
1087
+ # Corresponds to the JSON property `createDisposition`
1088
+ # @return [String]
1089
+ attr_accessor :create_disposition
1090
+
1091
+ # [Optional] Specifies the default dataset to use for unqualified table names in
1092
+ # the query.
1093
+ # Corresponds to the JSON property `defaultDataset`
1094
+ # @return [Google::Apis::BigqueryV2::DatasetReference]
1095
+ attr_accessor :default_dataset
1096
+
1097
+ # [Optional] Describes the table where the query results should be stored. If
1098
+ # not present, a new table will be created to store the results.
1099
+ # Corresponds to the JSON property `destinationTable`
1100
+ # @return [Google::Apis::BigqueryV2::TableReference]
1101
+ attr_accessor :destination_table
1102
+
1103
+ # [Optional] Flattens all nested and repeated fields in the query results. The
1104
+ # default value is true. allowLargeResults must be true if this is set to false.
1105
+ # Corresponds to the JSON property `flattenResults`
1106
+ # @return [Boolean]
1107
+ attr_accessor :flatten_results
1108
+ alias_method :flatten_results?, :flatten_results
1109
+
1110
+ # [Optional] Limits the billing tier for this job. Queries that have resource
1111
+ # usage beyond this tier will fail (without incurring a charge). If unspecified,
1112
+ # this will be set to your project default.
1113
+ # Corresponds to the JSON property `maximumBillingTier`
1114
+ # @return [Fixnum]
1115
+ attr_accessor :maximum_billing_tier
1116
+
1117
+ # [Deprecated] This property is deprecated.
1118
+ # Corresponds to the JSON property `preserveNulls`
1119
+ # @return [Boolean]
1120
+ attr_accessor :preserve_nulls
1121
+ alias_method :preserve_nulls?, :preserve_nulls
1122
+
1123
+ # [Optional] Specifies a priority for the query. Possible values include
1124
+ # INTERACTIVE and BATCH. The default value is INTERACTIVE.
1125
+ # Corresponds to the JSON property `priority`
1126
+ # @return [String]
1127
+ attr_accessor :priority
1128
+
1129
+ # [Required] BigQuery SQL query to execute.
1130
+ # Corresponds to the JSON property `query`
1131
+ # @return [String]
1132
+ attr_accessor :query
1133
+
1134
+ # [Experimental] If querying an external data source outside of BigQuery,
1135
+ # describes the data format, location and other properties of the data source.
1136
+ # By defining these properties, the data source can then be queried as if it
1137
+ # were a standard BigQuery table.
1138
+ # Corresponds to the JSON property `tableDefinitions`
1139
+ # @return [Hash<String,Google::Apis::BigqueryV2::ExternalDataConfiguration>]
1140
+ attr_accessor :table_definitions
1141
+
1142
+ # [Optional] Whether to look for the result in the query cache. The query cache
1143
+ # is a best-effort cache that will be flushed whenever tables in the query are
1144
+ # modified. Moreover, the query cache is only available when a query does not
1145
+ # have a destination table specified. The default value is true.
1146
+ # Corresponds to the JSON property `useQueryCache`
1147
+ # @return [Boolean]
1148
+ attr_accessor :use_query_cache
1149
+ alias_method :use_query_cache?, :use_query_cache
1150
+
1151
+ # [Experimental] Describes user-defined function resources used in the query.
1152
+ # Corresponds to the JSON property `userDefinedFunctionResources`
1153
+ # @return [Array<Google::Apis::BigqueryV2::UserDefinedFunctionResource>]
1154
+ attr_accessor :user_defined_function_resources
1155
+
1156
+ # [Optional] Specifies the action that occurs if the destination table already
1157
+ # exists. The following values are supported: WRITE_TRUNCATE: If the table
1158
+ # already exists, BigQuery overwrites the table data. WRITE_APPEND: If the table
1159
+ # already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the
1160
+ # table already exists and contains data, a 'duplicate' error is returned in the
1161
+ # job result. The default value is WRITE_EMPTY. Each action is atomic and only
1162
+ # occurs if BigQuery is able to complete the job successfully. Creation,
1163
+ # truncation and append actions occur as one atomic update upon job completion.
1164
+ # Corresponds to the JSON property `writeDisposition`
1165
+ # @return [String]
1166
+ attr_accessor :write_disposition
1167
+
1168
+ def initialize(**args)
1169
+ update!(**args)
1170
+ end
1171
+
1172
+ # Update properties of this object
1173
+ def update!(**args)
1174
+ @allow_large_results = args[:allow_large_results] unless args[:allow_large_results].nil?
1175
+ @create_disposition = args[:create_disposition] unless args[:create_disposition].nil?
1176
+ @default_dataset = args[:default_dataset] unless args[:default_dataset].nil?
1177
+ @destination_table = args[:destination_table] unless args[:destination_table].nil?
1178
+ @flatten_results = args[:flatten_results] unless args[:flatten_results].nil?
1179
+ @maximum_billing_tier = args[:maximum_billing_tier] unless args[:maximum_billing_tier].nil?
1180
+ @preserve_nulls = args[:preserve_nulls] unless args[:preserve_nulls].nil?
1181
+ @priority = args[:priority] unless args[:priority].nil?
1182
+ @query = args[:query] unless args[:query].nil?
1183
+ @table_definitions = args[:table_definitions] unless args[:table_definitions].nil?
1184
+ @use_query_cache = args[:use_query_cache] unless args[:use_query_cache].nil?
1185
+ @user_defined_function_resources = args[:user_defined_function_resources] unless args[:user_defined_function_resources].nil?
1186
+ @write_disposition = args[:write_disposition] unless args[:write_disposition].nil?
1187
+ end
1188
+ end
1189
+
1190
+ #
1191
+ class JobConfigurationTableCopy
1192
+ include Google::Apis::Core::Hashable
1193
+
1194
+ # [Optional] Specifies whether the job is allowed to create new tables. The
1195
+ # following values are supported: CREATE_IF_NEEDED: If the table does not exist,
1196
+ # BigQuery creates the table. CREATE_NEVER: The table must already exist. If it
1197
+ # does not, a 'notFound' error is returned in the job result. The default value
1198
+ # is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one
1199
+ # atomic update upon job completion.
1200
+ # Corresponds to the JSON property `createDisposition`
1201
+ # @return [String]
1202
+ attr_accessor :create_disposition
1203
+
1204
+ # [Required] The destination table
1205
+ # Corresponds to the JSON property `destinationTable`
1206
+ # @return [Google::Apis::BigqueryV2::TableReference]
1207
+ attr_accessor :destination_table
1208
+
1209
+ # [Pick one] Source table to copy.
1210
+ # Corresponds to the JSON property `sourceTable`
1211
+ # @return [Google::Apis::BigqueryV2::TableReference]
1212
+ attr_accessor :source_table
1213
+
1214
+ # [Pick one] Source tables to copy.
1215
+ # Corresponds to the JSON property `sourceTables`
1216
+ # @return [Array<Google::Apis::BigqueryV2::TableReference>]
1217
+ attr_accessor :source_tables
1218
+
1219
+ # [Optional] Specifies the action that occurs if the destination table already
1220
+ # exists. The following values are supported: WRITE_TRUNCATE: If the table
1221
+ # already exists, BigQuery overwrites the table data. WRITE_APPEND: If the table
1222
+ # already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the
1223
+ # table already exists and contains data, a 'duplicate' error is returned in the
1224
+ # job result. The default value is WRITE_EMPTY. Each action is atomic and only
1225
+ # occurs if BigQuery is able to complete the job successfully. Creation,
1226
+ # truncation and append actions occur as one atomic update upon job completion.
1227
+ # Corresponds to the JSON property `writeDisposition`
1228
+ # @return [String]
1229
+ attr_accessor :write_disposition
1230
+
1231
+ def initialize(**args)
1232
+ update!(**args)
1233
+ end
1234
+
1235
+ # Update properties of this object
1236
+ def update!(**args)
1237
+ @create_disposition = args[:create_disposition] unless args[:create_disposition].nil?
1238
+ @destination_table = args[:destination_table] unless args[:destination_table].nil?
1239
+ @source_table = args[:source_table] unless args[:source_table].nil?
1240
+ @source_tables = args[:source_tables] unless args[:source_tables].nil?
1241
+ @write_disposition = args[:write_disposition] unless args[:write_disposition].nil?
1242
+ end
1243
+ end
1244
+
1245
+ #
1246
+ class JobList
1247
+ include Google::Apis::Core::Hashable
1248
+
1249
+ # A hash of this page of results.
1250
+ # Corresponds to the JSON property `etag`
1251
+ # @return [String]
1252
+ attr_accessor :etag
1253
+
1254
+ # List of jobs that were requested.
1255
+ # Corresponds to the JSON property `jobs`
1256
+ # @return [Array<Google::Apis::BigqueryV2::JobList::Job>]
1257
+ attr_accessor :jobs
1258
+
1259
+ # The resource type of the response.
1260
+ # Corresponds to the JSON property `kind`
1261
+ # @return [String]
1262
+ attr_accessor :kind
1263
+
1264
+ # A token to request the next page of results.
1265
+ # Corresponds to the JSON property `nextPageToken`
1266
+ # @return [String]
1267
+ attr_accessor :next_page_token
1268
+
1269
+ def initialize(**args)
1270
+ update!(**args)
1271
+ end
1272
+
1273
+ # Update properties of this object
1274
+ def update!(**args)
1275
+ @etag = args[:etag] unless args[:etag].nil?
1276
+ @jobs = args[:jobs] unless args[:jobs].nil?
1277
+ @kind = args[:kind] unless args[:kind].nil?
1278
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1279
+ end
1280
+
1281
+ #
1282
+ class Job
1283
+ include Google::Apis::Core::Hashable
1284
+
1285
+ # [Full-projection-only] Specifies the job configuration.
1286
+ # Corresponds to the JSON property `configuration`
1287
+ # @return [Google::Apis::BigqueryV2::JobConfiguration]
1288
+ attr_accessor :configuration
1289
+
1290
+ # A result object that will be present only if the job has failed.
1291
+ # Corresponds to the JSON property `errorResult`
1292
+ # @return [Google::Apis::BigqueryV2::ErrorProto]
1293
+ attr_accessor :error_result
1294
+
1295
+ # Unique opaque ID of the job.
1296
+ # Corresponds to the JSON property `id`
1297
+ # @return [String]
1298
+ attr_accessor :id
1299
+
1300
+ # Job reference uniquely identifying the job.
1301
+ # Corresponds to the JSON property `jobReference`
1302
+ # @return [Google::Apis::BigqueryV2::JobReference]
1303
+ attr_accessor :job_reference
1304
+
1305
+ # The resource type.
1306
+ # Corresponds to the JSON property `kind`
1307
+ # @return [String]
1308
+ attr_accessor :kind
1309
+
1310
+ # Running state of the job. When the state is DONE, errorResult can be checked
1311
+ # to determine whether the job succeeded or failed.
1312
+ # Corresponds to the JSON property `state`
1313
+ # @return [String]
1314
+ attr_accessor :state
1315
+
1316
+ # [Output-only] Information about the job, including starting time and ending
1317
+ # time of the job.
1318
+ # Corresponds to the JSON property `statistics`
1319
+ # @return [Google::Apis::BigqueryV2::JobStatistics]
1320
+ attr_accessor :statistics
1321
+
1322
+ # [Full-projection-only] Describes the state of the job.
1323
+ # Corresponds to the JSON property `status`
1324
+ # @return [Google::Apis::BigqueryV2::JobStatus]
1325
+ attr_accessor :status
1326
+
1327
+ # [Full-projection-only] Email address of the user who ran the job.
1328
+ # Corresponds to the JSON property `user_email`
1329
+ # @return [String]
1330
+ attr_accessor :user_email
1331
+
1332
+ def initialize(**args)
1333
+ update!(**args)
1334
+ end
1335
+
1336
+ # Update properties of this object
1337
+ def update!(**args)
1338
+ @configuration = args[:configuration] unless args[:configuration].nil?
1339
+ @error_result = args[:error_result] unless args[:error_result].nil?
1340
+ @id = args[:id] unless args[:id].nil?
1341
+ @job_reference = args[:job_reference] unless args[:job_reference].nil?
1342
+ @kind = args[:kind] unless args[:kind].nil?
1343
+ @state = args[:state] unless args[:state].nil?
1344
+ @statistics = args[:statistics] unless args[:statistics].nil?
1345
+ @status = args[:status] unless args[:status].nil?
1346
+ @user_email = args[:user_email] unless args[:user_email].nil?
1347
+ end
1348
+ end
1349
+ end
1350
+
1351
+ #
1352
+ class JobReference
1353
+ include Google::Apis::Core::Hashable
1354
+
1355
+ # [Required] The ID of the job. The ID must contain only letters (a-z, A-Z),
1356
+ # numbers (0-9), underscores (_), or dashes (-). The maximum length is 1,024
1357
+ # characters.
1358
+ # Corresponds to the JSON property `jobId`
1359
+ # @return [String]
1360
+ attr_accessor :job_id
1361
+
1362
+ # [Required] The ID of the project containing this job.
1363
+ # Corresponds to the JSON property `projectId`
1364
+ # @return [String]
1365
+ attr_accessor :project_id
1366
+
1367
+ def initialize(**args)
1368
+ update!(**args)
1369
+ end
1370
+
1371
+ # Update properties of this object
1372
+ def update!(**args)
1373
+ @job_id = args[:job_id] unless args[:job_id].nil?
1374
+ @project_id = args[:project_id] unless args[:project_id].nil?
1375
+ end
1376
+ end
1377
+
1378
+ #
1379
+ class JobStatistics
1380
+ include Google::Apis::Core::Hashable
1381
+
1382
+ # [Output-only] Creation time of this job, in milliseconds since the epoch. This
1383
+ # field will be present on all jobs.
1384
+ # Corresponds to the JSON property `creationTime`
1385
+ # @return [String]
1386
+ attr_accessor :creation_time
1387
+
1388
+ # [Output-only] End time of this job, in milliseconds since the epoch. This
1389
+ # field will be present whenever a job is in the DONE state.
1390
+ # Corresponds to the JSON property `endTime`
1391
+ # @return [String]
1392
+ attr_accessor :end_time
1393
+
1394
+ # [Output-only] Statistics for an extract job.
1395
+ # Corresponds to the JSON property `extract`
1396
+ # @return [Google::Apis::BigqueryV2::JobStatistics4]
1397
+ attr_accessor :extract
1398
+
1399
+ # [Output-only] Statistics for a load job.
1400
+ # Corresponds to the JSON property `load`
1401
+ # @return [Google::Apis::BigqueryV2::JobStatistics3]
1402
+ attr_accessor :load
1403
+
1404
+ # [Output-only] Statistics for a query job.
1405
+ # Corresponds to the JSON property `query`
1406
+ # @return [Google::Apis::BigqueryV2::JobStatistics2]
1407
+ attr_accessor :query
1408
+
1409
+ # [Output-only] Start time of this job, in milliseconds since the epoch. This
1410
+ # field will be present when the job transitions from the PENDING state to
1411
+ # either RUNNING or DONE.
1412
+ # Corresponds to the JSON property `startTime`
1413
+ # @return [String]
1414
+ attr_accessor :start_time
1415
+
1416
+ # [Output-only] [Deprecated] Use the bytes processed in the query statistics
1417
+ # instead.
1418
+ # Corresponds to the JSON property `totalBytesProcessed`
1419
+ # @return [String]
1420
+ attr_accessor :total_bytes_processed
1421
+
1422
+ def initialize(**args)
1423
+ update!(**args)
1424
+ end
1425
+
1426
+ # Update properties of this object
1427
+ def update!(**args)
1428
+ @creation_time = args[:creation_time] unless args[:creation_time].nil?
1429
+ @end_time = args[:end_time] unless args[:end_time].nil?
1430
+ @extract = args[:extract] unless args[:extract].nil?
1431
+ @load = args[:load] unless args[:load].nil?
1432
+ @query = args[:query] unless args[:query].nil?
1433
+ @start_time = args[:start_time] unless args[:start_time].nil?
1434
+ @total_bytes_processed = args[:total_bytes_processed] unless args[:total_bytes_processed].nil?
1435
+ end
1436
+ end
1437
+
1438
+ #
1439
+ class JobStatistics2
1440
+ include Google::Apis::Core::Hashable
1441
+
1442
+ # [Output-only] Billing tier for the job.
1443
+ # Corresponds to the JSON property `billingTier`
1444
+ # @return [Fixnum]
1445
+ attr_accessor :billing_tier
1446
+
1447
+ # [Output-only] Whether the query result was fetched from the query cache.
1448
+ # Corresponds to the JSON property `cacheHit`
1449
+ # @return [Boolean]
1450
+ attr_accessor :cache_hit
1451
+ alias_method :cache_hit?, :cache_hit
1452
+
1453
+ # [Output-only, Experimental] Describes execution plan for the query as a list
1454
+ # of stages.
1455
+ # Corresponds to the JSON property `queryPlan`
1456
+ # @return [Array<Google::Apis::BigqueryV2::ExplainQueryStage>]
1457
+ attr_accessor :query_plan
1458
+
1459
+ # [Output-only] Total bytes billed for the job.
1460
+ # Corresponds to the JSON property `totalBytesBilled`
1461
+ # @return [String]
1462
+ attr_accessor :total_bytes_billed
1463
+
1464
+ # [Output-only] Total bytes processed for the job.
1465
+ # Corresponds to the JSON property `totalBytesProcessed`
1466
+ # @return [String]
1467
+ attr_accessor :total_bytes_processed
1468
+
1469
+ def initialize(**args)
1470
+ update!(**args)
1471
+ end
1472
+
1473
+ # Update properties of this object
1474
+ def update!(**args)
1475
+ @billing_tier = args[:billing_tier] unless args[:billing_tier].nil?
1476
+ @cache_hit = args[:cache_hit] unless args[:cache_hit].nil?
1477
+ @query_plan = args[:query_plan] unless args[:query_plan].nil?
1478
+ @total_bytes_billed = args[:total_bytes_billed] unless args[:total_bytes_billed].nil?
1479
+ @total_bytes_processed = args[:total_bytes_processed] unless args[:total_bytes_processed].nil?
1480
+ end
1481
+ end
1482
+
1483
+ #
1484
+ class JobStatistics3
1485
+ include Google::Apis::Core::Hashable
1486
+
1487
+ # [Output-only] Number of bytes of source data in a load job.
1488
+ # Corresponds to the JSON property `inputFileBytes`
1489
+ # @return [String]
1490
+ attr_accessor :input_file_bytes
1491
+
1492
+ # [Output-only] Number of source files in a load job.
1493
+ # Corresponds to the JSON property `inputFiles`
1494
+ # @return [String]
1495
+ attr_accessor :input_files
1496
+
1497
+ # [Output-only] Size of the loaded data in bytes. Note that while a load job is
1498
+ # in the running state, this value may change.
1499
+ # Corresponds to the JSON property `outputBytes`
1500
+ # @return [String]
1501
+ attr_accessor :output_bytes
1502
+
1503
+ # [Output-only] Number of rows imported in a load job. Note that while an import
1504
+ # job is in the running state, this value may change.
1505
+ # Corresponds to the JSON property `outputRows`
1506
+ # @return [String]
1507
+ attr_accessor :output_rows
1508
+
1509
+ def initialize(**args)
1510
+ update!(**args)
1511
+ end
1512
+
1513
+ # Update properties of this object
1514
+ def update!(**args)
1515
+ @input_file_bytes = args[:input_file_bytes] unless args[:input_file_bytes].nil?
1516
+ @input_files = args[:input_files] unless args[:input_files].nil?
1517
+ @output_bytes = args[:output_bytes] unless args[:output_bytes].nil?
1518
+ @output_rows = args[:output_rows] unless args[:output_rows].nil?
1519
+ end
1520
+ end
1521
+
1522
+ #
1523
+ class JobStatistics4
1524
+ include Google::Apis::Core::Hashable
1525
+
1526
+ # [Output-only] Number of files per destination URI or URI pattern specified in
1527
+ # the extract configuration. These values will be in the same order as the URIs
1528
+ # specified in the 'destinationUris' field.
1529
+ # Corresponds to the JSON property `destinationUriFileCounts`
1530
+ # @return [Array<String>]
1531
+ attr_accessor :destination_uri_file_counts
1532
+
1533
+ def initialize(**args)
1534
+ update!(**args)
1535
+ end
1536
+
1537
+ # Update properties of this object
1538
+ def update!(**args)
1539
+ @destination_uri_file_counts = args[:destination_uri_file_counts] unless args[:destination_uri_file_counts].nil?
1540
+ end
1541
+ end
1542
+
1543
+ #
1544
+ class JobStatus
1545
+ include Google::Apis::Core::Hashable
1546
+
1547
+ # [Output-only] Final error result of the job. If present, indicates that the
1548
+ # job has completed and was unsuccessful.
1549
+ # Corresponds to the JSON property `errorResult`
1550
+ # @return [Google::Apis::BigqueryV2::ErrorProto]
1551
+ attr_accessor :error_result
1552
+
1553
+ # [Output-only] All errors encountered during the running of the job. Errors
1554
+ # here do not necessarily mean that the job has completed or was unsuccessful.
1555
+ # Corresponds to the JSON property `errors`
1556
+ # @return [Array<Google::Apis::BigqueryV2::ErrorProto>]
1557
+ attr_accessor :errors
1558
+
1559
+ # [Output-only] Running state of the job.
1560
+ # Corresponds to the JSON property `state`
1561
+ # @return [String]
1562
+ attr_accessor :state
1563
+
1564
+ def initialize(**args)
1565
+ update!(**args)
1566
+ end
1567
+
1568
+ # Update properties of this object
1569
+ def update!(**args)
1570
+ @error_result = args[:error_result] unless args[:error_result].nil?
1571
+ @errors = args[:errors] unless args[:errors].nil?
1572
+ @state = args[:state] unless args[:state].nil?
1573
+ end
1574
+ end
1575
+
1576
+ #
1577
+ class ProjectList
1578
+ include Google::Apis::Core::Hashable
1579
+
1580
+ # A hash of the page of results
1581
+ # Corresponds to the JSON property `etag`
1582
+ # @return [String]
1583
+ attr_accessor :etag
1584
+
1585
+ # The type of list.
1586
+ # Corresponds to the JSON property `kind`
1587
+ # @return [String]
1588
+ attr_accessor :kind
1589
+
1590
+ # A token to request the next page of results.
1591
+ # Corresponds to the JSON property `nextPageToken`
1592
+ # @return [String]
1593
+ attr_accessor :next_page_token
1594
+
1595
+ # Projects to which you have at least READ access.
1596
+ # Corresponds to the JSON property `projects`
1597
+ # @return [Array<Google::Apis::BigqueryV2::ProjectList::Project>]
1598
+ attr_accessor :projects
1599
+
1600
+ # The total number of projects in the list.
1601
+ # Corresponds to the JSON property `totalItems`
1602
+ # @return [Fixnum]
1603
+ attr_accessor :total_items
1604
+
1605
+ def initialize(**args)
1606
+ update!(**args)
1607
+ end
1608
+
1609
+ # Update properties of this object
1610
+ def update!(**args)
1611
+ @etag = args[:etag] unless args[:etag].nil?
1612
+ @kind = args[:kind] unless args[:kind].nil?
1613
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1614
+ @projects = args[:projects] unless args[:projects].nil?
1615
+ @total_items = args[:total_items] unless args[:total_items].nil?
1616
+ end
1617
+
1618
+ #
1619
+ class Project
1620
+ include Google::Apis::Core::Hashable
1621
+
1622
+ # A descriptive name for this project.
1623
+ # Corresponds to the JSON property `friendlyName`
1624
+ # @return [String]
1625
+ attr_accessor :friendly_name
1626
+
1627
+ # An opaque ID of this project.
1628
+ # Corresponds to the JSON property `id`
1629
+ # @return [String]
1630
+ attr_accessor :id
1631
+
1632
+ # The resource type.
1633
+ # Corresponds to the JSON property `kind`
1634
+ # @return [String]
1635
+ attr_accessor :kind
1636
+
1637
+ # The numeric ID of this project.
1638
+ # Corresponds to the JSON property `numericId`
1639
+ # @return [String]
1640
+ attr_accessor :numeric_id
1641
+
1642
+ # A unique reference to this project.
1643
+ # Corresponds to the JSON property `projectReference`
1644
+ # @return [Google::Apis::BigqueryV2::ProjectReference]
1645
+ attr_accessor :project_reference
1646
+
1647
+ def initialize(**args)
1648
+ update!(**args)
1649
+ end
1650
+
1651
+ # Update properties of this object
1652
+ def update!(**args)
1653
+ @friendly_name = args[:friendly_name] unless args[:friendly_name].nil?
1654
+ @id = args[:id] unless args[:id].nil?
1655
+ @kind = args[:kind] unless args[:kind].nil?
1656
+ @numeric_id = args[:numeric_id] unless args[:numeric_id].nil?
1657
+ @project_reference = args[:project_reference] unless args[:project_reference].nil?
1658
+ end
1659
+ end
1660
+ end
1661
+
1662
+ #
1663
+ class ProjectReference
1664
+ include Google::Apis::Core::Hashable
1665
+
1666
+ # [Required] ID of the project. Can be either the numeric ID or the assigned ID
1667
+ # of the project.
1668
+ # Corresponds to the JSON property `projectId`
1669
+ # @return [String]
1670
+ attr_accessor :project_id
1671
+
1672
+ def initialize(**args)
1673
+ update!(**args)
1674
+ end
1675
+
1676
+ # Update properties of this object
1677
+ def update!(**args)
1678
+ @project_id = args[:project_id] unless args[:project_id].nil?
1679
+ end
1680
+ end
1681
+
1682
+ #
1683
+ class QueryRequest
1684
+ include Google::Apis::Core::Hashable
1685
+
1686
+ # [Optional] Specifies the default datasetId and projectId to assume for any
1687
+ # unqualified table names in the query. If not set, all table names in the query
1688
+ # string must be qualified in the format 'datasetId.tableId'.
1689
+ # Corresponds to the JSON property `defaultDataset`
1690
+ # @return [Google::Apis::BigqueryV2::DatasetReference]
1691
+ attr_accessor :default_dataset
1692
+
1693
+ # [Optional] If set to true, BigQuery doesn't run the job. Instead, if the query
1694
+ # is valid, BigQuery returns statistics about the job such as how many bytes
1695
+ # would be processed. If the query is invalid, an error returns. The default
1696
+ # value is false.
1697
+ # Corresponds to the JSON property `dryRun`
1698
+ # @return [Boolean]
1699
+ attr_accessor :dry_run
1700
+ alias_method :dry_run?, :dry_run
1701
+
1702
+ # The resource type of the request.
1703
+ # Corresponds to the JSON property `kind`
1704
+ # @return [String]
1705
+ attr_accessor :kind
1706
+
1707
+ # [Optional] The maximum number of rows of data to return per page of results.
1708
+ # Setting this flag to a small value such as 1000 and then paging through
1709
+ # results might improve reliability when the query result set is large. In
1710
+ # addition to this limit, responses are also limited to 10 MB. By default, there
1711
+ # is no maximum row count, and only the byte limit applies.
1712
+ # Corresponds to the JSON property `maxResults`
1713
+ # @return [Fixnum]
1714
+ attr_accessor :max_results
1715
+
1716
+ # [Deprecated] This property is deprecated.
1717
+ # Corresponds to the JSON property `preserveNulls`
1718
+ # @return [Boolean]
1719
+ attr_accessor :preserve_nulls
1720
+ alias_method :preserve_nulls?, :preserve_nulls
1721
+
1722
+ # [Required] A query string, following the BigQuery query syntax, of the query
1723
+ # to execute. Example: "SELECT count(f1) FROM [myProjectId:myDatasetId.myTableId]
1724
+ # ".
1725
+ # Corresponds to the JSON property `query`
1726
+ # @return [String]
1727
+ attr_accessor :query
1728
+
1729
+ # [Optional] How long to wait for the query to complete, in milliseconds, before
1730
+ # the request times out and returns. Note that this is only a timeout for the
1731
+ # request, not the query. If the query takes longer to run than the timeout
1732
+ # value, the call returns without any results and with the 'jobComplete' flag
1733
+ # set to false. You can call GetQueryResults() to wait for the query to complete
1734
+ # and read the results. The default value is 10000 milliseconds (10 seconds).
1735
+ # Corresponds to the JSON property `timeoutMs`
1736
+ # @return [Fixnum]
1737
+ attr_accessor :timeout_ms
1738
+
1739
+ # [Optional] Whether to look for the result in the query cache. The query cache
1740
+ # is a best-effort cache that will be flushed whenever tables in the query are
1741
+ # modified. The default value is true.
1742
+ # Corresponds to the JSON property `useQueryCache`
1743
+ # @return [Boolean]
1744
+ attr_accessor :use_query_cache
1745
+ alias_method :use_query_cache?, :use_query_cache
1746
+
1747
+ def initialize(**args)
1748
+ update!(**args)
1749
+ end
1750
+
1751
+ # Update properties of this object
1752
+ def update!(**args)
1753
+ @default_dataset = args[:default_dataset] unless args[:default_dataset].nil?
1754
+ @dry_run = args[:dry_run] unless args[:dry_run].nil?
1755
+ @kind = args[:kind] unless args[:kind].nil?
1756
+ @max_results = args[:max_results] unless args[:max_results].nil?
1757
+ @preserve_nulls = args[:preserve_nulls] unless args[:preserve_nulls].nil?
1758
+ @query = args[:query] unless args[:query].nil?
1759
+ @timeout_ms = args[:timeout_ms] unless args[:timeout_ms].nil?
1760
+ @use_query_cache = args[:use_query_cache] unless args[:use_query_cache].nil?
1761
+ end
1762
+ end
1763
+
1764
+ #
1765
+ class QueryResponse
1766
+ include Google::Apis::Core::Hashable
1767
+
1768
+ # Whether the query result was fetched from the query cache.
1769
+ # Corresponds to the JSON property `cacheHit`
1770
+ # @return [Boolean]
1771
+ attr_accessor :cache_hit
1772
+ alias_method :cache_hit?, :cache_hit
1773
+
1774
+ # [Output-only] All errors and warnings encountered during the running of the
1775
+ # job. Errors here do not necessarily mean that the job has completed or was
1776
+ # unsuccessful.
1777
+ # Corresponds to the JSON property `errors`
1778
+ # @return [Array<Google::Apis::BigqueryV2::ErrorProto>]
1779
+ attr_accessor :errors
1780
+
1781
+ # Whether the query has completed or not. If rows or totalRows are present, this
1782
+ # will always be true. If this is false, totalRows will not be available.
1783
+ # Corresponds to the JSON property `jobComplete`
1784
+ # @return [Boolean]
1785
+ attr_accessor :job_complete
1786
+ alias_method :job_complete?, :job_complete
1787
+
1788
+ # Reference to the Job that was created to run the query. This field will be
1789
+ # present even if the original request timed out, in which case GetQueryResults
1790
+ # can be used to read the results once the query has completed. Since this API
1791
+ # only returns the first page of results, subsequent pages can be fetched via
1792
+ # the same mechanism (GetQueryResults).
1793
+ # Corresponds to the JSON property `jobReference`
1794
+ # @return [Google::Apis::BigqueryV2::JobReference]
1795
+ attr_accessor :job_reference
1796
+
1797
+ # The resource type.
1798
+ # Corresponds to the JSON property `kind`
1799
+ # @return [String]
1800
+ attr_accessor :kind
1801
+
1802
+ # A token used for paging results.
1803
+ # Corresponds to the JSON property `pageToken`
1804
+ # @return [String]
1805
+ attr_accessor :page_token
1806
+
1807
+ # An object with as many results as can be contained within the maximum
1808
+ # permitted reply size. To get any additional rows, you can call GetQueryResults
1809
+ # and specify the jobReference returned above.
1810
+ # Corresponds to the JSON property `rows`
1811
+ # @return [Array<Google::Apis::BigqueryV2::TableRow>]
1812
+ attr_accessor :rows
1813
+
1814
+ # The schema of the results. Present only when the query completes successfully.
1815
+ # Corresponds to the JSON property `schema`
1816
+ # @return [Google::Apis::BigqueryV2::TableSchema]
1817
+ attr_accessor :schema
1818
+
1819
+ # The total number of bytes processed for this query. If this query was a dry
1820
+ # run, this is the number of bytes that would be processed if the query were run.
1821
+ # Corresponds to the JSON property `totalBytesProcessed`
1822
+ # @return [String]
1823
+ attr_accessor :total_bytes_processed
1824
+
1825
+ # The total number of rows in the complete query result set, which can be more
1826
+ # than the number of rows in this single page of results.
1827
+ # Corresponds to the JSON property `totalRows`
1828
+ # @return [String]
1829
+ attr_accessor :total_rows
1830
+
1831
+ def initialize(**args)
1832
+ update!(**args)
1833
+ end
1834
+
1835
+ # Update properties of this object
1836
+ def update!(**args)
1837
+ @cache_hit = args[:cache_hit] unless args[:cache_hit].nil?
1838
+ @errors = args[:errors] unless args[:errors].nil?
1839
+ @job_complete = args[:job_complete] unless args[:job_complete].nil?
1840
+ @job_reference = args[:job_reference] unless args[:job_reference].nil?
1841
+ @kind = args[:kind] unless args[:kind].nil?
1842
+ @page_token = args[:page_token] unless args[:page_token].nil?
1843
+ @rows = args[:rows] unless args[:rows].nil?
1844
+ @schema = args[:schema] unless args[:schema].nil?
1845
+ @total_bytes_processed = args[:total_bytes_processed] unless args[:total_bytes_processed].nil?
1846
+ @total_rows = args[:total_rows] unless args[:total_rows].nil?
1847
+ end
1848
+ end
1849
+
1850
+ #
1851
+ class Streamingbuffer
1852
+ include Google::Apis::Core::Hashable
1853
+
1854
+ # [Output-only] A lower-bound estimate of the number of bytes currently in the
1855
+ # streaming buffer.
1856
+ # Corresponds to the JSON property `estimatedBytes`
1857
+ # @return [String]
1858
+ attr_accessor :estimated_bytes
1859
+
1860
+ # [Output-only] A lower-bound estimate of the number of rows currently in the
1861
+ # streaming buffer.
1862
+ # Corresponds to the JSON property `estimatedRows`
1863
+ # @return [String]
1864
+ attr_accessor :estimated_rows
1865
+
1866
+ # [Output-only] Contains the timestamp of the oldest entry in the streaming
1867
+ # buffer, in milliseconds since the epoch, if the streaming buffer is available.
1868
+ # Corresponds to the JSON property `oldestEntryTime`
1869
+ # @return [String]
1870
+ attr_accessor :oldest_entry_time
1871
+
1872
+ def initialize(**args)
1873
+ update!(**args)
1874
+ end
1875
+
1876
+ # Update properties of this object
1877
+ def update!(**args)
1878
+ @estimated_bytes = args[:estimated_bytes] unless args[:estimated_bytes].nil?
1879
+ @estimated_rows = args[:estimated_rows] unless args[:estimated_rows].nil?
1880
+ @oldest_entry_time = args[:oldest_entry_time] unless args[:oldest_entry_time].nil?
1881
+ end
1882
+ end
1883
+
1884
+ #
1885
+ class Table
1886
+ include Google::Apis::Core::Hashable
1887
+
1888
+ # [Output-only] The time when this table was created, in milliseconds since the
1889
+ # epoch.
1890
+ # Corresponds to the JSON property `creationTime`
1891
+ # @return [String]
1892
+ attr_accessor :creation_time
1893
+
1894
+ # [Optional] A user-friendly description of this table.
1895
+ # Corresponds to the JSON property `description`
1896
+ # @return [String]
1897
+ attr_accessor :description
1898
+
1899
+ # [Output-only] A hash of this resource.
1900
+ # Corresponds to the JSON property `etag`
1901
+ # @return [String]
1902
+ attr_accessor :etag
1903
+
1904
+ # [Optional] The time when this table expires, in milliseconds since the epoch.
1905
+ # If not present, the table will persist indefinitely. Expired tables will be
1906
+ # deleted and their storage reclaimed.
1907
+ # Corresponds to the JSON property `expirationTime`
1908
+ # @return [String]
1909
+ attr_accessor :expiration_time
1910
+
1911
+ # [Experimental] Describes the data format, location, and other properties of a
1912
+ # table stored outside of BigQuery. By defining these properties, the data
1913
+ # source can then be queried as if it were a standard BigQuery table.
1914
+ # Corresponds to the JSON property `externalDataConfiguration`
1915
+ # @return [Google::Apis::BigqueryV2::ExternalDataConfiguration]
1916
+ attr_accessor :external_data_configuration
1917
+
1918
+ # [Optional] A descriptive name for this table.
1919
+ # Corresponds to the JSON property `friendlyName`
1920
+ # @return [String]
1921
+ attr_accessor :friendly_name
1922
+
1923
+ # [Output-only] An opaque ID uniquely identifying the table.
1924
+ # Corresponds to the JSON property `id`
1925
+ # @return [String]
1926
+ attr_accessor :id
1927
+
1928
+ # [Output-only] The type of the resource.
1929
+ # Corresponds to the JSON property `kind`
1930
+ # @return [String]
1931
+ attr_accessor :kind
1932
+
1933
+ # [Output-only] The time when this table was last modified, in milliseconds
1934
+ # since the epoch.
1935
+ # Corresponds to the JSON property `lastModifiedTime`
1936
+ # @return [String]
1937
+ attr_accessor :last_modified_time
1938
+
1939
+ # [Output-only] The geographic location where the table resides. This value is
1940
+ # inherited from the dataset.
1941
+ # Corresponds to the JSON property `location`
1942
+ # @return [String]
1943
+ attr_accessor :location
1944
+
1945
+ # [Output-only] The size of this table in bytes, excluding any data in the
1946
+ # streaming buffer.
1947
+ # Corresponds to the JSON property `numBytes`
1948
+ # @return [String]
1949
+ attr_accessor :num_bytes
1950
+
1951
+ # [Output-only] The number of rows of data in this table, excluding any data in
1952
+ # the streaming buffer.
1953
+ # Corresponds to the JSON property `numRows`
1954
+ # @return [String]
1955
+ attr_accessor :num_rows
1956
+
1957
+ # [Optional] Describes the schema of this table.
1958
+ # Corresponds to the JSON property `schema`
1959
+ # @return [Google::Apis::BigqueryV2::TableSchema]
1960
+ attr_accessor :schema
1961
+
1962
+ # [Output-only] A URL that can be used to access this resource again.
1963
+ # Corresponds to the JSON property `selfLink`
1964
+ # @return [String]
1965
+ attr_accessor :self_link
1966
+
1967
+ # [Output-only] Contains information regarding this table's streaming buffer, if
1968
+ # one is present. This field will be absent if the table is not being streamed
1969
+ # to or if there is no data in the streaming buffer.
1970
+ # Corresponds to the JSON property `streamingBuffer`
1971
+ # @return [Google::Apis::BigqueryV2::Streamingbuffer]
1972
+ attr_accessor :streaming_buffer
1973
+
1974
+ # [Required] Reference describing the ID of this table.
1975
+ # Corresponds to the JSON property `tableReference`
1976
+ # @return [Google::Apis::BigqueryV2::TableReference]
1977
+ attr_accessor :table_reference
1978
+
1979
+ # [Output-only] Describes the table type. The following values are supported:
1980
+ # TABLE: A normal BigQuery table. VIEW: A virtual table defined by a SQL query.
1981
+ # EXTERNAL: A table that references data stored in an external storage system,
1982
+ # such as Google Cloud Storage. The default value is TABLE.
1983
+ # Corresponds to the JSON property `type`
1984
+ # @return [String]
1985
+ attr_accessor :type
1986
+
1987
+ # [Optional] The view definition.
1988
+ # Corresponds to the JSON property `view`
1989
+ # @return [Google::Apis::BigqueryV2::ViewDefinition]
1990
+ attr_accessor :view
1991
+
1992
+ def initialize(**args)
1993
+ update!(**args)
1994
+ end
1995
+
1996
+ # Update properties of this object
1997
+ def update!(**args)
1998
+ @creation_time = args[:creation_time] unless args[:creation_time].nil?
1999
+ @description = args[:description] unless args[:description].nil?
2000
+ @etag = args[:etag] unless args[:etag].nil?
2001
+ @expiration_time = args[:expiration_time] unless args[:expiration_time].nil?
2002
+ @external_data_configuration = args[:external_data_configuration] unless args[:external_data_configuration].nil?
2003
+ @friendly_name = args[:friendly_name] unless args[:friendly_name].nil?
2004
+ @id = args[:id] unless args[:id].nil?
2005
+ @kind = args[:kind] unless args[:kind].nil?
2006
+ @last_modified_time = args[:last_modified_time] unless args[:last_modified_time].nil?
2007
+ @location = args[:location] unless args[:location].nil?
2008
+ @num_bytes = args[:num_bytes] unless args[:num_bytes].nil?
2009
+ @num_rows = args[:num_rows] unless args[:num_rows].nil?
2010
+ @schema = args[:schema] unless args[:schema].nil?
2011
+ @self_link = args[:self_link] unless args[:self_link].nil?
2012
+ @streaming_buffer = args[:streaming_buffer] unless args[:streaming_buffer].nil?
2013
+ @table_reference = args[:table_reference] unless args[:table_reference].nil?
2014
+ @type = args[:type] unless args[:type].nil?
2015
+ @view = args[:view] unless args[:view].nil?
2016
+ end
2017
+ end
2018
+
2019
+ #
2020
+ class TableCell
2021
+ include Google::Apis::Core::Hashable
2022
+
2023
+ #
2024
+ # Corresponds to the JSON property `v`
2025
+ # @return [Object]
2026
+ attr_accessor :v
2027
+
2028
+ def initialize(**args)
2029
+ update!(**args)
2030
+ end
2031
+
2032
+ # Update properties of this object
2033
+ def update!(**args)
2034
+ @v = args[:v] unless args[:v].nil?
2035
+ end
2036
+ end
2037
+
2038
+ #
2039
+ class InsertAllTableDataRequest
2040
+ include Google::Apis::Core::Hashable
2041
+
2042
+ # [Optional] Accept rows that contain values that do not match the schema. The
2043
+ # unknown values are ignored. Default is false, which treats unknown values as
2044
+ # errors.
2045
+ # Corresponds to the JSON property `ignoreUnknownValues`
2046
+ # @return [Boolean]
2047
+ attr_accessor :ignore_unknown_values
2048
+ alias_method :ignore_unknown_values?, :ignore_unknown_values
2049
+
2050
+ # The resource type of the response.
2051
+ # Corresponds to the JSON property `kind`
2052
+ # @return [String]
2053
+ attr_accessor :kind
2054
+
2055
+ # The rows to insert.
2056
+ # Corresponds to the JSON property `rows`
2057
+ # @return [Array<Google::Apis::BigqueryV2::InsertAllTableDataRequest::Row>]
2058
+ attr_accessor :rows
2059
+
2060
+ # [Optional] Insert all valid rows of a request, even if invalid rows exist. The
2061
+ # default value is false, which causes the entire request to fail if any invalid
2062
+ # rows exist.
2063
+ # Corresponds to the JSON property `skipInvalidRows`
2064
+ # @return [Boolean]
2065
+ attr_accessor :skip_invalid_rows
2066
+ alias_method :skip_invalid_rows?, :skip_invalid_rows
2067
+
2068
+ # [Optional] If specified, treats the destination table as a base template, and
2069
+ # inserts the rows into an instance table named "`destination``templateSuffix`".
2070
+ # BigQuery will manage creation of the instance table, using the schema of the
2071
+ # base template table. See https://cloud.google.com/bigquery/streaming-data-into-
2072
+ # bigquery#template-tables for considerations when working with templates tables.
2073
+ # Corresponds to the JSON property `templateSuffix`
2074
+ # @return [String]
2075
+ attr_accessor :template_suffix
2076
+
2077
+ def initialize(**args)
2078
+ update!(**args)
2079
+ end
2080
+
2081
+ # Update properties of this object
2082
+ def update!(**args)
2083
+ @ignore_unknown_values = args[:ignore_unknown_values] unless args[:ignore_unknown_values].nil?
2084
+ @kind = args[:kind] unless args[:kind].nil?
2085
+ @rows = args[:rows] unless args[:rows].nil?
2086
+ @skip_invalid_rows = args[:skip_invalid_rows] unless args[:skip_invalid_rows].nil?
2087
+ @template_suffix = args[:template_suffix] unless args[:template_suffix].nil?
2088
+ end
2089
+
2090
+ #
2091
+ class Row
2092
+ include Google::Apis::Core::Hashable
2093
+
2094
+ # [Optional] A unique ID for each row. BigQuery uses this property to detect
2095
+ # duplicate insertion requests on a best-effort basis.
2096
+ # Corresponds to the JSON property `insertId`
2097
+ # @return [String]
2098
+ attr_accessor :insert_id
2099
+
2100
+ # Represents a single JSON object.
2101
+ # Corresponds to the JSON property `json`
2102
+ # @return [Hash<String,Object>]
2103
+ attr_accessor :json
2104
+
2105
+ def initialize(**args)
2106
+ update!(**args)
2107
+ end
2108
+
2109
+ # Update properties of this object
2110
+ def update!(**args)
2111
+ @insert_id = args[:insert_id] unless args[:insert_id].nil?
2112
+ @json = args[:json] unless args[:json].nil?
2113
+ end
2114
+ end
2115
+ end
2116
+
2117
+ #
2118
+ class InsertAllTableDataResponse
2119
+ include Google::Apis::Core::Hashable
2120
+
2121
+ # An array of errors for rows that were not inserted.
2122
+ # Corresponds to the JSON property `insertErrors`
2123
+ # @return [Array<Google::Apis::BigqueryV2::InsertAllTableDataResponse::InsertError>]
2124
+ attr_accessor :insert_errors
2125
+
2126
+ # The resource type of the response.
2127
+ # Corresponds to the JSON property `kind`
2128
+ # @return [String]
2129
+ attr_accessor :kind
2130
+
2131
+ def initialize(**args)
2132
+ update!(**args)
2133
+ end
2134
+
2135
+ # Update properties of this object
2136
+ def update!(**args)
2137
+ @insert_errors = args[:insert_errors] unless args[:insert_errors].nil?
2138
+ @kind = args[:kind] unless args[:kind].nil?
2139
+ end
2140
+
2141
+ #
2142
+ class InsertError
2143
+ include Google::Apis::Core::Hashable
2144
+
2145
+ # Error information for the row indicated by the index property.
2146
+ # Corresponds to the JSON property `errors`
2147
+ # @return [Array<Google::Apis::BigqueryV2::ErrorProto>]
2148
+ attr_accessor :errors
2149
+
2150
+ # The index of the row that error applies to.
2151
+ # Corresponds to the JSON property `index`
2152
+ # @return [Fixnum]
2153
+ attr_accessor :index
2154
+
2155
+ def initialize(**args)
2156
+ update!(**args)
2157
+ end
2158
+
2159
+ # Update properties of this object
2160
+ def update!(**args)
2161
+ @errors = args[:errors] unless args[:errors].nil?
2162
+ @index = args[:index] unless args[:index].nil?
2163
+ end
2164
+ end
2165
+ end
2166
+
2167
+ #
2168
+ class TableDataList
2169
+ include Google::Apis::Core::Hashable
2170
+
2171
+ # A hash of this page of results.
2172
+ # Corresponds to the JSON property `etag`
2173
+ # @return [String]
2174
+ attr_accessor :etag
2175
+
2176
+ # The resource type of the response.
2177
+ # Corresponds to the JSON property `kind`
2178
+ # @return [String]
2179
+ attr_accessor :kind
2180
+
2181
+ # A token used for paging results. Providing this token instead of the
2182
+ # startIndex parameter can help you retrieve stable results when an underlying
2183
+ # table is changing.
2184
+ # Corresponds to the JSON property `pageToken`
2185
+ # @return [String]
2186
+ attr_accessor :page_token
2187
+
2188
+ # Rows of results.
2189
+ # Corresponds to the JSON property `rows`
2190
+ # @return [Array<Google::Apis::BigqueryV2::TableRow>]
2191
+ attr_accessor :rows
2192
+
2193
+ # The total number of rows in the complete table.
2194
+ # Corresponds to the JSON property `totalRows`
2195
+ # @return [String]
2196
+ attr_accessor :total_rows
2197
+
2198
+ def initialize(**args)
2199
+ update!(**args)
2200
+ end
2201
+
2202
+ # Update properties of this object
2203
+ def update!(**args)
2204
+ @etag = args[:etag] unless args[:etag].nil?
2205
+ @kind = args[:kind] unless args[:kind].nil?
2206
+ @page_token = args[:page_token] unless args[:page_token].nil?
2207
+ @rows = args[:rows] unless args[:rows].nil?
2208
+ @total_rows = args[:total_rows] unless args[:total_rows].nil?
2209
+ end
2210
+ end
2211
+
2212
+ #
2213
+ class TableFieldSchema
2214
+ include Google::Apis::Core::Hashable
2215
+
2216
+ # [Optional] The field description. The maximum length is 16K characters.
2217
+ # Corresponds to the JSON property `description`
2218
+ # @return [String]
2219
+ attr_accessor :description
2220
+
2221
+ # [Optional] Describes the nested schema fields if the type property is set to
2222
+ # RECORD.
2223
+ # Corresponds to the JSON property `fields`
2224
+ # @return [Array<Google::Apis::BigqueryV2::TableFieldSchema>]
2225
+ attr_accessor :fields
2226
+
2227
+ # [Optional] The field mode. Possible values include NULLABLE, REQUIRED and
2228
+ # REPEATED. The default value is NULLABLE.
2229
+ # Corresponds to the JSON property `mode`
2230
+ # @return [String]
2231
+ attr_accessor :mode
2232
+
2233
+ # [Required] The field name. The name must contain only letters (a-z, A-Z),
2234
+ # numbers (0-9), or underscores (_), and must start with a letter or underscore.
2235
+ # The maximum length is 128 characters.
2236
+ # Corresponds to the JSON property `name`
2237
+ # @return [String]
2238
+ attr_accessor :name
2239
+
2240
+ # [Required] The field data type. Possible values include STRING, INTEGER, FLOAT,
2241
+ # BOOLEAN, TIMESTAMP or RECORD (where RECORD indicates that the field contains
2242
+ # a nested schema).
2243
+ # Corresponds to the JSON property `type`
2244
+ # @return [String]
2245
+ attr_accessor :type
2246
+
2247
+ def initialize(**args)
2248
+ update!(**args)
2249
+ end
2250
+
2251
+ # Update properties of this object
2252
+ def update!(**args)
2253
+ @description = args[:description] unless args[:description].nil?
2254
+ @fields = args[:fields] unless args[:fields].nil?
2255
+ @mode = args[:mode] unless args[:mode].nil?
2256
+ @name = args[:name] unless args[:name].nil?
2257
+ @type = args[:type] unless args[:type].nil?
2258
+ end
2259
+ end
2260
+
2261
+ #
2262
+ class TableList
2263
+ include Google::Apis::Core::Hashable
2264
+
2265
+ # A hash of this page of results.
2266
+ # Corresponds to the JSON property `etag`
2267
+ # @return [String]
2268
+ attr_accessor :etag
2269
+
2270
+ # The type of list.
2271
+ # Corresponds to the JSON property `kind`
2272
+ # @return [String]
2273
+ attr_accessor :kind
2274
+
2275
+ # A token to request the next page of results.
2276
+ # Corresponds to the JSON property `nextPageToken`
2277
+ # @return [String]
2278
+ attr_accessor :next_page_token
2279
+
2280
+ # Tables in the requested dataset.
2281
+ # Corresponds to the JSON property `tables`
2282
+ # @return [Array<Google::Apis::BigqueryV2::TableList::Table>]
2283
+ attr_accessor :tables
2284
+
2285
+ # The total number of tables in the dataset.
2286
+ # Corresponds to the JSON property `totalItems`
2287
+ # @return [Fixnum]
2288
+ attr_accessor :total_items
2289
+
2290
+ def initialize(**args)
2291
+ update!(**args)
2292
+ end
2293
+
2294
+ # Update properties of this object
2295
+ def update!(**args)
2296
+ @etag = args[:etag] unless args[:etag].nil?
2297
+ @kind = args[:kind] unless args[:kind].nil?
2298
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2299
+ @tables = args[:tables] unless args[:tables].nil?
2300
+ @total_items = args[:total_items] unless args[:total_items].nil?
2301
+ end
2302
+
2303
+ #
2304
+ class Table
2305
+ include Google::Apis::Core::Hashable
2306
+
2307
+ # The user-friendly name for this table.
2308
+ # Corresponds to the JSON property `friendlyName`
2309
+ # @return [String]
2310
+ attr_accessor :friendly_name
2311
+
2312
+ # An opaque ID of the table
2313
+ # Corresponds to the JSON property `id`
2314
+ # @return [String]
2315
+ attr_accessor :id
2316
+
2317
+ # The resource type.
2318
+ # Corresponds to the JSON property `kind`
2319
+ # @return [String]
2320
+ attr_accessor :kind
2321
+
2322
+ # A reference uniquely identifying the table.
2323
+ # Corresponds to the JSON property `tableReference`
2324
+ # @return [Google::Apis::BigqueryV2::TableReference]
2325
+ attr_accessor :table_reference
2326
+
2327
+ # The type of table. Possible values are: TABLE, VIEW.
2328
+ # Corresponds to the JSON property `type`
2329
+ # @return [String]
2330
+ attr_accessor :type
2331
+
2332
+ def initialize(**args)
2333
+ update!(**args)
2334
+ end
2335
+
2336
+ # Update properties of this object
2337
+ def update!(**args)
2338
+ @friendly_name = args[:friendly_name] unless args[:friendly_name].nil?
2339
+ @id = args[:id] unless args[:id].nil?
2340
+ @kind = args[:kind] unless args[:kind].nil?
2341
+ @table_reference = args[:table_reference] unless args[:table_reference].nil?
2342
+ @type = args[:type] unless args[:type].nil?
2343
+ end
2344
+ end
2345
+ end
2346
+
2347
+ #
2348
+ class TableReference
2349
+ include Google::Apis::Core::Hashable
2350
+
2351
+ # [Required] The ID of the dataset containing this table.
2352
+ # Corresponds to the JSON property `datasetId`
2353
+ # @return [String]
2354
+ attr_accessor :dataset_id
2355
+
2356
+ # [Required] The ID of the project containing this table.
2357
+ # Corresponds to the JSON property `projectId`
2358
+ # @return [String]
2359
+ attr_accessor :project_id
2360
+
2361
+ # [Required] The ID of the table. The ID must contain only letters (a-z, A-Z),
2362
+ # numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
2363
+ # Corresponds to the JSON property `tableId`
2364
+ # @return [String]
2365
+ attr_accessor :table_id
2366
+
2367
+ def initialize(**args)
2368
+ update!(**args)
2369
+ end
2370
+
2371
+ # Update properties of this object
2372
+ def update!(**args)
2373
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
2374
+ @project_id = args[:project_id] unless args[:project_id].nil?
2375
+ @table_id = args[:table_id] unless args[:table_id].nil?
2376
+ end
2377
+ end
2378
+
2379
+ #
2380
+ class TableRow
2381
+ include Google::Apis::Core::Hashable
2382
+
2383
+ # Represents a single row in the result set, consisting of one or more fields.
2384
+ # Corresponds to the JSON property `f`
2385
+ # @return [Array<Google::Apis::BigqueryV2::TableCell>]
2386
+ attr_accessor :f
2387
+
2388
+ def initialize(**args)
2389
+ update!(**args)
2390
+ end
2391
+
2392
+ # Update properties of this object
2393
+ def update!(**args)
2394
+ @f = args[:f] unless args[:f].nil?
2395
+ end
2396
+ end
2397
+
2398
+ #
2399
+ class TableSchema
2400
+ include Google::Apis::Core::Hashable
2401
+
2402
+ # Describes the fields in a table.
2403
+ # Corresponds to the JSON property `fields`
2404
+ # @return [Array<Google::Apis::BigqueryV2::TableFieldSchema>]
2405
+ attr_accessor :fields
2406
+
2407
+ def initialize(**args)
2408
+ update!(**args)
2409
+ end
2410
+
2411
+ # Update properties of this object
2412
+ def update!(**args)
2413
+ @fields = args[:fields] unless args[:fields].nil?
2414
+ end
2415
+ end
2416
+
2417
+ #
2418
+ class UserDefinedFunctionResource
2419
+ include Google::Apis::Core::Hashable
2420
+
2421
+ # [Pick one] An inline resource that contains code for a user-defined function (
2422
+ # UDF). Providing a inline code resource is equivalent to providing a URI for a
2423
+ # file containing the same code.
2424
+ # Corresponds to the JSON property `inlineCode`
2425
+ # @return [String]
2426
+ attr_accessor :inline_code
2427
+
2428
+ # [Pick one] A code resource to load from a Google Cloud Storage URI (gs://
2429
+ # bucket/path).
2430
+ # Corresponds to the JSON property `resourceUri`
2431
+ # @return [String]
2432
+ attr_accessor :resource_uri
2433
+
2434
+ def initialize(**args)
2435
+ update!(**args)
2436
+ end
2437
+
2438
+ # Update properties of this object
2439
+ def update!(**args)
2440
+ @inline_code = args[:inline_code] unless args[:inline_code].nil?
2441
+ @resource_uri = args[:resource_uri] unless args[:resource_uri].nil?
2442
+ end
2443
+ end
2444
+
2445
+ #
2446
+ class ViewDefinition
2447
+ include Google::Apis::Core::Hashable
2448
+
2449
+ # [Required] A query that BigQuery executes when the view is referenced.
2450
+ # Corresponds to the JSON property `query`
2451
+ # @return [String]
2452
+ attr_accessor :query
2453
+
2454
+ # [Experimental] Describes user-defined function resources used in the query.
2455
+ # Corresponds to the JSON property `userDefinedFunctionResources`
2456
+ # @return [Array<Google::Apis::BigqueryV2::UserDefinedFunctionResource>]
2457
+ attr_accessor :user_defined_function_resources
2458
+
2459
+ def initialize(**args)
2460
+ update!(**args)
2461
+ end
2462
+
2463
+ # Update properties of this object
2464
+ def update!(**args)
2465
+ @query = args[:query] unless args[:query].nil?
2466
+ @user_defined_function_resources = args[:user_defined_function_resources] unless args[:user_defined_function_resources].nil?
2467
+ end
2468
+ end
2469
+ end
2470
+ end
2471
+ end