google-api-client 0.9.8 → 0.10.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (320) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +15 -8
  3. data/CHANGELOG.md +84 -0
  4. data/Gemfile +10 -2
  5. data/README.md +10 -2
  6. data/api_names.yaml +37172 -135
  7. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1200 -0
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +526 -0
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +844 -0
  11. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  12. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +310 -28
  13. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +84 -0
  14. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +60 -8
  15. data/generated/google/apis/adexchangeseller_v2_0.rb +2 -3
  16. data/generated/google/apis/adexchangeseller_v2_0/service.rb +1 -2
  17. data/generated/google/apis/admin_directory_v1.rb +1 -1
  18. data/generated/google/apis/admin_directory_v1/classes.rb +206 -0
  19. data/generated/google/apis/admin_directory_v1/representations.rb +63 -0
  20. data/generated/google/apis/admin_directory_v1/service.rb +41 -2
  21. data/generated/google/apis/admin_reports_v1.rb +5 -5
  22. data/generated/google/apis/admin_reports_v1/service.rb +6 -6
  23. data/generated/google/apis/adsense_v1_4.rb +1 -1
  24. data/generated/google/apis/adsense_v1_4/classes.rb +1 -1
  25. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  26. data/generated/google/apis/adsensehost_v4_1/classes.rb +1 -2
  27. data/generated/google/apis/analytics_v3.rb +1 -1
  28. data/generated/google/apis/analytics_v3/classes.rb +379 -3
  29. data/generated/google/apis/analytics_v3/representations.rb +136 -0
  30. data/generated/google/apis/analytics_v3/service.rb +256 -0
  31. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  32. data/generated/google/apis/analyticsreporting_v4/classes.rb +858 -823
  33. data/generated/google/apis/analyticsreporting_v4/representations.rb +194 -193
  34. data/generated/google/apis/analyticsreporting_v4/service.rb +4 -4
  35. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  36. data/generated/google/apis/androidenterprise_v1/classes.rb +913 -220
  37. data/generated/google/apis/androidenterprise_v1/representations.rb +337 -30
  38. data/generated/google/apis/androidenterprise_v1/service.rb +1163 -561
  39. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  40. data/generated/google/apis/androidpublisher_v2/classes.rb +230 -8
  41. data/generated/google/apis/androidpublisher_v2/representations.rb +90 -0
  42. data/generated/google/apis/androidpublisher_v2/service.rb +116 -3
  43. data/generated/google/apis/appengine_v1beta5.rb +7 -1
  44. data/generated/google/apis/appengine_v1beta5/classes.rb +810 -395
  45. data/generated/google/apis/appengine_v1beta5/representations.rb +188 -22
  46. data/generated/google/apis/appengine_v1beta5/service.rb +343 -39
  47. data/generated/google/apis/appsactivity_v1.rb +3 -3
  48. data/generated/google/apis/appsactivity_v1/classes.rb +7 -0
  49. data/generated/google/apis/appsactivity_v1/representations.rb +1 -0
  50. data/generated/google/apis/appsactivity_v1/service.rb +1 -1
  51. data/generated/google/apis/appstate_v1.rb +1 -1
  52. data/generated/google/apis/bigquery_v2.rb +1 -1
  53. data/generated/google/apis/bigquery_v2/classes.rb +360 -38
  54. data/generated/google/apis/bigquery_v2/representations.rb +106 -0
  55. data/generated/google/apis/bigquery_v2/service.rb +18 -4
  56. data/generated/google/apis/books_v1.rb +2 -2
  57. data/generated/google/apis/books_v1/classes.rb +83 -0
  58. data/generated/google/apis/books_v1/representations.rb +35 -0
  59. data/generated/google/apis/books_v1/service.rb +7 -3
  60. data/generated/google/apis/calendar_v3.rb +1 -1
  61. data/generated/google/apis/calendar_v3/classes.rb +208 -5
  62. data/generated/google/apis/calendar_v3/representations.rb +97 -0
  63. data/generated/google/apis/civicinfo_v2.rb +3 -2
  64. data/generated/google/apis/civicinfo_v2/classes.rb +377 -5
  65. data/generated/google/apis/civicinfo_v2/representations.rb +149 -0
  66. data/generated/google/apis/civicinfo_v2/service.rb +27 -6
  67. data/generated/google/apis/classroom_v1.rb +22 -25
  68. data/generated/google/apis/classroom_v1/classes.rb +998 -761
  69. data/generated/google/apis/classroom_v1/representations.rb +263 -198
  70. data/generated/google/apis/classroom_v1/service.rb +1349 -672
  71. data/generated/google/apis/cloudbilling_v1.rb +3 -3
  72. data/generated/google/apis/cloudbilling_v1/classes.rb +76 -75
  73. data/generated/google/apis/cloudbilling_v1/representations.rb +17 -17
  74. data/generated/google/apis/cloudbilling_v1/service.rb +117 -110
  75. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  76. data/generated/google/apis/cloudbuild_v1/classes.rb +661 -264
  77. data/generated/google/apis/cloudbuild_v1/representations.rb +198 -48
  78. data/generated/google/apis/cloudbuild_v1/service.rb +259 -44
  79. data/generated/google/apis/clouddebugger_v2.rb +5 -8
  80. data/generated/google/apis/clouddebugger_v2/classes.rb +686 -616
  81. data/generated/google/apis/clouddebugger_v2/representations.rb +151 -151
  82. data/generated/google/apis/clouddebugger_v2/service.rb +165 -159
  83. data/generated/google/apis/cloudkms_v1.rb +35 -0
  84. data/generated/google/apis/cloudkms_v1/classes.rb +1022 -0
  85. data/generated/google/apis/cloudkms_v1/representations.rb +448 -0
  86. data/generated/google/apis/cloudkms_v1/service.rb +933 -0
  87. data/generated/google/apis/cloudkms_v1beta1.rb +35 -0
  88. data/generated/google/apis/cloudkms_v1beta1/classes.rb +1039 -0
  89. data/generated/google/apis/cloudkms_v1beta1/representations.rb +448 -0
  90. data/generated/google/apis/cloudkms_v1beta1/service.rb +933 -0
  91. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  92. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  93. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1529 -167
  94. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +491 -26
  95. data/generated/google/apis/cloudresourcemanager_v1/service.rb +1593 -135
  96. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  97. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +1155 -235
  98. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +344 -44
  99. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +702 -310
  100. data/generated/google/apis/cloudtrace_v1.rb +9 -9
  101. data/generated/google/apis/cloudtrace_v1/classes.rb +98 -92
  102. data/generated/google/apis/cloudtrace_v1/representations.rb +24 -24
  103. data/generated/google/apis/cloudtrace_v1/service.rb +42 -37
  104. data/generated/google/apis/compute_beta.rb +1 -1
  105. data/generated/google/apis/compute_beta/classes.rb +7007 -3648
  106. data/generated/google/apis/compute_beta/representations.rb +1459 -120
  107. data/generated/google/apis/compute_beta/service.rb +7943 -3726
  108. data/generated/google/apis/compute_v1.rb +1 -1
  109. data/generated/google/apis/compute_v1/classes.rb +2567 -370
  110. data/generated/google/apis/compute_v1/representations.rb +855 -0
  111. data/generated/google/apis/compute_v1/service.rb +6388 -2908
  112. data/generated/google/apis/container_v1.rb +1 -1
  113. data/generated/google/apis/container_v1/classes.rb +287 -16
  114. data/generated/google/apis/container_v1/representations.rb +113 -2
  115. data/generated/google/apis/container_v1/service.rb +130 -0
  116. data/generated/google/apis/content_v2.rb +1 -1
  117. data/generated/google/apis/content_v2/classes.rb +778 -10
  118. data/generated/google/apis/content_v2/representations.rb +339 -0
  119. data/generated/google/apis/content_v2/service.rb +364 -49
  120. data/generated/google/apis/dataflow_v1b3.rb +37 -0
  121. data/generated/google/apis/dataflow_v1b3/classes.rb +4941 -0
  122. data/generated/google/apis/dataflow_v1b3/representations.rb +2037 -0
  123. data/generated/google/apis/dataflow_v1b3/service.rb +957 -0
  124. data/generated/google/apis/dataproc_v1.rb +1 -1
  125. data/generated/google/apis/dataproc_v1/classes.rb +1235 -963
  126. data/generated/google/apis/dataproc_v1/representations.rb +299 -225
  127. data/generated/google/apis/dataproc_v1/service.rb +277 -192
  128. data/generated/google/apis/datastore_v1.rb +38 -0
  129. data/generated/google/apis/datastore_v1/classes.rb +1289 -0
  130. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  131. data/generated/google/apis/datastore_v1/service.rb +259 -0
  132. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  133. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  134. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  135. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  136. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  137. data/generated/google/apis/deploymentmanager_v2/classes.rb +436 -3
  138. data/generated/google/apis/deploymentmanager_v2/representations.rb +178 -0
  139. data/generated/google/apis/deploymentmanager_v2/service.rb +226 -61
  140. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  141. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  142. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  143. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  144. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  145. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  146. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  147. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  148. data/generated/google/apis/dfareporting_v2_7.rb +40 -0
  149. data/generated/google/apis/dfareporting_v2_7/classes.rb +11876 -0
  150. data/generated/google/apis/dfareporting_v2_7/representations.rb +4243 -0
  151. data/generated/google/apis/dfareporting_v2_7/service.rb +9095 -0
  152. data/generated/google/apis/dns_v1.rb +1 -1
  153. data/generated/google/apis/dns_v1/classes.rb +1 -1
  154. data/generated/google/apis/dns_v2beta1.rb +43 -0
  155. data/generated/google/apis/dns_v2beta1/classes.rb +915 -0
  156. data/generated/google/apis/dns_v2beta1/representations.rb +368 -0
  157. data/generated/google/apis/dns_v2beta1/service.rb +768 -0
  158. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  159. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +79 -86
  160. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +25 -28
  161. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +10 -8
  162. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  163. data/generated/google/apis/doubleclicksearch_v2/classes.rb +6 -4
  164. data/generated/google/apis/drive_v2.rb +1 -1
  165. data/generated/google/apis/drive_v2/classes.rb +595 -37
  166. data/generated/google/apis/drive_v2/representations.rb +140 -0
  167. data/generated/google/apis/drive_v2/service.rb +406 -40
  168. data/generated/google/apis/drive_v3.rb +1 -1
  169. data/generated/google/apis/drive_v3/classes.rb +507 -40
  170. data/generated/google/apis/drive_v3/representations.rb +105 -0
  171. data/generated/google/apis/drive_v3/service.rb +326 -29
  172. data/generated/google/apis/fitness_v1.rb +38 -2
  173. data/generated/google/apis/fitness_v1/classes.rb +65 -7
  174. data/generated/google/apis/fitness_v1/representations.rb +20 -0
  175. data/generated/google/apis/fitness_v1/service.rb +17 -18
  176. data/generated/google/apis/fusiontables_v2.rb +1 -1
  177. data/generated/google/apis/fusiontables_v2/classes.rb +4 -3
  178. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  179. data/generated/google/apis/games_management_v1management.rb +1 -1
  180. data/generated/google/apis/games_v1.rb +1 -1
  181. data/generated/google/apis/genomics_v1.rb +10 -12
  182. data/generated/google/apis/genomics_v1/classes.rb +2276 -2165
  183. data/generated/google/apis/genomics_v1/representations.rb +468 -496
  184. data/generated/google/apis/genomics_v1/service.rb +978 -882
  185. data/generated/google/apis/gmail_v1.rb +11 -2
  186. data/generated/google/apis/gmail_v1/classes.rb +655 -5
  187. data/generated/google/apis/gmail_v1/representations.rb +261 -0
  188. data/generated/google/apis/gmail_v1/service.rb +1211 -48
  189. data/generated/google/apis/groupssettings_v1.rb +2 -2
  190. data/generated/google/apis/groupssettings_v1/classes.rb +12 -0
  191. data/generated/google/apis/groupssettings_v1/representations.rb +2 -0
  192. data/generated/google/apis/iam_v1.rb +2 -2
  193. data/generated/google/apis/iam_v1/classes.rb +446 -368
  194. data/generated/google/apis/iam_v1/representations.rb +109 -91
  195. data/generated/google/apis/iam_v1/service.rb +249 -162
  196. data/generated/google/apis/identitytoolkit_v3.rb +7 -1
  197. data/generated/google/apis/identitytoolkit_v3/classes.rb +254 -2
  198. data/generated/google/apis/identitytoolkit_v3/representations.rb +38 -0
  199. data/generated/google/apis/kgsearch_v1.rb +2 -3
  200. data/generated/google/apis/kgsearch_v1/classes.rb +13 -13
  201. data/generated/google/apis/kgsearch_v1/representations.rb +2 -2
  202. data/generated/google/apis/kgsearch_v1/service.rb +26 -24
  203. data/generated/google/apis/language_v1beta1.rb +36 -0
  204. data/generated/google/apis/language_v1beta1/classes.rb +757 -0
  205. data/generated/google/apis/language_v1beta1/representations.rb +339 -0
  206. data/generated/google/apis/language_v1beta1/service.rb +185 -0
  207. data/generated/google/apis/licensing_v1.rb +3 -3
  208. data/generated/google/apis/licensing_v1/classes.rb +14 -2
  209. data/generated/google/apis/licensing_v1/representations.rb +2 -0
  210. data/generated/google/apis/licensing_v1/service.rb +1 -1
  211. data/generated/google/apis/logging_v2beta1.rb +6 -6
  212. data/generated/google/apis/logging_v2beta1/classes.rb +900 -775
  213. data/generated/google/apis/logging_v2beta1/representations.rb +163 -142
  214. data/generated/google/apis/logging_v2beta1/service.rb +427 -155
  215. data/generated/google/apis/manufacturers_v1.rb +34 -0
  216. data/generated/google/apis/manufacturers_v1/classes.rb +605 -0
  217. data/generated/google/apis/manufacturers_v1/representations.rb +223 -0
  218. data/generated/google/apis/manufacturers_v1/service.rb +138 -0
  219. data/generated/google/apis/mirror_v1.rb +2 -2
  220. data/generated/google/apis/mirror_v1/service.rb +1 -1
  221. data/generated/google/apis/monitoring_v3.rb +45 -0
  222. data/generated/google/apis/monitoring_v3/classes.rb +1333 -0
  223. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  224. data/generated/google/apis/monitoring_v3/service.rb +706 -0
  225. data/generated/google/apis/oauth2_v2.rb +1 -1
  226. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  227. data/generated/google/apis/partners_v2.rb +3 -3
  228. data/generated/google/apis/partners_v2/classes.rb +1831 -477
  229. data/generated/google/apis/partners_v2/representations.rb +571 -114
  230. data/generated/google/apis/partners_v2/service.rb +898 -167
  231. data/generated/google/apis/people_v1.rb +15 -16
  232. data/generated/google/apis/people_v1/classes.rb +1047 -859
  233. data/generated/google/apis/people_v1/representations.rb +252 -213
  234. data/generated/google/apis/people_v1/service.rb +75 -62
  235. data/generated/google/apis/plus_domains_v1.rb +1 -1
  236. data/generated/google/apis/plus_v1.rb +1 -1
  237. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  238. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +527 -456
  239. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +101 -100
  240. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +467 -343
  241. data/generated/google/apis/pubsub_v1.rb +1 -1
  242. data/generated/google/apis/pubsub_v1/classes.rb +363 -310
  243. data/generated/google/apis/pubsub_v1/representations.rb +76 -76
  244. data/generated/google/apis/pubsub_v1/service.rb +464 -335
  245. data/generated/google/apis/qpx_express_v1.rb +1 -1
  246. data/generated/google/apis/qpx_express_v1/classes.rb +6 -0
  247. data/generated/google/apis/qpx_express_v1/representations.rb +1 -0
  248. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  249. data/generated/google/apis/replicapoolupdater_v1beta1.rb +4 -2
  250. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +3 -1
  251. data/generated/google/apis/reseller_v1.rb +1 -1
  252. data/generated/google/apis/reseller_v1/classes.rb +222 -61
  253. data/generated/google/apis/reseller_v1/representations.rb +28 -0
  254. data/generated/google/apis/reseller_v1/service.rb +240 -47
  255. data/generated/google/apis/script_v1.rb +19 -19
  256. data/generated/google/apis/script_v1/classes.rb +151 -137
  257. data/generated/google/apis/script_v1/representations.rb +26 -26
  258. data/generated/google/apis/script_v1/service.rb +9 -8
  259. data/generated/google/apis/sheets_v4.rb +7 -7
  260. data/generated/google/apis/sheets_v4/classes.rb +4530 -3506
  261. data/generated/google/apis/sheets_v4/representations.rb +988 -737
  262. data/generated/google/apis/sheets_v4/service.rb +266 -99
  263. data/generated/google/apis/site_verification_v1.rb +1 -1
  264. data/generated/google/apis/slides_v1.rb +49 -0
  265. data/generated/google/apis/slides_v1/classes.rb +4480 -0
  266. data/generated/google/apis/slides_v1/representations.rb +1926 -0
  267. data/generated/google/apis/slides_v1/service.rb +245 -0
  268. data/generated/google/apis/speech_v1beta1.rb +34 -0
  269. data/generated/google/apis/speech_v1beta1/classes.rb +498 -0
  270. data/generated/google/apis/speech_v1beta1/representations.rb +206 -0
  271. data/generated/google/apis/speech_v1beta1/service.rb +270 -0
  272. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  273. data/generated/google/apis/sqladmin_v1beta4/classes.rb +131 -10
  274. data/generated/google/apis/sqladmin_v1beta4/representations.rb +50 -0
  275. data/generated/google/apis/sqladmin_v1beta4/service.rb +92 -2
  276. data/generated/google/apis/storage_v1.rb +1 -1
  277. data/generated/google/apis/storage_v1/classes.rb +205 -21
  278. data/generated/google/apis/storage_v1/representations.rb +51 -1
  279. data/generated/google/apis/storage_v1/service.rb +263 -9
  280. data/generated/google/apis/tagmanager_v1.rb +5 -5
  281. data/generated/google/apis/translate_v2.rb +2 -2
  282. data/generated/google/apis/translate_v2/service.rb +1 -1
  283. data/generated/google/apis/vision_v1.rb +1 -1
  284. data/generated/google/apis/vision_v1/classes.rb +1275 -731
  285. data/generated/google/apis/vision_v1/representations.rb +378 -111
  286. data/generated/google/apis/vision_v1/service.rb +4 -4
  287. data/generated/google/apis/webmasters_v3.rb +1 -1
  288. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  289. data/generated/google/apis/youtube_analytics_v1/classes.rb +0 -209
  290. data/generated/google/apis/youtube_analytics_v1/representations.rb +0 -99
  291. data/generated/google/apis/youtube_analytics_v1/service.rb +5 -77
  292. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  293. data/generated/google/apis/youtube_partner_v1/classes.rb +155 -0
  294. data/generated/google/apis/youtube_partner_v1/representations.rb +69 -0
  295. data/generated/google/apis/youtube_partner_v1/service.rb +107 -3
  296. data/generated/google/apis/youtube_v3.rb +1 -1
  297. data/generated/google/apis/youtube_v3/classes.rb +430 -22
  298. data/generated/google/apis/youtube_v3/representations.rb +171 -4
  299. data/generated/google/apis/youtube_v3/service.rb +100 -9
  300. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  301. data/generated/google/apis/youtubereporting_v1/classes.rb +140 -131
  302. data/generated/google/apis/youtubereporting_v1/representations.rb +37 -37
  303. data/generated/google/apis/youtubereporting_v1/service.rb +139 -135
  304. data/google-api-client.gemspec +4 -3
  305. data/lib/google/apis/core/api_command.rb +16 -6
  306. data/lib/google/apis/core/base_service.rb +17 -9
  307. data/lib/google/apis/core/download.rb +7 -2
  308. data/lib/google/apis/core/http_command.rb +5 -1
  309. data/lib/google/apis/core/json_representation.rb +2 -2
  310. data/lib/google/apis/core/upload.rb +7 -1
  311. data/lib/google/apis/errors.rb +6 -2
  312. data/lib/google/apis/generator/annotator.rb +6 -0
  313. data/lib/google/apis/version.rb +1 -1
  314. data/samples/cli/lib/samples/bigquery.rb +101 -0
  315. data/samples/cli/lib/samples/calendar.rb +1 -1
  316. data/samples/cli/lib/samples/gmail.rb +74 -0
  317. data/samples/cli/lib/samples/sheets.rb +61 -0
  318. data/samples/cli/lib/samples/you_tube.rb +4 -1
  319. data/sync.rb +71 -0
  320. metadata +86 -18
@@ -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/adexchangebuyer2_v2beta1/service.rb'
16
+ require 'google/apis/adexchangebuyer2_v2beta1/classes.rb'
17
+ require 'google/apis/adexchangebuyer2_v2beta1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Ad Exchange Buyer API II
22
+ #
23
+ # Accesses the latest features for managing Ad Exchange accounts, Real-Time
24
+ # Bidding configurations and auction metrics, and Marketplace programmatic deals.
25
+ #
26
+ # @see https://developers.google.com/ad-exchange/buyer-rest/guides/client-access/
27
+ module Adexchangebuyer2V2beta1
28
+ VERSION = 'V2beta1'
29
+ REVISION = '20170324'
30
+
31
+ # Manage your Ad Exchange buyer account configuration
32
+ AUTH_ADEXCHANGE_BUYER = 'https://www.googleapis.com/auth/adexchange.buyer'
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,1200 @@
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 Adexchangebuyer2V2beta1
24
+
25
+ # A request for watching changes to creative Status.
26
+ class WatchCreativeRequest
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The Pub/Sub topic to publish notifications to.
30
+ # This topic must already exist and must give permission to
31
+ # ad-exchange-buyside-reports@google.com to write to the topic.
32
+ # This should be the full resource name in
33
+ # "projects/`project_id`/topics/`topic_id`" format.
34
+ # Corresponds to the JSON property `topic`
35
+ # @return [String]
36
+ attr_accessor :topic
37
+
38
+ def initialize(**args)
39
+ update!(**args)
40
+ end
41
+
42
+ # Update properties of this object
43
+ def update!(**args)
44
+ @topic = args[:topic] if args.key?(:topic)
45
+ end
46
+ end
47
+
48
+ # @OutputOnly The app type the restriction applies to for mobile device.
49
+ class AppContext
50
+ include Google::Apis::Core::Hashable
51
+
52
+ # The app types this restriction applies to.
53
+ # Corresponds to the JSON property `appTypes`
54
+ # @return [Array<String>]
55
+ attr_accessor :app_types
56
+
57
+ def initialize(**args)
58
+ update!(**args)
59
+ end
60
+
61
+ # Update properties of this object
62
+ def update!(**args)
63
+ @app_types = args[:app_types] if args.key?(:app_types)
64
+ end
65
+ end
66
+
67
+ #
68
+ class ListClientsResponse
69
+ include Google::Apis::Core::Hashable
70
+
71
+ # The returned list of clients.
72
+ # Corresponds to the JSON property `clients`
73
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::Client>]
74
+ attr_accessor :clients
75
+
76
+ # A token to retrieve the next page of results.
77
+ # Pass this value in the
78
+ # ListClientsRequest.pageToken
79
+ # field in the subsequent call to the
80
+ # accounts.clients.list method
81
+ # to retrieve the next page of results.
82
+ # Corresponds to the JSON property `nextPageToken`
83
+ # @return [String]
84
+ attr_accessor :next_page_token
85
+
86
+ def initialize(**args)
87
+ update!(**args)
88
+ end
89
+
90
+ # Update properties of this object
91
+ def update!(**args)
92
+ @clients = args[:clients] if args.key?(:clients)
93
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
94
+ end
95
+ end
96
+
97
+ # Native content for a creative.
98
+ class NativeContent
99
+ include Google::Apis::Core::Hashable
100
+
101
+ # The URL to fetch a native video ad.
102
+ # Corresponds to the JSON property `videoUrl`
103
+ # @return [String]
104
+ attr_accessor :video_url
105
+
106
+ # An image resource. You may provide a larger image than was requested,
107
+ # so long as the aspect ratio is preserved.
108
+ # Corresponds to the JSON property `logo`
109
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::Image]
110
+ attr_accessor :logo
111
+
112
+ # The URL that the browser/SDK will load when the user clicks the ad.
113
+ # Corresponds to the JSON property `clickLinkUrl`
114
+ # @return [String]
115
+ attr_accessor :click_link_url
116
+
117
+ # The price of the promoted app including currency info.
118
+ # Corresponds to the JSON property `priceDisplayText`
119
+ # @return [String]
120
+ attr_accessor :price_display_text
121
+
122
+ # The URL to use for click tracking.
123
+ # Corresponds to the JSON property `clickTrackingUrl`
124
+ # @return [String]
125
+ attr_accessor :click_tracking_url
126
+
127
+ # An image resource. You may provide a larger image than was requested,
128
+ # so long as the aspect ratio is preserved.
129
+ # Corresponds to the JSON property `image`
130
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::Image]
131
+ attr_accessor :image
132
+
133
+ # The name of the advertiser or sponsor, to be displayed in the ad creative.
134
+ # Corresponds to the JSON property `advertiserName`
135
+ # @return [String]
136
+ attr_accessor :advertiser_name
137
+
138
+ # The URL to the app store to purchase/download the promoted app.
139
+ # Corresponds to the JSON property `storeUrl`
140
+ # @return [String]
141
+ attr_accessor :store_url
142
+
143
+ # A short title for the ad.
144
+ # Corresponds to the JSON property `headline`
145
+ # @return [String]
146
+ attr_accessor :headline
147
+
148
+ # An image resource. You may provide a larger image than was requested,
149
+ # so long as the aspect ratio is preserved.
150
+ # Corresponds to the JSON property `appIcon`
151
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::Image]
152
+ attr_accessor :app_icon
153
+
154
+ # A label for the button that the user is supposed to click.
155
+ # Corresponds to the JSON property `callToAction`
156
+ # @return [String]
157
+ attr_accessor :call_to_action
158
+
159
+ # A long description of the ad.
160
+ # Corresponds to the JSON property `body`
161
+ # @return [String]
162
+ attr_accessor :body
163
+
164
+ # The app rating in the app store. Must be in the range [0-5].
165
+ # Corresponds to the JSON property `starRating`
166
+ # @return [Float]
167
+ attr_accessor :star_rating
168
+
169
+ def initialize(**args)
170
+ update!(**args)
171
+ end
172
+
173
+ # Update properties of this object
174
+ def update!(**args)
175
+ @video_url = args[:video_url] if args.key?(:video_url)
176
+ @logo = args[:logo] if args.key?(:logo)
177
+ @click_link_url = args[:click_link_url] if args.key?(:click_link_url)
178
+ @price_display_text = args[:price_display_text] if args.key?(:price_display_text)
179
+ @click_tracking_url = args[:click_tracking_url] if args.key?(:click_tracking_url)
180
+ @image = args[:image] if args.key?(:image)
181
+ @advertiser_name = args[:advertiser_name] if args.key?(:advertiser_name)
182
+ @store_url = args[:store_url] if args.key?(:store_url)
183
+ @headline = args[:headline] if args.key?(:headline)
184
+ @app_icon = args[:app_icon] if args.key?(:app_icon)
185
+ @call_to_action = args[:call_to_action] if args.key?(:call_to_action)
186
+ @body = args[:body] if args.key?(:body)
187
+ @star_rating = args[:star_rating] if args.key?(:star_rating)
188
+ end
189
+ end
190
+
191
+ # @OutputOnly A security context.
192
+ class SecurityContext
193
+ include Google::Apis::Core::Hashable
194
+
195
+ # The security types in this context.
196
+ # Corresponds to the JSON property `securities`
197
+ # @return [Array<String>]
198
+ attr_accessor :securities
199
+
200
+ def initialize(**args)
201
+ update!(**args)
202
+ end
203
+
204
+ # Update properties of this object
205
+ def update!(**args)
206
+ @securities = args[:securities] if args.key?(:securities)
207
+ end
208
+ end
209
+
210
+ # HTML content for a creative.
211
+ class HtmlContent
212
+ include Google::Apis::Core::Hashable
213
+
214
+ # The width of the HTML snippet in pixels.
215
+ # Corresponds to the JSON property `width`
216
+ # @return [Fixnum]
217
+ attr_accessor :width
218
+
219
+ # The HTML snippet that displays the ad when inserted in the web page.
220
+ # Corresponds to the JSON property `snippet`
221
+ # @return [String]
222
+ attr_accessor :snippet
223
+
224
+ # The height of the HTML snippet in pixels.
225
+ # Corresponds to the JSON property `height`
226
+ # @return [Fixnum]
227
+ attr_accessor :height
228
+
229
+ def initialize(**args)
230
+ update!(**args)
231
+ end
232
+
233
+ # Update properties of this object
234
+ def update!(**args)
235
+ @width = args[:width] if args.key?(:width)
236
+ @snippet = args[:snippet] if args.key?(:snippet)
237
+ @height = args[:height] if args.key?(:height)
238
+ end
239
+ end
240
+
241
+ # A response for listing creatives.
242
+ class ListCreativesResponse
243
+ include Google::Apis::Core::Hashable
244
+
245
+ # The list of creatives.
246
+ # Corresponds to the JSON property `creatives`
247
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::Creative>]
248
+ attr_accessor :creatives
249
+
250
+ # A token to retrieve the next page of results.
251
+ # Pass this value in the
252
+ # ListCreativesRequest.page_token
253
+ # field in the subsequent call to `ListCreatives` method to retrieve the next
254
+ # page of results.
255
+ # Corresponds to the JSON property `nextPageToken`
256
+ # @return [String]
257
+ attr_accessor :next_page_token
258
+
259
+ def initialize(**args)
260
+ update!(**args)
261
+ end
262
+
263
+ # Update properties of this object
264
+ def update!(**args)
265
+ @creatives = args[:creatives] if args.key?(:creatives)
266
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
267
+ end
268
+ end
269
+
270
+ # The serving context for this restriction.
271
+ class ServingContext
272
+ include Google::Apis::Core::Hashable
273
+
274
+ # @OutputOnly The app type the restriction applies to for mobile device.
275
+ # Corresponds to the JSON property `appType`
276
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::AppContext]
277
+ attr_accessor :app_type
278
+
279
+ # @OutputOnly A security context.
280
+ # Corresponds to the JSON property `securityType`
281
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::SecurityContext]
282
+ attr_accessor :security_type
283
+
284
+ # @OutputOnly The type of platform the restriction applies to.
285
+ # Corresponds to the JSON property `platform`
286
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::PlatformContext]
287
+ attr_accessor :platform
288
+
289
+ # @OutputOnly The Geo criteria the restriction applies to.
290
+ # Corresponds to the JSON property `location`
291
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::LocationContext]
292
+ attr_accessor :location
293
+
294
+ # @OutputOnly The auction type the restriction applies to.
295
+ # Corresponds to the JSON property `auctionType`
296
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::AuctionContext]
297
+ attr_accessor :auction_type
298
+
299
+ # Matches all contexts.
300
+ # Corresponds to the JSON property `all`
301
+ # @return [String]
302
+ attr_accessor :all
303
+
304
+ def initialize(**args)
305
+ update!(**args)
306
+ end
307
+
308
+ # Update properties of this object
309
+ def update!(**args)
310
+ @app_type = args[:app_type] if args.key?(:app_type)
311
+ @security_type = args[:security_type] if args.key?(:security_type)
312
+ @platform = args[:platform] if args.key?(:platform)
313
+ @location = args[:location] if args.key?(:location)
314
+ @auction_type = args[:auction_type] if args.key?(:auction_type)
315
+ @all = args[:all] if args.key?(:all)
316
+ end
317
+ end
318
+
319
+ # An image resource. You may provide a larger image than was requested,
320
+ # so long as the aspect ratio is preserved.
321
+ class Image
322
+ include Google::Apis::Core::Hashable
323
+
324
+ # Image width in pixels.
325
+ # Corresponds to the JSON property `width`
326
+ # @return [Fixnum]
327
+ attr_accessor :width
328
+
329
+ # The URL of the image.
330
+ # Corresponds to the JSON property `url`
331
+ # @return [String]
332
+ attr_accessor :url
333
+
334
+ # Image height in pixels.
335
+ # Corresponds to the JSON property `height`
336
+ # @return [Fixnum]
337
+ attr_accessor :height
338
+
339
+ def initialize(**args)
340
+ update!(**args)
341
+ end
342
+
343
+ # Update properties of this object
344
+ def update!(**args)
345
+ @width = args[:width] if args.key?(:width)
346
+ @url = args[:url] if args.key?(:url)
347
+ @height = args[:height] if args.key?(:height)
348
+ end
349
+ end
350
+
351
+ # A specific filtering status and how many times it occurred.
352
+ class Reason
353
+ include Google::Apis::Core::Hashable
354
+
355
+ # The filtering status code. Please refer to the
356
+ # [creative-status-codes.txt](https://storage.googleapis.com/adx-rtb-
357
+ # dictionaries/creative-status-codes.txt)
358
+ # file for different statuses.
359
+ # Corresponds to the JSON property `status`
360
+ # @return [Fixnum]
361
+ attr_accessor :status
362
+
363
+ # The number of times the creative was filtered for the status. The
364
+ # count is aggregated across all publishers on the exchange.
365
+ # Corresponds to the JSON property `count`
366
+ # @return [String]
367
+ attr_accessor :count
368
+
369
+ def initialize(**args)
370
+ update!(**args)
371
+ end
372
+
373
+ # Update properties of this object
374
+ def update!(**args)
375
+ @status = args[:status] if args.key?(:status)
376
+ @count = args[:count] if args.key?(:count)
377
+ end
378
+ end
379
+
380
+ # Video content for a creative.
381
+ class VideoContent
382
+ include Google::Apis::Core::Hashable
383
+
384
+ # The URL to fetch a video ad.
385
+ # Corresponds to the JSON property `videoUrl`
386
+ # @return [String]
387
+ attr_accessor :video_url
388
+
389
+ def initialize(**args)
390
+ update!(**args)
391
+ end
392
+
393
+ # Update properties of this object
394
+ def update!(**args)
395
+ @video_url = args[:video_url] if args.key?(:video_url)
396
+ end
397
+ end
398
+
399
+ # An invitation for a new client user to get access to the Ad Exchange
400
+ # Buyer UI.
401
+ # All fields are required unless otherwise specified.
402
+ class ClientUserInvitation
403
+ include Google::Apis::Core::Hashable
404
+
405
+ # The email address to which the invitation is sent. Email
406
+ # addresses should be unique among all client users under each sponsor
407
+ # buyer.
408
+ # Corresponds to the JSON property `email`
409
+ # @return [String]
410
+ attr_accessor :email
411
+
412
+ # Numerical account ID of the client buyer
413
+ # that the invited user is associated with.
414
+ # The value of this field is ignored in create operations.
415
+ # Corresponds to the JSON property `clientAccountId`
416
+ # @return [String]
417
+ attr_accessor :client_account_id
418
+
419
+ # The unique numerical ID of the invitation that is sent to the user.
420
+ # The value of this field is ignored in create operations.
421
+ # Corresponds to the JSON property `invitationId`
422
+ # @return [String]
423
+ attr_accessor :invitation_id
424
+
425
+ def initialize(**args)
426
+ update!(**args)
427
+ end
428
+
429
+ # Update properties of this object
430
+ def update!(**args)
431
+ @email = args[:email] if args.key?(:email)
432
+ @client_account_id = args[:client_account_id] if args.key?(:client_account_id)
433
+ @invitation_id = args[:invitation_id] if args.key?(:invitation_id)
434
+ end
435
+ end
436
+
437
+ # @OutputOnly The auction type the restriction applies to.
438
+ class AuctionContext
439
+ include Google::Apis::Core::Hashable
440
+
441
+ # The auction types this restriction applies to.
442
+ # Corresponds to the JSON property `auctionTypes`
443
+ # @return [Array<String>]
444
+ attr_accessor :auction_types
445
+
446
+ def initialize(**args)
447
+ update!(**args)
448
+ end
449
+
450
+ # Update properties of this object
451
+ def update!(**args)
452
+ @auction_types = args[:auction_types] if args.key?(:auction_types)
453
+ end
454
+ end
455
+
456
+ #
457
+ class ListClientUserInvitationsResponse
458
+ include Google::Apis::Core::Hashable
459
+
460
+ # A token to retrieve the next page of results.
461
+ # Pass this value in the
462
+ # ListClientUserInvitationsRequest.pageToken
463
+ # field in the subsequent call to the
464
+ # clients.invitations.list
465
+ # method to retrieve the next
466
+ # page of results.
467
+ # Corresponds to the JSON property `nextPageToken`
468
+ # @return [String]
469
+ attr_accessor :next_page_token
470
+
471
+ # The returned list of client users.
472
+ # Corresponds to the JSON property `invitations`
473
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::ClientUserInvitation>]
474
+ attr_accessor :invitations
475
+
476
+ def initialize(**args)
477
+ update!(**args)
478
+ end
479
+
480
+ # Update properties of this object
481
+ def update!(**args)
482
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
483
+ @invitations = args[:invitations] if args.key?(:invitations)
484
+ end
485
+ end
486
+
487
+ #
488
+ class ListClientUsersResponse
489
+ include Google::Apis::Core::Hashable
490
+
491
+ # A token to retrieve the next page of results.
492
+ # Pass this value in the
493
+ # ListClientUsersRequest.pageToken
494
+ # field in the subsequent call to the
495
+ # clients.invitations.list
496
+ # method to retrieve the next
497
+ # page of results.
498
+ # Corresponds to the JSON property `nextPageToken`
499
+ # @return [String]
500
+ attr_accessor :next_page_token
501
+
502
+ # The returned list of client users.
503
+ # Corresponds to the JSON property `users`
504
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::ClientUser>]
505
+ attr_accessor :users
506
+
507
+ def initialize(**args)
508
+ update!(**args)
509
+ end
510
+
511
+ # Update properties of this object
512
+ def update!(**args)
513
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
514
+ @users = args[:users] if args.key?(:users)
515
+ end
516
+ end
517
+
518
+ # @OutputOnly The Geo criteria the restriction applies to.
519
+ class LocationContext
520
+ include Google::Apis::Core::Hashable
521
+
522
+ # IDs representing the geo location for this context.
523
+ # Please refer to the
524
+ # [geo-table.csv](https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.
525
+ # csv)
526
+ # file for different geo criteria IDs.
527
+ # Corresponds to the JSON property `geoCriteriaIds`
528
+ # @return [Array<Fixnum>]
529
+ attr_accessor :geo_criteria_ids
530
+
531
+ def initialize(**args)
532
+ update!(**args)
533
+ end
534
+
535
+ # Update properties of this object
536
+ def update!(**args)
537
+ @geo_criteria_ids = args[:geo_criteria_ids] if args.key?(:geo_criteria_ids)
538
+ end
539
+ end
540
+
541
+ # @OutputOnly The type of platform the restriction applies to.
542
+ class PlatformContext
543
+ include Google::Apis::Core::Hashable
544
+
545
+ # The platforms this restriction applies to.
546
+ # Corresponds to the JSON property `platforms`
547
+ # @return [Array<String>]
548
+ attr_accessor :platforms
549
+
550
+ def initialize(**args)
551
+ update!(**args)
552
+ end
553
+
554
+ # Update properties of this object
555
+ def update!(**args)
556
+ @platforms = args[:platforms] if args.key?(:platforms)
557
+ end
558
+ end
559
+
560
+ # A client user is created under a client buyer and has restricted access to
561
+ # the Ad Exchange Marketplace and certain other sections
562
+ # of the Ad Exchange Buyer UI based on the role
563
+ # granted to the associated client buyer.
564
+ # The only way a new client user can be created is via accepting an
565
+ # email invitation
566
+ # (see the
567
+ # accounts.clients.invitations.create
568
+ # method).
569
+ # All fields are required unless otherwise specified.
570
+ class ClientUser
571
+ include Google::Apis::Core::Hashable
572
+
573
+ # The status of the client user.
574
+ # Corresponds to the JSON property `status`
575
+ # @return [String]
576
+ attr_accessor :status
577
+
578
+ # The unique numerical ID of the client user
579
+ # that has accepted an invitation.
580
+ # The value of this field is ignored in an update operation.
581
+ # Corresponds to the JSON property `userId`
582
+ # @return [String]
583
+ attr_accessor :user_id
584
+
585
+ # User's email address. The value of this field
586
+ # is ignored in an update operation.
587
+ # Corresponds to the JSON property `email`
588
+ # @return [String]
589
+ attr_accessor :email
590
+
591
+ # Numerical account ID of the client buyer
592
+ # with which the user is associated; the
593
+ # buyer must be a client of the current sponsor buyer.
594
+ # The value of this field is ignored in an update operation.
595
+ # Corresponds to the JSON property `clientAccountId`
596
+ # @return [String]
597
+ attr_accessor :client_account_id
598
+
599
+ def initialize(**args)
600
+ update!(**args)
601
+ end
602
+
603
+ # Update properties of this object
604
+ def update!(**args)
605
+ @status = args[:status] if args.key?(:status)
606
+ @user_id = args[:user_id] if args.key?(:user_id)
607
+ @email = args[:email] if args.key?(:email)
608
+ @client_account_id = args[:client_account_id] if args.key?(:client_account_id)
609
+ end
610
+ end
611
+
612
+ # The association between a creative and a deal.
613
+ class CreativeDealAssociation
614
+ include Google::Apis::Core::Hashable
615
+
616
+ # The ID of the creative associated with the deal.
617
+ # Corresponds to the JSON property `creativeId`
618
+ # @return [String]
619
+ attr_accessor :creative_id
620
+
621
+ # The externalDealId for the deal associated with the creative.
622
+ # Corresponds to the JSON property `dealsId`
623
+ # @return [String]
624
+ attr_accessor :deals_id
625
+
626
+ # The account the creative belongs to.
627
+ # Corresponds to the JSON property `accountId`
628
+ # @return [String]
629
+ attr_accessor :account_id
630
+
631
+ def initialize(**args)
632
+ update!(**args)
633
+ end
634
+
635
+ # Update properties of this object
636
+ def update!(**args)
637
+ @creative_id = args[:creative_id] if args.key?(:creative_id)
638
+ @deals_id = args[:deals_id] if args.key?(:deals_id)
639
+ @account_id = args[:account_id] if args.key?(:account_id)
640
+ end
641
+ end
642
+
643
+ # @OutputOnly Filtering reasons for this creative during a period of a single
644
+ # day (from midnight to midnight Pacific).
645
+ class FilteringStats
646
+ include Google::Apis::Core::Hashable
647
+
648
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
649
+ # time zone are either specified elsewhere or are not significant. The date
650
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
651
+ # represent a year and month where the day is not significant, e.g. credit card
652
+ # expiration date. The year may be 0 to represent a month and day independent
653
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
654
+ # and `google.protobuf.Timestamp`.
655
+ # Corresponds to the JSON property `date`
656
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::Date]
657
+ attr_accessor :date
658
+
659
+ # The set of filtering reasons for this date.
660
+ # Corresponds to the JSON property `reasons`
661
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::Reason>]
662
+ attr_accessor :reasons
663
+
664
+ def initialize(**args)
665
+ update!(**args)
666
+ end
667
+
668
+ # Update properties of this object
669
+ def update!(**args)
670
+ @date = args[:date] if args.key?(:date)
671
+ @reasons = args[:reasons] if args.key?(:reasons)
672
+ end
673
+ end
674
+
675
+ # A creative and its classification data.
676
+ class Creative
677
+ include Google::Apis::Core::Hashable
678
+
679
+ # @OutputOnly The top-level open auction status of this creative.
680
+ # If disapproved, an entry for 'auctionType = OPEN_AUCTION' (or 'ALL') in
681
+ # serving_restrictions will also exist. Note
682
+ # that this may be nuanced with other contextual restrictions, in which case,
683
+ # it may be preferable to read from serving_restrictions directly.
684
+ # Can be used to filter the response of the
685
+ # creatives.list
686
+ # method.
687
+ # Corresponds to the JSON property `openAuctionStatus`
688
+ # @return [String]
689
+ attr_accessor :open_auction_status
690
+
691
+ # The name of the company being advertised in the creative.
692
+ # Corresponds to the JSON property `advertiserName`
693
+ # @return [String]
694
+ attr_accessor :advertiser_name
695
+
696
+ # @OutputOnly Detected advertiser IDs, if any.
697
+ # Corresponds to the JSON property `detectedAdvertiserIds`
698
+ # @return [Array<String>]
699
+ attr_accessor :detected_advertiser_ids
700
+
701
+ # @OutputOnly
702
+ # The detected domains for this creative.
703
+ # Corresponds to the JSON property `detectedDomains`
704
+ # @return [Array<String>]
705
+ attr_accessor :detected_domains
706
+
707
+ # @OutputOnly Filtering reasons for this creative during a period of a single
708
+ # day (from midnight to midnight Pacific).
709
+ # Corresponds to the JSON property `filteringStats`
710
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::FilteringStats]
711
+ attr_accessor :filtering_stats
712
+
713
+ # All attributes for the ads that may be shown from this creative.
714
+ # Can be used to filter the response of the
715
+ # creatives.list
716
+ # method.
717
+ # Corresponds to the JSON property `attributes`
718
+ # @return [Array<String>]
719
+ attr_accessor :attributes
720
+
721
+ # @OutputOnly The last update timestamp of the creative via API.
722
+ # Corresponds to the JSON property `apiUpdateTime`
723
+ # @return [String]
724
+ attr_accessor :api_update_time
725
+
726
+ # @OutputOnly
727
+ # The detected languages for this creative. The order is arbitrary. The codes
728
+ # are 2 or 5 characters and are documented at
729
+ # https://developers.google.com/adwords/api/docs/appendix/languagecodes.
730
+ # Corresponds to the JSON property `detectedLanguages`
731
+ # @return [Array<String>]
732
+ attr_accessor :detected_languages
733
+
734
+ # The buyer-defined creative ID of this creative.
735
+ # Can be used to filter the response of the
736
+ # creatives.list
737
+ # method.
738
+ # Corresponds to the JSON property `creativeId`
739
+ # @return [String]
740
+ attr_accessor :creative_id
741
+
742
+ # The account that this creative belongs to.
743
+ # Can be used to filter the response of the
744
+ # creatives.list
745
+ # method.
746
+ # Corresponds to the JSON property `accountId`
747
+ # @return [String]
748
+ attr_accessor :account_id
749
+
750
+ # Native content for a creative.
751
+ # Corresponds to the JSON property `native`
752
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::NativeContent]
753
+ attr_accessor :native
754
+
755
+ # @OutputOnly The granular status of this ad in specific contexts.
756
+ # A context here relates to where something ultimately serves (for example,
757
+ # a physical location, a platform, an HTTPS vs HTTP request, or the type
758
+ # of auction).
759
+ # Corresponds to the JSON property `servingRestrictions`
760
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::ServingRestriction>]
761
+ attr_accessor :serving_restrictions
762
+
763
+ # Video content for a creative.
764
+ # Corresponds to the JSON property `video`
765
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::VideoContent]
766
+ attr_accessor :video
767
+
768
+ # The agency ID for this creative.
769
+ # Corresponds to the JSON property `agencyId`
770
+ # @return [String]
771
+ attr_accessor :agency_id
772
+
773
+ # The set of destination URLs for the creative.
774
+ # Corresponds to the JSON property `clickThroughUrls`
775
+ # @return [Array<String>]
776
+ attr_accessor :click_through_urls
777
+
778
+ # The link to AdChoices destination page.
779
+ # Corresponds to the JSON property `adChoicesDestinationUrl`
780
+ # @return [String]
781
+ attr_accessor :ad_choices_destination_url
782
+
783
+ # @OutputOnly Detected sensitive categories, if any.
784
+ # See the ad-sensitive-categories.txt file in the technical documentation for
785
+ # a list of IDs. You should use these IDs along with the
786
+ # excluded-sensitive-category field in the bid request to filter your bids.
787
+ # Corresponds to the JSON property `detectedSensitiveCategories`
788
+ # @return [Array<Fixnum>]
789
+ attr_accessor :detected_sensitive_categories
790
+
791
+ # All restricted categories for the ads that may be shown from this creative.
792
+ # Corresponds to the JSON property `restrictedCategories`
793
+ # @return [Array<String>]
794
+ attr_accessor :restricted_categories
795
+
796
+ # @OutputOnly Shows any corrections that were applied to this creative.
797
+ # Corresponds to the JSON property `corrections`
798
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::Correction>]
799
+ attr_accessor :corrections
800
+
801
+ # @OutputOnly The version of this creative.
802
+ # Corresponds to the JSON property `version`
803
+ # @return [Fixnum]
804
+ attr_accessor :version
805
+
806
+ # All vendor IDs for the ads that may be shown from this creative.
807
+ # See https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt
808
+ # for possible values.
809
+ # Corresponds to the JSON property `vendorIds`
810
+ # @return [Array<Fixnum>]
811
+ attr_accessor :vendor_ids
812
+
813
+ # The set of URLs to be called to record an impression.
814
+ # Corresponds to the JSON property `impressionTrackingUrls`
815
+ # @return [Array<String>]
816
+ attr_accessor :impression_tracking_urls
817
+
818
+ # HTML content for a creative.
819
+ # Corresponds to the JSON property `html`
820
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::HtmlContent]
821
+ attr_accessor :html
822
+
823
+ # @OutputOnly The top-level deals status of this creative.
824
+ # If disapproved, an entry for 'auctionType=DIRECT_DEALS' (or 'ALL') in
825
+ # serving_restrictions will also exist. Note
826
+ # that this may be nuanced with other contextual restrictions, in which case,
827
+ # it may be preferable to read from serving_restrictions directly.
828
+ # Can be used to filter the response of the
829
+ # creatives.list
830
+ # method.
831
+ # Corresponds to the JSON property `dealsStatus`
832
+ # @return [String]
833
+ attr_accessor :deals_status
834
+
835
+ # @OutputOnly Detected product categories, if any.
836
+ # See the ad-product-categories.txt file in the technical documentation
837
+ # for a list of IDs.
838
+ # Corresponds to the JSON property `detectedProductCategories`
839
+ # @return [Array<Fixnum>]
840
+ attr_accessor :detected_product_categories
841
+
842
+ def initialize(**args)
843
+ update!(**args)
844
+ end
845
+
846
+ # Update properties of this object
847
+ def update!(**args)
848
+ @open_auction_status = args[:open_auction_status] if args.key?(:open_auction_status)
849
+ @advertiser_name = args[:advertiser_name] if args.key?(:advertiser_name)
850
+ @detected_advertiser_ids = args[:detected_advertiser_ids] if args.key?(:detected_advertiser_ids)
851
+ @detected_domains = args[:detected_domains] if args.key?(:detected_domains)
852
+ @filtering_stats = args[:filtering_stats] if args.key?(:filtering_stats)
853
+ @attributes = args[:attributes] if args.key?(:attributes)
854
+ @api_update_time = args[:api_update_time] if args.key?(:api_update_time)
855
+ @detected_languages = args[:detected_languages] if args.key?(:detected_languages)
856
+ @creative_id = args[:creative_id] if args.key?(:creative_id)
857
+ @account_id = args[:account_id] if args.key?(:account_id)
858
+ @native = args[:native] if args.key?(:native)
859
+ @serving_restrictions = args[:serving_restrictions] if args.key?(:serving_restrictions)
860
+ @video = args[:video] if args.key?(:video)
861
+ @agency_id = args[:agency_id] if args.key?(:agency_id)
862
+ @click_through_urls = args[:click_through_urls] if args.key?(:click_through_urls)
863
+ @ad_choices_destination_url = args[:ad_choices_destination_url] if args.key?(:ad_choices_destination_url)
864
+ @detected_sensitive_categories = args[:detected_sensitive_categories] if args.key?(:detected_sensitive_categories)
865
+ @restricted_categories = args[:restricted_categories] if args.key?(:restricted_categories)
866
+ @corrections = args[:corrections] if args.key?(:corrections)
867
+ @version = args[:version] if args.key?(:version)
868
+ @vendor_ids = args[:vendor_ids] if args.key?(:vendor_ids)
869
+ @impression_tracking_urls = args[:impression_tracking_urls] if args.key?(:impression_tracking_urls)
870
+ @html = args[:html] if args.key?(:html)
871
+ @deals_status = args[:deals_status] if args.key?(:deals_status)
872
+ @detected_product_categories = args[:detected_product_categories] if args.key?(:detected_product_categories)
873
+ end
874
+ end
875
+
876
+ # A request for removing the association between a deal and a creative.
877
+ class RemoveDealAssociationRequest
878
+ include Google::Apis::Core::Hashable
879
+
880
+ # The association between a creative and a deal.
881
+ # Corresponds to the JSON property `association`
882
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::CreativeDealAssociation]
883
+ attr_accessor :association
884
+
885
+ def initialize(**args)
886
+ update!(**args)
887
+ end
888
+
889
+ # Update properties of this object
890
+ def update!(**args)
891
+ @association = args[:association] if args.key?(:association)
892
+ end
893
+ end
894
+
895
+ # A client resource represents a client buyer&mdash;an agency,
896
+ # a brand, or an advertiser customer of the sponsor buyer.
897
+ # Users associated with the client buyer have restricted access to
898
+ # the Ad Exchange Marketplace and certain other sections
899
+ # of the Ad Exchange Buyer UI based on the role
900
+ # granted to the client buyer.
901
+ # All fields are required unless otherwise specified.
902
+ class Client
903
+ include Google::Apis::Core::Hashable
904
+
905
+ # The name of the entity. This field is automatically fetched based on
906
+ # the type and ID.
907
+ # The value of this field is ignored in create and update operations.
908
+ # Corresponds to the JSON property `entityName`
909
+ # @return [String]
910
+ attr_accessor :entity_name
911
+
912
+ # The status of the client buyer.
913
+ # Corresponds to the JSON property `status`
914
+ # @return [String]
915
+ attr_accessor :status
916
+
917
+ # The type of the client entity: `ADVERTISER`, `BRAND`, or `AGENCY`.
918
+ # Corresponds to the JSON property `entityType`
919
+ # @return [String]
920
+ attr_accessor :entity_type
921
+
922
+ # Name used to represent this client to publishers.
923
+ # You may have multiple clients that map to the same entity,
924
+ # but for each client the combination of `clientName` and entity
925
+ # must be unique.
926
+ # You can specify this field as empty.
927
+ # Corresponds to the JSON property `clientName`
928
+ # @return [String]
929
+ attr_accessor :client_name
930
+
931
+ # The role which is assigned to the client buyer. Each role implies a set of
932
+ # permissions granted to the client. Must be one of `CLIENT_DEAL_VIEWER`,
933
+ # `CLIENT_DEAL_NEGOTIATOR` or `CLIENT_DEAL_APPROVER`.
934
+ # Corresponds to the JSON property `role`
935
+ # @return [String]
936
+ attr_accessor :role
937
+
938
+ # Whether the client buyer will be visible to sellers.
939
+ # Corresponds to the JSON property `visibleToSeller`
940
+ # @return [Boolean]
941
+ attr_accessor :visible_to_seller
942
+ alias_method :visible_to_seller?, :visible_to_seller
943
+
944
+ # Numerical identifier of the client entity.
945
+ # The entity can be an advertiser, a brand, or an agency.
946
+ # This identifier is unique among all the entities with the same type.
947
+ # A list of all known advertisers with their identifiers is available in the
948
+ # [advertisers.txt](https://storage.googleapis.com/adx-rtb-dictionaries/
949
+ # advertisers.txt)
950
+ # file.
951
+ # A list of all known brands with their identifiers is available in the
952
+ # [brands.txt](https://storage.googleapis.com/adx-rtb-dictionaries/brands.txt)
953
+ # file.
954
+ # A list of all known agencies with their identifiers is available in the
955
+ # [agencies.txt](https://storage.googleapis.com/adx-rtb-dictionaries/agencies.
956
+ # txt)
957
+ # file.
958
+ # Corresponds to the JSON property `entityId`
959
+ # @return [String]
960
+ attr_accessor :entity_id
961
+
962
+ # The globally-unique numerical ID of the client.
963
+ # The value of this field is ignored in create and update operations.
964
+ # Corresponds to the JSON property `clientAccountId`
965
+ # @return [String]
966
+ attr_accessor :client_account_id
967
+
968
+ def initialize(**args)
969
+ update!(**args)
970
+ end
971
+
972
+ # Update properties of this object
973
+ def update!(**args)
974
+ @entity_name = args[:entity_name] if args.key?(:entity_name)
975
+ @status = args[:status] if args.key?(:status)
976
+ @entity_type = args[:entity_type] if args.key?(:entity_type)
977
+ @client_name = args[:client_name] if args.key?(:client_name)
978
+ @role = args[:role] if args.key?(:role)
979
+ @visible_to_seller = args[:visible_to_seller] if args.key?(:visible_to_seller)
980
+ @entity_id = args[:entity_id] if args.key?(:entity_id)
981
+ @client_account_id = args[:client_account_id] if args.key?(:client_account_id)
982
+ end
983
+ end
984
+
985
+ # @OutputOnly Shows any corrections that were applied to this creative.
986
+ class Correction
987
+ include Google::Apis::Core::Hashable
988
+
989
+ # Additional details about what was corrected.
990
+ # Corresponds to the JSON property `details`
991
+ # @return [Array<String>]
992
+ attr_accessor :details
993
+
994
+ # The type of correction that was applied to the creative.
995
+ # Corresponds to the JSON property `type`
996
+ # @return [String]
997
+ attr_accessor :type
998
+
999
+ # The contexts for the correction.
1000
+ # Corresponds to the JSON property `contexts`
1001
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::ServingContext>]
1002
+ attr_accessor :contexts
1003
+
1004
+ def initialize(**args)
1005
+ update!(**args)
1006
+ end
1007
+
1008
+ # Update properties of this object
1009
+ def update!(**args)
1010
+ @details = args[:details] if args.key?(:details)
1011
+ @type = args[:type] if args.key?(:type)
1012
+ @contexts = args[:contexts] if args.key?(:contexts)
1013
+ end
1014
+ end
1015
+
1016
+ # A response for listing creative and deal associations
1017
+ class ListDealAssociationsResponse
1018
+ include Google::Apis::Core::Hashable
1019
+
1020
+ # A token to retrieve the next page of results.
1021
+ # Pass this value in the
1022
+ # ListDealAssociationsRequest.page_token
1023
+ # field in the subsequent call to 'ListDealAssociation' method to retrieve
1024
+ # the next page of results.
1025
+ # Corresponds to the JSON property `nextPageToken`
1026
+ # @return [String]
1027
+ attr_accessor :next_page_token
1028
+
1029
+ # The list of associations.
1030
+ # Corresponds to the JSON property `associations`
1031
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::CreativeDealAssociation>]
1032
+ attr_accessor :associations
1033
+
1034
+ def initialize(**args)
1035
+ update!(**args)
1036
+ end
1037
+
1038
+ # Update properties of this object
1039
+ def update!(**args)
1040
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1041
+ @associations = args[:associations] if args.key?(:associations)
1042
+ end
1043
+ end
1044
+
1045
+ # A request for associating a deal and a creative.
1046
+ class AddDealAssociationRequest
1047
+ include Google::Apis::Core::Hashable
1048
+
1049
+ # The association between a creative and a deal.
1050
+ # Corresponds to the JSON property `association`
1051
+ # @return [Google::Apis::Adexchangebuyer2V2beta1::CreativeDealAssociation]
1052
+ attr_accessor :association
1053
+
1054
+ def initialize(**args)
1055
+ update!(**args)
1056
+ end
1057
+
1058
+ # Update properties of this object
1059
+ def update!(**args)
1060
+ @association = args[:association] if args.key?(:association)
1061
+ end
1062
+ end
1063
+
1064
+ # A request for stopping notifications for changes to creative Status.
1065
+ class StopWatchingCreativeRequest
1066
+ include Google::Apis::Core::Hashable
1067
+
1068
+ def initialize(**args)
1069
+ update!(**args)
1070
+ end
1071
+
1072
+ # Update properties of this object
1073
+ def update!(**args)
1074
+ end
1075
+ end
1076
+
1077
+ # @OutputOnly The reason and details for a disapproval.
1078
+ class Disapproval
1079
+ include Google::Apis::Core::Hashable
1080
+
1081
+ # Additional details about the reason for disapproval.
1082
+ # Corresponds to the JSON property `details`
1083
+ # @return [Array<String>]
1084
+ attr_accessor :details
1085
+
1086
+ # The categorized reason for disapproval.
1087
+ # Corresponds to the JSON property `reason`
1088
+ # @return [String]
1089
+ attr_accessor :reason
1090
+
1091
+ def initialize(**args)
1092
+ update!(**args)
1093
+ end
1094
+
1095
+ # Update properties of this object
1096
+ def update!(**args)
1097
+ @details = args[:details] if args.key?(:details)
1098
+ @reason = args[:reason] if args.key?(:reason)
1099
+ end
1100
+ end
1101
+
1102
+ # @OutputOnly A representation of the status of an ad in a
1103
+ # specific context. A context here relates to where something ultimately serves
1104
+ # (for example, a user or publisher geo, a platform, an HTTPS vs HTTP request,
1105
+ # or the type of auction).
1106
+ class ServingRestriction
1107
+ include Google::Apis::Core::Hashable
1108
+
1109
+ # The contexts for the restriction.
1110
+ # Corresponds to the JSON property `contexts`
1111
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::ServingContext>]
1112
+ attr_accessor :contexts
1113
+
1114
+ # The status of the creative in this context (for example, it has been
1115
+ # explicitly disapproved or is pending review).
1116
+ # Corresponds to the JSON property `status`
1117
+ # @return [String]
1118
+ attr_accessor :status
1119
+
1120
+ # Any disapprovals bound to this restriction.
1121
+ # Only present if status=DISAPPROVED.
1122
+ # Can be used to filter the response of the
1123
+ # creatives.list
1124
+ # method.
1125
+ # Corresponds to the JSON property `disapprovalReasons`
1126
+ # @return [Array<Google::Apis::Adexchangebuyer2V2beta1::Disapproval>]
1127
+ attr_accessor :disapproval_reasons
1128
+
1129
+ def initialize(**args)
1130
+ update!(**args)
1131
+ end
1132
+
1133
+ # Update properties of this object
1134
+ def update!(**args)
1135
+ @contexts = args[:contexts] if args.key?(:contexts)
1136
+ @status = args[:status] if args.key?(:status)
1137
+ @disapproval_reasons = args[:disapproval_reasons] if args.key?(:disapproval_reasons)
1138
+ end
1139
+ end
1140
+
1141
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
1142
+ # time zone are either specified elsewhere or are not significant. The date
1143
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
1144
+ # represent a year and month where the day is not significant, e.g. credit card
1145
+ # expiration date. The year may be 0 to represent a month and day independent
1146
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
1147
+ # and `google.protobuf.Timestamp`.
1148
+ class Date
1149
+ include Google::Apis::Core::Hashable
1150
+
1151
+ # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
1152
+ # a year.
1153
+ # Corresponds to the JSON property `year`
1154
+ # @return [Fixnum]
1155
+ attr_accessor :year
1156
+
1157
+ # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
1158
+ # if specifying a year/month where the day is not significant.
1159
+ # Corresponds to the JSON property `day`
1160
+ # @return [Fixnum]
1161
+ attr_accessor :day
1162
+
1163
+ # Month of year. Must be from 1 to 12.
1164
+ # Corresponds to the JSON property `month`
1165
+ # @return [Fixnum]
1166
+ attr_accessor :month
1167
+
1168
+ def initialize(**args)
1169
+ update!(**args)
1170
+ end
1171
+
1172
+ # Update properties of this object
1173
+ def update!(**args)
1174
+ @year = args[:year] if args.key?(:year)
1175
+ @day = args[:day] if args.key?(:day)
1176
+ @month = args[:month] if args.key?(:month)
1177
+ end
1178
+ end
1179
+
1180
+ # A generic empty message that you can re-use to avoid defining duplicated
1181
+ # empty messages in your APIs. A typical example is to use it as the request
1182
+ # or the response type of an API method. For instance:
1183
+ # service Foo `
1184
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
1185
+ # `
1186
+ # The JSON representation for `Empty` is empty JSON object ````.
1187
+ class Empty
1188
+ include Google::Apis::Core::Hashable
1189
+
1190
+ def initialize(**args)
1191
+ update!(**args)
1192
+ end
1193
+
1194
+ # Update properties of this object
1195
+ def update!(**args)
1196
+ end
1197
+ end
1198
+ end
1199
+ end
1200
+ end