google-api-client 0.8.6 → 0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +22 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +41 -2
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +32 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +181 -148
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +1036 -0
  15. data/api_names_out.yaml +26053 -0
  16. data/bin/generate-api +95 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  21. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  24. data/generated/google/apis/adexchangeseller_v2_0/service.rb +668 -0
  25. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  26. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  27. data/generated/google/apis/admin_datatransfer_v1/representations.rb +118 -0
  28. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  29. data/generated/google/apis/admin_directory_v1.rb +113 -0
  30. data/generated/google/apis/admin_directory_v1/classes.rb +3141 -0
  31. data/generated/google/apis/admin_directory_v1/representations.rb +1029 -0
  32. data/generated/google/apis/admin_directory_v1/service.rb +3818 -0
  33. data/generated/google/apis/admin_reports_v1.rb +38 -0
  34. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  35. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  36. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  37. data/generated/google/apis/adsense_v1_4.rb +38 -0
  38. data/generated/google/apis/adsense_v1_4/classes.rb +1285 -0
  39. data/generated/google/apis/adsense_v1_4/representations.rb +494 -0
  40. data/generated/google/apis/adsense_v1_4/service.rb +1714 -0
  41. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  42. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  43. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  44. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  45. data/generated/google/apis/analytics_v3.rb +49 -0
  46. data/generated/google/apis/analytics_v3/classes.rb +5118 -0
  47. data/generated/google/apis/analytics_v3/representations.rb +1662 -0
  48. data/generated/google/apis/analytics_v3/service.rb +3568 -0
  49. data/generated/google/apis/androidenterprise_v1.rb +35 -0
  50. data/generated/google/apis/androidenterprise_v1/classes.rb +1443 -0
  51. data/generated/google/apis/androidenterprise_v1/representations.rb +538 -0
  52. data/generated/google/apis/androidenterprise_v1/service.rb +2602 -0
  53. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  54. data/generated/google/apis/androidpublisher_v2/classes.rb +1411 -0
  55. data/generated/google/apis/androidpublisher_v2/representations.rb +646 -0
  56. data/generated/google/apis/androidpublisher_v2/service.rb +2338 -0
  57. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  58. data/generated/google/apis/appengine_v1beta4/classes.rb +1532 -0
  59. data/generated/google/apis/appengine_v1beta4/representations.rb +526 -0
  60. data/generated/google/apis/appengine_v1beta4/service.rb +476 -0
  61. data/generated/google/apis/appsactivity_v1.rb +46 -0
  62. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  63. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  64. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  65. data/generated/google/apis/appstate_v1.rb +34 -0
  66. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  67. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  68. data/generated/google/apis/appstate_v1/service.rb +260 -0
  69. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  70. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  71. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  72. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  73. data/generated/google/apis/bigquery_v2.rb +52 -0
  74. data/generated/google/apis/bigquery_v2/classes.rb +2471 -0
  75. data/generated/google/apis/bigquery_v2/representations.rb +816 -0
  76. data/generated/google/apis/bigquery_v2/service.rb +982 -0
  77. data/generated/google/apis/blogger_v3.rb +37 -0
  78. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  79. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  80. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  81. data/generated/google/apis/books_v1.rb +34 -0
  82. data/generated/google/apis/books_v1/classes.rb +3956 -0
  83. data/generated/google/apis/books_v1/representations.rb +1538 -0
  84. data/generated/google/apis/books_v1/service.rb +2290 -0
  85. data/generated/google/apis/calendar_v3.rb +37 -0
  86. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  87. data/generated/google/apis/calendar_v3/representations.rb +567 -0
  88. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  89. data/{lib/google/api_client/service_account.rb → generated/google/apis/civicinfo_v2.rb} +18 -8
  90. data/generated/google/apis/civicinfo_v2/classes.rb +1127 -0
  91. data/generated/google/apis/civicinfo_v2/representations.rb +383 -0
  92. data/generated/google/apis/civicinfo_v2/service.rb +279 -0
  93. data/generated/google/apis/classroom_v1.rb +49 -0
  94. data/generated/google/apis/classroom_v1/classes.rb +512 -0
  95. data/generated/google/apis/classroom_v1/representations.rb +217 -0
  96. data/generated/google/apis/classroom_v1/service.rb +970 -0
  97. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  98. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  99. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  100. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  101. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  102. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  103. data/generated/google/apis/cloudbilling_v1/representations.rb +79 -0
  104. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  105. data/generated/google/apis/clouddebugger_v2.rb +41 -0
  106. data/generated/google/apis/clouddebugger_v2/classes.rb +1004 -0
  107. data/generated/google/apis/clouddebugger_v2/representations.rb +410 -0
  108. data/generated/google/apis/clouddebugger_v2/service.rb +370 -0
  109. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  110. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  111. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  112. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  113. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  114. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +437 -0
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +188 -0
  116. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +623 -0
  117. data/generated/google/apis/cloudtrace_v1.rb +35 -0
  118. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  119. data/generated/google/apis/cloudtrace_v1/representations.rb +92 -0
  120. data/generated/google/apis/cloudtrace_v1/service.rb +190 -0
  121. data/generated/google/apis/clouduseraccounts_beta.rb +43 -0
  122. data/generated/google/apis/clouduseraccounts_beta/classes.rb +823 -0
  123. data/generated/google/apis/clouduseraccounts_beta/representations.rb +313 -0
  124. data/generated/google/apis/clouduseraccounts_beta/service.rb +854 -0
  125. data/generated/google/apis/compute_beta.rb +49 -0
  126. data/generated/google/apis/compute_beta/classes.rb +9128 -0
  127. data/generated/google/apis/compute_beta/representations.rb +3048 -0
  128. data/generated/google/apis/compute_beta/service.rb +10154 -0
  129. data/generated/google/apis/compute_v1.rb +49 -0
  130. data/generated/google/apis/compute_v1/classes.rb +8681 -0
  131. data/generated/google/apis/compute_v1/representations.rb +2895 -0
  132. data/generated/google/apis/compute_v1/service.rb +9252 -0
  133. data/generated/google/apis/container_v1.rb +35 -0
  134. data/generated/google/apis/container_v1/classes.rb +463 -0
  135. data/generated/google/apis/container_v1/representations.rb +175 -0
  136. data/generated/google/apis/container_v1/service.rb +367 -0
  137. data/generated/google/apis/container_v1beta1.rb +35 -0
  138. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  139. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  140. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  141. data/generated/google/apis/content_v2.rb +35 -0
  142. data/generated/google/apis/content_v2/classes.rb +5986 -0
  143. data/generated/google/apis/content_v2/representations.rb +2288 -0
  144. data/generated/google/apis/content_v2/service.rb +2338 -0
  145. data/generated/google/apis/coordinate_v1.rb +37 -0
  146. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  147. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  148. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  149. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  150. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  151. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  152. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  153. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  154. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  155. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  156. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  157. data/generated/google/apis/deploymentmanager_v2.rb +44 -0
  158. data/generated/google/apis/deploymentmanager_v2/classes.rb +1091 -0
  159. data/generated/google/apis/deploymentmanager_v2/representations.rb +422 -0
  160. data/generated/google/apis/deploymentmanager_v2/service.rb +857 -0
  161. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  162. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  163. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  164. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  165. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  166. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  167. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  168. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  169. data/generated/google/apis/discovery_v1.rb +32 -0
  170. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  171. data/generated/google/apis/discovery_v1/representations.rb +357 -0
  172. data/generated/google/apis/discovery_v1/service.rb +142 -0
  173. data/generated/google/apis/dns_v1.rb +44 -0
  174. data/generated/google/apis/dns_v1/classes.rb +406 -0
  175. data/generated/google/apis/dns_v1/representations.rb +151 -0
  176. data/generated/google/apis/dns_v1/service.rb +454 -0
  177. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  178. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +716 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +298 -0
  180. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +341 -0
  181. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  182. data/generated/google/apis/doubleclicksearch_v2/classes.rb +956 -0
  183. data/generated/google/apis/doubleclicksearch_v2/representations.rb +316 -0
  184. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  185. data/generated/google/apis/drive_v2.rb +58 -0
  186. data/generated/google/apis/drive_v2/classes.rb +2562 -0
  187. data/generated/google/apis/drive_v2/representations.rb +795 -0
  188. data/generated/google/apis/drive_v2/service.rb +2696 -0
  189. data/generated/google/apis/drive_v3.rb +55 -0
  190. data/generated/google/apis/drive_v3/classes.rb +1534 -0
  191. data/generated/google/apis/drive_v3/representations.rb +497 -0
  192. data/generated/google/apis/drive_v3/service.rb +1541 -0
  193. data/generated/google/apis/fitness_v1.rb +49 -0
  194. data/generated/google/apis/fitness_v1/classes.rb +885 -0
  195. data/generated/google/apis/fitness_v1/representations.rb +320 -0
  196. data/generated/google/apis/fitness_v1/service.rb +675 -0
  197. data/generated/google/apis/fusiontables_v2.rb +37 -0
  198. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  199. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  200. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  201. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  202. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  203. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  204. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  205. data/generated/google/apis/games_management_v1management.rb +37 -0
  206. data/generated/google/apis/games_management_v1management/classes.rb +524 -0
  207. data/generated/google/apis/games_management_v1management/representations.rb +231 -0
  208. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  209. data/generated/google/apis/games_v1.rb +40 -0
  210. data/generated/google/apis/games_v1/classes.rb +4617 -0
  211. data/generated/google/apis/games_v1/representations.rb +1584 -0
  212. data/generated/google/apis/games_v1/service.rb +2290 -0
  213. data/generated/google/apis/gan_v1beta1.rb +31 -0
  214. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  215. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  216. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  217. data/generated/google/apis/genomics_v1.rb +49 -0
  218. data/generated/google/apis/genomics_v1/classes.rb +2609 -0
  219. data/generated/google/apis/genomics_v1/representations.rb +909 -0
  220. data/generated/google/apis/genomics_v1/service.rb +1676 -0
  221. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  222. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  223. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  224. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  225. data/generated/google/apis/gmail_v1.rb +52 -0
  226. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  227. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  228. data/generated/google/apis/gmail_v1/service.rb +1470 -0
  229. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  230. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  231. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  232. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  233. data/generated/google/apis/groupssettings_v1.rb +34 -0
  234. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  235. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  236. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  237. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  238. data/generated/google/apis/identitytoolkit_v3/classes.rb +1466 -0
  239. data/generated/google/apis/identitytoolkit_v3/representations.rb +509 -0
  240. data/generated/google/apis/identitytoolkit_v3/service.rb +581 -0
  241. data/{spec/google/api_client/request_spec.rb → generated/google/apis/kgsearch_v1.rb} +16 -13
  242. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  243. data/generated/google/apis/kgsearch_v1/representations.rb +39 -0
  244. data/generated/google/apis/kgsearch_v1/service.rb +111 -0
  245. data/generated/google/apis/licensing_v1.rb +34 -0
  246. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  247. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  248. data/generated/google/apis/licensing_v1/service.rb +369 -0
  249. data/generated/google/apis/logging_v1beta3.rb +47 -0
  250. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  251. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  252. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  253. data/generated/google/apis/manager_v1beta2.rb +53 -0
  254. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  255. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  256. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  257. data/generated/google/apis/mapsengine_v1.rb +38 -0
  258. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  259. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  260. data/generated/google/apis/mapsengine_v1/service.rb +3388 -0
  261. data/generated/google/apis/mirror_v1.rb +37 -0
  262. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  263. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  264. data/generated/google/apis/mirror_v1/service.rb +977 -0
  265. data/generated/google/apis/oauth2_v2.rb +43 -0
  266. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  267. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  268. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  269. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  270. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  271. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  272. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  273. data/generated/google/apis/partners_v2.rb +32 -0
  274. data/generated/google/apis/partners_v2/classes.rb +942 -0
  275. data/generated/google/apis/partners_v2/representations.rb +402 -0
  276. data/generated/google/apis/partners_v2/service.rb +400 -0
  277. data/generated/google/apis/plus_domains_v1.rb +61 -0
  278. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  279. data/generated/google/apis/plus_domains_v1/representations.rb +987 -0
  280. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  281. data/generated/google/apis/plus_v1.rb +43 -0
  282. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  283. data/generated/google/apis/plus_v1/representations.rb +805 -0
  284. data/generated/google/apis/plus_v1/service.rb +470 -0
  285. data/generated/google/apis/prediction_v1_6.rb +44 -0
  286. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  287. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  288. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  289. data/generated/google/apis/proximitybeacon_v1beta1.rb +31 -0
  290. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +639 -0
  291. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +274 -0
  292. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +591 -0
  293. data/generated/google/apis/pubsub_v1.rb +37 -0
  294. data/generated/google/apis/pubsub_v1/classes.rb +614 -0
  295. data/generated/google/apis/pubsub_v1/representations.rb +281 -0
  296. data/generated/google/apis/pubsub_v1/service.rb +774 -0
  297. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  298. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  299. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  300. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  301. data/generated/google/apis/qpx_express_v1.rb +31 -0
  302. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  303. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  304. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  305. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  306. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  307. data/generated/google/apis/replicapool_v1beta2/representations.rb +236 -0
  308. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  309. data/generated/google/apis/replicapoolupdater_v1beta1.rb +44 -0
  310. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  311. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +264 -0
  312. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +508 -0
  313. data/generated/google/apis/reseller_v1.rb +37 -0
  314. data/generated/google/apis/reseller_v1/classes.rb +520 -0
  315. data/generated/google/apis/reseller_v1/representations.rb +200 -0
  316. data/generated/google/apis/reseller_v1/service.rb +623 -0
  317. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  318. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  319. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  320. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  321. data/generated/google/apis/script_v1.rb +61 -0
  322. data/generated/google/apis/script_v1/classes.rb +259 -0
  323. data/generated/google/apis/script_v1/representations.rb +106 -0
  324. data/generated/google/apis/script_v1/service.rb +98 -0
  325. data/generated/google/apis/site_verification_v1.rb +37 -0
  326. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  327. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  328. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  329. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  330. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2001 -0
  331. data/generated/google/apis/sqladmin_v1beta4/representations.rb +758 -0
  332. data/generated/google/apis/sqladmin_v1beta4/service.rb +1625 -0
  333. data/generated/google/apis/storage_v1.rb +46 -0
  334. data/generated/google/apis/storage_v1/classes.rb +1222 -0
  335. data/generated/google/apis/storage_v1/representations.rb +445 -0
  336. data/generated/google/apis/storage_v1/service.rb +1903 -0
  337. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  338. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  339. data/generated/google/apis/storagetransfer_v1/representations.rb +370 -0
  340. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  341. data/generated/google/apis/tagmanager_v1.rb +52 -0
  342. data/generated/google/apis/tagmanager_v1/classes.rb +1384 -0
  343. data/generated/google/apis/tagmanager_v1/representations.rb +515 -0
  344. data/generated/google/apis/tagmanager_v1/service.rb +1817 -0
  345. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  346. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  347. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  348. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  349. data/generated/google/apis/tasks_v1.rb +37 -0
  350. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  351. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  352. data/generated/google/apis/tasks_v1/service.rb +643 -0
  353. data/generated/google/apis/translate_v2.rb +31 -0
  354. data/generated/google/apis/translate_v2/classes.rb +168 -0
  355. data/generated/google/apis/translate_v2/representations.rb +109 -0
  356. data/generated/google/apis/translate_v2/service.rb +182 -0
  357. data/generated/google/apis/urlshortener_v1.rb +34 -0
  358. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  359. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  360. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  361. data/generated/google/apis/webmasters_v3.rb +37 -0
  362. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  363. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  364. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  365. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  366. data/generated/google/apis/youtube_analytics_v1/classes.rb +546 -0
  367. data/generated/google/apis/youtube_analytics_v1/representations.rb +243 -0
  368. data/generated/google/apis/youtube_analytics_v1/service.rb +562 -0
  369. data/generated/google/apis/youtube_v3.rb +49 -0
  370. data/generated/google/apis/youtube_v3/classes.rb +8136 -0
  371. data/generated/google/apis/youtube_v3/representations.rb +2838 -0
  372. data/generated/google/apis/youtube_v3/service.rb +4403 -0
  373. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  374. data/generated/google/apis/youtubereporting_v1/classes.rb +258 -0
  375. data/generated/google/apis/youtubereporting_v1/representations.rb +128 -0
  376. data/generated/google/apis/youtubereporting_v1/service.rb +364 -0
  377. data/google-api-client.gemspec +27 -39
  378. data/lib/google/api_client/auth/installed_app.rb +7 -5
  379. data/lib/google/api_client/auth/key_utils.rb +1 -0
  380. data/lib/google/api_client/auth/storage.rb +4 -2
  381. data/lib/google/api_client/auth/storages/file_store.rb +2 -3
  382. data/lib/google/api_client/auth/storages/redis_store.rb +7 -2
  383. data/lib/google/api_client/client_secrets.rb +4 -5
  384. data/lib/google/apis.rb +48 -0
  385. data/lib/google/apis/core/api_command.rb +135 -0
  386. data/lib/google/apis/core/base_service.rb +317 -0
  387. data/lib/google/apis/core/batch.rb +239 -0
  388. data/lib/google/apis/core/download.rb +94 -0
  389. data/lib/google/apis/core/hashable.rb +44 -0
  390. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  391. data/lib/google/apis/core/http_command.rb +312 -0
  392. data/lib/google/apis/core/json_representation.rb +127 -0
  393. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  394. data/lib/google/apis/core/multipart.rb +187 -0
  395. data/lib/google/apis/core/upload.rb +288 -0
  396. data/lib/google/{api_client → apis}/errors.rb +39 -28
  397. data/lib/google/apis/generator.rb +70 -0
  398. data/lib/google/apis/generator/annotator.rb +295 -0
  399. data/lib/google/apis/generator/helpers.rb +74 -0
  400. data/lib/google/apis/generator/model.rb +143 -0
  401. data/lib/google/apis/generator/template.rb +124 -0
  402. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  403. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  404. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  405. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  406. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  407. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  408. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  409. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  410. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  411. data/lib/google/apis/options.rb +85 -0
  412. data/lib/google/apis/version.rb +39 -0
  413. data/rakelib/metrics.rake +22 -0
  414. data/rakelib/rubocop.rake +10 -0
  415. data/rakelib/spec.rake +11 -0
  416. data/rakelib/yard.rake +11 -0
  417. data/samples/Gemfile +7 -0
  418. data/samples/README.md +51 -0
  419. data/samples/google-api-samples +32 -0
  420. data/samples/lib/base_cli.rb +94 -0
  421. data/samples/lib/samples/analytics.rb +62 -0
  422. data/samples/lib/samples/calendar.rb +83 -0
  423. data/samples/lib/samples/drive.rb +82 -0
  424. data/samples/lib/samples/gmail.rb +50 -0
  425. data/samples/lib/samples/pubsub.rb +114 -0
  426. data/samples/lib/samples/translate.rb +44 -0
  427. data/samples/lib/samples/you_tube.rb +44 -0
  428. data/script/generate +95 -0
  429. data/script/package +8 -0
  430. data/script/release +15 -0
  431. data/spec/fixtures/files/api_names.yaml +3 -0
  432. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  433. data/spec/fixtures/files/child/.gitignore +0 -0
  434. data/spec/fixtures/files/client_secrets.json +1 -0
  435. data/spec/fixtures/files/invalid.json +1 -0
  436. data/spec/fixtures/files/test.blah +1 -0
  437. data/spec/fixtures/files/test.txt +1 -0
  438. data/spec/fixtures/files/test_api.json +440 -0
  439. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  440. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  441. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  442. data/spec/google/api_client/client_secrets_spec.rb +38 -1
  443. data/spec/google/apis/core/api_command_spec.rb +209 -0
  444. data/spec/google/apis/core/batch_spec.rb +142 -0
  445. data/spec/google/apis/core/download_spec.rb +103 -0
  446. data/spec/google/apis/core/hashable_spec.rb +60 -0
  447. data/spec/google/apis/core/http_command_spec.rb +284 -0
  448. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  449. data/spec/google/apis/core/service_spec.rb +247 -0
  450. data/spec/google/apis/core/upload_spec.rb +300 -0
  451. data/{lib/google/api_client/discovery.rb → spec/google/apis/generated_spec.rb} +13 -5
  452. data/spec/google/apis/generator/generator_spec.rb +272 -0
  453. data/spec/google/apis/logging_spec.rb +45 -0
  454. data/spec/google/apis/options_spec.rb +40 -0
  455. data/spec/integration_tests/adsense_spec.rb +29 -0
  456. data/spec/integration_tests/drive_spec.rb +35 -0
  457. data/spec/integration_tests/pubsub_spec.rb +48 -0
  458. data/spec/integration_tests/url_shortener_spec.rb +45 -0
  459. data/spec/spec_helper.rb +131 -44
  460. data/spec/spec_helper/load_path_spec.rb +33 -0
  461. data/third_party/hurley_patches.rb +103 -0
  462. metadata +533 -170
  463. data/lib/compat/multi_json.rb +0 -19
  464. data/lib/google/api_client.rb +0 -750
  465. data/lib/google/api_client/auth/file_storage.rb +0 -59
  466. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  467. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  468. data/lib/google/api_client/batch.rb +0 -326
  469. data/lib/google/api_client/charset.rb +0 -33
  470. data/lib/google/api_client/discovery/api.rb +0 -310
  471. data/lib/google/api_client/discovery/media.rb +0 -77
  472. data/lib/google/api_client/discovery/method.rb +0 -363
  473. data/lib/google/api_client/discovery/resource.rb +0 -156
  474. data/lib/google/api_client/discovery/schema.rb +0 -117
  475. data/lib/google/api_client/environment.rb +0 -42
  476. data/lib/google/api_client/gzip.rb +0 -28
  477. data/lib/google/api_client/logging.rb +0 -32
  478. data/lib/google/api_client/media.rb +0 -259
  479. data/lib/google/api_client/railtie.rb +0 -18
  480. data/lib/google/api_client/request.rb +0 -350
  481. data/lib/google/api_client/result.rb +0 -255
  482. data/lib/google/api_client/service.rb +0 -233
  483. data/lib/google/api_client/service/batch.rb +0 -110
  484. data/lib/google/api_client/service/request.rb +0 -144
  485. data/lib/google/api_client/service/resource.rb +0 -40
  486. data/lib/google/api_client/service/result.rb +0 -162
  487. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  488. data/lib/google/api_client/service/stub_generator.rb +0 -61
  489. data/spec/google/api_client/batch_spec.rb +0 -248
  490. data/spec/google/api_client/discovery_spec.rb +0 -708
  491. data/spec/google/api_client/gzip_spec.rb +0 -98
  492. data/spec/google/api_client/media_spec.rb +0 -178
  493. data/spec/google/api_client/result_spec.rb +0 -207
  494. data/spec/google/api_client/service_account_spec.rb +0 -169
  495. data/spec/google/api_client/service_spec.rb +0 -618
  496. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  497. data/spec/google/api_client_spec.rb +0 -352
@@ -0,0 +1,35 @@
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/doubleclicksearch_v2/service.rb'
16
+ require 'google/apis/doubleclicksearch_v2/classes.rb'
17
+ require 'google/apis/doubleclicksearch_v2/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # DoubleClick Search API
22
+ #
23
+ # Report and modify your advertising data in DoubleClick Search (for example,
24
+ # campaigns, ad groups, keywords, and conversions).
25
+ #
26
+ # @see https://developers.google.com/doubleclick-search/
27
+ module DoubleclicksearchV2
28
+ VERSION = 'V2'
29
+ REVISION = '20160108'
30
+
31
+ # View and manage your advertising data in DoubleClick Search
32
+ AUTH_DOUBLECLICKSEARCH = 'https://www.googleapis.com/auth/doubleclicksearch'
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,956 @@
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 DoubleclicksearchV2
24
+
25
+ # A message containing availability data relevant to DoubleClick Search.
26
+ class Availability
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # DS advertiser ID.
30
+ # Corresponds to the JSON property `advertiserId`
31
+ # @return [String]
32
+ attr_accessor :advertiser_id
33
+
34
+ # DS agency ID.
35
+ # Corresponds to the JSON property `agencyId`
36
+ # @return [String]
37
+ attr_accessor :agency_id
38
+
39
+ # The time by which all conversions have been uploaded, in epoch millis UTC.
40
+ # Corresponds to the JSON property `availabilityTimestamp`
41
+ # @return [String]
42
+ attr_accessor :availability_timestamp
43
+
44
+ # The numeric segmentation identifier (for example, DoubleClick Search
45
+ # Floodlight activity ID).
46
+ # Corresponds to the JSON property `segmentationId`
47
+ # @return [String]
48
+ attr_accessor :segmentation_id
49
+
50
+ # The friendly segmentation identifier (for example, DoubleClick Search
51
+ # Floodlight activity name).
52
+ # Corresponds to the JSON property `segmentationName`
53
+ # @return [String]
54
+ attr_accessor :segmentation_name
55
+
56
+ # The segmentation type that this availability is for (its default value is
57
+ # FLOODLIGHT).
58
+ # Corresponds to the JSON property `segmentationType`
59
+ # @return [String]
60
+ attr_accessor :segmentation_type
61
+
62
+ def initialize(**args)
63
+ update!(**args)
64
+ end
65
+
66
+ # Update properties of this object
67
+ def update!(**args)
68
+ @advertiser_id = args[:advertiser_id] unless args[:advertiser_id].nil?
69
+ @agency_id = args[:agency_id] unless args[:agency_id].nil?
70
+ @availability_timestamp = args[:availability_timestamp] unless args[:availability_timestamp].nil?
71
+ @segmentation_id = args[:segmentation_id] unless args[:segmentation_id].nil?
72
+ @segmentation_name = args[:segmentation_name] unless args[:segmentation_name].nil?
73
+ @segmentation_type = args[:segmentation_type] unless args[:segmentation_type].nil?
74
+ end
75
+ end
76
+
77
+ # A conversion containing data relevant to DoubleClick Search.
78
+ class Conversion
79
+ include Google::Apis::Core::Hashable
80
+
81
+ # DS ad group ID.
82
+ # Corresponds to the JSON property `adGroupId`
83
+ # @return [String]
84
+ attr_accessor :ad_group_id
85
+
86
+ # DS ad ID.
87
+ # Corresponds to the JSON property `adId`
88
+ # @return [String]
89
+ attr_accessor :ad_id
90
+
91
+ # DS advertiser ID.
92
+ # Corresponds to the JSON property `advertiserId`
93
+ # @return [String]
94
+ attr_accessor :advertiser_id
95
+
96
+ # DS agency ID.
97
+ # Corresponds to the JSON property `agencyId`
98
+ # @return [String]
99
+ attr_accessor :agency_id
100
+
101
+ # This field is ignored.
102
+ # Corresponds to the JSON property `attributionModel`
103
+ # @return [String]
104
+ attr_accessor :attribution_model
105
+
106
+ # DS campaign ID.
107
+ # Corresponds to the JSON property `campaignId`
108
+ # @return [String]
109
+ attr_accessor :campaign_id
110
+
111
+ # Sales channel for the product. Acceptable values are:
112
+ # - "local": a physical store
113
+ # - "online": an online store
114
+ # Corresponds to the JSON property `channel`
115
+ # @return [String]
116
+ attr_accessor :channel
117
+
118
+ # DS click ID for the conversion.
119
+ # Corresponds to the JSON property `clickId`
120
+ # @return [String]
121
+ attr_accessor :click_id
122
+
123
+ # For offline conversions, this is an ID that advertisers are required to
124
+ # provide. Advertisers can specify any ID that is meaningful to them. For online
125
+ # conversions, DS copies the dsConversionId or floodlightOrderId into this
126
+ # property depending on the advertiser's Floodlight instructions.
127
+ # Corresponds to the JSON property `conversionId`
128
+ # @return [String]
129
+ attr_accessor :conversion_id
130
+
131
+ # The time at which the conversion was last modified, in epoch millis UTC.
132
+ # Corresponds to the JSON property `conversionModifiedTimestamp`
133
+ # @return [String]
134
+ attr_accessor :conversion_modified_timestamp
135
+
136
+ # The time at which the conversion took place, in epoch millis UTC.
137
+ # Corresponds to the JSON property `conversionTimestamp`
138
+ # @return [String]
139
+ attr_accessor :conversion_timestamp
140
+
141
+ # This field is ignored.
142
+ # Corresponds to the JSON property `countMillis`
143
+ # @return [String]
144
+ attr_accessor :count_millis
145
+
146
+ # DS criterion (keyword) ID.
147
+ # Corresponds to the JSON property `criterionId`
148
+ # @return [String]
149
+ attr_accessor :criterion_id
150
+
151
+ # The currency code for the conversion's revenue. Should be in ISO 4217
152
+ # alphabetic (3-char) format.
153
+ # Corresponds to the JSON property `currencyCode`
154
+ # @return [String]
155
+ attr_accessor :currency_code
156
+
157
+ # Custom dimensions for the conversion, which can be used to filter data in a
158
+ # report.
159
+ # Corresponds to the JSON property `customDimension`
160
+ # @return [Array<Google::Apis::DoubleclicksearchV2::CustomDimension>]
161
+ attr_accessor :custom_dimension
162
+
163
+ # Custom metrics for the conversion.
164
+ # Corresponds to the JSON property `customMetric`
165
+ # @return [Array<Google::Apis::DoubleclicksearchV2::CustomMetric>]
166
+ attr_accessor :custom_metric
167
+
168
+ # The type of device on which the conversion occurred.
169
+ # Corresponds to the JSON property `deviceType`
170
+ # @return [String]
171
+ attr_accessor :device_type
172
+
173
+ # ID that DoubleClick Search generates for each conversion.
174
+ # Corresponds to the JSON property `dsConversionId`
175
+ # @return [String]
176
+ attr_accessor :ds_conversion_id
177
+
178
+ # DS engine account ID.
179
+ # Corresponds to the JSON property `engineAccountId`
180
+ # @return [String]
181
+ attr_accessor :engine_account_id
182
+
183
+ # The Floodlight order ID provided by the advertiser for the conversion.
184
+ # Corresponds to the JSON property `floodlightOrderId`
185
+ # @return [String]
186
+ attr_accessor :floodlight_order_id
187
+
188
+ # ID that DS generates and uses to uniquely identify the inventory account that
189
+ # contains the product.
190
+ # Corresponds to the JSON property `inventoryAccountId`
191
+ # @return [String]
192
+ attr_accessor :inventory_account_id
193
+
194
+ # The country registered for the Merchant Center feed that contains the product.
195
+ # Use an ISO 3166 code to specify a country.
196
+ # Corresponds to the JSON property `productCountry`
197
+ # @return [String]
198
+ attr_accessor :product_country
199
+
200
+ # DS product group ID.
201
+ # Corresponds to the JSON property `productGroupId`
202
+ # @return [String]
203
+ attr_accessor :product_group_id
204
+
205
+ # The product ID (SKU).
206
+ # Corresponds to the JSON property `productId`
207
+ # @return [String]
208
+ attr_accessor :product_id
209
+
210
+ # The language registered for the Merchant Center feed that contains the product.
211
+ # Use an ISO 639 code to specify a language.
212
+ # Corresponds to the JSON property `productLanguage`
213
+ # @return [String]
214
+ attr_accessor :product_language
215
+
216
+ # The quantity of this conversion, in millis.
217
+ # Corresponds to the JSON property `quantityMillis`
218
+ # @return [String]
219
+ attr_accessor :quantity_millis
220
+
221
+ # The revenue amount of this TRANSACTION conversion, in micros.
222
+ # Corresponds to the JSON property `revenueMicros`
223
+ # @return [String]
224
+ attr_accessor :revenue_micros
225
+
226
+ # The numeric segmentation identifier (for example, DoubleClick Search
227
+ # Floodlight activity ID).
228
+ # Corresponds to the JSON property `segmentationId`
229
+ # @return [String]
230
+ attr_accessor :segmentation_id
231
+
232
+ # The friendly segmentation identifier (for example, DoubleClick Search
233
+ # Floodlight activity name).
234
+ # Corresponds to the JSON property `segmentationName`
235
+ # @return [String]
236
+ attr_accessor :segmentation_name
237
+
238
+ # The segmentation type of this conversion (for example, FLOODLIGHT).
239
+ # Corresponds to the JSON property `segmentationType`
240
+ # @return [String]
241
+ attr_accessor :segmentation_type
242
+
243
+ # The state of the conversion, that is, either ACTIVE or REMOVED. Note: state
244
+ # DELETED is deprecated.
245
+ # Corresponds to the JSON property `state`
246
+ # @return [String]
247
+ attr_accessor :state
248
+
249
+ # The ID of the local store for which the product was advertised. Applicable
250
+ # only when the channel is "local".
251
+ # Corresponds to the JSON property `storeId`
252
+ # @return [String]
253
+ attr_accessor :store_id
254
+
255
+ # The type of the conversion, that is, either ACTION or TRANSACTION. An ACTION
256
+ # conversion is an action by the user that has no monetarily quantifiable value,
257
+ # while a TRANSACTION conversion is an action that does have a monetarily
258
+ # quantifiable value. Examples are email list signups (ACTION) versus ecommerce
259
+ # purchases (TRANSACTION).
260
+ # Corresponds to the JSON property `type`
261
+ # @return [String]
262
+ attr_accessor :type
263
+
264
+ def initialize(**args)
265
+ update!(**args)
266
+ end
267
+
268
+ # Update properties of this object
269
+ def update!(**args)
270
+ @ad_group_id = args[:ad_group_id] unless args[:ad_group_id].nil?
271
+ @ad_id = args[:ad_id] unless args[:ad_id].nil?
272
+ @advertiser_id = args[:advertiser_id] unless args[:advertiser_id].nil?
273
+ @agency_id = args[:agency_id] unless args[:agency_id].nil?
274
+ @attribution_model = args[:attribution_model] unless args[:attribution_model].nil?
275
+ @campaign_id = args[:campaign_id] unless args[:campaign_id].nil?
276
+ @channel = args[:channel] unless args[:channel].nil?
277
+ @click_id = args[:click_id] unless args[:click_id].nil?
278
+ @conversion_id = args[:conversion_id] unless args[:conversion_id].nil?
279
+ @conversion_modified_timestamp = args[:conversion_modified_timestamp] unless args[:conversion_modified_timestamp].nil?
280
+ @conversion_timestamp = args[:conversion_timestamp] unless args[:conversion_timestamp].nil?
281
+ @count_millis = args[:count_millis] unless args[:count_millis].nil?
282
+ @criterion_id = args[:criterion_id] unless args[:criterion_id].nil?
283
+ @currency_code = args[:currency_code] unless args[:currency_code].nil?
284
+ @custom_dimension = args[:custom_dimension] unless args[:custom_dimension].nil?
285
+ @custom_metric = args[:custom_metric] unless args[:custom_metric].nil?
286
+ @device_type = args[:device_type] unless args[:device_type].nil?
287
+ @ds_conversion_id = args[:ds_conversion_id] unless args[:ds_conversion_id].nil?
288
+ @engine_account_id = args[:engine_account_id] unless args[:engine_account_id].nil?
289
+ @floodlight_order_id = args[:floodlight_order_id] unless args[:floodlight_order_id].nil?
290
+ @inventory_account_id = args[:inventory_account_id] unless args[:inventory_account_id].nil?
291
+ @product_country = args[:product_country] unless args[:product_country].nil?
292
+ @product_group_id = args[:product_group_id] unless args[:product_group_id].nil?
293
+ @product_id = args[:product_id] unless args[:product_id].nil?
294
+ @product_language = args[:product_language] unless args[:product_language].nil?
295
+ @quantity_millis = args[:quantity_millis] unless args[:quantity_millis].nil?
296
+ @revenue_micros = args[:revenue_micros] unless args[:revenue_micros].nil?
297
+ @segmentation_id = args[:segmentation_id] unless args[:segmentation_id].nil?
298
+ @segmentation_name = args[:segmentation_name] unless args[:segmentation_name].nil?
299
+ @segmentation_type = args[:segmentation_type] unless args[:segmentation_type].nil?
300
+ @state = args[:state] unless args[:state].nil?
301
+ @store_id = args[:store_id] unless args[:store_id].nil?
302
+ @type = args[:type] unless args[:type].nil?
303
+ end
304
+ end
305
+
306
+ # A list of conversions.
307
+ class ConversionList
308
+ include Google::Apis::Core::Hashable
309
+
310
+ # The conversions being requested.
311
+ # Corresponds to the JSON property `conversion`
312
+ # @return [Array<Google::Apis::DoubleclicksearchV2::Conversion>]
313
+ attr_accessor :conversion
314
+
315
+ # Identifies this as a ConversionList resource. Value: the fixed string
316
+ # doubleclicksearch#conversionList.
317
+ # Corresponds to the JSON property `kind`
318
+ # @return [String]
319
+ attr_accessor :kind
320
+
321
+ def initialize(**args)
322
+ update!(**args)
323
+ end
324
+
325
+ # Update properties of this object
326
+ def update!(**args)
327
+ @conversion = args[:conversion] unless args[:conversion].nil?
328
+ @kind = args[:kind] unless args[:kind].nil?
329
+ end
330
+ end
331
+
332
+ # A message containing the custome dimension.
333
+ class CustomDimension
334
+ include Google::Apis::Core::Hashable
335
+
336
+ # Custom dimension name.
337
+ # Corresponds to the JSON property `name`
338
+ # @return [String]
339
+ attr_accessor :name
340
+
341
+ # Custom dimension value.
342
+ # Corresponds to the JSON property `value`
343
+ # @return [String]
344
+ attr_accessor :value
345
+
346
+ def initialize(**args)
347
+ update!(**args)
348
+ end
349
+
350
+ # Update properties of this object
351
+ def update!(**args)
352
+ @name = args[:name] unless args[:name].nil?
353
+ @value = args[:value] unless args[:value].nil?
354
+ end
355
+ end
356
+
357
+ # A message containing the custome metric.
358
+ class CustomMetric
359
+ include Google::Apis::Core::Hashable
360
+
361
+ # Custom metric name.
362
+ # Corresponds to the JSON property `name`
363
+ # @return [String]
364
+ attr_accessor :name
365
+
366
+ # Custom metric numeric value.
367
+ # Corresponds to the JSON property `value`
368
+ # @return [Float]
369
+ attr_accessor :value
370
+
371
+ def initialize(**args)
372
+ update!(**args)
373
+ end
374
+
375
+ # Update properties of this object
376
+ def update!(**args)
377
+ @name = args[:name] unless args[:name].nil?
378
+ @value = args[:value] unless args[:value].nil?
379
+ end
380
+ end
381
+
382
+ # A DoubleClick Search report. This object contains the report request, some
383
+ # report metadata such as currency code, and the generated report rows or report
384
+ # files.
385
+ class Report
386
+ include Google::Apis::Core::Hashable
387
+
388
+ # Asynchronous report only. Contains a list of generated report files once the
389
+ # report has succesfully completed.
390
+ # Corresponds to the JSON property `files`
391
+ # @return [Array<Google::Apis::DoubleclicksearchV2::Report::File>]
392
+ attr_accessor :files
393
+
394
+ # Asynchronous report only. Id of the report.
395
+ # Corresponds to the JSON property `id`
396
+ # @return [String]
397
+ attr_accessor :id
398
+
399
+ # Asynchronous report only. True if and only if the report has completed
400
+ # successfully and the report files are ready to be downloaded.
401
+ # Corresponds to the JSON property `isReportReady`
402
+ # @return [Boolean]
403
+ attr_accessor :is_report_ready
404
+ alias_method :is_report_ready?, :is_report_ready
405
+
406
+ # Identifies this as a Report resource. Value: the fixed string
407
+ # doubleclicksearch#report.
408
+ # Corresponds to the JSON property `kind`
409
+ # @return [String]
410
+ attr_accessor :kind
411
+
412
+ # A request object used to create a DoubleClick Search report.
413
+ # Corresponds to the JSON property `request`
414
+ # @return [Google::Apis::DoubleclicksearchV2::ReportRequest]
415
+ attr_accessor :request
416
+
417
+ # The number of report rows generated by the report, not including headers.
418
+ # Corresponds to the JSON property `rowCount`
419
+ # @return [Fixnum]
420
+ attr_accessor :row_count
421
+
422
+ # Synchronous report only. Generated report rows.
423
+ # Corresponds to the JSON property `rows`
424
+ # @return [Array<Hash<String,Object>>]
425
+ attr_accessor :rows
426
+
427
+ # The currency code of all monetary values produced in the report, including
428
+ # values that are set by users (e.g., keyword bid settings) and metrics (e.g.,
429
+ # cost and revenue). The currency code of a report is determined by the
430
+ # statisticsCurrency field of the report request.
431
+ # Corresponds to the JSON property `statisticsCurrencyCode`
432
+ # @return [String]
433
+ attr_accessor :statistics_currency_code
434
+
435
+ # If all statistics of the report are sourced from the same time zone, this
436
+ # would be it. Otherwise the field is unset.
437
+ # Corresponds to the JSON property `statisticsTimeZone`
438
+ # @return [String]
439
+ attr_accessor :statistics_time_zone
440
+
441
+ def initialize(**args)
442
+ update!(**args)
443
+ end
444
+
445
+ # Update properties of this object
446
+ def update!(**args)
447
+ @files = args[:files] unless args[:files].nil?
448
+ @id = args[:id] unless args[:id].nil?
449
+ @is_report_ready = args[:is_report_ready] unless args[:is_report_ready].nil?
450
+ @kind = args[:kind] unless args[:kind].nil?
451
+ @request = args[:request] unless args[:request].nil?
452
+ @row_count = args[:row_count] unless args[:row_count].nil?
453
+ @rows = args[:rows] unless args[:rows].nil?
454
+ @statistics_currency_code = args[:statistics_currency_code] unless args[:statistics_currency_code].nil?
455
+ @statistics_time_zone = args[:statistics_time_zone] unless args[:statistics_time_zone].nil?
456
+ end
457
+
458
+ #
459
+ class File
460
+ include Google::Apis::Core::Hashable
461
+
462
+ # The size of this report file in bytes.
463
+ # Corresponds to the JSON property `byteCount`
464
+ # @return [String]
465
+ attr_accessor :byte_count
466
+
467
+ # Use this url to download the report file.
468
+ # Corresponds to the JSON property `url`
469
+ # @return [String]
470
+ attr_accessor :url
471
+
472
+ def initialize(**args)
473
+ update!(**args)
474
+ end
475
+
476
+ # Update properties of this object
477
+ def update!(**args)
478
+ @byte_count = args[:byte_count] unless args[:byte_count].nil?
479
+ @url = args[:url] unless args[:url].nil?
480
+ end
481
+ end
482
+ end
483
+
484
+ # A request object used to create a DoubleClick Search report.
485
+ class ReportApiColumnSpec
486
+ include Google::Apis::Core::Hashable
487
+
488
+ # Name of a DoubleClick Search column to include in the report.
489
+ # Corresponds to the JSON property `columnName`
490
+ # @return [String]
491
+ attr_accessor :column_name
492
+
493
+ # Segments a report by a custom dimension. The report must be scoped to an
494
+ # advertiser or lower, and the custom dimension must already be set up in
495
+ # DoubleClick Search. The custom dimension name, which appears in DoubleClick
496
+ # Search, is case sensitive.
497
+ # If used in a conversion report, returns the value of the specified custom
498
+ # dimension for the given conversion, if set. This column does not segment the
499
+ # conversion report.
500
+ # Corresponds to the JSON property `customDimensionName`
501
+ # @return [String]
502
+ attr_accessor :custom_dimension_name
503
+
504
+ # Name of a custom metric to include in the report. The report must be scoped to
505
+ # an advertiser or lower, and the custom metric must already be set up in
506
+ # DoubleClick Search. The custom metric name, which appears in DoubleClick
507
+ # Search, is case sensitive.
508
+ # Corresponds to the JSON property `customMetricName`
509
+ # @return [String]
510
+ attr_accessor :custom_metric_name
511
+
512
+ # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall
513
+ # time range of the report for this column only. Must be provided together with
514
+ # startDate.
515
+ # Corresponds to the JSON property `endDate`
516
+ # @return [String]
517
+ attr_accessor :end_date
518
+
519
+ # Synchronous report only. Set to true to group by this column. Defaults to
520
+ # false.
521
+ # Corresponds to the JSON property `groupByColumn`
522
+ # @return [Boolean]
523
+ attr_accessor :group_by_column
524
+ alias_method :group_by_column?, :group_by_column
525
+
526
+ # Text used to identify this column in the report output; defaults to columnName
527
+ # or savedColumnName when not specified. This can be used to prevent collisions
528
+ # between DoubleClick Search columns and saved columns with the same name.
529
+ # Corresponds to the JSON property `headerText`
530
+ # @return [String]
531
+ attr_accessor :header_text
532
+
533
+ # The platform that is used to provide data for the custom dimension. Acceptable
534
+ # values are "floodlight".
535
+ # Corresponds to the JSON property `platformSource`
536
+ # @return [String]
537
+ attr_accessor :platform_source
538
+
539
+ # Returns metrics only for a specific type of product activity. Accepted values
540
+ # are:
541
+ # - "sold": returns metrics only for products that were sold
542
+ # - "advertised": returns metrics only for products that were advertised in a
543
+ # Shopping campaign, and that might or might not have been sold
544
+ # Corresponds to the JSON property `productReportPerspective`
545
+ # @return [String]
546
+ attr_accessor :product_report_perspective
547
+
548
+ # Name of a saved column to include in the report. The report must be scoped at
549
+ # advertiser or lower, and this saved column must already be created in the
550
+ # DoubleClick Search UI.
551
+ # Corresponds to the JSON property `savedColumnName`
552
+ # @return [String]
553
+ attr_accessor :saved_column_name
554
+
555
+ # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall
556
+ # time range of the report for this column only. Must be provided together with
557
+ # endDate.
558
+ # Corresponds to the JSON property `startDate`
559
+ # @return [String]
560
+ attr_accessor :start_date
561
+
562
+ def initialize(**args)
563
+ update!(**args)
564
+ end
565
+
566
+ # Update properties of this object
567
+ def update!(**args)
568
+ @column_name = args[:column_name] unless args[:column_name].nil?
569
+ @custom_dimension_name = args[:custom_dimension_name] unless args[:custom_dimension_name].nil?
570
+ @custom_metric_name = args[:custom_metric_name] unless args[:custom_metric_name].nil?
571
+ @end_date = args[:end_date] unless args[:end_date].nil?
572
+ @group_by_column = args[:group_by_column] unless args[:group_by_column].nil?
573
+ @header_text = args[:header_text] unless args[:header_text].nil?
574
+ @platform_source = args[:platform_source] unless args[:platform_source].nil?
575
+ @product_report_perspective = args[:product_report_perspective] unless args[:product_report_perspective].nil?
576
+ @saved_column_name = args[:saved_column_name] unless args[:saved_column_name].nil?
577
+ @start_date = args[:start_date] unless args[:start_date].nil?
578
+ end
579
+ end
580
+
581
+ # A request object used to create a DoubleClick Search report.
582
+ class ReportRequest
583
+ include Google::Apis::Core::Hashable
584
+
585
+ # The columns to include in the report. This includes both DoubleClick Search
586
+ # columns and saved columns. For DoubleClick Search columns, only the columnName
587
+ # parameter is required. For saved columns only the savedColumnName parameter is
588
+ # required. Both columnName and savedColumnName cannot be set in the same stanza.
589
+ # Corresponds to the JSON property `columns`
590
+ # @return [Array<Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec>]
591
+ attr_accessor :columns
592
+
593
+ # Format that the report should be returned in. Currently csv or tsv is
594
+ # supported.
595
+ # Corresponds to the JSON property `downloadFormat`
596
+ # @return [String]
597
+ attr_accessor :download_format
598
+
599
+ # A list of filters to be applied to the report.
600
+ # Corresponds to the JSON property `filters`
601
+ # @return [Array<Google::Apis::DoubleclicksearchV2::ReportRequest::Filter>]
602
+ attr_accessor :filters
603
+
604
+ # Determines if removed entities should be included in the report. Defaults to
605
+ # false. Deprecated, please use includeRemovedEntities instead.
606
+ # Corresponds to the JSON property `includeDeletedEntities`
607
+ # @return [Boolean]
608
+ attr_accessor :include_deleted_entities
609
+ alias_method :include_deleted_entities?, :include_deleted_entities
610
+
611
+ # Determines if removed entities should be included in the report. Defaults to
612
+ # false.
613
+ # Corresponds to the JSON property `includeRemovedEntities`
614
+ # @return [Boolean]
615
+ attr_accessor :include_removed_entities
616
+ alias_method :include_removed_entities?, :include_removed_entities
617
+
618
+ # Asynchronous report only. The maximum number of rows per report file. A large
619
+ # report is split into many files based on this field. Acceptable values are
620
+ # 1000000 to 100000000, inclusive.
621
+ # Corresponds to the JSON property `maxRowsPerFile`
622
+ # @return [Fixnum]
623
+ attr_accessor :max_rows_per_file
624
+
625
+ # Synchronous report only. A list of columns and directions defining sorting to
626
+ # be performed on the report rows.
627
+ # Corresponds to the JSON property `orderBy`
628
+ # @return [Array<Google::Apis::DoubleclicksearchV2::ReportRequest::OrderBy>]
629
+ attr_accessor :order_by
630
+
631
+ # The reportScope is a set of IDs that are used to determine which subset of
632
+ # entities will be returned in the report. The full lineage of IDs from the
633
+ # lowest scoped level desired up through agency is required.
634
+ # Corresponds to the JSON property `reportScope`
635
+ # @return [Google::Apis::DoubleclicksearchV2::ReportRequest::ReportScope]
636
+ attr_accessor :report_scope
637
+
638
+ # Determines the type of rows that are returned in the report. For example, if
639
+ # you specify reportType: keyword, each row in the report will contain data
640
+ # about a keyword. See the Types of Reports reference for the columns that are
641
+ # available for each type.
642
+ # Corresponds to the JSON property `reportType`
643
+ # @return [String]
644
+ attr_accessor :report_type
645
+
646
+ # Synchronous report only. The maxinum number of rows to return; additional rows
647
+ # are dropped. Acceptable values are 0 to 10000, inclusive. Defaults to 10000.
648
+ # Corresponds to the JSON property `rowCount`
649
+ # @return [Fixnum]
650
+ attr_accessor :row_count
651
+
652
+ # Synchronous report only. Zero-based index of the first row to return.
653
+ # Acceptable values are 0 to 50000, inclusive. Defaults to 0.
654
+ # Corresponds to the JSON property `startRow`
655
+ # @return [Fixnum]
656
+ attr_accessor :start_row
657
+
658
+ # Specifies the currency in which monetary will be returned. Possible values are:
659
+ # usd, agency (valid if the report is scoped to agency or lower), advertiser (
660
+ # valid if the report is scoped to * advertiser or lower), or account (valid if
661
+ # the report is scoped to engine account or lower).
662
+ # Corresponds to the JSON property `statisticsCurrency`
663
+ # @return [String]
664
+ attr_accessor :statistics_currency
665
+
666
+ # If metrics are requested in a report, this argument will be used to restrict
667
+ # the metrics to a specific time range.
668
+ # Corresponds to the JSON property `timeRange`
669
+ # @return [Google::Apis::DoubleclicksearchV2::ReportRequest::TimeRange]
670
+ attr_accessor :time_range
671
+
672
+ # If true, the report would only be created if all the requested stat data are
673
+ # sourced from a single timezone. Defaults to false.
674
+ # Corresponds to the JSON property `verifySingleTimeZone`
675
+ # @return [Boolean]
676
+ attr_accessor :verify_single_time_zone
677
+ alias_method :verify_single_time_zone?, :verify_single_time_zone
678
+
679
+ def initialize(**args)
680
+ update!(**args)
681
+ end
682
+
683
+ # Update properties of this object
684
+ def update!(**args)
685
+ @columns = args[:columns] unless args[:columns].nil?
686
+ @download_format = args[:download_format] unless args[:download_format].nil?
687
+ @filters = args[:filters] unless args[:filters].nil?
688
+ @include_deleted_entities = args[:include_deleted_entities] unless args[:include_deleted_entities].nil?
689
+ @include_removed_entities = args[:include_removed_entities] unless args[:include_removed_entities].nil?
690
+ @max_rows_per_file = args[:max_rows_per_file] unless args[:max_rows_per_file].nil?
691
+ @order_by = args[:order_by] unless args[:order_by].nil?
692
+ @report_scope = args[:report_scope] unless args[:report_scope].nil?
693
+ @report_type = args[:report_type] unless args[:report_type].nil?
694
+ @row_count = args[:row_count] unless args[:row_count].nil?
695
+ @start_row = args[:start_row] unless args[:start_row].nil?
696
+ @statistics_currency = args[:statistics_currency] unless args[:statistics_currency].nil?
697
+ @time_range = args[:time_range] unless args[:time_range].nil?
698
+ @verify_single_time_zone = args[:verify_single_time_zone] unless args[:verify_single_time_zone].nil?
699
+ end
700
+
701
+ #
702
+ class Filter
703
+ include Google::Apis::Core::Hashable
704
+
705
+ # A request object used to create a DoubleClick Search report.
706
+ # Corresponds to the JSON property `column`
707
+ # @return [Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec]
708
+ attr_accessor :column
709
+
710
+ # Operator to use in the filter. See the filter reference for a list of
711
+ # available operators.
712
+ # Corresponds to the JSON property `operator`
713
+ # @return [String]
714
+ attr_accessor :operator
715
+
716
+ # A list of values to filter the column value against.
717
+ # Corresponds to the JSON property `values`
718
+ # @return [Array<Object>]
719
+ attr_accessor :values
720
+
721
+ def initialize(**args)
722
+ update!(**args)
723
+ end
724
+
725
+ # Update properties of this object
726
+ def update!(**args)
727
+ @column = args[:column] unless args[:column].nil?
728
+ @operator = args[:operator] unless args[:operator].nil?
729
+ @values = args[:values] unless args[:values].nil?
730
+ end
731
+ end
732
+
733
+ #
734
+ class OrderBy
735
+ include Google::Apis::Core::Hashable
736
+
737
+ # A request object used to create a DoubleClick Search report.
738
+ # Corresponds to the JSON property `column`
739
+ # @return [Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec]
740
+ attr_accessor :column
741
+
742
+ # The sort direction, which is either ascending or descending.
743
+ # Corresponds to the JSON property `sortOrder`
744
+ # @return [String]
745
+ attr_accessor :sort_order
746
+
747
+ def initialize(**args)
748
+ update!(**args)
749
+ end
750
+
751
+ # Update properties of this object
752
+ def update!(**args)
753
+ @column = args[:column] unless args[:column].nil?
754
+ @sort_order = args[:sort_order] unless args[:sort_order].nil?
755
+ end
756
+ end
757
+
758
+ # The reportScope is a set of IDs that are used to determine which subset of
759
+ # entities will be returned in the report. The full lineage of IDs from the
760
+ # lowest scoped level desired up through agency is required.
761
+ class ReportScope
762
+ include Google::Apis::Core::Hashable
763
+
764
+ # DS ad group ID.
765
+ # Corresponds to the JSON property `adGroupId`
766
+ # @return [String]
767
+ attr_accessor :ad_group_id
768
+
769
+ # DS ad ID.
770
+ # Corresponds to the JSON property `adId`
771
+ # @return [String]
772
+ attr_accessor :ad_id
773
+
774
+ # DS advertiser ID.
775
+ # Corresponds to the JSON property `advertiserId`
776
+ # @return [String]
777
+ attr_accessor :advertiser_id
778
+
779
+ # DS agency ID.
780
+ # Corresponds to the JSON property `agencyId`
781
+ # @return [String]
782
+ attr_accessor :agency_id
783
+
784
+ # DS campaign ID.
785
+ # Corresponds to the JSON property `campaignId`
786
+ # @return [String]
787
+ attr_accessor :campaign_id
788
+
789
+ # DS engine account ID.
790
+ # Corresponds to the JSON property `engineAccountId`
791
+ # @return [String]
792
+ attr_accessor :engine_account_id
793
+
794
+ # DS keyword ID.
795
+ # Corresponds to the JSON property `keywordId`
796
+ # @return [String]
797
+ attr_accessor :keyword_id
798
+
799
+ def initialize(**args)
800
+ update!(**args)
801
+ end
802
+
803
+ # Update properties of this object
804
+ def update!(**args)
805
+ @ad_group_id = args[:ad_group_id] unless args[:ad_group_id].nil?
806
+ @ad_id = args[:ad_id] unless args[:ad_id].nil?
807
+ @advertiser_id = args[:advertiser_id] unless args[:advertiser_id].nil?
808
+ @agency_id = args[:agency_id] unless args[:agency_id].nil?
809
+ @campaign_id = args[:campaign_id] unless args[:campaign_id].nil?
810
+ @engine_account_id = args[:engine_account_id] unless args[:engine_account_id].nil?
811
+ @keyword_id = args[:keyword_id] unless args[:keyword_id].nil?
812
+ end
813
+ end
814
+
815
+ # If metrics are requested in a report, this argument will be used to restrict
816
+ # the metrics to a specific time range.
817
+ class TimeRange
818
+ include Google::Apis::Core::Hashable
819
+
820
+ # Inclusive UTC timestamp in RFC format, e.g., 2013-07-16T10:16:23.555Z. See
821
+ # additional references on how changed attribute reports work.
822
+ # Corresponds to the JSON property `changedAttributesSinceTimestamp`
823
+ # @return [DateTime]
824
+ attr_accessor :changed_attributes_since_timestamp
825
+
826
+ # Inclusive UTC timestamp in RFC format, e.g., 2013-07-16T10:16:23.555Z. See
827
+ # additional references on how changed metrics reports work.
828
+ # Corresponds to the JSON property `changedMetricsSinceTimestamp`
829
+ # @return [DateTime]
830
+ attr_accessor :changed_metrics_since_timestamp
831
+
832
+ # Inclusive date in YYYY-MM-DD format.
833
+ # Corresponds to the JSON property `endDate`
834
+ # @return [String]
835
+ attr_accessor :end_date
836
+
837
+ # Inclusive date in YYYY-MM-DD format.
838
+ # Corresponds to the JSON property `startDate`
839
+ # @return [String]
840
+ attr_accessor :start_date
841
+
842
+ def initialize(**args)
843
+ update!(**args)
844
+ end
845
+
846
+ # Update properties of this object
847
+ def update!(**args)
848
+ @changed_attributes_since_timestamp = args[:changed_attributes_since_timestamp] unless args[:changed_attributes_since_timestamp].nil?
849
+ @changed_metrics_since_timestamp = args[:changed_metrics_since_timestamp] unless args[:changed_metrics_since_timestamp].nil?
850
+ @end_date = args[:end_date] unless args[:end_date].nil?
851
+ @start_date = args[:start_date] unless args[:start_date].nil?
852
+ end
853
+ end
854
+ end
855
+
856
+ # A saved column
857
+ class SavedColumn
858
+ include Google::Apis::Core::Hashable
859
+
860
+ # Identifies this as a SavedColumn resource. Value: the fixed string
861
+ # doubleclicksearch#savedColumn.
862
+ # Corresponds to the JSON property `kind`
863
+ # @return [String]
864
+ attr_accessor :kind
865
+
866
+ # The name of the saved column.
867
+ # Corresponds to the JSON property `savedColumnName`
868
+ # @return [String]
869
+ attr_accessor :saved_column_name
870
+
871
+ # The type of data this saved column will produce.
872
+ # Corresponds to the JSON property `type`
873
+ # @return [String]
874
+ attr_accessor :type
875
+
876
+ def initialize(**args)
877
+ update!(**args)
878
+ end
879
+
880
+ # Update properties of this object
881
+ def update!(**args)
882
+ @kind = args[:kind] unless args[:kind].nil?
883
+ @saved_column_name = args[:saved_column_name] unless args[:saved_column_name].nil?
884
+ @type = args[:type] unless args[:type].nil?
885
+ end
886
+ end
887
+
888
+ # A list of saved columns. Advertisers create saved columns to report on
889
+ # Floodlight activities, Google Analytics goals, or custom KPIs. To request
890
+ # reports with saved columns, you'll need the saved column names that are
891
+ # available from this list.
892
+ class SavedColumnList
893
+ include Google::Apis::Core::Hashable
894
+
895
+ # The saved columns being requested.
896
+ # Corresponds to the JSON property `items`
897
+ # @return [Array<Google::Apis::DoubleclicksearchV2::SavedColumn>]
898
+ attr_accessor :items
899
+
900
+ # Identifies this as a SavedColumnList resource. Value: the fixed string
901
+ # doubleclicksearch#savedColumnList.
902
+ # Corresponds to the JSON property `kind`
903
+ # @return [String]
904
+ attr_accessor :kind
905
+
906
+ def initialize(**args)
907
+ update!(**args)
908
+ end
909
+
910
+ # Update properties of this object
911
+ def update!(**args)
912
+ @items = args[:items] unless args[:items].nil?
913
+ @kind = args[:kind] unless args[:kind].nil?
914
+ end
915
+ end
916
+
917
+ # The request to update availability.
918
+ class UpdateAvailabilityRequest
919
+ include Google::Apis::Core::Hashable
920
+
921
+ # The availabilities being requested.
922
+ # Corresponds to the JSON property `availabilities`
923
+ # @return [Array<Google::Apis::DoubleclicksearchV2::Availability>]
924
+ attr_accessor :availabilities
925
+
926
+ def initialize(**args)
927
+ update!(**args)
928
+ end
929
+
930
+ # Update properties of this object
931
+ def update!(**args)
932
+ @availabilities = args[:availabilities] unless args[:availabilities].nil?
933
+ end
934
+ end
935
+
936
+ # The response to a update availability request.
937
+ class UpdateAvailabilityResponse
938
+ include Google::Apis::Core::Hashable
939
+
940
+ # The availabilities being returned.
941
+ # Corresponds to the JSON property `availabilities`
942
+ # @return [Array<Google::Apis::DoubleclicksearchV2::Availability>]
943
+ attr_accessor :availabilities
944
+
945
+ def initialize(**args)
946
+ update!(**args)
947
+ end
948
+
949
+ # Update properties of this object
950
+ def update!(**args)
951
+ @availabilities = args[:availabilities] unless args[:availabilities].nil?
952
+ end
953
+ end
954
+ end
955
+ end
956
+ end