lemboy-google-api-client 0.9.26

Sign up to get free protection for your applications and to get access to all the features.
Files changed (555) hide show
  1. checksums.yaml +7 -0
  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 +27 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +309 -0
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +53 -0
  11. data/LICENSE +202 -0
  12. data/MIGRATING.md +171 -0
  13. data/README.md +327 -0
  14. data/Rakefile +2 -0
  15. data/api_names.yaml +36215 -0
  16. data/bin/generate-api +109 -0
  17. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +298 -0
  19. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +122 -0
  20. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +458 -0
  21. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  22. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  23. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  24. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  25. data/generated/google/apis/adexchangebuyer_v1_4.rb +35 -0
  26. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +3550 -0
  27. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1421 -0
  28. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +1538 -0
  29. data/generated/google/apis/adexchangeseller_v2_0.rb +37 -0
  30. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  31. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +347 -0
  32. data/generated/google/apis/adexchangeseller_v2_0/service.rb +667 -0
  33. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  34. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  35. data/generated/google/apis/admin_datatransfer_v1/representations.rb +130 -0
  36. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  37. data/generated/google/apis/admin_directory_v1.rb +113 -0
  38. data/generated/google/apis/admin_directory_v1/classes.rb +3241 -0
  39. data/generated/google/apis/admin_directory_v1/representations.rb +1172 -0
  40. data/generated/google/apis/admin_directory_v1/service.rb +3857 -0
  41. data/generated/google/apis/admin_reports_v1.rb +38 -0
  42. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  43. data/generated/google/apis/admin_reports_v1/representations.rb +257 -0
  44. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  45. data/generated/google/apis/adsense_v1_4.rb +37 -0
  46. data/generated/google/apis/adsense_v1_4/classes.rb +1280 -0
  47. data/generated/google/apis/adsense_v1_4/representations.rb +555 -0
  48. data/generated/google/apis/adsense_v1_4/service.rb +1713 -0
  49. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  50. data/generated/google/apis/adsensehost_v4_1/classes.rb +836 -0
  51. data/generated/google/apis/adsensehost_v4_1/representations.rb +367 -0
  52. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  53. data/generated/google/apis/analytics_v3.rb +49 -0
  54. data/generated/google/apis/analytics_v3/classes.rb +5536 -0
  55. data/generated/google/apis/analytics_v3/representations.rb +1992 -0
  56. data/generated/google/apis/analytics_v3/service.rb +3785 -0
  57. data/generated/google/apis/analyticsreporting_v4.rb +37 -0
  58. data/generated/google/apis/analyticsreporting_v4/classes.rb +1420 -0
  59. data/generated/google/apis/analyticsreporting_v4/representations.rb +598 -0
  60. data/generated/google/apis/analyticsreporting_v4/service.rb +88 -0
  61. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  62. data/generated/google/apis/androidenterprise_v1/classes.rb +2250 -0
  63. data/generated/google/apis/androidenterprise_v1/representations.rb +970 -0
  64. data/generated/google/apis/androidenterprise_v1/service.rb +3267 -0
  65. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  66. data/generated/google/apis/androidpublisher_v2/classes.rb +1941 -0
  67. data/generated/google/apis/androidpublisher_v2/representations.rb +975 -0
  68. data/generated/google/apis/androidpublisher_v2/service.rb +2572 -0
  69. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  70. data/generated/google/apis/appengine_v1beta4/classes.rb +1585 -0
  71. data/generated/google/apis/appengine_v1beta4/representations.rb +542 -0
  72. data/generated/google/apis/appengine_v1beta4/service.rb +477 -0
  73. data/generated/google/apis/appengine_v1beta5.rb +40 -0
  74. data/generated/google/apis/appengine_v1beta5/classes.rb +1984 -0
  75. data/generated/google/apis/appengine_v1beta5/representations.rb +765 -0
  76. data/generated/google/apis/appengine_v1beta5/service.rb +864 -0
  77. data/generated/google/apis/appsactivity_v1.rb +46 -0
  78. data/generated/google/apis/appsactivity_v1/classes.rb +415 -0
  79. data/generated/google/apis/appsactivity_v1/representations.rb +209 -0
  80. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  81. data/generated/google/apis/appstate_v1.rb +34 -0
  82. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  83. data/generated/google/apis/appstate_v1/representations.rb +87 -0
  84. data/generated/google/apis/appstate_v1/service.rb +260 -0
  85. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  86. data/generated/google/apis/autoscaler_v1beta2/classes.rb +710 -0
  87. data/generated/google/apis/autoscaler_v1beta2/representations.rb +296 -0
  88. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  89. data/generated/google/apis/bigquery_v2.rb +52 -0
  90. data/generated/google/apis/bigquery_v2/classes.rb +3081 -0
  91. data/generated/google/apis/bigquery_v2/representations.rb +1094 -0
  92. data/generated/google/apis/bigquery_v2/service.rb +988 -0
  93. data/generated/google/apis/blogger_v3.rb +37 -0
  94. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  95. data/generated/google/apis/blogger_v3/representations.rb +632 -0
  96. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  97. data/generated/google/apis/books_v1.rb +34 -0
  98. data/generated/google/apis/books_v1/classes.rb +4160 -0
  99. data/generated/google/apis/books_v1/representations.rb +1799 -0
  100. data/generated/google/apis/books_v1/service.rb +2300 -0
  101. data/generated/google/apis/calendar_v3.rb +37 -0
  102. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  103. data/generated/google/apis/calendar_v3/representations.rb +631 -0
  104. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  105. data/generated/google/apis/civicinfo_v2.rb +32 -0
  106. data/generated/google/apis/civicinfo_v2/classes.rb +1499 -0
  107. data/generated/google/apis/civicinfo_v2/representations.rb +572 -0
  108. data/generated/google/apis/civicinfo_v2/service.rb +300 -0
  109. data/generated/google/apis/classroom_v1.rb +70 -0
  110. data/generated/google/apis/classroom_v1/classes.rb +1572 -0
  111. data/generated/google/apis/classroom_v1/representations.rb +729 -0
  112. data/generated/google/apis/classroom_v1/service.rb +1945 -0
  113. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  114. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  115. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  116. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  117. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  118. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  119. data/generated/google/apis/cloudbilling_v1/representations.rb +87 -0
  120. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  121. data/generated/google/apis/cloudbuild_v1.rb +34 -0
  122. data/generated/google/apis/cloudbuild_v1/classes.rb +919 -0
  123. data/generated/google/apis/cloudbuild_v1/representations.rb +364 -0
  124. data/generated/google/apis/cloudbuild_v1/service.rb +492 -0
  125. data/generated/google/apis/clouddebugger_v2.rb +38 -0
  126. data/generated/google/apis/clouddebugger_v2/classes.rb +1081 -0
  127. data/generated/google/apis/clouddebugger_v2/representations.rb +465 -0
  128. data/generated/google/apis/clouddebugger_v2/service.rb +396 -0
  129. data/generated/google/apis/cloudkms_v1beta1.rb +34 -0
  130. data/generated/google/apis/cloudkms_v1beta1/classes.rb +999 -0
  131. data/generated/google/apis/cloudkms_v1beta1/representations.rb +448 -0
  132. data/generated/google/apis/cloudkms_v1beta1/service.rb +932 -0
  133. data/generated/google/apis/cloudlatencytest_v2.rb +34 -0
  134. data/generated/google/apis/cloudlatencytest_v2/classes.rb +195 -0
  135. data/generated/google/apis/cloudlatencytest_v2/representations.rb +127 -0
  136. data/generated/google/apis/cloudlatencytest_v2/service.rb +135 -0
  137. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  138. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  139. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +353 -0
  140. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  141. data/generated/google/apis/cloudresourcemanager_v1.rb +38 -0
  142. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +886 -0
  143. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +359 -0
  144. data/generated/google/apis/cloudresourcemanager_v1/service.rb +686 -0
  145. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  146. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +682 -0
  147. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +312 -0
  148. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +710 -0
  149. data/generated/google/apis/cloudtrace_v1.rb +43 -0
  150. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  151. data/generated/google/apis/cloudtrace_v1/representations.rb +102 -0
  152. data/generated/google/apis/cloudtrace_v1/service.rb +192 -0
  153. data/generated/google/apis/clouduseraccounts_beta.rb +44 -0
  154. data/generated/google/apis/clouduseraccounts_beta/classes.rb +845 -0
  155. data/generated/google/apis/clouduseraccounts_beta/representations.rb +352 -0
  156. data/generated/google/apis/clouduseraccounts_beta/service.rb +907 -0
  157. data/generated/google/apis/compute_beta.rb +49 -0
  158. data/generated/google/apis/compute_beta/classes.rb +12261 -0
  159. data/generated/google/apis/compute_beta/representations.rb +4615 -0
  160. data/generated/google/apis/compute_beta/service.rb +15330 -0
  161. data/generated/google/apis/compute_v1.rb +49 -0
  162. data/generated/google/apis/compute_v1/classes.rb +11179 -0
  163. data/generated/google/apis/compute_v1/representations.rb +4203 -0
  164. data/generated/google/apis/compute_v1/service.rb +12937 -0
  165. data/generated/google/apis/container_v1.rb +35 -0
  166. data/generated/google/apis/container_v1/classes.rb +1040 -0
  167. data/generated/google/apis/container_v1/representations.rb +415 -0
  168. data/generated/google/apis/container_v1/service.rb +659 -0
  169. data/generated/google/apis/container_v1beta1.rb +35 -0
  170. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  171. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  172. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  173. data/generated/google/apis/content_v2.rb +35 -0
  174. data/generated/google/apis/content_v2/classes.rb +6887 -0
  175. data/generated/google/apis/content_v2/representations.rb +2963 -0
  176. data/generated/google/apis/content_v2/service.rb +2653 -0
  177. data/generated/google/apis/coordinate_v1.rb +37 -0
  178. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  179. data/generated/google/apis/coordinate_v1/representations.rb +321 -0
  180. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  181. data/generated/google/apis/customsearch_v1.rb +31 -0
  182. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  183. data/generated/google/apis/customsearch_v1/representations.rb +302 -0
  184. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  185. data/generated/google/apis/dataflow_v1b3.rb +37 -0
  186. data/generated/google/apis/dataflow_v1b3/classes.rb +4225 -0
  187. data/generated/google/apis/dataflow_v1b3/representations.rb +1809 -0
  188. data/generated/google/apis/dataflow_v1b3/service.rb +874 -0
  189. data/generated/google/apis/dataproc_v1.rb +34 -0
  190. data/generated/google/apis/dataproc_v1/classes.rb +1716 -0
  191. data/generated/google/apis/dataproc_v1/representations.rb +678 -0
  192. data/generated/google/apis/dataproc_v1/service.rb +670 -0
  193. data/generated/google/apis/datastore_v1.rb +38 -0
  194. data/generated/google/apis/datastore_v1/classes.rb +1289 -0
  195. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  196. data/generated/google/apis/datastore_v1/service.rb +259 -0
  197. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  198. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  199. data/generated/google/apis/datastore_v1beta2/representations.rb +594 -0
  200. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  201. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  202. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  203. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  204. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  205. data/generated/google/apis/deploymentmanager_v2.rb +43 -0
  206. data/generated/google/apis/deploymentmanager_v2/classes.rb +1582 -0
  207. data/generated/google/apis/deploymentmanager_v2/representations.rb +686 -0
  208. data/generated/google/apis/deploymentmanager_v2/service.rb +1026 -0
  209. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  210. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  211. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  212. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  213. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  214. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  215. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  216. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  217. data/generated/google/apis/dfareporting_v2_3.rb +37 -0
  218. data/generated/google/apis/dfareporting_v2_3/classes.rb +10839 -0
  219. data/generated/google/apis/dfareporting_v2_3/representations.rb +3829 -0
  220. data/generated/google/apis/dfareporting_v2_3/service.rb +8581 -0
  221. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  222. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  223. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  224. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  225. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  226. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  227. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  228. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  229. data/generated/google/apis/dfareporting_v2_7.rb +40 -0
  230. data/generated/google/apis/dfareporting_v2_7/classes.rb +11876 -0
  231. data/generated/google/apis/dfareporting_v2_7/representations.rb +4243 -0
  232. data/generated/google/apis/dfareporting_v2_7/service.rb +9095 -0
  233. data/generated/google/apis/discovery_v1.rb +32 -0
  234. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  235. data/generated/google/apis/discovery_v1/representations.rb +397 -0
  236. data/generated/google/apis/discovery_v1/service.rb +142 -0
  237. data/generated/google/apis/dns_v1.rb +43 -0
  238. data/generated/google/apis/dns_v1/classes.rb +406 -0
  239. data/generated/google/apis/dns_v1/representations.rb +167 -0
  240. data/generated/google/apis/dns_v1/service.rb +453 -0
  241. data/generated/google/apis/dns_v2beta1.rb +43 -0
  242. data/generated/google/apis/dns_v2beta1/classes.rb +915 -0
  243. data/generated/google/apis/dns_v2beta1/representations.rb +368 -0
  244. data/generated/google/apis/dns_v2beta1/service.rb +768 -0
  245. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  246. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +795 -0
  247. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +368 -0
  248. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +376 -0
  249. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  250. data/generated/google/apis/doubleclicksearch_v2/classes.rb +960 -0
  251. data/generated/google/apis/doubleclicksearch_v2/representations.rb +350 -0
  252. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  253. data/generated/google/apis/drive_v2.rb +59 -0
  254. data/generated/google/apis/drive_v2/classes.rb +2633 -0
  255. data/generated/google/apis/drive_v2/representations.rb +885 -0
  256. data/generated/google/apis/drive_v2/service.rb +2754 -0
  257. data/generated/google/apis/drive_v3.rb +56 -0
  258. data/generated/google/apis/drive_v3/classes.rb +1611 -0
  259. data/generated/google/apis/drive_v3/representations.rb +555 -0
  260. data/generated/google/apis/drive_v3/service.rb +1553 -0
  261. data/generated/google/apis/fitness_v1.rb +85 -0
  262. data/generated/google/apis/fitness_v1/classes.rb +943 -0
  263. data/generated/google/apis/fitness_v1/representations.rb +380 -0
  264. data/generated/google/apis/fitness_v1/service.rb +674 -0
  265. data/generated/google/apis/fusiontables_v2.rb +37 -0
  266. data/generated/google/apis/fusiontables_v2/classes.rb +1049 -0
  267. data/generated/google/apis/fusiontables_v2/representations.rb +457 -0
  268. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  269. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  270. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  271. data/generated/google/apis/games_configuration_v1configuration/representations.rb +228 -0
  272. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  273. data/generated/google/apis/games_management_v1management.rb +37 -0
  274. data/generated/google/apis/games_management_v1management/classes.rb +567 -0
  275. data/generated/google/apis/games_management_v1management/representations.rb +278 -0
  276. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  277. data/generated/google/apis/games_v1.rb +40 -0
  278. data/generated/google/apis/games_v1/classes.rb +4667 -0
  279. data/generated/google/apis/games_v1/representations.rb +1800 -0
  280. data/generated/google/apis/games_v1/service.rb +2449 -0
  281. data/generated/google/apis/gan_v1beta1.rb +31 -0
  282. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  283. data/generated/google/apis/gan_v1beta1/representations.rb +462 -0
  284. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  285. data/generated/google/apis/genomics_v1.rb +46 -0
  286. data/generated/google/apis/genomics_v1/classes.rb +3477 -0
  287. data/generated/google/apis/genomics_v1/representations.rb +1284 -0
  288. data/generated/google/apis/genomics_v1/service.rb +2207 -0
  289. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  290. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  291. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  292. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  293. data/generated/google/apis/gmail_v1.rb +61 -0
  294. data/generated/google/apis/gmail_v1/classes.rb +1382 -0
  295. data/generated/google/apis/gmail_v1/representations.rb +624 -0
  296. data/generated/google/apis/gmail_v1/service.rb +2447 -0
  297. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  298. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  299. data/generated/google/apis/groupsmigration_v1/representations.rb +40 -0
  300. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  301. data/generated/google/apis/groupssettings_v1.rb +34 -0
  302. data/generated/google/apis/groupssettings_v1/classes.rb +240 -0
  303. data/generated/google/apis/groupssettings_v1/representations.rb +69 -0
  304. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  305. data/generated/google/apis/iam_v1.rb +36 -0
  306. data/generated/google/apis/iam_v1/classes.rb +640 -0
  307. data/generated/google/apis/iam_v1/representations.rb +316 -0
  308. data/generated/google/apis/iam_v1/service.rb +554 -0
  309. data/generated/google/apis/identitytoolkit_v3.rb +37 -0
  310. data/generated/google/apis/identitytoolkit_v3/classes.rb +2182 -0
  311. data/generated/google/apis/identitytoolkit_v3/representations.rb +742 -0
  312. data/generated/google/apis/identitytoolkit_v3/service.rb +657 -0
  313. data/generated/google/apis/kgsearch_v1.rb +31 -0
  314. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  315. data/generated/google/apis/kgsearch_v1/representations.rb +41 -0
  316. data/generated/google/apis/kgsearch_v1/service.rb +113 -0
  317. data/generated/google/apis/language_v1beta1.rb +36 -0
  318. data/generated/google/apis/language_v1beta1/classes.rb +757 -0
  319. data/generated/google/apis/language_v1beta1/representations.rb +339 -0
  320. data/generated/google/apis/language_v1beta1/service.rb +184 -0
  321. data/generated/google/apis/licensing_v1.rb +34 -0
  322. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  323. data/generated/google/apis/licensing_v1/representations.rb +74 -0
  324. data/generated/google/apis/licensing_v1/service.rb +369 -0
  325. data/generated/google/apis/logging_v1beta3.rb +47 -0
  326. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  327. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  328. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  329. data/generated/google/apis/logging_v2beta1.rb +46 -0
  330. data/generated/google/apis/logging_v2beta1/classes.rb +1254 -0
  331. data/generated/google/apis/logging_v2beta1/representations.rb +421 -0
  332. data/generated/google/apis/logging_v2beta1/service.rb +788 -0
  333. data/generated/google/apis/manager_v1beta2.rb +53 -0
  334. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  335. data/generated/google/apis/manager_v1beta2/representations.rb +606 -0
  336. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  337. data/generated/google/apis/manufacturers_v1.rb +34 -0
  338. data/generated/google/apis/manufacturers_v1/classes.rb +258 -0
  339. data/generated/google/apis/manufacturers_v1/representations.rb +103 -0
  340. data/generated/google/apis/manufacturers_v1/service.rb +138 -0
  341. data/generated/google/apis/mirror_v1.rb +37 -0
  342. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  343. data/generated/google/apis/mirror_v1/representations.rb +390 -0
  344. data/generated/google/apis/mirror_v1/service.rb +977 -0
  345. data/generated/google/apis/monitoring_v3.rb +45 -0
  346. data/generated/google/apis/monitoring_v3/classes.rb +1335 -0
  347. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  348. data/generated/google/apis/monitoring_v3/service.rb +706 -0
  349. data/generated/google/apis/mybusiness_v3.rb +32 -0
  350. data/generated/google/apis/mybusiness_v3/classes.rb +1864 -0
  351. data/generated/google/apis/mybusiness_v3/representations.rb +741 -0
  352. data/generated/google/apis/mybusiness_v3/service.rb +960 -0
  353. data/generated/google/apis/oauth2_v2.rb +43 -0
  354. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  355. data/generated/google/apis/oauth2_v2/representations.rb +102 -0
  356. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  357. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  358. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  359. data/generated/google/apis/pagespeedonline_v2/representations.rb +272 -0
  360. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  361. data/generated/google/apis/partners_v2.rb +32 -0
  362. data/generated/google/apis/partners_v2/classes.rb +942 -0
  363. data/generated/google/apis/partners_v2/representations.rb +454 -0
  364. data/generated/google/apis/partners_v2/service.rb +400 -0
  365. data/generated/google/apis/people_v1.rb +59 -0
  366. data/generated/google/apis/people_v1/classes.rb +1521 -0
  367. data/generated/google/apis/people_v1/representations.rb +663 -0
  368. data/generated/google/apis/people_v1/service.rb +189 -0
  369. data/generated/google/apis/plus_domains_v1.rb +61 -0
  370. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  371. data/generated/google/apis/plus_domains_v1/representations.rb +1111 -0
  372. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  373. data/generated/google/apis/plus_v1.rb +43 -0
  374. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  375. data/generated/google/apis/plus_v1/representations.rb +907 -0
  376. data/generated/google/apis/plus_v1/service.rb +470 -0
  377. data/generated/google/apis/prediction_v1_6.rb +47 -0
  378. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  379. data/generated/google/apis/prediction_v1_6/representations.rb +369 -0
  380. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  381. data/generated/google/apis/proximitybeacon_v1beta1.rb +34 -0
  382. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +786 -0
  383. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +347 -0
  384. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +806 -0
  385. data/generated/google/apis/pubsub_v1.rb +37 -0
  386. data/generated/google/apis/pubsub_v1/classes.rb +676 -0
  387. data/generated/google/apis/pubsub_v1/representations.rb +323 -0
  388. data/generated/google/apis/pubsub_v1/service.rb +900 -0
  389. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  390. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  391. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  392. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  393. data/generated/google/apis/qpx_express_v1.rb +31 -0
  394. data/generated/google/apis/qpx_express_v1/classes.rb +1274 -0
  395. data/generated/google/apis/qpx_express_v1/representations.rb +473 -0
  396. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  397. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  398. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  399. data/generated/google/apis/replicapool_v1beta2/representations.rb +264 -0
  400. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  401. data/generated/google/apis/replicapoolupdater_v1beta1.rb +45 -0
  402. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  403. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +294 -0
  404. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +509 -0
  405. data/generated/google/apis/reseller_v1.rb +37 -0
  406. data/generated/google/apis/reseller_v1/classes.rb +540 -0
  407. data/generated/google/apis/reseller_v1/representations.rb +225 -0
  408. data/generated/google/apis/reseller_v1/service.rb +623 -0
  409. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  410. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  411. data/generated/google/apis/resourceviews_v1beta2/representations.rb +301 -0
  412. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  413. data/generated/google/apis/script_v1.rb +64 -0
  414. data/generated/google/apis/script_v1/classes.rb +265 -0
  415. data/generated/google/apis/script_v1/representations.rb +119 -0
  416. data/generated/google/apis/script_v1/service.rb +98 -0
  417. data/generated/google/apis/sheets_v4.rb +43 -0
  418. data/generated/google/apis/sheets_v4/classes.rb +6368 -0
  419. data/generated/google/apis/sheets_v4/representations.rb +2289 -0
  420. data/generated/google/apis/sheets_v4/service.rb +569 -0
  421. data/generated/google/apis/site_verification_v1.rb +37 -0
  422. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  423. data/generated/google/apis/site_verification_v1/representations.rb +113 -0
  424. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  425. data/generated/google/apis/slides_v1.rb +49 -0
  426. data/generated/google/apis/slides_v1/classes.rb +4044 -0
  427. data/generated/google/apis/slides_v1/representations.rb +1765 -0
  428. data/generated/google/apis/slides_v1/service.rb +202 -0
  429. data/generated/google/apis/speech_v1beta1.rb +34 -0
  430. data/generated/google/apis/speech_v1beta1/classes.rb +513 -0
  431. data/generated/google/apis/speech_v1beta1/representations.rb +218 -0
  432. data/generated/google/apis/speech_v1beta1/service.rb +273 -0
  433. data/generated/google/apis/sqladmin_v1beta4.rb +38 -0
  434. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2142 -0
  435. data/generated/google/apis/sqladmin_v1beta4/representations.rb +893 -0
  436. data/generated/google/apis/sqladmin_v1beta4/service.rb +1709 -0
  437. data/generated/google/apis/storage_v1.rb +46 -0
  438. data/generated/google/apis/storage_v1/classes.rb +1255 -0
  439. data/generated/google/apis/storage_v1/representations.rb +502 -0
  440. data/generated/google/apis/storage_v1/service.rb +1906 -0
  441. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  442. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  443. data/generated/google/apis/storagetransfer_v1/representations.rb +418 -0
  444. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  445. data/generated/google/apis/tagmanager_v1.rb +52 -0
  446. data/generated/google/apis/tagmanager_v1/classes.rb +1494 -0
  447. data/generated/google/apis/tagmanager_v1/representations.rb +611 -0
  448. data/generated/google/apis/tagmanager_v1/service.rb +2119 -0
  449. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  450. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  451. data/generated/google/apis/taskqueue_v1beta2/representations.rb +126 -0
  452. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  453. data/generated/google/apis/tasks_v1.rb +37 -0
  454. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  455. data/generated/google/apis/tasks_v1/representations.rb +125 -0
  456. data/generated/google/apis/tasks_v1/service.rb +643 -0
  457. data/generated/google/apis/translate_v2.rb +31 -0
  458. data/generated/google/apis/translate_v2/classes.rb +168 -0
  459. data/generated/google/apis/translate_v2/representations.rb +121 -0
  460. data/generated/google/apis/translate_v2/service.rb +182 -0
  461. data/generated/google/apis/urlshortener_v1.rb +34 -0
  462. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  463. data/generated/google/apis/urlshortener_v1/representations.rb +121 -0
  464. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  465. data/generated/google/apis/vision_v1.rb +36 -0
  466. data/generated/google/apis/vision_v1/classes.rb +1267 -0
  467. data/generated/google/apis/vision_v1/representations.rb +418 -0
  468. data/generated/google/apis/vision_v1/service.rb +90 -0
  469. data/generated/google/apis/webmasters_v3.rb +37 -0
  470. data/generated/google/apis/webmasters_v3/classes.rb +570 -0
  471. data/generated/google/apis/webmasters_v3/representations.rb +283 -0
  472. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  473. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  474. data/generated/google/apis/youtube_analytics_v1/classes.rb +337 -0
  475. data/generated/google/apis/youtube_analytics_v1/representations.rb +174 -0
  476. data/generated/google/apis/youtube_analytics_v1/service.rb +486 -0
  477. data/generated/google/apis/youtube_partner_v1.rb +37 -0
  478. data/generated/google/apis/youtube_partner_v1/classes.rb +3854 -0
  479. data/generated/google/apis/youtube_partner_v1/representations.rb +1537 -0
  480. data/generated/google/apis/youtube_partner_v1/service.rb +3269 -0
  481. data/generated/google/apis/youtube_v3.rb +50 -0
  482. data/generated/google/apis/youtube_v3/classes.rb +8375 -0
  483. data/generated/google/apis/youtube_v3/representations.rb +3273 -0
  484. data/generated/google/apis/youtube_v3/service.rb +4440 -0
  485. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  486. data/generated/google/apis/youtubereporting_v1/classes.rb +302 -0
  487. data/generated/google/apis/youtubereporting_v1/representations.rb +149 -0
  488. data/generated/google/apis/youtubereporting_v1/service.rb +385 -0
  489. data/google-api-client.gemspec +33 -0
  490. data/lib/cacerts.pem +2183 -0
  491. data/lib/google/api_client/auth/installed_app.rb +128 -0
  492. data/lib/google/api_client/auth/key_utils.rb +94 -0
  493. data/lib/google/api_client/auth/storage.rb +104 -0
  494. data/lib/google/api_client/auth/storages/file_store.rb +57 -0
  495. data/lib/google/api_client/auth/storages/redis_store.rb +59 -0
  496. data/lib/google/api_client/client_secrets.rb +177 -0
  497. data/lib/google/apis.rb +58 -0
  498. data/lib/google/apis/core/api_command.rb +146 -0
  499. data/lib/google/apis/core/base_service.rb +401 -0
  500. data/lib/google/apis/core/batch.rb +239 -0
  501. data/lib/google/apis/core/download.rb +108 -0
  502. data/lib/google/apis/core/hashable.rb +44 -0
  503. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  504. data/lib/google/apis/core/http_command.rb +332 -0
  505. data/lib/google/apis/core/json_representation.rb +145 -0
  506. data/lib/google/apis/core/logging.rb +30 -0
  507. data/lib/google/apis/core/multipart.rb +187 -0
  508. data/lib/google/apis/core/upload.rb +295 -0
  509. data/lib/google/apis/errors.rb +80 -0
  510. data/lib/google/apis/generator.rb +70 -0
  511. data/lib/google/apis/generator/annotator.rb +301 -0
  512. data/lib/google/apis/generator/helpers.rb +74 -0
  513. data/lib/google/apis/generator/model.rb +143 -0
  514. data/lib/google/apis/generator/template.rb +124 -0
  515. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  516. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  517. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  518. data/lib/google/apis/generator/templates/_representation_stub.tmpl +17 -0
  519. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  520. data/lib/google/apis/generator/templates/classes.rb.tmpl +29 -0
  521. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  522. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  523. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  524. data/lib/google/apis/options.rb +85 -0
  525. data/lib/google/apis/version.rb +39 -0
  526. data/rakelib/metrics.rake +22 -0
  527. data/rakelib/rubocop.rake +10 -0
  528. data/rakelib/spec.rake +11 -0
  529. data/rakelib/yard.rake +11 -0
  530. data/samples/cli/.env +4 -0
  531. data/samples/cli/Gemfile +7 -0
  532. data/samples/cli/README.md +51 -0
  533. data/samples/cli/google-api-samples +32 -0
  534. data/samples/cli/lib/base_cli.rb +95 -0
  535. data/samples/cli/lib/samples/analytics.rb +62 -0
  536. data/samples/cli/lib/samples/androidpublisher.rb +47 -0
  537. data/samples/cli/lib/samples/bigquery.rb +101 -0
  538. data/samples/cli/lib/samples/calendar.rb +83 -0
  539. data/samples/cli/lib/samples/drive.rb +82 -0
  540. data/samples/cli/lib/samples/gmail.rb +124 -0
  541. data/samples/cli/lib/samples/pubsub.rb +114 -0
  542. data/samples/cli/lib/samples/sheets.rb +61 -0
  543. data/samples/cli/lib/samples/translate.rb +44 -0
  544. data/samples/cli/lib/samples/you_tube.rb +44 -0
  545. data/samples/web/.env +2 -0
  546. data/samples/web/Gemfile +7 -0
  547. data/samples/web/README.md +44 -0
  548. data/samples/web/app.rb +120 -0
  549. data/samples/web/views/calendar.erb +34 -0
  550. data/samples/web/views/drive.erb +33 -0
  551. data/samples/web/views/home.erb +34 -0
  552. data/samples/web/views/layout.erb +40 -0
  553. data/sync.rb +71 -0
  554. data/third_party/hurley_patches.rb +103 -0
  555. metadata +735 -0
@@ -0,0 +1,37 @@
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/analyticsreporting_v4/service.rb'
16
+ require 'google/apis/analyticsreporting_v4/classes.rb'
17
+ require 'google/apis/analyticsreporting_v4/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Google Analytics Reporting API
22
+ #
23
+ # Accesses Analytics report data.
24
+ #
25
+ # @see https://developers.google.com/analytics/devguides/reporting/core/v4/
26
+ module AnalyticsreportingV4
27
+ VERSION = 'V4'
28
+ REVISION = '20161129'
29
+
30
+ # View your Google Analytics data
31
+ AUTH_ANALYTICS_READONLY = 'https://www.googleapis.com/auth/analytics.readonly'
32
+
33
+ # View and manage your Google Analytics data
34
+ AUTH_ANALYTICS = 'https://www.googleapis.com/auth/analytics'
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,1420 @@
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 AnalyticsreportingV4
24
+
25
+ # The headers for each of the pivot sections defined in the request.
26
+ class PivotHeader
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The total number of groups for this pivot.
30
+ # Corresponds to the JSON property `totalPivotGroupsCount`
31
+ # @return [Fixnum]
32
+ attr_accessor :total_pivot_groups_count
33
+
34
+ # A single pivot section header.
35
+ # Corresponds to the JSON property `pivotHeaderEntries`
36
+ # @return [Array<Google::Apis::AnalyticsreportingV4::PivotHeaderEntry>]
37
+ attr_accessor :pivot_header_entries
38
+
39
+ def initialize(**args)
40
+ update!(**args)
41
+ end
42
+
43
+ # Update properties of this object
44
+ def update!(**args)
45
+ @total_pivot_groups_count = args[:total_pivot_groups_count] if args.key?(:total_pivot_groups_count)
46
+ @pivot_header_entries = args[:pivot_header_entries] if args.key?(:pivot_header_entries)
47
+ end
48
+ end
49
+
50
+ # [Metrics](https://support.google.com/analytics/answer/1033861)
51
+ # are the quantitative measurements. For example, the metric `ga:users`
52
+ # indicates the total number of users for the requested time period.
53
+ class Metric
54
+ include Google::Apis::Core::Hashable
55
+
56
+ # An alias for the metric expression is an alternate name for the
57
+ # expression. The alias can be used for filtering and sorting. This field
58
+ # is optional and is useful if the expression is not a single metric but
59
+ # a complex expression which cannot be used in filtering and sorting.
60
+ # The alias is also used in the response column header.
61
+ # Corresponds to the JSON property `alias`
62
+ # @return [String]
63
+ attr_accessor :alias
64
+
65
+ # Specifies how the metric expression should be formatted, for example
66
+ # `INTEGER`.
67
+ # Corresponds to the JSON property `formattingType`
68
+ # @return [String]
69
+ attr_accessor :formatting_type
70
+
71
+ # A metric expression in the request. An expression is constructed from one
72
+ # or more metrics and numbers. Accepted operators include: Plus (+), Minus
73
+ # (-), Negation (Unary -), Divided by (/), Multiplied by (*), Parenthesis,
74
+ # Positive cardinal numbers (0-9), can include decimals and is limited to
75
+ # 1024 characters. Example `ga:totalRefunds/ga:users`, in most cases the
76
+ # metric expression is just a single metric name like `ga:users`.
77
+ # Adding mixed `MetricType` (E.g., `CURRENCY` + `PERCENTAGE`) metrics
78
+ # will result in unexpected results.
79
+ # Corresponds to the JSON property `expression`
80
+ # @return [String]
81
+ attr_accessor :expression
82
+
83
+ def initialize(**args)
84
+ update!(**args)
85
+ end
86
+
87
+ # Update properties of this object
88
+ def update!(**args)
89
+ @alias = args[:alias] if args.key?(:alias)
90
+ @formatting_type = args[:formatting_type] if args.key?(:formatting_type)
91
+ @expression = args[:expression] if args.key?(:expression)
92
+ end
93
+ end
94
+
95
+ # Column headers.
96
+ class ColumnHeader
97
+ include Google::Apis::Core::Hashable
98
+
99
+ # The dimension names in the response.
100
+ # Corresponds to the JSON property `dimensions`
101
+ # @return [Array<String>]
102
+ attr_accessor :dimensions
103
+
104
+ # The headers for the metrics.
105
+ # Corresponds to the JSON property `metricHeader`
106
+ # @return [Google::Apis::AnalyticsreportingV4::MetricHeader]
107
+ attr_accessor :metric_header
108
+
109
+ def initialize(**args)
110
+ update!(**args)
111
+ end
112
+
113
+ # Update properties of this object
114
+ def update!(**args)
115
+ @dimensions = args[:dimensions] if args.key?(:dimensions)
116
+ @metric_header = args[:metric_header] if args.key?(:metric_header)
117
+ end
118
+ end
119
+
120
+ # Dynamic segment definition for defining the segment within the request.
121
+ # A segment can select users, sessions or both.
122
+ class DynamicSegment
123
+ include Google::Apis::Core::Hashable
124
+
125
+ # SegmentDefinition defines the segment to be a set of SegmentFilters which
126
+ # are combined together with a logical `AND` operation.
127
+ # Corresponds to the JSON property `sessionSegment`
128
+ # @return [Google::Apis::AnalyticsreportingV4::SegmentDefinition]
129
+ attr_accessor :session_segment
130
+
131
+ # The name of the dynamic segment.
132
+ # Corresponds to the JSON property `name`
133
+ # @return [String]
134
+ attr_accessor :name
135
+
136
+ # SegmentDefinition defines the segment to be a set of SegmentFilters which
137
+ # are combined together with a logical `AND` operation.
138
+ # Corresponds to the JSON property `userSegment`
139
+ # @return [Google::Apis::AnalyticsreportingV4::SegmentDefinition]
140
+ attr_accessor :user_segment
141
+
142
+ def initialize(**args)
143
+ update!(**args)
144
+ end
145
+
146
+ # Update properties of this object
147
+ def update!(**args)
148
+ @session_segment = args[:session_segment] if args.key?(:session_segment)
149
+ @name = args[:name] if args.key?(:name)
150
+ @user_segment = args[:user_segment] if args.key?(:user_segment)
151
+ end
152
+ end
153
+
154
+ # The headers for the metrics.
155
+ class MetricHeader
156
+ include Google::Apis::Core::Hashable
157
+
158
+ # Headers for the metrics in the response.
159
+ # Corresponds to the JSON property `metricHeaderEntries`
160
+ # @return [Array<Google::Apis::AnalyticsreportingV4::MetricHeaderEntry>]
161
+ attr_accessor :metric_header_entries
162
+
163
+ # Headers for the pivots in the response.
164
+ # Corresponds to the JSON property `pivotHeaders`
165
+ # @return [Array<Google::Apis::AnalyticsreportingV4::PivotHeader>]
166
+ attr_accessor :pivot_headers
167
+
168
+ def initialize(**args)
169
+ update!(**args)
170
+ end
171
+
172
+ # Update properties of this object
173
+ def update!(**args)
174
+ @metric_header_entries = args[:metric_header_entries] if args.key?(:metric_header_entries)
175
+ @pivot_headers = args[:pivot_headers] if args.key?(:pivot_headers)
176
+ end
177
+ end
178
+
179
+ # The data response corresponding to the request.
180
+ class Report
181
+ include Google::Apis::Core::Hashable
182
+
183
+ # Column headers.
184
+ # Corresponds to the JSON property `columnHeader`
185
+ # @return [Google::Apis::AnalyticsreportingV4::ColumnHeader]
186
+ attr_accessor :column_header
187
+
188
+ # The data part of the report.
189
+ # Corresponds to the JSON property `data`
190
+ # @return [Google::Apis::AnalyticsreportingV4::ReportData]
191
+ attr_accessor :data
192
+
193
+ # Page token to retrieve the next page of results in the list.
194
+ # Corresponds to the JSON property `nextPageToken`
195
+ # @return [String]
196
+ attr_accessor :next_page_token
197
+
198
+ def initialize(**args)
199
+ update!(**args)
200
+ end
201
+
202
+ # Update properties of this object
203
+ def update!(**args)
204
+ @column_header = args[:column_header] if args.key?(:column_header)
205
+ @data = args[:data] if args.key?(:data)
206
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
207
+ end
208
+ end
209
+
210
+ # Filter Clause to be used in a segment definition, can be wither a metric or
211
+ # a dimension filter.
212
+ class SegmentFilterClause
213
+ include Google::Apis::Core::Hashable
214
+
215
+ # Dimension filter specifies the filtering options on a dimension.
216
+ # Corresponds to the JSON property `dimensionFilter`
217
+ # @return [Google::Apis::AnalyticsreportingV4::SegmentDimensionFilter]
218
+ attr_accessor :dimension_filter
219
+
220
+ # Metric filter to be used in a segment filter clause.
221
+ # Corresponds to the JSON property `metricFilter`
222
+ # @return [Google::Apis::AnalyticsreportingV4::SegmentMetricFilter]
223
+ attr_accessor :metric_filter
224
+
225
+ # Matches the complement (`!`) of the filter.
226
+ # Corresponds to the JSON property `not`
227
+ # @return [Boolean]
228
+ attr_accessor :not
229
+ alias_method :not?, :not
230
+
231
+ def initialize(**args)
232
+ update!(**args)
233
+ end
234
+
235
+ # Update properties of this object
236
+ def update!(**args)
237
+ @dimension_filter = args[:dimension_filter] if args.key?(:dimension_filter)
238
+ @metric_filter = args[:metric_filter] if args.key?(:metric_filter)
239
+ @not = args[:not] if args.key?(:not)
240
+ end
241
+ end
242
+
243
+ # Dimension filter specifies the filtering options on a dimension.
244
+ class DimensionFilter
245
+ include Google::Apis::Core::Hashable
246
+
247
+ # The dimension to filter on. A DimensionFilter must contain a dimension.
248
+ # Corresponds to the JSON property `dimensionName`
249
+ # @return [String]
250
+ attr_accessor :dimension_name
251
+
252
+ # How to match the dimension to the expression. The default is REGEXP.
253
+ # Corresponds to the JSON property `operator`
254
+ # @return [String]
255
+ attr_accessor :operator
256
+
257
+ # Should the match be case sensitive? Default is false.
258
+ # Corresponds to the JSON property `caseSensitive`
259
+ # @return [Boolean]
260
+ attr_accessor :case_sensitive
261
+ alias_method :case_sensitive?, :case_sensitive
262
+
263
+ # Strings or regular expression to match against. Only the first value of
264
+ # the list is used for comparison unless the operator is `IN_LIST`.
265
+ # If `IN_LIST` operator, then the entire list is used to filter the
266
+ # dimensions as explained in the description of the `IN_LIST` operator.
267
+ # Corresponds to the JSON property `expressions`
268
+ # @return [Array<String>]
269
+ attr_accessor :expressions
270
+
271
+ # Logical `NOT` operator. If this boolean is set to true, then the matching
272
+ # dimension values will be excluded in the report. The default is false.
273
+ # Corresponds to the JSON property `not`
274
+ # @return [Boolean]
275
+ attr_accessor :not
276
+ alias_method :not?, :not
277
+
278
+ def initialize(**args)
279
+ update!(**args)
280
+ end
281
+
282
+ # Update properties of this object
283
+ def update!(**args)
284
+ @dimension_name = args[:dimension_name] if args.key?(:dimension_name)
285
+ @operator = args[:operator] if args.key?(:operator)
286
+ @case_sensitive = args[:case_sensitive] if args.key?(:case_sensitive)
287
+ @expressions = args[:expressions] if args.key?(:expressions)
288
+ @not = args[:not] if args.key?(:not)
289
+ end
290
+ end
291
+
292
+ # Dimension filter specifies the filtering options on a dimension.
293
+ class SegmentDimensionFilter
294
+ include Google::Apis::Core::Hashable
295
+
296
+ # Maximum comparison values for `BETWEEN` match type.
297
+ # Corresponds to the JSON property `maxComparisonValue`
298
+ # @return [String]
299
+ attr_accessor :max_comparison_value
300
+
301
+ # Name of the dimension for which the filter is being applied.
302
+ # Corresponds to the JSON property `dimensionName`
303
+ # @return [String]
304
+ attr_accessor :dimension_name
305
+
306
+ # Should the match be case sensitive, ignored for `IN_LIST` operator.
307
+ # Corresponds to the JSON property `caseSensitive`
308
+ # @return [Boolean]
309
+ attr_accessor :case_sensitive
310
+ alias_method :case_sensitive?, :case_sensitive
311
+
312
+ # The operator to use to match the dimension with the expressions.
313
+ # Corresponds to the JSON property `operator`
314
+ # @return [String]
315
+ attr_accessor :operator
316
+
317
+ # The list of expressions, only the first element is used for all operators
318
+ # Corresponds to the JSON property `expressions`
319
+ # @return [Array<String>]
320
+ attr_accessor :expressions
321
+
322
+ # Minimum comparison values for `BETWEEN` match type.
323
+ # Corresponds to the JSON property `minComparisonValue`
324
+ # @return [String]
325
+ attr_accessor :min_comparison_value
326
+
327
+ def initialize(**args)
328
+ update!(**args)
329
+ end
330
+
331
+ # Update properties of this object
332
+ def update!(**args)
333
+ @max_comparison_value = args[:max_comparison_value] if args.key?(:max_comparison_value)
334
+ @dimension_name = args[:dimension_name] if args.key?(:dimension_name)
335
+ @case_sensitive = args[:case_sensitive] if args.key?(:case_sensitive)
336
+ @operator = args[:operator] if args.key?(:operator)
337
+ @expressions = args[:expressions] if args.key?(:expressions)
338
+ @min_comparison_value = args[:min_comparison_value] if args.key?(:min_comparison_value)
339
+ end
340
+ end
341
+
342
+ # The main request class which specifies the Reporting API request.
343
+ class ReportRequest
344
+ include Google::Apis::Core::Hashable
345
+
346
+ # Defines a cohort group.
347
+ # For example:
348
+ # "cohortGroup": `
349
+ # "cohorts": [`
350
+ # "name": "cohort 1",
351
+ # "type": "FIRST_VISIT_DATE",
352
+ # "dateRange": ` "startDate": "2015-08-01", "endDate": "2015-08-01" `
353
+ # `,`
354
+ # "name": "cohort 2"
355
+ # "type": "FIRST_VISIT_DATE"
356
+ # "dateRange": ` "startDate": "2015-07-01", "endDate": "2015-07-01" `
357
+ # `]
358
+ # `
359
+ # Corresponds to the JSON property `cohortGroup`
360
+ # @return [Google::Apis::AnalyticsreportingV4::CohortGroup]
361
+ attr_accessor :cohort_group
362
+
363
+ # The dimensions requested.
364
+ # Requests can have a total of 7 dimensions.
365
+ # Corresponds to the JSON property `dimensions`
366
+ # @return [Array<Google::Apis::AnalyticsreportingV4::Dimension>]
367
+ attr_accessor :dimensions
368
+
369
+ # The metric filter clauses. They are logically combined with the `AND`
370
+ # operator. Metric filters look at only the first date range and not the
371
+ # comparing date range. Note that filtering on metrics occurs after the
372
+ # metrics are aggregated.
373
+ # Corresponds to the JSON property `metricFilterClauses`
374
+ # @return [Array<Google::Apis::AnalyticsreportingV4::MetricFilterClause>]
375
+ attr_accessor :metric_filter_clauses
376
+
377
+ # If set to true, hides the total of all metrics for all the matching rows,
378
+ # for every date range. The default false and will return the totals.
379
+ # Corresponds to the JSON property `hideTotals`
380
+ # @return [Boolean]
381
+ attr_accessor :hide_totals
382
+ alias_method :hide_totals?, :hide_totals
383
+
384
+ # If set to false, the response does not include rows if all the retrieved
385
+ # metrics are equal to zero. The default is false which will exclude these
386
+ # rows.
387
+ # Corresponds to the JSON property `includeEmptyRows`
388
+ # @return [Boolean]
389
+ attr_accessor :include_empty_rows
390
+ alias_method :include_empty_rows?, :include_empty_rows
391
+
392
+ # The dimension filter clauses for filtering Dimension Values. They are
393
+ # logically combined with the `AND` operator. Note that filtering occurs
394
+ # before any dimensions are aggregated, so that the returned metrics
395
+ # represent the total for only the relevant dimensions.
396
+ # Corresponds to the JSON property `dimensionFilterClauses`
397
+ # @return [Array<Google::Apis::AnalyticsreportingV4::DimensionFilterClause>]
398
+ attr_accessor :dimension_filter_clauses
399
+
400
+ # The pivot definitions. Requests can have a maximum of 2 pivots.
401
+ # Corresponds to the JSON property `pivots`
402
+ # @return [Array<Google::Apis::AnalyticsreportingV4::Pivot>]
403
+ attr_accessor :pivots
404
+
405
+ # Date ranges in the request. The request can have a maximum of 2 date
406
+ # ranges. The response will contain a set of metric values for each
407
+ # combination of the dimensions for each date range in the request. So, if
408
+ # there are two date ranges, there will be two set of metric values, one for
409
+ # the original date range and one for the second date range.
410
+ # The `reportRequest.dateRanges` field should not be specified for cohorts
411
+ # or Lifetime value requests.
412
+ # If a date range is not provided, the default date range is (startDate:
413
+ # current date - 7 days, endDate: current date - 1 day). Every
414
+ # [ReportRequest](#ReportRequest) within a `batchGet` method must
415
+ # contain the same `dateRanges` definition.
416
+ # Corresponds to the JSON property `dateRanges`
417
+ # @return [Array<Google::Apis::AnalyticsreportingV4::DateRange>]
418
+ attr_accessor :date_ranges
419
+
420
+ # Segment the data returned for the request. A segment definition helps look
421
+ # at a subset of the segment request. A request can contain up to four
422
+ # segments. Every [ReportRequest](#ReportRequest) within a
423
+ # `batchGet` method must contain the same `segments` definition. Requests
424
+ # with segments must have the `ga:segment` dimension.
425
+ # Corresponds to the JSON property `segments`
426
+ # @return [Array<Google::Apis::AnalyticsreportingV4::Segment>]
427
+ attr_accessor :segments
428
+
429
+ # The desired report
430
+ # [sample](https://support.google.com/analytics/answer/2637192) size.
431
+ # If the the `samplingLevel` field is unspecified the `DEFAULT` sampling
432
+ # level is used. Every [ReportRequest](#ReportRequest) within a
433
+ # `batchGet` method must contain the same `samplingLevel` definition. See
434
+ # [developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)
435
+ # for details.
436
+ # Corresponds to the JSON property `samplingLevel`
437
+ # @return [String]
438
+ attr_accessor :sampling_level
439
+
440
+ # The metrics requested.
441
+ # Requests must specify at least one metric. Requests can have a
442
+ # total of 10 metrics.
443
+ # Corresponds to the JSON property `metrics`
444
+ # @return [Array<Google::Apis::AnalyticsreportingV4::Metric>]
445
+ attr_accessor :metrics
446
+
447
+ # Page size is for paging and specifies the maximum number of returned rows.
448
+ # Page size should be >= 0. A query returns the default of 1,000 rows.
449
+ # The Analytics Core Reporting API returns a maximum of 10,000 rows per
450
+ # request, no matter how many you ask for. It can also return fewer rows
451
+ # than requested, if there aren't as many dimension segments as you expect.
452
+ # For instance, there are fewer than 300 possible values for `ga:country`,
453
+ # so when segmenting only by country, you can't get more than 300 rows,
454
+ # even if you set `pageSize` to a higher value.
455
+ # Corresponds to the JSON property `pageSize`
456
+ # @return [Fixnum]
457
+ attr_accessor :page_size
458
+
459
+ # Sort order on output rows. To compare two rows, the elements of the
460
+ # following are applied in order until a difference is found. All date
461
+ # ranges in the output get the same row order.
462
+ # Corresponds to the JSON property `orderBys`
463
+ # @return [Array<Google::Apis::AnalyticsreportingV4::OrderBy>]
464
+ attr_accessor :order_bys
465
+
466
+ # Dimension or metric filters that restrict the data returned for your
467
+ # request. To use the `filtersExpression`, supply a dimension or metric on
468
+ # which to filter, followed by the filter expression. For example, the
469
+ # following expression selects `ga:browser` dimension which starts with
470
+ # Firefox; `ga:browser=~^Firefox`. For more information on dimensions
471
+ # and metric filters, see
472
+ # [Filters reference](https://developers.google.com/analytics/devguides/
473
+ # reporting/core/v3/reference#filters).
474
+ # Corresponds to the JSON property `filtersExpression`
475
+ # @return [String]
476
+ attr_accessor :filters_expression
477
+
478
+ # If set to true, hides the minimum and maximum across all matching rows.
479
+ # The default is false and the value ranges are returned.
480
+ # Corresponds to the JSON property `hideValueRanges`
481
+ # @return [Boolean]
482
+ attr_accessor :hide_value_ranges
483
+ alias_method :hide_value_ranges?, :hide_value_ranges
484
+
485
+ # The Analytics
486
+ # [view ID](https://support.google.com/analytics/answer/1009618)
487
+ # from which to retrieve data. Every [ReportRequest](#ReportRequest)
488
+ # within a `batchGet` method must contain the same `viewId`.
489
+ # Corresponds to the JSON property `viewId`
490
+ # @return [String]
491
+ attr_accessor :view_id
492
+
493
+ # A continuation token to get the next page of the results. Adding this to
494
+ # the request will return the rows after the pageToken. The pageToken should
495
+ # be the value returned in the nextPageToken parameter in the response to
496
+ # the GetReports request.
497
+ # Corresponds to the JSON property `pageToken`
498
+ # @return [String]
499
+ attr_accessor :page_token
500
+
501
+ def initialize(**args)
502
+ update!(**args)
503
+ end
504
+
505
+ # Update properties of this object
506
+ def update!(**args)
507
+ @cohort_group = args[:cohort_group] if args.key?(:cohort_group)
508
+ @dimensions = args[:dimensions] if args.key?(:dimensions)
509
+ @metric_filter_clauses = args[:metric_filter_clauses] if args.key?(:metric_filter_clauses)
510
+ @hide_totals = args[:hide_totals] if args.key?(:hide_totals)
511
+ @include_empty_rows = args[:include_empty_rows] if args.key?(:include_empty_rows)
512
+ @dimension_filter_clauses = args[:dimension_filter_clauses] if args.key?(:dimension_filter_clauses)
513
+ @pivots = args[:pivots] if args.key?(:pivots)
514
+ @date_ranges = args[:date_ranges] if args.key?(:date_ranges)
515
+ @segments = args[:segments] if args.key?(:segments)
516
+ @sampling_level = args[:sampling_level] if args.key?(:sampling_level)
517
+ @metrics = args[:metrics] if args.key?(:metrics)
518
+ @page_size = args[:page_size] if args.key?(:page_size)
519
+ @order_bys = args[:order_bys] if args.key?(:order_bys)
520
+ @filters_expression = args[:filters_expression] if args.key?(:filters_expression)
521
+ @hide_value_ranges = args[:hide_value_ranges] if args.key?(:hide_value_ranges)
522
+ @view_id = args[:view_id] if args.key?(:view_id)
523
+ @page_token = args[:page_token] if args.key?(:page_token)
524
+ end
525
+ end
526
+
527
+ # A Simple segment conditions consist of one or more dimension/metric
528
+ # conditions that can be combined.
529
+ class SimpleSegment
530
+ include Google::Apis::Core::Hashable
531
+
532
+ # A list of segment filters groups which are combined with logical `AND`
533
+ # operator.
534
+ # Corresponds to the JSON property `orFiltersForSegment`
535
+ # @return [Array<Google::Apis::AnalyticsreportingV4::OrFiltersForSegment>]
536
+ attr_accessor :or_filters_for_segment
537
+
538
+ def initialize(**args)
539
+ update!(**args)
540
+ end
541
+
542
+ # Update properties of this object
543
+ def update!(**args)
544
+ @or_filters_for_segment = args[:or_filters_for_segment] if args.key?(:or_filters_for_segment)
545
+ end
546
+ end
547
+
548
+ # SegmentDefinition defines the segment to be a set of SegmentFilters which
549
+ # are combined together with a logical `AND` operation.
550
+ class SegmentDefinition
551
+ include Google::Apis::Core::Hashable
552
+
553
+ # A segment is defined by a set of segment filters which are combined
554
+ # together with a logical `AND` operation.
555
+ # Corresponds to the JSON property `segmentFilters`
556
+ # @return [Array<Google::Apis::AnalyticsreportingV4::SegmentFilter>]
557
+ attr_accessor :segment_filters
558
+
559
+ def initialize(**args)
560
+ update!(**args)
561
+ end
562
+
563
+ # Update properties of this object
564
+ def update!(**args)
565
+ @segment_filters = args[:segment_filters] if args.key?(:segment_filters)
566
+ end
567
+ end
568
+
569
+ # Metric filter to be used in a segment filter clause.
570
+ class SegmentMetricFilter
571
+ include Google::Apis::Core::Hashable
572
+
573
+ # The metric that will be filtered on. A `metricFilter` must contain a
574
+ # metric name.
575
+ # Corresponds to the JSON property `metricName`
576
+ # @return [String]
577
+ attr_accessor :metric_name
578
+
579
+ # Specifies is the operation to perform to compare the metric. The default
580
+ # is `EQUAL`.
581
+ # Corresponds to the JSON property `operator`
582
+ # @return [String]
583
+ attr_accessor :operator
584
+
585
+ # The value to compare against. If the operator is `BETWEEN`, this value is
586
+ # treated as minimum comparison value.
587
+ # Corresponds to the JSON property `comparisonValue`
588
+ # @return [String]
589
+ attr_accessor :comparison_value
590
+
591
+ # Scope for a metric defines the level at which that metric is defined. The
592
+ # specified metric scope must be equal to or greater than its primary scope
593
+ # as defined in the data model. The primary scope is defined by if the
594
+ # segment is selecting users or sessions.
595
+ # Corresponds to the JSON property `scope`
596
+ # @return [String]
597
+ attr_accessor :scope
598
+
599
+ # Max comparison value is only used for `BETWEEN` operator.
600
+ # Corresponds to the JSON property `maxComparisonValue`
601
+ # @return [String]
602
+ attr_accessor :max_comparison_value
603
+
604
+ def initialize(**args)
605
+ update!(**args)
606
+ end
607
+
608
+ # Update properties of this object
609
+ def update!(**args)
610
+ @metric_name = args[:metric_name] if args.key?(:metric_name)
611
+ @operator = args[:operator] if args.key?(:operator)
612
+ @comparison_value = args[:comparison_value] if args.key?(:comparison_value)
613
+ @scope = args[:scope] if args.key?(:scope)
614
+ @max_comparison_value = args[:max_comparison_value] if args.key?(:max_comparison_value)
615
+ end
616
+ end
617
+
618
+ # The data part of the report.
619
+ class ReportData
620
+ include Google::Apis::Core::Hashable
621
+
622
+ # Total number of matching rows for this query.
623
+ # Corresponds to the JSON property `rowCount`
624
+ # @return [Fixnum]
625
+ attr_accessor :row_count
626
+
627
+ # If the results are
628
+ # [sampled](https://support.google.com/analytics/answer/2637192),
629
+ # this returns the total number of
630
+ # samples present, one entry per date range. If the results are not sampled
631
+ # this field will not be defined. See
632
+ # [developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)
633
+ # for details.
634
+ # Corresponds to the JSON property `samplingSpaceSizes`
635
+ # @return [Array<String>]
636
+ attr_accessor :sampling_space_sizes
637
+
638
+ # Minimum and maximum values seen over all matching rows. These are both
639
+ # empty when `hideValueRanges` in the request is false, or when
640
+ # rowCount is zero.
641
+ # Corresponds to the JSON property `maximums`
642
+ # @return [Array<Google::Apis::AnalyticsreportingV4::DateRangeValues>]
643
+ attr_accessor :maximums
644
+
645
+ # If the results are
646
+ # [sampled](https://support.google.com/analytics/answer/2637192),
647
+ # this returns the total number of samples read, one entry per date range.
648
+ # If the results are not sampled this field will not be defined. See
649
+ # [developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)
650
+ # for details.
651
+ # Corresponds to the JSON property `samplesReadCounts`
652
+ # @return [Array<String>]
653
+ attr_accessor :samples_read_counts
654
+
655
+ # Minimum and maximum values seen over all matching rows. These are both
656
+ # empty when `hideValueRanges` in the request is false, or when
657
+ # rowCount is zero.
658
+ # Corresponds to the JSON property `minimums`
659
+ # @return [Array<Google::Apis::AnalyticsreportingV4::DateRangeValues>]
660
+ attr_accessor :minimums
661
+
662
+ # There's one ReportRow for every unique combination of dimensions.
663
+ # Corresponds to the JSON property `rows`
664
+ # @return [Array<Google::Apis::AnalyticsreportingV4::ReportRow>]
665
+ attr_accessor :rows
666
+
667
+ # The last time the data in the report was refreshed. All the hits received
668
+ # before this timestamp are included in the calculation of the report.
669
+ # Corresponds to the JSON property `dataLastRefreshed`
670
+ # @return [String]
671
+ attr_accessor :data_last_refreshed
672
+
673
+ # For each requested date range, for the set of all rows that match
674
+ # the query, every requested value format gets a total. The total
675
+ # for a value format is computed by first totaling the metrics
676
+ # mentioned in the value format and then evaluating the value
677
+ # format as a scalar expression. E.g., The "totals" for
678
+ # `3 / (ga:sessions + 2)` we compute
679
+ # `3 / ((sum of all relevant ga:sessions) + 2)`.
680
+ # Totals are computed before pagination.
681
+ # Corresponds to the JSON property `totals`
682
+ # @return [Array<Google::Apis::AnalyticsreportingV4::DateRangeValues>]
683
+ attr_accessor :totals
684
+
685
+ # Indicates if response to this request is golden or not. Data is
686
+ # golden when the exact same request will not produce any new results if
687
+ # asked at a later point in time.
688
+ # Corresponds to the JSON property `isDataGolden`
689
+ # @return [Boolean]
690
+ attr_accessor :is_data_golden
691
+ alias_method :is_data_golden?, :is_data_golden
692
+
693
+ def initialize(**args)
694
+ update!(**args)
695
+ end
696
+
697
+ # Update properties of this object
698
+ def update!(**args)
699
+ @row_count = args[:row_count] if args.key?(:row_count)
700
+ @sampling_space_sizes = args[:sampling_space_sizes] if args.key?(:sampling_space_sizes)
701
+ @maximums = args[:maximums] if args.key?(:maximums)
702
+ @samples_read_counts = args[:samples_read_counts] if args.key?(:samples_read_counts)
703
+ @minimums = args[:minimums] if args.key?(:minimums)
704
+ @rows = args[:rows] if args.key?(:rows)
705
+ @data_last_refreshed = args[:data_last_refreshed] if args.key?(:data_last_refreshed)
706
+ @totals = args[:totals] if args.key?(:totals)
707
+ @is_data_golden = args[:is_data_golden] if args.key?(:is_data_golden)
708
+ end
709
+ end
710
+
711
+ # The batch request containing multiple report request.
712
+ class GetReportsRequest
713
+ include Google::Apis::Core::Hashable
714
+
715
+ # Requests, each request will have a separate response.
716
+ # There can be a maximum of 5 requests. All requests should have the same
717
+ # `dateRanges`, `viewId`, `segments`, `samplingLevel`, and `cohortGroup`.
718
+ # Corresponds to the JSON property `reportRequests`
719
+ # @return [Array<Google::Apis::AnalyticsreportingV4::ReportRequest>]
720
+ attr_accessor :report_requests
721
+
722
+ def initialize(**args)
723
+ update!(**args)
724
+ end
725
+
726
+ # Update properties of this object
727
+ def update!(**args)
728
+ @report_requests = args[:report_requests] if args.key?(:report_requests)
729
+ end
730
+ end
731
+
732
+ # Specifies the sorting options.
733
+ class OrderBy
734
+ include Google::Apis::Core::Hashable
735
+
736
+ # The sorting order for the field.
737
+ # Corresponds to the JSON property `sortOrder`
738
+ # @return [String]
739
+ attr_accessor :sort_order
740
+
741
+ # The order type. The default orderType is `VALUE`.
742
+ # Corresponds to the JSON property `orderType`
743
+ # @return [String]
744
+ attr_accessor :order_type
745
+
746
+ # The field which to sort by. The default sort order is ascending. Example:
747
+ # `ga:browser`.
748
+ # Note, that you can only specify one field for sort here. For example,
749
+ # `ga:browser, ga:city` is not valid.
750
+ # Corresponds to the JSON property `fieldName`
751
+ # @return [String]
752
+ attr_accessor :field_name
753
+
754
+ def initialize(**args)
755
+ update!(**args)
756
+ end
757
+
758
+ # Update properties of this object
759
+ def update!(**args)
760
+ @sort_order = args[:sort_order] if args.key?(:sort_order)
761
+ @order_type = args[:order_type] if args.key?(:order_type)
762
+ @field_name = args[:field_name] if args.key?(:field_name)
763
+ end
764
+ end
765
+
766
+ # Defines a cohort. A cohort is a group of users who share a common
767
+ # characteristic. For example, all users with the same acquisition date
768
+ # belong to the same cohort.
769
+ class Cohort
770
+ include Google::Apis::Core::Hashable
771
+
772
+ # Type of the cohort. The only supported type as of now is
773
+ # `FIRST_VISIT_DATE`. If this field is unspecified the cohort is treated
774
+ # as `FIRST_VISIT_DATE` type cohort.
775
+ # Corresponds to the JSON property `type`
776
+ # @return [String]
777
+ attr_accessor :type
778
+
779
+ # A contiguous set of days: startDate, startDate + 1 day, ..., endDate.
780
+ # The start and end dates are specified in
781
+ # [ISO8601](https://en.wikipedia.org/wiki/ISO_8601) date format `YYYY-MM-DD`.
782
+ # Corresponds to the JSON property `dateRange`
783
+ # @return [Google::Apis::AnalyticsreportingV4::DateRange]
784
+ attr_accessor :date_range
785
+
786
+ # A unique name for the cohort. If not defined name will be auto-generated
787
+ # with values cohort_[1234...].
788
+ # Corresponds to the JSON property `name`
789
+ # @return [String]
790
+ attr_accessor :name
791
+
792
+ def initialize(**args)
793
+ update!(**args)
794
+ end
795
+
796
+ # Update properties of this object
797
+ def update!(**args)
798
+ @type = args[:type] if args.key?(:type)
799
+ @date_range = args[:date_range] if args.key?(:date_range)
800
+ @name = args[:name] if args.key?(:name)
801
+ end
802
+ end
803
+
804
+ # A list of segment filters in the `OR` group are combined with the logical OR
805
+ # operator.
806
+ class OrFiltersForSegment
807
+ include Google::Apis::Core::Hashable
808
+
809
+ # List of segment filters to be combined with a `OR` operator.
810
+ # Corresponds to the JSON property `segmentFilterClauses`
811
+ # @return [Array<Google::Apis::AnalyticsreportingV4::SegmentFilterClause>]
812
+ attr_accessor :segment_filter_clauses
813
+
814
+ def initialize(**args)
815
+ update!(**args)
816
+ end
817
+
818
+ # Update properties of this object
819
+ def update!(**args)
820
+ @segment_filter_clauses = args[:segment_filter_clauses] if args.key?(:segment_filter_clauses)
821
+ end
822
+ end
823
+
824
+ # Sequence conditions consist of one or more steps, where each step is defined
825
+ # by one or more dimension/metric conditions. Multiple steps can be combined
826
+ # with special sequence operators.
827
+ class SequenceSegment
828
+ include Google::Apis::Core::Hashable
829
+
830
+ # If set, first step condition must match the first hit of the visitor (in
831
+ # the date range).
832
+ # Corresponds to the JSON property `firstStepShouldMatchFirstHit`
833
+ # @return [Boolean]
834
+ attr_accessor :first_step_should_match_first_hit
835
+ alias_method :first_step_should_match_first_hit?, :first_step_should_match_first_hit
836
+
837
+ # The list of steps in the sequence.
838
+ # Corresponds to the JSON property `segmentSequenceSteps`
839
+ # @return [Array<Google::Apis::AnalyticsreportingV4::SegmentSequenceStep>]
840
+ attr_accessor :segment_sequence_steps
841
+
842
+ def initialize(**args)
843
+ update!(**args)
844
+ end
845
+
846
+ # Update properties of this object
847
+ def update!(**args)
848
+ @first_step_should_match_first_hit = args[:first_step_should_match_first_hit] if args.key?(:first_step_should_match_first_hit)
849
+ @segment_sequence_steps = args[:segment_sequence_steps] if args.key?(:segment_sequence_steps)
850
+ end
851
+ end
852
+
853
+ # SegmentFilter defines the segment to be either a simple or a sequence
854
+ # segment. A simple segment condition contains dimension and metric conditions
855
+ # to select the sessions or users. A sequence segment condition can be used to
856
+ # select users or sessions based on sequential conditions.
857
+ class SegmentFilter
858
+ include Google::Apis::Core::Hashable
859
+
860
+ # Sequence conditions consist of one or more steps, where each step is defined
861
+ # by one or more dimension/metric conditions. Multiple steps can be combined
862
+ # with special sequence operators.
863
+ # Corresponds to the JSON property `sequenceSegment`
864
+ # @return [Google::Apis::AnalyticsreportingV4::SequenceSegment]
865
+ attr_accessor :sequence_segment
866
+
867
+ # If true, match the complement of simple or sequence segment.
868
+ # For example, to match all visits not from "New York", we can define the
869
+ # segment as follows:
870
+ # "sessionSegment": `
871
+ # "segmentFilters": [`
872
+ # "simpleSegment" :`
873
+ # "orFiltersForSegment": [`
874
+ # "segmentFilterClauses":[`
875
+ # "dimensionFilter": `
876
+ # "dimensionName": "ga:city",
877
+ # "expressions": ["New York"]
878
+ # `
879
+ # `]
880
+ # `]
881
+ # `,
882
+ # "not": "True"
883
+ # `]
884
+ # `,
885
+ # Corresponds to the JSON property `not`
886
+ # @return [Boolean]
887
+ attr_accessor :not
888
+ alias_method :not?, :not
889
+
890
+ # A Simple segment conditions consist of one or more dimension/metric
891
+ # conditions that can be combined.
892
+ # Corresponds to the JSON property `simpleSegment`
893
+ # @return [Google::Apis::AnalyticsreportingV4::SimpleSegment]
894
+ attr_accessor :simple_segment
895
+
896
+ def initialize(**args)
897
+ update!(**args)
898
+ end
899
+
900
+ # Update properties of this object
901
+ def update!(**args)
902
+ @sequence_segment = args[:sequence_segment] if args.key?(:sequence_segment)
903
+ @not = args[:not] if args.key?(:not)
904
+ @simple_segment = args[:simple_segment] if args.key?(:simple_segment)
905
+ end
906
+ end
907
+
908
+ # The headers for the each of the metric column corresponding to the metrics
909
+ # requested in the pivots section of the response.
910
+ class PivotHeaderEntry
911
+ include Google::Apis::Core::Hashable
912
+
913
+ # The name of the dimensions in the pivot response.
914
+ # Corresponds to the JSON property `dimensionNames`
915
+ # @return [Array<String>]
916
+ attr_accessor :dimension_names
917
+
918
+ # The values for the dimensions in the pivot.
919
+ # Corresponds to the JSON property `dimensionValues`
920
+ # @return [Array<String>]
921
+ attr_accessor :dimension_values
922
+
923
+ # Header for the metrics.
924
+ # Corresponds to the JSON property `metric`
925
+ # @return [Google::Apis::AnalyticsreportingV4::MetricHeaderEntry]
926
+ attr_accessor :metric
927
+
928
+ def initialize(**args)
929
+ update!(**args)
930
+ end
931
+
932
+ # Update properties of this object
933
+ def update!(**args)
934
+ @dimension_names = args[:dimension_names] if args.key?(:dimension_names)
935
+ @dimension_values = args[:dimension_values] if args.key?(:dimension_values)
936
+ @metric = args[:metric] if args.key?(:metric)
937
+ end
938
+ end
939
+
940
+ # A group of dimension filters. Set the operator value to specify how
941
+ # the filters are logically combined.
942
+ class DimensionFilterClause
943
+ include Google::Apis::Core::Hashable
944
+
945
+ # The operator for combining multiple dimension filters. If unspecified, it
946
+ # is treated as an `OR`.
947
+ # Corresponds to the JSON property `operator`
948
+ # @return [String]
949
+ attr_accessor :operator
950
+
951
+ # The repeated set of filters. They are logically combined based on the
952
+ # operator specified.
953
+ # Corresponds to the JSON property `filters`
954
+ # @return [Array<Google::Apis::AnalyticsreportingV4::DimensionFilter>]
955
+ attr_accessor :filters
956
+
957
+ def initialize(**args)
958
+ update!(**args)
959
+ end
960
+
961
+ # Update properties of this object
962
+ def update!(**args)
963
+ @operator = args[:operator] if args.key?(:operator)
964
+ @filters = args[:filters] if args.key?(:filters)
965
+ end
966
+ end
967
+
968
+ # A segment sequence definition.
969
+ class SegmentSequenceStep
970
+ include Google::Apis::Core::Hashable
971
+
972
+ # Specifies if the step immediately precedes or can be any time before the
973
+ # next step.
974
+ # Corresponds to the JSON property `matchType`
975
+ # @return [String]
976
+ attr_accessor :match_type
977
+
978
+ # A sequence is specified with a list of Or grouped filters which are
979
+ # combined with `AND` operator.
980
+ # Corresponds to the JSON property `orFiltersForSegment`
981
+ # @return [Array<Google::Apis::AnalyticsreportingV4::OrFiltersForSegment>]
982
+ attr_accessor :or_filters_for_segment
983
+
984
+ def initialize(**args)
985
+ update!(**args)
986
+ end
987
+
988
+ # Update properties of this object
989
+ def update!(**args)
990
+ @match_type = args[:match_type] if args.key?(:match_type)
991
+ @or_filters_for_segment = args[:or_filters_for_segment] if args.key?(:or_filters_for_segment)
992
+ end
993
+ end
994
+
995
+ # The Pivot describes the pivot section in the request.
996
+ # The Pivot helps rearrange the information in the table for certain reports
997
+ # by pivoting your data on a second dimension.
998
+ class Pivot
999
+ include Google::Apis::Core::Hashable
1000
+
1001
+ # A list of dimensions to show as pivot columns. A Pivot can have a maximum
1002
+ # of 4 dimensions. Pivot dimensions are part of the restriction on the
1003
+ # total number of dimensions allowed in the request.
1004
+ # Corresponds to the JSON property `dimensions`
1005
+ # @return [Array<Google::Apis::AnalyticsreportingV4::Dimension>]
1006
+ attr_accessor :dimensions
1007
+
1008
+ # The pivot metrics. Pivot metrics are part of the
1009
+ # restriction on total number of metrics allowed in the request.
1010
+ # Corresponds to the JSON property `metrics`
1011
+ # @return [Array<Google::Apis::AnalyticsreportingV4::Metric>]
1012
+ attr_accessor :metrics
1013
+
1014
+ # Specifies the maximum number of groups to return.
1015
+ # The default value is 10, also the maximum value is 1,000.
1016
+ # Corresponds to the JSON property `maxGroupCount`
1017
+ # @return [Fixnum]
1018
+ attr_accessor :max_group_count
1019
+
1020
+ # DimensionFilterClauses are logically combined with an `AND` operator: only
1021
+ # data that is included by all these DimensionFilterClauses contributes to
1022
+ # the values in this pivot region. Dimension filters can be used to restrict
1023
+ # the columns shown in the pivot region. For example if you have
1024
+ # `ga:browser` as the requested dimension in the pivot region, and you
1025
+ # specify key filters to restrict `ga:browser` to only "IE" or "Firefox",
1026
+ # then only those two browsers would show up as columns.
1027
+ # Corresponds to the JSON property `dimensionFilterClauses`
1028
+ # @return [Array<Google::Apis::AnalyticsreportingV4::DimensionFilterClause>]
1029
+ attr_accessor :dimension_filter_clauses
1030
+
1031
+ # If k metrics were requested, then the response will contain some
1032
+ # data-dependent multiple of k columns in the report. E.g., if you pivoted
1033
+ # on the dimension `ga:browser` then you'd get k columns for "Firefox", k
1034
+ # columns for "IE", k columns for "Chrome", etc. The ordering of the groups
1035
+ # of columns is determined by descending order of "total" for the first of
1036
+ # the k values. Ties are broken by lexicographic ordering of the first
1037
+ # pivot dimension, then lexicographic ordering of the second pivot
1038
+ # dimension, and so on. E.g., if the totals for the first value for
1039
+ # Firefox, IE, and Chrome were 8, 2, 8, respectively, the order of columns
1040
+ # would be Chrome, Firefox, IE.
1041
+ # The following let you choose which of the groups of k columns are
1042
+ # included in the response.
1043
+ # Corresponds to the JSON property `startGroup`
1044
+ # @return [Fixnum]
1045
+ attr_accessor :start_group
1046
+
1047
+ def initialize(**args)
1048
+ update!(**args)
1049
+ end
1050
+
1051
+ # Update properties of this object
1052
+ def update!(**args)
1053
+ @dimensions = args[:dimensions] if args.key?(:dimensions)
1054
+ @metrics = args[:metrics] if args.key?(:metrics)
1055
+ @max_group_count = args[:max_group_count] if args.key?(:max_group_count)
1056
+ @dimension_filter_clauses = args[:dimension_filter_clauses] if args.key?(:dimension_filter_clauses)
1057
+ @start_group = args[:start_group] if args.key?(:start_group)
1058
+ end
1059
+ end
1060
+
1061
+ # Used to return a list of metrics for a single DateRange / dimension
1062
+ # combination
1063
+ class DateRangeValues
1064
+ include Google::Apis::Core::Hashable
1065
+
1066
+ # Each value corresponds to each Metric in the request.
1067
+ # Corresponds to the JSON property `values`
1068
+ # @return [Array<String>]
1069
+ attr_accessor :values
1070
+
1071
+ # The values of each pivot region.
1072
+ # Corresponds to the JSON property `pivotValueRegions`
1073
+ # @return [Array<Google::Apis::AnalyticsreportingV4::PivotValueRegion>]
1074
+ attr_accessor :pivot_value_regions
1075
+
1076
+ def initialize(**args)
1077
+ update!(**args)
1078
+ end
1079
+
1080
+ # Update properties of this object
1081
+ def update!(**args)
1082
+ @values = args[:values] if args.key?(:values)
1083
+ @pivot_value_regions = args[:pivot_value_regions] if args.key?(:pivot_value_regions)
1084
+ end
1085
+ end
1086
+
1087
+ # Represents a group of metric filters.
1088
+ # Set the operator value to specify how the filters are logically combined.
1089
+ class MetricFilterClause
1090
+ include Google::Apis::Core::Hashable
1091
+
1092
+ # The operator for combining multiple metric filters. If unspecified, it is
1093
+ # treated as an `OR`.
1094
+ # Corresponds to the JSON property `operator`
1095
+ # @return [String]
1096
+ attr_accessor :operator
1097
+
1098
+ # The repeated set of filters. They are logically combined based on the
1099
+ # operator specified.
1100
+ # Corresponds to the JSON property `filters`
1101
+ # @return [Array<Google::Apis::AnalyticsreportingV4::MetricFilter>]
1102
+ attr_accessor :filters
1103
+
1104
+ def initialize(**args)
1105
+ update!(**args)
1106
+ end
1107
+
1108
+ # Update properties of this object
1109
+ def update!(**args)
1110
+ @operator = args[:operator] if args.key?(:operator)
1111
+ @filters = args[:filters] if args.key?(:filters)
1112
+ end
1113
+ end
1114
+
1115
+ # The segment definition, if the report needs to be segmented.
1116
+ # A Segment is a subset of the Analytics data. For example, of the entire
1117
+ # set of users, one Segment might be users from a particular country or city.
1118
+ class Segment
1119
+ include Google::Apis::Core::Hashable
1120
+
1121
+ # Dynamic segment definition for defining the segment within the request.
1122
+ # A segment can select users, sessions or both.
1123
+ # Corresponds to the JSON property `dynamicSegment`
1124
+ # @return [Google::Apis::AnalyticsreportingV4::DynamicSegment]
1125
+ attr_accessor :dynamic_segment
1126
+
1127
+ # The segment ID of a built-in or custom segment, for example `gaid::-3`.
1128
+ # Corresponds to the JSON property `segmentId`
1129
+ # @return [String]
1130
+ attr_accessor :segment_id
1131
+
1132
+ def initialize(**args)
1133
+ update!(**args)
1134
+ end
1135
+
1136
+ # Update properties of this object
1137
+ def update!(**args)
1138
+ @dynamic_segment = args[:dynamic_segment] if args.key?(:dynamic_segment)
1139
+ @segment_id = args[:segment_id] if args.key?(:segment_id)
1140
+ end
1141
+ end
1142
+
1143
+ # A contiguous set of days: startDate, startDate + 1 day, ..., endDate.
1144
+ # The start and end dates are specified in
1145
+ # [ISO8601](https://en.wikipedia.org/wiki/ISO_8601) date format `YYYY-MM-DD`.
1146
+ class DateRange
1147
+ include Google::Apis::Core::Hashable
1148
+
1149
+ # The start date for the query in the format `YYYY-MM-DD`.
1150
+ # Corresponds to the JSON property `startDate`
1151
+ # @return [String]
1152
+ attr_accessor :start_date
1153
+
1154
+ # The end date for the query in the format `YYYY-MM-DD`.
1155
+ # Corresponds to the JSON property `endDate`
1156
+ # @return [String]
1157
+ attr_accessor :end_date
1158
+
1159
+ def initialize(**args)
1160
+ update!(**args)
1161
+ end
1162
+
1163
+ # Update properties of this object
1164
+ def update!(**args)
1165
+ @start_date = args[:start_date] if args.key?(:start_date)
1166
+ @end_date = args[:end_date] if args.key?(:end_date)
1167
+ end
1168
+ end
1169
+
1170
+ # A row in the report.
1171
+ class ReportRow
1172
+ include Google::Apis::Core::Hashable
1173
+
1174
+ # List of requested dimensions.
1175
+ # Corresponds to the JSON property `dimensions`
1176
+ # @return [Array<String>]
1177
+ attr_accessor :dimensions
1178
+
1179
+ # List of metrics for each requested DateRange.
1180
+ # Corresponds to the JSON property `metrics`
1181
+ # @return [Array<Google::Apis::AnalyticsreportingV4::DateRangeValues>]
1182
+ attr_accessor :metrics
1183
+
1184
+ def initialize(**args)
1185
+ update!(**args)
1186
+ end
1187
+
1188
+ # Update properties of this object
1189
+ def update!(**args)
1190
+ @dimensions = args[:dimensions] if args.key?(:dimensions)
1191
+ @metrics = args[:metrics] if args.key?(:metrics)
1192
+ end
1193
+ end
1194
+
1195
+ # Defines a cohort group.
1196
+ # For example:
1197
+ # "cohortGroup": `
1198
+ # "cohorts": [`
1199
+ # "name": "cohort 1",
1200
+ # "type": "FIRST_VISIT_DATE",
1201
+ # "dateRange": ` "startDate": "2015-08-01", "endDate": "2015-08-01" `
1202
+ # `,`
1203
+ # "name": "cohort 2"
1204
+ # "type": "FIRST_VISIT_DATE"
1205
+ # "dateRange": ` "startDate": "2015-07-01", "endDate": "2015-07-01" `
1206
+ # `]
1207
+ # `
1208
+ class CohortGroup
1209
+ include Google::Apis::Core::Hashable
1210
+
1211
+ # Enable Life Time Value (LTV). LTV measures lifetime value for users
1212
+ # acquired through different channels.
1213
+ # Please see:
1214
+ # [Cohort Analysis](https://support.google.com/analytics/answer/6074676) and
1215
+ # [Lifetime Value](https://support.google.com/analytics/answer/6182550)
1216
+ # If the value of lifetimeValue is false:
1217
+ # - The metric values are similar to the values in the web interface cohort
1218
+ # report.
1219
+ # - The cohort definition date ranges must be aligned to the calendar week
1220
+ # and month. i.e. while requesting `ga:cohortNthWeek` the `startDate` in
1221
+ # the cohort definition should be a Sunday and the `endDate` should be the
1222
+ # following Saturday, and for `ga:cohortNthMonth`, the `startDate`
1223
+ # should be the 1st of the month and `endDate` should be the last day
1224
+ # of the month.
1225
+ # When the lifetimeValue is true:
1226
+ # - The metric values will correspond to the values in the web interface
1227
+ # LifeTime value report.
1228
+ # - The Lifetime Value report shows you how user value (Revenue) and
1229
+ # engagement (Appviews, Goal Completions, Sessions, and Session Duration)
1230
+ # grow during the 90 days after a user is acquired.
1231
+ # - The metrics are calculated as a cumulative average per user per the time
1232
+ # increment.
1233
+ # - The cohort definition date ranges need not be aligned to the calendar
1234
+ # week and month boundaries.
1235
+ # - The `viewId` must be an
1236
+ # [app view ID](https://support.google.com/analytics/answer/2649553#
1237
+ # WebVersusAppViews)
1238
+ # Corresponds to the JSON property `lifetimeValue`
1239
+ # @return [Boolean]
1240
+ attr_accessor :lifetime_value
1241
+ alias_method :lifetime_value?, :lifetime_value
1242
+
1243
+ # The definition for the cohort.
1244
+ # Corresponds to the JSON property `cohorts`
1245
+ # @return [Array<Google::Apis::AnalyticsreportingV4::Cohort>]
1246
+ attr_accessor :cohorts
1247
+
1248
+ def initialize(**args)
1249
+ update!(**args)
1250
+ end
1251
+
1252
+ # Update properties of this object
1253
+ def update!(**args)
1254
+ @lifetime_value = args[:lifetime_value] if args.key?(:lifetime_value)
1255
+ @cohorts = args[:cohorts] if args.key?(:cohorts)
1256
+ end
1257
+ end
1258
+
1259
+ # The main response class which holds the reports from the Reporting API
1260
+ # `batchGet` call.
1261
+ class GetReportsResponse
1262
+ include Google::Apis::Core::Hashable
1263
+
1264
+ # Responses corresponding to each of the request.
1265
+ # Corresponds to the JSON property `reports`
1266
+ # @return [Array<Google::Apis::AnalyticsreportingV4::Report>]
1267
+ attr_accessor :reports
1268
+
1269
+ def initialize(**args)
1270
+ update!(**args)
1271
+ end
1272
+
1273
+ # Update properties of this object
1274
+ def update!(**args)
1275
+ @reports = args[:reports] if args.key?(:reports)
1276
+ end
1277
+ end
1278
+
1279
+ # Header for the metrics.
1280
+ class MetricHeaderEntry
1281
+ include Google::Apis::Core::Hashable
1282
+
1283
+ # The type of the metric, for example `INTEGER`.
1284
+ # Corresponds to the JSON property `type`
1285
+ # @return [String]
1286
+ attr_accessor :type
1287
+
1288
+ # The name of the header.
1289
+ # Corresponds to the JSON property `name`
1290
+ # @return [String]
1291
+ attr_accessor :name
1292
+
1293
+ def initialize(**args)
1294
+ update!(**args)
1295
+ end
1296
+
1297
+ # Update properties of this object
1298
+ def update!(**args)
1299
+ @type = args[:type] if args.key?(:type)
1300
+ @name = args[:name] if args.key?(:name)
1301
+ end
1302
+ end
1303
+
1304
+ # MetricFilter specifies the filter on a metric.
1305
+ class MetricFilter
1306
+ include Google::Apis::Core::Hashable
1307
+
1308
+ # The metric that will be filtered on. A metricFilter must contain a metric
1309
+ # name. A metric name can be an alias earlier defined as a metric or it can
1310
+ # also be a metric expression.
1311
+ # Corresponds to the JSON property `metricName`
1312
+ # @return [String]
1313
+ attr_accessor :metric_name
1314
+
1315
+ # Is the metric `EQUAL`, `LESS_THAN` or `GREATER_THAN` the
1316
+ # comparisonValue, the default is `EQUAL`. If the operator is
1317
+ # `IS_MISSING`, checks if the metric is missing and would ignore the
1318
+ # comparisonValue.
1319
+ # Corresponds to the JSON property `operator`
1320
+ # @return [String]
1321
+ attr_accessor :operator
1322
+
1323
+ # The value to compare against.
1324
+ # Corresponds to the JSON property `comparisonValue`
1325
+ # @return [String]
1326
+ attr_accessor :comparison_value
1327
+
1328
+ # Logical `NOT` operator. If this boolean is set to true, then the matching
1329
+ # metric values will be excluded in the report. The default is false.
1330
+ # Corresponds to the JSON property `not`
1331
+ # @return [Boolean]
1332
+ attr_accessor :not
1333
+ alias_method :not?, :not
1334
+
1335
+ def initialize(**args)
1336
+ update!(**args)
1337
+ end
1338
+
1339
+ # Update properties of this object
1340
+ def update!(**args)
1341
+ @metric_name = args[:metric_name] if args.key?(:metric_name)
1342
+ @operator = args[:operator] if args.key?(:operator)
1343
+ @comparison_value = args[:comparison_value] if args.key?(:comparison_value)
1344
+ @not = args[:not] if args.key?(:not)
1345
+ end
1346
+ end
1347
+
1348
+ # [Dimensions](https://support.google.com/analytics/answer/1033861)
1349
+ # are attributes of your data. For example, the dimension `ga:city`
1350
+ # indicates the city, for example, "Paris" or "New York", from which
1351
+ # a session originates.
1352
+ class Dimension
1353
+ include Google::Apis::Core::Hashable
1354
+
1355
+ # If non-empty, we place dimension values into buckets after string to
1356
+ # int64. Dimension values that are not the string representation of an
1357
+ # integral value will be converted to zero. The bucket values have to be in
1358
+ # increasing order. Each bucket is closed on the lower end, and open on the
1359
+ # upper end. The "first" bucket includes all values less than the first
1360
+ # boundary, the "last" bucket includes all values up to infinity. Dimension
1361
+ # values that fall in a bucket get transformed to a new dimension value. For
1362
+ # example, if one gives a list of "0, 1, 3, 4, 7", then we return the
1363
+ # following buckets:
1364
+ # - bucket #1: values < 0, dimension value "<0"
1365
+ # - bucket #2: values in [0,1), dimension value "0"
1366
+ # - bucket #3: values in [1,3), dimension value "1-2"
1367
+ # - bucket #4: values in [3,4), dimension value "3"
1368
+ # - bucket #5: values in [4,7), dimension value "4-6"
1369
+ # - bucket #6: values >= 7, dimension value "7+"
1370
+ # NOTE: If you are applying histogram mutation on any dimension, and using
1371
+ # that dimension in sort, you will want to use the sort type
1372
+ # `HISTOGRAM_BUCKET` for that purpose. Without that the dimension values
1373
+ # will be sorted according to dictionary
1374
+ # (lexicographic) order. For example the ascending dictionary order is:
1375
+ # "<50", "1001+", "121-1000", "50-120"
1376
+ # And the ascending `HISTOGRAM_BUCKET` order is:
1377
+ # "<50", "50-120", "121-1000", "1001+"
1378
+ # The client has to explicitly request `"orderType": "HISTOGRAM_BUCKET"`
1379
+ # for a histogram-mutated dimension.
1380
+ # Corresponds to the JSON property `histogramBuckets`
1381
+ # @return [Array<String>]
1382
+ attr_accessor :histogram_buckets
1383
+
1384
+ # Name of the dimension to fetch, for example `ga:browser`.
1385
+ # Corresponds to the JSON property `name`
1386
+ # @return [String]
1387
+ attr_accessor :name
1388
+
1389
+ def initialize(**args)
1390
+ update!(**args)
1391
+ end
1392
+
1393
+ # Update properties of this object
1394
+ def update!(**args)
1395
+ @histogram_buckets = args[:histogram_buckets] if args.key?(:histogram_buckets)
1396
+ @name = args[:name] if args.key?(:name)
1397
+ end
1398
+ end
1399
+
1400
+ # The metric values in the pivot region.
1401
+ class PivotValueRegion
1402
+ include Google::Apis::Core::Hashable
1403
+
1404
+ # The values of the metrics in each of the pivot regions.
1405
+ # Corresponds to the JSON property `values`
1406
+ # @return [Array<String>]
1407
+ attr_accessor :values
1408
+
1409
+ def initialize(**args)
1410
+ update!(**args)
1411
+ end
1412
+
1413
+ # Update properties of this object
1414
+ def update!(**args)
1415
+ @values = args[:values] if args.key?(:values)
1416
+ end
1417
+ end
1418
+ end
1419
+ end
1420
+ end