google-api-client 0.8.7 → 0.9.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (397) 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 +21 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +6 -3
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +28 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +158 -150
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +872 -0
  15. data/api_names_out.yaml +20843 -0
  16. data/bin/generate-api +93 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1124 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +375 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +893 -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 +682 -0
  25. data/generated/google/apis/admin_directory_v1.rb +89 -0
  26. data/generated/google/apis/admin_directory_v1/classes.rb +2389 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +780 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +2805 -0
  29. data/generated/google/apis/admin_reports_v1.rb +38 -0
  30. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  31. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  32. data/generated/google/apis/admin_reports_v1/service.rb +341 -0
  33. data/generated/google/apis/adsense_v1_4.rb +38 -0
  34. data/generated/google/apis/adsense_v1_4/classes.rb +1279 -0
  35. data/generated/google/apis/adsense_v1_4/representations.rb +493 -0
  36. data/generated/google/apis/adsense_v1_4/service.rb +1752 -0
  37. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  38. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  39. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  40. data/generated/google/apis/adsensehost_v4_1/service.rb +1190 -0
  41. data/generated/google/apis/analytics_v3.rb +49 -0
  42. data/generated/google/apis/analytics_v3/classes.rb +5113 -0
  43. data/generated/google/apis/analytics_v3/representations.rb +1661 -0
  44. data/generated/google/apis/analytics_v3/service.rb +3600 -0
  45. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  46. data/generated/google/apis/androidenterprise_v1/classes.rb +1162 -0
  47. data/generated/google/apis/androidenterprise_v1/representations.rb +431 -0
  48. data/generated/google/apis/androidenterprise_v1/service.rb +1979 -0
  49. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  50. data/generated/google/apis/androidpublisher_v2/classes.rb +1374 -0
  51. data/generated/google/apis/androidpublisher_v2/representations.rb +630 -0
  52. data/generated/google/apis/androidpublisher_v2/service.rb +2390 -0
  53. data/generated/google/apis/appsactivity_v1.rb +46 -0
  54. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  55. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  56. data/generated/google/apis/appsactivity_v1/service.rb +129 -0
  57. data/generated/google/apis/appstate_v1.rb +34 -0
  58. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  59. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  60. data/generated/google/apis/appstate_v1/service.rb +265 -0
  61. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  62. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  63. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  64. data/generated/google/apis/autoscaler_v1beta2/service.rb +488 -0
  65. data/generated/google/apis/bigquery_v2.rb +49 -0
  66. data/generated/google/apis/bigquery_v2/classes.rb +2255 -0
  67. data/generated/google/apis/bigquery_v2/representations.rb +754 -0
  68. data/generated/google/apis/bigquery_v2/service.rb +1003 -0
  69. data/generated/google/apis/blogger_v3.rb +37 -0
  70. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  71. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  72. data/generated/google/apis/blogger_v3/service.rb +1620 -0
  73. data/generated/google/apis/books_v1.rb +34 -0
  74. data/generated/google/apis/books_v1/classes.rb +3515 -0
  75. data/generated/google/apis/books_v1/representations.rb +1361 -0
  76. data/generated/google/apis/books_v1/service.rb +2170 -0
  77. data/generated/google/apis/calendar_v3.rb +37 -0
  78. data/generated/google/apis/calendar_v3/classes.rb +1702 -0
  79. data/generated/google/apis/calendar_v3/representations.rb +566 -0
  80. data/generated/google/apis/calendar_v3/service.rb +1943 -0
  81. data/generated/google/apis/civicinfo_v2.rb +31 -0
  82. data/generated/google/apis/civicinfo_v2/classes.rb +1057 -0
  83. data/generated/google/apis/civicinfo_v2/representations.rb +374 -0
  84. data/generated/google/apis/civicinfo_v2/service.rb +284 -0
  85. data/generated/google/apis/cloudmonitoring_v2beta2.rb +34 -0
  86. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  87. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  88. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +458 -0
  89. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  90. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +139 -0
  91. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +65 -0
  92. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +301 -0
  93. data/generated/google/apis/compute_v1.rb +49 -0
  94. data/generated/google/apis/compute_v1/classes.rb +6391 -0
  95. data/generated/google/apis/compute_v1/representations.rb +2209 -0
  96. data/generated/google/apis/compute_v1/service.rb +6352 -0
  97. data/generated/google/apis/container_v1beta1.rb +35 -0
  98. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  99. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  100. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  101. data/generated/google/apis/content_v2.rb +35 -0
  102. data/generated/google/apis/content_v2/classes.rb +3780 -0
  103. data/generated/google/apis/content_v2/representations.rb +1456 -0
  104. data/generated/google/apis/content_v2/service.rb +1706 -0
  105. data/generated/google/apis/coordinate_v1.rb +37 -0
  106. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  107. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  108. data/generated/google/apis/coordinate_v1/service.rb +687 -0
  109. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  110. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  111. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  112. data/generated/google/apis/customsearch_v1/service.rb +208 -0
  113. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  114. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  115. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  116. data/generated/google/apis/datastore_v1beta2/service.rb +300 -0
  117. data/generated/google/apis/deploymentmanager_v2beta2.rb +41 -0
  118. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +820 -0
  119. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +303 -0
  120. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +647 -0
  121. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  122. data/generated/google/apis/dfareporting_v2_1/classes.rb +10755 -0
  123. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  124. data/generated/google/apis/dfareporting_v2_1/service.rb +8775 -0
  125. data/generated/google/apis/discovery_v1.rb +32 -0
  126. data/generated/google/apis/discovery_v1/classes.rb +947 -0
  127. data/generated/google/apis/discovery_v1/representations.rb +355 -0
  128. data/generated/google/apis/discovery_v1/service.rb +144 -0
  129. data/generated/google/apis/dns_v1.rb +41 -0
  130. data/generated/google/apis/dns_v1/classes.rb +406 -0
  131. data/generated/google/apis/dns_v1/representations.rb +151 -0
  132. data/generated/google/apis/dns_v1/service.rb +460 -0
  133. data/{spec/google/api_client/request_spec.rb → generated/google/apis/doubleclickbidmanager_v1.rb} +15 -13
  134. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +709 -0
  135. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +297 -0
  136. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +349 -0
  137. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  138. data/generated/google/apis/doubleclicksearch_v2/classes.rb +947 -0
  139. data/generated/google/apis/doubleclicksearch_v2/representations.rb +315 -0
  140. data/generated/google/apis/doubleclicksearch_v2/service.rb +490 -0
  141. data/generated/google/apis/drive_v2.rb +55 -0
  142. data/generated/google/apis/drive_v2/classes.rb +2519 -0
  143. data/generated/google/apis/drive_v2/representations.rb +781 -0
  144. data/generated/google/apis/drive_v2/service.rb +2685 -0
  145. data/generated/google/apis/fitness_v1.rb +49 -0
  146. data/generated/google/apis/fitness_v1/classes.rb +809 -0
  147. data/generated/google/apis/fitness_v1/representations.rb +295 -0
  148. data/generated/google/apis/fitness_v1/service.rb +684 -0
  149. data/generated/google/apis/fusiontables_v2.rb +37 -0
  150. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  151. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  152. data/generated/google/apis/fusiontables_v2/service.rb +1496 -0
  153. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  154. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  155. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  156. data/generated/google/apis/games_configuration_v1configuration/service.rb +578 -0
  157. data/generated/google/apis/games_v1.rb +40 -0
  158. data/generated/google/apis/games_v1/classes.rb +4578 -0
  159. data/generated/google/apis/games_v1/representations.rb +1570 -0
  160. data/generated/google/apis/games_v1/service.rb +2306 -0
  161. data/generated/google/apis/gan_v1beta1.rb +31 -0
  162. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  163. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  164. data/generated/google/apis/gan_v1beta1/service.rb +692 -0
  165. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  166. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  167. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  168. data/generated/google/apis/genomics_v1beta2/service.rb +2356 -0
  169. data/generated/google/apis/gmail_v1.rb +49 -0
  170. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  171. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  172. data/generated/google/apis/gmail_v1/service.rb +1502 -0
  173. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  174. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  175. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  176. data/generated/google/apis/groupsmigration_v1/service.rb +111 -0
  177. data/generated/google/apis/groupssettings_v1.rb +34 -0
  178. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  179. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  180. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  181. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  182. data/generated/google/apis/identitytoolkit_v3/classes.rb +1229 -0
  183. data/generated/google/apis/identitytoolkit_v3/representations.rb +422 -0
  184. data/generated/google/apis/identitytoolkit_v3/service.rb +491 -0
  185. data/generated/google/apis/licensing_v1.rb +34 -0
  186. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  187. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  188. data/generated/google/apis/licensing_v1/service.rb +376 -0
  189. data/generated/google/apis/logging_v1beta3.rb +35 -0
  190. data/generated/google/apis/logging_v1beta3/classes.rb +505 -0
  191. data/generated/google/apis/logging_v1beta3/representations.rb +222 -0
  192. data/generated/google/apis/logging_v1beta3/service.rb +670 -0
  193. data/generated/google/apis/manager_v1beta2.rb +50 -0
  194. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  195. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  196. data/generated/google/apis/manager_v1beta2/service.rb +380 -0
  197. data/generated/google/apis/mapsengine_v1.rb +38 -0
  198. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  199. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  200. data/generated/google/apis/mapsengine_v1/service.rb +3465 -0
  201. data/generated/google/apis/mirror_v1.rb +37 -0
  202. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  203. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  204. data/generated/google/apis/mirror_v1/service.rb +1001 -0
  205. data/generated/google/apis/oauth2_v2.rb +43 -0
  206. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  207. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  208. data/generated/google/apis/oauth2_v2/service.rb +203 -0
  209. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  210. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  211. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  212. data/generated/google/apis/pagespeedonline_v2/service.rb +120 -0
  213. data/generated/google/apis/plus_domains_v1.rb +61 -0
  214. data/generated/google/apis/plus_domains_v1/classes.rb +2402 -0
  215. data/generated/google/apis/plus_domains_v1/representations.rb +873 -0
  216. data/generated/google/apis/plus_domains_v1/service.rb +924 -0
  217. data/generated/google/apis/plus_v1.rb +43 -0
  218. data/generated/google/apis/plus_v1/classes.rb +2384 -0
  219. data/generated/google/apis/plus_v1/representations.rb +812 -0
  220. data/generated/google/apis/plus_v1/service.rb +616 -0
  221. data/generated/google/apis/prediction_v1_6.rb +44 -0
  222. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  223. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  224. data/generated/google/apis/prediction_v1_6/service.rb +388 -0
  225. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  226. data/generated/google/apis/pubsub_v1beta2/classes.rb +824 -0
  227. data/generated/google/apis/pubsub_v1beta2/representations.rb +366 -0
  228. data/generated/google/apis/pubsub_v1beta2/service.rb +778 -0
  229. data/generated/google/apis/qpx_express_v1.rb +31 -0
  230. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  231. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  232. data/generated/google/apis/qpx_express_v1/service.rb +101 -0
  233. data/generated/google/apis/replicapool_v1beta2.rb +41 -0
  234. data/generated/google/apis/replicapool_v1beta2/classes.rb +621 -0
  235. data/generated/google/apis/replicapool_v1beta2/representations.rb +235 -0
  236. data/generated/google/apis/replicapool_v1beta2/service.rb +620 -0
  237. data/generated/google/apis/replicapoolupdater_v1beta1.rb +41 -0
  238. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +682 -0
  239. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +247 -0
  240. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +472 -0
  241. data/generated/google/apis/reseller_v1.rb +37 -0
  242. data/generated/google/apis/reseller_v1/classes.rb +502 -0
  243. data/generated/google/apis/reseller_v1/representations.rb +199 -0
  244. data/generated/google/apis/reseller_v1/service.rb +637 -0
  245. data/generated/google/apis/resourceviews_v1beta2.rb +47 -0
  246. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  247. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  248. data/generated/google/apis/resourceviews_v1beta2/service.rb +574 -0
  249. data/generated/google/apis/site_verification_v1.rb +37 -0
  250. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  251. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  252. data/generated/google/apis/site_verification_v1/service.rb +322 -0
  253. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  254. data/generated/google/apis/sqladmin_v1beta4/classes.rb +1817 -0
  255. data/generated/google/apis/sqladmin_v1beta4/representations.rb +688 -0
  256. data/generated/google/apis/sqladmin_v1beta4/service.rb +1534 -0
  257. data/generated/google/apis/storage_v1.rb +43 -0
  258. data/generated/google/apis/storage_v1/classes.rb +1177 -0
  259. data/generated/google/apis/storage_v1/representations.rb +427 -0
  260. data/generated/google/apis/storage_v1/service.rb +1920 -0
  261. data/generated/google/apis/tagmanager_v1.rb +52 -0
  262. data/generated/google/apis/tagmanager_v1/classes.rb +1226 -0
  263. data/generated/google/apis/tagmanager_v1/representations.rb +461 -0
  264. data/generated/google/apis/tagmanager_v1/service.rb +1978 -0
  265. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  266. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  267. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  268. data/generated/google/apis/taskqueue_v1beta2/service.rb +416 -0
  269. data/generated/google/apis/tasks_v1.rb +37 -0
  270. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  271. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  272. data/generated/google/apis/tasks_v1/service.rb +657 -0
  273. data/generated/google/apis/translate_v2.rb +31 -0
  274. data/generated/google/apis/translate_v2/classes.rb +168 -0
  275. data/generated/google/apis/translate_v2/representations.rb +109 -0
  276. data/generated/google/apis/translate_v2/service.rb +185 -0
  277. data/generated/google/apis/urlshortener_v1.rb +34 -0
  278. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  279. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  280. data/generated/google/apis/urlshortener_v1/service.rb +179 -0
  281. data/generated/google/apis/webmasters_v3.rb +37 -0
  282. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  283. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  284. data/generated/google/apis/webmasters_v3/service.rb +587 -0
  285. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  286. data/generated/google/apis/youtube_analytics_v1/classes.rb +540 -0
  287. data/generated/google/apis/youtube_analytics_v1/representations.rb +242 -0
  288. data/generated/google/apis/youtube_analytics_v1/service.rb +567 -0
  289. data/generated/google/apis/youtube_v3.rb +49 -0
  290. data/generated/google/apis/youtube_v3/classes.rb +7225 -0
  291. data/generated/google/apis/youtube_v3/representations.rb +2529 -0
  292. data/generated/google/apis/youtube_v3/service.rb +4051 -0
  293. data/google-api-client.gemspec +27 -39
  294. data/lib/google/api_client/auth/storage.rb +3 -2
  295. data/lib/google/api_client/auth/storages/file_store.rb +1 -3
  296. data/lib/google/api_client/auth/storages/redis_store.rb +6 -2
  297. data/lib/google/apis.rb +48 -0
  298. data/lib/google/apis/core/api_command.rb +128 -0
  299. data/lib/google/apis/core/base_service.rb +314 -0
  300. data/lib/google/apis/core/batch.rb +222 -0
  301. data/lib/google/apis/core/download.rb +94 -0
  302. data/lib/google/apis/core/hashable.rb +44 -0
  303. data/lib/google/apis/core/http_command.rb +275 -0
  304. data/lib/google/apis/core/json_representation.rb +122 -0
  305. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  306. data/lib/google/apis/core/multipart.rb +173 -0
  307. data/lib/google/apis/core/upload.rb +275 -0
  308. data/lib/google/{api_client → apis}/errors.rb +32 -28
  309. data/lib/google/apis/generator.rb +70 -0
  310. data/lib/google/apis/generator/annotator.rb +271 -0
  311. data/lib/google/apis/generator/helpers.rb +74 -0
  312. data/lib/google/apis/generator/model.rb +130 -0
  313. data/lib/google/apis/generator/template.rb +124 -0
  314. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  315. data/lib/google/apis/generator/templates/_method.tmpl +90 -0
  316. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  317. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  318. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  319. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  320. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  321. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  322. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  323. data/lib/google/apis/options.rb +79 -0
  324. data/lib/google/apis/version.rb +39 -0
  325. data/rakelib/metrics.rake +22 -0
  326. data/rakelib/rubocop.rake +10 -0
  327. data/rakelib/spec.rake +11 -0
  328. data/rakelib/yard.rake +11 -0
  329. data/samples/calendar/calendar.rb +43 -0
  330. data/samples/drive/drive.rb +40 -0
  331. data/samples/pubsub/pubsub.rb +52 -0
  332. data/{lib/google/api_client/discovery.rb → samples/translate/translate.rb} +14 -5
  333. data/script/generate +79 -0
  334. data/script/package +8 -0
  335. data/script/release +15 -0
  336. data/spec/fixtures/files/api_names.yaml +3 -0
  337. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  338. data/spec/fixtures/files/client_secrets.json +1 -0
  339. data/spec/fixtures/files/test.blah +1 -0
  340. data/spec/fixtures/files/test.txt +1 -0
  341. data/spec/fixtures/files/test_api.json +440 -0
  342. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  343. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  344. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  345. data/spec/google/apis/core/api_command_spec.rb +170 -0
  346. data/spec/google/apis/core/batch_spec.rb +128 -0
  347. data/spec/google/apis/core/download_spec.rb +90 -0
  348. data/spec/google/apis/core/hashable_spec.rb +60 -0
  349. data/spec/google/apis/core/http_command_spec.rb +238 -0
  350. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  351. data/spec/google/apis/core/service_spec.rb +247 -0
  352. data/spec/google/apis/core/upload_spec.rb +238 -0
  353. data/{lib/google/api_client/service_account.rb → spec/google/apis/generated_spec.rb} +14 -8
  354. data/spec/google/apis/generator/generator_spec.rb +272 -0
  355. data/spec/google/apis/logging_spec.rb +45 -0
  356. data/spec/google/apis/options_spec.rb +40 -0
  357. data/spec/integration_tests/drive_spec.rb +35 -0
  358. data/spec/integration_tests/pubsub_spec.rb +48 -0
  359. data/spec/integration_tests/url_shortener_spec.rb +31 -0
  360. data/spec/spec_helper.rb +102 -46
  361. metadata +433 -178
  362. data/lib/compat/multi_json.rb +0 -19
  363. data/lib/google/api_client.rb +0 -750
  364. data/lib/google/api_client/auth/file_storage.rb +0 -59
  365. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  366. data/lib/google/api_client/auth/key_utils.rb +0 -93
  367. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  368. data/lib/google/api_client/batch.rb +0 -326
  369. data/lib/google/api_client/charset.rb +0 -33
  370. data/lib/google/api_client/discovery/api.rb +0 -310
  371. data/lib/google/api_client/discovery/media.rb +0 -77
  372. data/lib/google/api_client/discovery/method.rb +0 -363
  373. data/lib/google/api_client/discovery/resource.rb +0 -156
  374. data/lib/google/api_client/discovery/schema.rb +0 -117
  375. data/lib/google/api_client/environment.rb +0 -42
  376. data/lib/google/api_client/gzip.rb +0 -28
  377. data/lib/google/api_client/logging.rb +0 -32
  378. data/lib/google/api_client/media.rb +0 -259
  379. data/lib/google/api_client/railtie.rb +0 -18
  380. data/lib/google/api_client/request.rb +0 -350
  381. data/lib/google/api_client/result.rb +0 -255
  382. data/lib/google/api_client/service.rb +0 -233
  383. data/lib/google/api_client/service/batch.rb +0 -110
  384. data/lib/google/api_client/service/request.rb +0 -144
  385. data/lib/google/api_client/service/resource.rb +0 -40
  386. data/lib/google/api_client/service/result.rb +0 -162
  387. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  388. data/lib/google/api_client/service/stub_generator.rb +0 -61
  389. data/spec/google/api_client/batch_spec.rb +0 -248
  390. data/spec/google/api_client/discovery_spec.rb +0 -708
  391. data/spec/google/api_client/gzip_spec.rb +0 -98
  392. data/spec/google/api_client/media_spec.rb +0 -178
  393. data/spec/google/api_client/result_spec.rb +0 -207
  394. data/spec/google/api_client/service_account_spec.rb +0 -169
  395. data/spec/google/api_client/service_spec.rb +0 -618
  396. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  397. 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/content_v2/service.rb'
16
+ require 'google/apis/content_v2/classes.rb'
17
+ require 'google/apis/content_v2/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Content API for Shopping
22
+ #
23
+ # Manage product items, inventory, and Merchant Center accounts for Google
24
+ # Shopping.
25
+ #
26
+ # @see https://developers.google.com/shopping-content/v2/
27
+ module ContentV2
28
+ VERSION = 'V2'
29
+ REVISION = '20150528'
30
+
31
+ # Manage your product listings and accounts for Google Shopping
32
+ AUTH_CONTENT = 'https://www.googleapis.com/auth/content'
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,3780 @@
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 ContentV2
24
+
25
+ # Account data.
26
+ class Account
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Indicates whether the merchant sells adult content.
30
+ # Corresponds to the JSON property `adultContent`
31
+ # @return [Boolean]
32
+ attr_accessor :adult_content
33
+ alias_method :adult_content?, :adult_content
34
+
35
+ # List of linked AdWords accounts, active or pending approval. To create a new
36
+ # link request, add a new link with status active to the list. It will remain is
37
+ # state pending until approved or rejected in the AdWords interface. To delete
38
+ # an active link or to cancel a link request, remove it from the list.
39
+ # Corresponds to the JSON property `adwordsLinks`
40
+ # @return [Array<Google::Apis::ContentV2::AccountAdwordsLink>]
41
+ attr_accessor :adwords_links
42
+
43
+ # Merchant Center account ID.
44
+ # Corresponds to the JSON property `id`
45
+ # @return [String]
46
+ attr_accessor :id
47
+
48
+ # Identifies what kind of resource this is. Value: the fixed string "content#
49
+ # account".
50
+ # Corresponds to the JSON property `kind`
51
+ # @return [String]
52
+ attr_accessor :kind
53
+
54
+ # Display name for the account.
55
+ # Corresponds to the JSON property `name`
56
+ # @return [String]
57
+ attr_accessor :name
58
+
59
+ # URL for individual seller reviews, i.e., reviews for each child account.
60
+ # Corresponds to the JSON property `reviewsUrl`
61
+ # @return [String]
62
+ attr_accessor :reviews_url
63
+
64
+ # Client-specific, locally-unique, internal ID for the child account.
65
+ # Corresponds to the JSON property `sellerId`
66
+ # @return [String]
67
+ attr_accessor :seller_id
68
+
69
+ # Users with access to the account. Every account (except for subaccounts) must
70
+ # have at least one admin user.
71
+ # Corresponds to the JSON property `users`
72
+ # @return [Array<Google::Apis::ContentV2::AccountUser>]
73
+ attr_accessor :users
74
+
75
+ # The merchant's website.
76
+ # Corresponds to the JSON property `websiteUrl`
77
+ # @return [String]
78
+ attr_accessor :website_url
79
+
80
+ def initialize(**args)
81
+ update!(**args)
82
+ end
83
+
84
+ # Update properties of this object
85
+ def update!(**args)
86
+ @adult_content = args[:adult_content] unless args[:adult_content].nil?
87
+ @adwords_links = args[:adwords_links] unless args[:adwords_links].nil?
88
+ @id = args[:id] unless args[:id].nil?
89
+ @kind = args[:kind] unless args[:kind].nil?
90
+ @name = args[:name] unless args[:name].nil?
91
+ @reviews_url = args[:reviews_url] unless args[:reviews_url].nil?
92
+ @seller_id = args[:seller_id] unless args[:seller_id].nil?
93
+ @users = args[:users] unless args[:users].nil?
94
+ @website_url = args[:website_url] unless args[:website_url].nil?
95
+ end
96
+ end
97
+
98
+ #
99
+ class AccountAdwordsLink
100
+ include Google::Apis::Core::Hashable
101
+
102
+ # Customer ID of the AdWords account.
103
+ # Corresponds to the JSON property `adwordsId`
104
+ # @return [String]
105
+ attr_accessor :adwords_id
106
+
107
+ # Status of the link between this Merchant Center account and the AdWords
108
+ # account. Upon retrieval, it represents the actual status of the link and can
109
+ # be either active if it was approved in Google AdWords or pending if it's
110
+ # pending approval. Upon insertion, it represents the intended status of the
111
+ # link. Re-uploading a link with status active when it's still pending or with
112
+ # status pending when it's already active will have no effect: the status will
113
+ # remain unchanged. Re-uploading a link with deprecated status inactive is
114
+ # equivalent to not submitting the link at all and will delete the link if it
115
+ # was active or cancel the link request if it was pending.
116
+ # Corresponds to the JSON property `status`
117
+ # @return [String]
118
+ attr_accessor :status
119
+
120
+ def initialize(**args)
121
+ update!(**args)
122
+ end
123
+
124
+ # Update properties of this object
125
+ def update!(**args)
126
+ @adwords_id = args[:adwords_id] unless args[:adwords_id].nil?
127
+ @status = args[:status] unless args[:status].nil?
128
+ end
129
+ end
130
+
131
+ #
132
+ class AccountIdentifier
133
+ include Google::Apis::Core::Hashable
134
+
135
+ # The aggregator ID, set for aggregators and subaccounts (in that case, it
136
+ # represents the aggregator of the subaccount).
137
+ # Corresponds to the JSON property `aggregatorId`
138
+ # @return [String]
139
+ attr_accessor :aggregator_id
140
+
141
+ # The merchant account ID, set for individual accounts and subaccounts.
142
+ # Corresponds to the JSON property `merchantId`
143
+ # @return [String]
144
+ attr_accessor :merchant_id
145
+
146
+ def initialize(**args)
147
+ update!(**args)
148
+ end
149
+
150
+ # Update properties of this object
151
+ def update!(**args)
152
+ @aggregator_id = args[:aggregator_id] unless args[:aggregator_id].nil?
153
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
154
+ end
155
+ end
156
+
157
+ # The shipping settings of a merchant account.
158
+ class AccountShipping
159
+ include Google::Apis::Core::Hashable
160
+
161
+ # The ID of the account to which these account shipping settings belong.
162
+ # Corresponds to the JSON property `accountId`
163
+ # @return [String]
164
+ attr_accessor :account_id
165
+
166
+ # Carrier-based shipping calculations.
167
+ # Corresponds to the JSON property `carrierRates`
168
+ # @return [Array<Google::Apis::ContentV2::AccountShippingCarrierRate>]
169
+ attr_accessor :carrier_rates
170
+
171
+ # Identifies what kind of resource this is. Value: the fixed string "content#
172
+ # accountShipping".
173
+ # Corresponds to the JSON property `kind`
174
+ # @return [String]
175
+ attr_accessor :kind
176
+
177
+ # Location groups for shipping.
178
+ # Corresponds to the JSON property `locationGroups`
179
+ # @return [Array<Google::Apis::ContentV2::AccountShippingLocationGroup>]
180
+ attr_accessor :location_groups
181
+
182
+ # Rate tables definitions.
183
+ # Corresponds to the JSON property `rateTables`
184
+ # @return [Array<Google::Apis::ContentV2::AccountShippingRateTable>]
185
+ attr_accessor :rate_tables
186
+
187
+ # Shipping services describing shipping fees calculation.
188
+ # Corresponds to the JSON property `services`
189
+ # @return [Array<Google::Apis::ContentV2::AccountShippingShippingService>]
190
+ attr_accessor :services
191
+
192
+ def initialize(**args)
193
+ update!(**args)
194
+ end
195
+
196
+ # Update properties of this object
197
+ def update!(**args)
198
+ @account_id = args[:account_id] unless args[:account_id].nil?
199
+ @carrier_rates = args[:carrier_rates] unless args[:carrier_rates].nil?
200
+ @kind = args[:kind] unless args[:kind].nil?
201
+ @location_groups = args[:location_groups] unless args[:location_groups].nil?
202
+ @rate_tables = args[:rate_tables] unless args[:rate_tables].nil?
203
+ @services = args[:services] unless args[:services].nil?
204
+ end
205
+ end
206
+
207
+ # A carrier-calculated shipping rate.
208
+ class AccountShippingCarrierRate
209
+ include Google::Apis::Core::Hashable
210
+
211
+ # The carrier that is responsible for the shipping, such as "UPS", "FedEx", or "
212
+ # USPS".
213
+ # Corresponds to the JSON property `carrier`
214
+ # @return [String]
215
+ attr_accessor :carrier
216
+
217
+ # The carrier service, such as "Ground" or "2Day".
218
+ # Corresponds to the JSON property `carrierService`
219
+ # @return [String]
220
+ attr_accessor :carrier_service
221
+
222
+ # Additive shipping rate modifier.
223
+ # Corresponds to the JSON property `modifierFlatRate`
224
+ # @return [Google::Apis::ContentV2::Price]
225
+ attr_accessor :modifier_flat_rate
226
+
227
+ # Multiplicative shipping rate modifier in percent. Represented as a floating
228
+ # point number without the percentage character.
229
+ # Corresponds to the JSON property `modifierPercent`
230
+ # @return [String]
231
+ attr_accessor :modifier_percent
232
+
233
+ # The name of the carrier rate.
234
+ # Corresponds to the JSON property `name`
235
+ # @return [String]
236
+ attr_accessor :name
237
+
238
+ # Sale country for which this carrier rate is valid, represented as an ISO 3166-
239
+ # 1 Alpha-2 code.
240
+ # Corresponds to the JSON property `saleCountry`
241
+ # @return [String]
242
+ attr_accessor :sale_country
243
+
244
+ # Shipping origin represented as a postal code.
245
+ # Corresponds to the JSON property `shippingOrigin`
246
+ # @return [String]
247
+ attr_accessor :shipping_origin
248
+
249
+ def initialize(**args)
250
+ update!(**args)
251
+ end
252
+
253
+ # Update properties of this object
254
+ def update!(**args)
255
+ @carrier = args[:carrier] unless args[:carrier].nil?
256
+ @carrier_service = args[:carrier_service] unless args[:carrier_service].nil?
257
+ @modifier_flat_rate = args[:modifier_flat_rate] unless args[:modifier_flat_rate].nil?
258
+ @modifier_percent = args[:modifier_percent] unless args[:modifier_percent].nil?
259
+ @name = args[:name] unless args[:name].nil?
260
+ @sale_country = args[:sale_country] unless args[:sale_country].nil?
261
+ @shipping_origin = args[:shipping_origin] unless args[:shipping_origin].nil?
262
+ end
263
+ end
264
+
265
+ #
266
+ class AccountShippingCondition
267
+ include Google::Apis::Core::Hashable
268
+
269
+ # Delivery location in terms of a location group name. A location group with
270
+ # this name must be specified among location groups.
271
+ # Corresponds to the JSON property `deliveryLocationGroup`
272
+ # @return [String]
273
+ attr_accessor :delivery_location_group
274
+
275
+ # Delivery location in terms of a location ID. Can be used to represent
276
+ # administrative areas, smaller country subdivisions, or cities.
277
+ # Corresponds to the JSON property `deliveryLocationId`
278
+ # @return [String]
279
+ attr_accessor :delivery_location_id
280
+
281
+ # Delivery location in terms of a postal code.
282
+ # Corresponds to the JSON property `deliveryPostalCode`
283
+ # @return [String]
284
+ attr_accessor :delivery_postal_code
285
+
286
+ # A postal code range, that can be either:
287
+ # - A range of postal codes (e.g., start=12340, end=12359)
288
+ # - A range of postal codes prefixes (e.g., start=1234* end=1235*). Prefixes
289
+ # must be of the same length (e.g., start=12* end=2* is invalid).
290
+ # Corresponds to the JSON property `deliveryPostalCodeRange`
291
+ # @return [Google::Apis::ContentV2::AccountShippingPostalCodeRange]
292
+ attr_accessor :delivery_postal_code_range
293
+
294
+ # Maximum shipping price. Forms an interval between the maximum of smaller
295
+ # prices (exclusive) and this price (inclusive).
296
+ # Corresponds to the JSON property `priceMax`
297
+ # @return [Google::Apis::ContentV2::Price]
298
+ attr_accessor :price_max
299
+
300
+ # Shipping label of the product. The products with the label are matched.
301
+ # Corresponds to the JSON property `shippingLabel`
302
+ # @return [String]
303
+ attr_accessor :shipping_label
304
+
305
+ # Maximum shipping weight. Forms an interval between the maximum of smaller
306
+ # weight (exclusive) and this weight (inclusive).
307
+ # Corresponds to the JSON property `weightMax`
308
+ # @return [Google::Apis::ContentV2::Weight]
309
+ attr_accessor :weight_max
310
+
311
+ def initialize(**args)
312
+ update!(**args)
313
+ end
314
+
315
+ # Update properties of this object
316
+ def update!(**args)
317
+ @delivery_location_group = args[:delivery_location_group] unless args[:delivery_location_group].nil?
318
+ @delivery_location_id = args[:delivery_location_id] unless args[:delivery_location_id].nil?
319
+ @delivery_postal_code = args[:delivery_postal_code] unless args[:delivery_postal_code].nil?
320
+ @delivery_postal_code_range = args[:delivery_postal_code_range] unless args[:delivery_postal_code_range].nil?
321
+ @price_max = args[:price_max] unless args[:price_max].nil?
322
+ @shipping_label = args[:shipping_label] unless args[:shipping_label].nil?
323
+ @weight_max = args[:weight_max] unless args[:weight_max].nil?
324
+ end
325
+ end
326
+
327
+ # A user-defined locations group in a given country. All the locations of the
328
+ # group must be of the same type.
329
+ class AccountShippingLocationGroup
330
+ include Google::Apis::Core::Hashable
331
+
332
+ # The country in which this location group is, represented as ISO 3166-1 Alpha-2
333
+ # code.
334
+ # Corresponds to the JSON property `country`
335
+ # @return [String]
336
+ attr_accessor :country
337
+
338
+ # A location ID (also called criteria ID) representing administrative areas,
339
+ # smaller country subdivisions (counties), or cities.
340
+ # Corresponds to the JSON property `locationIds`
341
+ # @return [Array<String>]
342
+ attr_accessor :location_ids
343
+
344
+ # The name of the location group.
345
+ # Corresponds to the JSON property `name`
346
+ # @return [String]
347
+ attr_accessor :name
348
+
349
+ # A postal code range representing a city or a set of cities.
350
+ # Corresponds to the JSON property `postalCodeRanges`
351
+ # @return [Array<Google::Apis::ContentV2::AccountShippingPostalCodeRange>]
352
+ attr_accessor :postal_code_ranges
353
+
354
+ # A postal code representing a city or a set of cities.
355
+ # - A single postal code (e.g., 12345)
356
+ # - A postal code prefix followed by a star (e.g., 1234*)
357
+ # Corresponds to the JSON property `postalCodes`
358
+ # @return [Array<String>]
359
+ attr_accessor :postal_codes
360
+
361
+ def initialize(**args)
362
+ update!(**args)
363
+ end
364
+
365
+ # Update properties of this object
366
+ def update!(**args)
367
+ @country = args[:country] unless args[:country].nil?
368
+ @location_ids = args[:location_ids] unless args[:location_ids].nil?
369
+ @name = args[:name] unless args[:name].nil?
370
+ @postal_code_ranges = args[:postal_code_ranges] unless args[:postal_code_ranges].nil?
371
+ @postal_codes = args[:postal_codes] unless args[:postal_codes].nil?
372
+ end
373
+ end
374
+
375
+ # A postal code range, that can be either:
376
+ # - A range of postal codes (e.g., start=12340, end=12359)
377
+ # - A range of postal codes prefixes (e.g., start=1234* end=1235*). Prefixes
378
+ # must be of the same length (e.g., start=12* end=2* is invalid).
379
+ class AccountShippingPostalCodeRange
380
+ include Google::Apis::Core::Hashable
381
+
382
+ # The last (inclusive) postal code or prefix of the range.
383
+ # Corresponds to the JSON property `end`
384
+ # @return [String]
385
+ attr_accessor :end
386
+
387
+ # The first (inclusive) postal code or prefix of the range.
388
+ # Corresponds to the JSON property `start`
389
+ # @return [String]
390
+ attr_accessor :start
391
+
392
+ def initialize(**args)
393
+ update!(**args)
394
+ end
395
+
396
+ # Update properties of this object
397
+ def update!(**args)
398
+ @end = args[:end] unless args[:end].nil?
399
+ @start = args[:start] unless args[:start].nil?
400
+ end
401
+ end
402
+
403
+ # A single or bi-dimensional table of shipping rates. Each dimension is defined
404
+ # in terms of consecutive price/weight ranges, delivery locations, or shipping
405
+ # labels.
406
+ class AccountShippingRateTable
407
+ include Google::Apis::Core::Hashable
408
+
409
+ # One-dimensional table cells define one condition along the same dimension. Bi-
410
+ # dimensional table cells use two dimensions with respectively M and N distinct
411
+ # values and must contain exactly M * N cells with distinct conditions (for each
412
+ # possible value pairs).
413
+ # Corresponds to the JSON property `content`
414
+ # @return [Array<Google::Apis::ContentV2::AccountShippingRateTableCell>]
415
+ attr_accessor :content
416
+
417
+ # The name of the rate table.
418
+ # Corresponds to the JSON property `name`
419
+ # @return [String]
420
+ attr_accessor :name
421
+
422
+ # Sale country for which this table is valid, represented as an ISO 3166-1 Alpha-
423
+ # 2 code.
424
+ # Corresponds to the JSON property `saleCountry`
425
+ # @return [String]
426
+ attr_accessor :sale_country
427
+
428
+ def initialize(**args)
429
+ update!(**args)
430
+ end
431
+
432
+ # Update properties of this object
433
+ def update!(**args)
434
+ @content = args[:content] unless args[:content].nil?
435
+ @name = args[:name] unless args[:name].nil?
436
+ @sale_country = args[:sale_country] unless args[:sale_country].nil?
437
+ end
438
+ end
439
+
440
+ #
441
+ class AccountShippingRateTableCell
442
+ include Google::Apis::Core::Hashable
443
+
444
+ # Conditions for which the cell is valid. All cells in a table must use the same
445
+ # dimension or pair of dimensions among price, weight, shipping label or
446
+ # delivery location. If no condition is specified, the cell acts as a catch-all
447
+ # and matches all the elements that are not matched by other cells in this
448
+ # dimension.
449
+ # Corresponds to the JSON property `condition`
450
+ # @return [Google::Apis::ContentV2::AccountShippingCondition]
451
+ attr_accessor :condition
452
+
453
+ # The rate applicable if the cell conditions are matched.
454
+ # Corresponds to the JSON property `rate`
455
+ # @return [Google::Apis::ContentV2::Price]
456
+ attr_accessor :rate
457
+
458
+ def initialize(**args)
459
+ update!(**args)
460
+ end
461
+
462
+ # Update properties of this object
463
+ def update!(**args)
464
+ @condition = args[:condition] unless args[:condition].nil?
465
+ @rate = args[:rate] unless args[:rate].nil?
466
+ end
467
+ end
468
+
469
+ # Shipping services provided in a country.
470
+ class AccountShippingShippingService
471
+ include Google::Apis::Core::Hashable
472
+
473
+ # Whether the shipping service is available.
474
+ # Corresponds to the JSON property `active`
475
+ # @return [Boolean]
476
+ attr_accessor :active
477
+ alias_method :active?, :active
478
+
479
+ # Shipping cost calculation method. Exactly one of the field is set.
480
+ # Corresponds to the JSON property `calculationMethod`
481
+ # @return [Google::Apis::ContentV2::AccountShippingShippingServiceCalculationMethod]
482
+ attr_accessor :calculation_method
483
+
484
+ # Building block of the cost calculation decision tree.
485
+ # - The tree root should have no condition and no calculation method.
486
+ # - All the children must have a condition on the same dimension. The first
487
+ # child matching a condition is entered, therefore, price and weight conditions
488
+ # form contiguous intervals.
489
+ # - The last child of an element must have no condition and matches all elements
490
+ # not previously matched.
491
+ # - Children and calculation method are mutually exclusive, and exactly one of
492
+ # them must be defined; the root must only have children.
493
+ # Corresponds to the JSON property `costRuleTree`
494
+ # @return [Google::Apis::ContentV2::AccountShippingShippingServiceCostRule]
495
+ attr_accessor :cost_rule_tree
496
+
497
+ # The name of this shipping service.
498
+ # Corresponds to the JSON property `name`
499
+ # @return [String]
500
+ attr_accessor :name
501
+
502
+ # Sale country for which this service can be used, represented as an ISO 3166-1
503
+ # Alpha-2 code.
504
+ # Corresponds to the JSON property `saleCountry`
505
+ # @return [String]
506
+ attr_accessor :sale_country
507
+
508
+ def initialize(**args)
509
+ update!(**args)
510
+ end
511
+
512
+ # Update properties of this object
513
+ def update!(**args)
514
+ @active = args[:active] unless args[:active].nil?
515
+ @calculation_method = args[:calculation_method] unless args[:calculation_method].nil?
516
+ @cost_rule_tree = args[:cost_rule_tree] unless args[:cost_rule_tree].nil?
517
+ @name = args[:name] unless args[:name].nil?
518
+ @sale_country = args[:sale_country] unless args[:sale_country].nil?
519
+ end
520
+ end
521
+
522
+ # Shipping cost calculation method. Exactly one of the field is set.
523
+ class AccountShippingShippingServiceCalculationMethod
524
+ include Google::Apis::Core::Hashable
525
+
526
+ # Name of the carrier rate to use for the calculation.
527
+ # Corresponds to the JSON property `carrierRate`
528
+ # @return [String]
529
+ attr_accessor :carrier_rate
530
+
531
+ # Delivery is excluded. Valid only within cost rules tree.
532
+ # Corresponds to the JSON property `excluded`
533
+ # @return [Boolean]
534
+ attr_accessor :excluded
535
+ alias_method :excluded?, :excluded
536
+
537
+ # Fixed price shipping, represented as a floating point number associated with a
538
+ # currency.
539
+ # Corresponds to the JSON property `flatRate`
540
+ # @return [Google::Apis::ContentV2::Price]
541
+ attr_accessor :flat_rate
542
+
543
+ # Percentage of the price, represented as a floating point number without the
544
+ # percentage character.
545
+ # Corresponds to the JSON property `percentageRate`
546
+ # @return [String]
547
+ attr_accessor :percentage_rate
548
+
549
+ # Name of the rate table to use for the calculation.
550
+ # Corresponds to the JSON property `rateTable`
551
+ # @return [String]
552
+ attr_accessor :rate_table
553
+
554
+ def initialize(**args)
555
+ update!(**args)
556
+ end
557
+
558
+ # Update properties of this object
559
+ def update!(**args)
560
+ @carrier_rate = args[:carrier_rate] unless args[:carrier_rate].nil?
561
+ @excluded = args[:excluded] unless args[:excluded].nil?
562
+ @flat_rate = args[:flat_rate] unless args[:flat_rate].nil?
563
+ @percentage_rate = args[:percentage_rate] unless args[:percentage_rate].nil?
564
+ @rate_table = args[:rate_table] unless args[:rate_table].nil?
565
+ end
566
+ end
567
+
568
+ # Building block of the cost calculation decision tree.
569
+ # - The tree root should have no condition and no calculation method.
570
+ # - All the children must have a condition on the same dimension. The first
571
+ # child matching a condition is entered, therefore, price and weight conditions
572
+ # form contiguous intervals.
573
+ # - The last child of an element must have no condition and matches all elements
574
+ # not previously matched.
575
+ # - Children and calculation method are mutually exclusive, and exactly one of
576
+ # them must be defined; the root must only have children.
577
+ class AccountShippingShippingServiceCostRule
578
+ include Google::Apis::Core::Hashable
579
+
580
+ # Shipping cost calculation method. Exactly one of the field is set.
581
+ # Corresponds to the JSON property `calculationMethod`
582
+ # @return [Google::Apis::ContentV2::AccountShippingShippingServiceCalculationMethod]
583
+ attr_accessor :calculation_method
584
+
585
+ # Subsequent rules to be applied, only for inner nodes. The last child must not
586
+ # specify a condition and acts as a catch-all.
587
+ # Corresponds to the JSON property `children`
588
+ # @return [Array<Google::Apis::ContentV2::AccountShippingShippingServiceCostRule>]
589
+ attr_accessor :children
590
+
591
+ # Condition for this rule to be applicable. If no condition is specified, the
592
+ # rule acts as a catch-all.
593
+ # Corresponds to the JSON property `condition`
594
+ # @return [Google::Apis::ContentV2::AccountShippingCondition]
595
+ attr_accessor :condition
596
+
597
+ def initialize(**args)
598
+ update!(**args)
599
+ end
600
+
601
+ # Update properties of this object
602
+ def update!(**args)
603
+ @calculation_method = args[:calculation_method] unless args[:calculation_method].nil?
604
+ @children = args[:children] unless args[:children].nil?
605
+ @condition = args[:condition] unless args[:condition].nil?
606
+ end
607
+ end
608
+
609
+ # The status of an account, i.e., information about its products, which is
610
+ # computed offline and not returned immediately at insertion time.
611
+ class AccountStatus
612
+ include Google::Apis::Core::Hashable
613
+
614
+ # The ID of the account for which the status is reported.
615
+ # Corresponds to the JSON property `accountId`
616
+ # @return [String]
617
+ attr_accessor :account_id
618
+
619
+ # A list of data quality issues.
620
+ # Corresponds to the JSON property `dataQualityIssues`
621
+ # @return [Array<Google::Apis::ContentV2::AccountStatusDataQualityIssue>]
622
+ attr_accessor :data_quality_issues
623
+
624
+ # Identifies what kind of resource this is. Value: the fixed string "content#
625
+ # accountStatus".
626
+ # Corresponds to the JSON property `kind`
627
+ # @return [String]
628
+ attr_accessor :kind
629
+
630
+ def initialize(**args)
631
+ update!(**args)
632
+ end
633
+
634
+ # Update properties of this object
635
+ def update!(**args)
636
+ @account_id = args[:account_id] unless args[:account_id].nil?
637
+ @data_quality_issues = args[:data_quality_issues] unless args[:data_quality_issues].nil?
638
+ @kind = args[:kind] unless args[:kind].nil?
639
+ end
640
+ end
641
+
642
+ #
643
+ class AccountStatusDataQualityIssue
644
+ include Google::Apis::Core::Hashable
645
+
646
+ # Country for which this issue is reported.
647
+ # Corresponds to the JSON property `country`
648
+ # @return [String]
649
+ attr_accessor :country
650
+
651
+ # Actual value displayed on the landing page.
652
+ # Corresponds to the JSON property `displayedValue`
653
+ # @return [String]
654
+ attr_accessor :displayed_value
655
+
656
+ # Example items featuring the issue.
657
+ # Corresponds to the JSON property `exampleItems`
658
+ # @return [Array<Google::Apis::ContentV2::AccountStatusExampleItem>]
659
+ attr_accessor :example_items
660
+
661
+ # Issue identifier.
662
+ # Corresponds to the JSON property `id`
663
+ # @return [String]
664
+ attr_accessor :id
665
+
666
+ # Last time the account was checked for this issue.
667
+ # Corresponds to the JSON property `lastChecked`
668
+ # @return [String]
669
+ attr_accessor :last_checked
670
+
671
+ # Number of items in the account found to have the said issue.
672
+ # Corresponds to the JSON property `numItems`
673
+ # @return [Fixnum]
674
+ attr_accessor :num_items
675
+
676
+ # Severity of the problem.
677
+ # Corresponds to the JSON property `severity`
678
+ # @return [String]
679
+ attr_accessor :severity
680
+
681
+ # Submitted value that causes the issue.
682
+ # Corresponds to the JSON property `submittedValue`
683
+ # @return [String]
684
+ attr_accessor :submitted_value
685
+
686
+ def initialize(**args)
687
+ update!(**args)
688
+ end
689
+
690
+ # Update properties of this object
691
+ def update!(**args)
692
+ @country = args[:country] unless args[:country].nil?
693
+ @displayed_value = args[:displayed_value] unless args[:displayed_value].nil?
694
+ @example_items = args[:example_items] unless args[:example_items].nil?
695
+ @id = args[:id] unless args[:id].nil?
696
+ @last_checked = args[:last_checked] unless args[:last_checked].nil?
697
+ @num_items = args[:num_items] unless args[:num_items].nil?
698
+ @severity = args[:severity] unless args[:severity].nil?
699
+ @submitted_value = args[:submitted_value] unless args[:submitted_value].nil?
700
+ end
701
+ end
702
+
703
+ # An example of an item that has poor data quality. An item value on the landing
704
+ # page differs from what is submitted, or conflicts with a policy.
705
+ class AccountStatusExampleItem
706
+ include Google::Apis::Core::Hashable
707
+
708
+ # Unique item ID as specified in the uploaded product data.
709
+ # Corresponds to the JSON property `itemId`
710
+ # @return [String]
711
+ attr_accessor :item_id
712
+
713
+ # Landing page of the item.
714
+ # Corresponds to the JSON property `link`
715
+ # @return [String]
716
+ attr_accessor :link
717
+
718
+ # The item value that was submitted.
719
+ # Corresponds to the JSON property `submittedValue`
720
+ # @return [String]
721
+ attr_accessor :submitted_value
722
+
723
+ # Title of the item.
724
+ # Corresponds to the JSON property `title`
725
+ # @return [String]
726
+ attr_accessor :title
727
+
728
+ # The actual value on the landing page.
729
+ # Corresponds to the JSON property `valueOnLandingPage`
730
+ # @return [String]
731
+ attr_accessor :value_on_landing_page
732
+
733
+ def initialize(**args)
734
+ update!(**args)
735
+ end
736
+
737
+ # Update properties of this object
738
+ def update!(**args)
739
+ @item_id = args[:item_id] unless args[:item_id].nil?
740
+ @link = args[:link] unless args[:link].nil?
741
+ @submitted_value = args[:submitted_value] unless args[:submitted_value].nil?
742
+ @title = args[:title] unless args[:title].nil?
743
+ @value_on_landing_page = args[:value_on_landing_page] unless args[:value_on_landing_page].nil?
744
+ end
745
+ end
746
+
747
+ # The tax settings of a merchant account.
748
+ class AccountTax
749
+ include Google::Apis::Core::Hashable
750
+
751
+ # The ID of the account to which these account tax settings belong.
752
+ # Corresponds to the JSON property `accountId`
753
+ # @return [String]
754
+ attr_accessor :account_id
755
+
756
+ # Identifies what kind of resource this is. Value: the fixed string "content#
757
+ # accountTax".
758
+ # Corresponds to the JSON property `kind`
759
+ # @return [String]
760
+ attr_accessor :kind
761
+
762
+ # Tax rules. Updating the tax rules will enable US taxes (not reversible).
763
+ # Defining no rules is equivalent to not charging tax at all.
764
+ # Corresponds to the JSON property `rules`
765
+ # @return [Array<Google::Apis::ContentV2::AccountTaxTaxRule>]
766
+ attr_accessor :rules
767
+
768
+ def initialize(**args)
769
+ update!(**args)
770
+ end
771
+
772
+ # Update properties of this object
773
+ def update!(**args)
774
+ @account_id = args[:account_id] unless args[:account_id].nil?
775
+ @kind = args[:kind] unless args[:kind].nil?
776
+ @rules = args[:rules] unless args[:rules].nil?
777
+ end
778
+ end
779
+
780
+ # Tax calculation rule to apply in a state or province (USA only).
781
+ class AccountTaxTaxRule
782
+ include Google::Apis::Core::Hashable
783
+
784
+ # Country code in which tax is applicable.
785
+ # Corresponds to the JSON property `country`
786
+ # @return [String]
787
+ attr_accessor :country
788
+
789
+ # State (or province) is which the tax is applicable, described by its location
790
+ # id (also called criteria id).
791
+ # Corresponds to the JSON property `locationId`
792
+ # @return [String]
793
+ attr_accessor :location_id
794
+
795
+ # Explicit tax rate in percent, represented as a floating point number without
796
+ # the percentage character. Must not be negative.
797
+ # Corresponds to the JSON property `ratePercent`
798
+ # @return [String]
799
+ attr_accessor :rate_percent
800
+
801
+ # If true, shipping charges are also taxed.
802
+ # Corresponds to the JSON property `shippingTaxed`
803
+ # @return [Boolean]
804
+ attr_accessor :shipping_taxed
805
+ alias_method :shipping_taxed?, :shipping_taxed
806
+
807
+ # Whether the tax rate is taken from a global tax table or specified explicitly.
808
+ # Corresponds to the JSON property `useGlobalRate`
809
+ # @return [Boolean]
810
+ attr_accessor :use_global_rate
811
+ alias_method :use_global_rate?, :use_global_rate
812
+
813
+ def initialize(**args)
814
+ update!(**args)
815
+ end
816
+
817
+ # Update properties of this object
818
+ def update!(**args)
819
+ @country = args[:country] unless args[:country].nil?
820
+ @location_id = args[:location_id] unless args[:location_id].nil?
821
+ @rate_percent = args[:rate_percent] unless args[:rate_percent].nil?
822
+ @shipping_taxed = args[:shipping_taxed] unless args[:shipping_taxed].nil?
823
+ @use_global_rate = args[:use_global_rate] unless args[:use_global_rate].nil?
824
+ end
825
+ end
826
+
827
+ #
828
+ class AccountUser
829
+ include Google::Apis::Core::Hashable
830
+
831
+ # Whether user is an admin.
832
+ # Corresponds to the JSON property `admin`
833
+ # @return [Boolean]
834
+ attr_accessor :admin
835
+ alias_method :admin?, :admin
836
+
837
+ # User's email address.
838
+ # Corresponds to the JSON property `emailAddress`
839
+ # @return [String]
840
+ attr_accessor :email_address
841
+
842
+ def initialize(**args)
843
+ update!(**args)
844
+ end
845
+
846
+ # Update properties of this object
847
+ def update!(**args)
848
+ @admin = args[:admin] unless args[:admin].nil?
849
+ @email_address = args[:email_address] unless args[:email_address].nil?
850
+ end
851
+ end
852
+
853
+ #
854
+ class AccountsAuthInfoResponse
855
+ include Google::Apis::Core::Hashable
856
+
857
+ # The account identifiers corresponding to the authenticated user.
858
+ # - For an individual account: only the merchant ID is defined
859
+ # - For an aggregator: only the aggregator ID is defined
860
+ # - For a subaccount of an MCA: both the merchant ID and the aggregator ID are
861
+ # defined.
862
+ # Corresponds to the JSON property `accountIdentifiers`
863
+ # @return [Array<Google::Apis::ContentV2::AccountIdentifier>]
864
+ attr_accessor :account_identifiers
865
+
866
+ # Identifies what kind of resource this is. Value: the fixed string "content#
867
+ # accountsAuthInfoResponse".
868
+ # Corresponds to the JSON property `kind`
869
+ # @return [String]
870
+ attr_accessor :kind
871
+
872
+ def initialize(**args)
873
+ update!(**args)
874
+ end
875
+
876
+ # Update properties of this object
877
+ def update!(**args)
878
+ @account_identifiers = args[:account_identifiers] unless args[:account_identifiers].nil?
879
+ @kind = args[:kind] unless args[:kind].nil?
880
+ end
881
+ end
882
+
883
+ #
884
+ class BatchAccountsRequest
885
+ include Google::Apis::Core::Hashable
886
+
887
+ # The request entries to be processed in the batch.
888
+ # Corresponds to the JSON property `entries`
889
+ # @return [Array<Google::Apis::ContentV2::AccountsBatchRequestEntry>]
890
+ attr_accessor :entries
891
+
892
+ def initialize(**args)
893
+ update!(**args)
894
+ end
895
+
896
+ # Update properties of this object
897
+ def update!(**args)
898
+ @entries = args[:entries] unless args[:entries].nil?
899
+ end
900
+ end
901
+
902
+ # A batch entry encoding a single non-batch accounts request.
903
+ class AccountsBatchRequestEntry
904
+ include Google::Apis::Core::Hashable
905
+
906
+ # Account data.
907
+ # Corresponds to the JSON property `account`
908
+ # @return [Google::Apis::ContentV2::Account]
909
+ attr_accessor :account
910
+
911
+ # The ID of the account to get or delete. Only defined if the method is get or
912
+ # delete.
913
+ # Corresponds to the JSON property `accountId`
914
+ # @return [String]
915
+ attr_accessor :account_id
916
+
917
+ # An entry ID, unique within the batch request.
918
+ # Corresponds to the JSON property `batchId`
919
+ # @return [Fixnum]
920
+ attr_accessor :batch_id
921
+
922
+ # The ID of the managing account.
923
+ # Corresponds to the JSON property `merchantId`
924
+ # @return [String]
925
+ attr_accessor :merchant_id
926
+
927
+ #
928
+ # Corresponds to the JSON property `method`
929
+ # @return [String]
930
+ attr_accessor :request_method
931
+
932
+ def initialize(**args)
933
+ update!(**args)
934
+ end
935
+
936
+ # Update properties of this object
937
+ def update!(**args)
938
+ @account = args[:account] unless args[:account].nil?
939
+ @account_id = args[:account_id] unless args[:account_id].nil?
940
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
941
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
942
+ @request_method = args[:request_method] unless args[:request_method].nil?
943
+ end
944
+ end
945
+
946
+ #
947
+ class BatchAccountsResponse
948
+ include Google::Apis::Core::Hashable
949
+
950
+ # The result of the execution of the batch requests.
951
+ # Corresponds to the JSON property `entries`
952
+ # @return [Array<Google::Apis::ContentV2::AccountsBatchResponseEntry>]
953
+ attr_accessor :entries
954
+
955
+ # Identifies what kind of resource this is. Value: the fixed string "content#
956
+ # accountsCustomBatchResponse".
957
+ # Corresponds to the JSON property `kind`
958
+ # @return [String]
959
+ attr_accessor :kind
960
+
961
+ def initialize(**args)
962
+ update!(**args)
963
+ end
964
+
965
+ # Update properties of this object
966
+ def update!(**args)
967
+ @entries = args[:entries] unless args[:entries].nil?
968
+ @kind = args[:kind] unless args[:kind].nil?
969
+ end
970
+ end
971
+
972
+ # A batch entry encoding a single non-batch accounts response.
973
+ class AccountsBatchResponseEntry
974
+ include Google::Apis::Core::Hashable
975
+
976
+ # Account data.
977
+ # Corresponds to the JSON property `account`
978
+ # @return [Google::Apis::ContentV2::Account]
979
+ attr_accessor :account
980
+
981
+ # The ID of the request entry this entry responds to.
982
+ # Corresponds to the JSON property `batchId`
983
+ # @return [Fixnum]
984
+ attr_accessor :batch_id
985
+
986
+ # A list of errors returned by a failed batch entry.
987
+ # Corresponds to the JSON property `errors`
988
+ # @return [Google::Apis::ContentV2::Errors]
989
+ attr_accessor :errors
990
+
991
+ # Identifies what kind of resource this is. Value: the fixed string "content#
992
+ # accountsCustomBatchResponseEntry".
993
+ # Corresponds to the JSON property `kind`
994
+ # @return [String]
995
+ attr_accessor :kind
996
+
997
+ def initialize(**args)
998
+ update!(**args)
999
+ end
1000
+
1001
+ # Update properties of this object
1002
+ def update!(**args)
1003
+ @account = args[:account] unless args[:account].nil?
1004
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1005
+ @errors = args[:errors] unless args[:errors].nil?
1006
+ @kind = args[:kind] unless args[:kind].nil?
1007
+ end
1008
+ end
1009
+
1010
+ #
1011
+ class ListAccountsResponse
1012
+ include Google::Apis::Core::Hashable
1013
+
1014
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1015
+ # accountsListResponse".
1016
+ # Corresponds to the JSON property `kind`
1017
+ # @return [String]
1018
+ attr_accessor :kind
1019
+
1020
+ # The token for the retrieval of the next page of accounts.
1021
+ # Corresponds to the JSON property `nextPageToken`
1022
+ # @return [String]
1023
+ attr_accessor :next_page_token
1024
+
1025
+ #
1026
+ # Corresponds to the JSON property `resources`
1027
+ # @return [Array<Google::Apis::ContentV2::Account>]
1028
+ attr_accessor :resources
1029
+
1030
+ def initialize(**args)
1031
+ update!(**args)
1032
+ end
1033
+
1034
+ # Update properties of this object
1035
+ def update!(**args)
1036
+ @kind = args[:kind] unless args[:kind].nil?
1037
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1038
+ @resources = args[:resources] unless args[:resources].nil?
1039
+ end
1040
+ end
1041
+
1042
+ #
1043
+ class BatchAccountShippingRequest
1044
+ include Google::Apis::Core::Hashable
1045
+
1046
+ # The request entries to be processed in the batch.
1047
+ # Corresponds to the JSON property `entries`
1048
+ # @return [Array<Google::Apis::ContentV2::AccountShippingBatchRequestEntry>]
1049
+ attr_accessor :entries
1050
+
1051
+ def initialize(**args)
1052
+ update!(**args)
1053
+ end
1054
+
1055
+ # Update properties of this object
1056
+ def update!(**args)
1057
+ @entries = args[:entries] unless args[:entries].nil?
1058
+ end
1059
+ end
1060
+
1061
+ # A batch entry encoding a single non-batch accountshipping request.
1062
+ class AccountShippingBatchRequestEntry
1063
+ include Google::Apis::Core::Hashable
1064
+
1065
+ # The ID of the account for which to get/update account shipping settings.
1066
+ # Corresponds to the JSON property `accountId`
1067
+ # @return [String]
1068
+ attr_accessor :account_id
1069
+
1070
+ # The shipping settings of a merchant account.
1071
+ # Corresponds to the JSON property `accountShipping`
1072
+ # @return [Google::Apis::ContentV2::AccountShipping]
1073
+ attr_accessor :account_shipping
1074
+
1075
+ # An entry ID, unique within the batch request.
1076
+ # Corresponds to the JSON property `batchId`
1077
+ # @return [Fixnum]
1078
+ attr_accessor :batch_id
1079
+
1080
+ # The ID of the managing account.
1081
+ # Corresponds to the JSON property `merchantId`
1082
+ # @return [String]
1083
+ attr_accessor :merchant_id
1084
+
1085
+ #
1086
+ # Corresponds to the JSON property `method`
1087
+ # @return [String]
1088
+ attr_accessor :request_method
1089
+
1090
+ def initialize(**args)
1091
+ update!(**args)
1092
+ end
1093
+
1094
+ # Update properties of this object
1095
+ def update!(**args)
1096
+ @account_id = args[:account_id] unless args[:account_id].nil?
1097
+ @account_shipping = args[:account_shipping] unless args[:account_shipping].nil?
1098
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1099
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
1100
+ @request_method = args[:request_method] unless args[:request_method].nil?
1101
+ end
1102
+ end
1103
+
1104
+ #
1105
+ class BatchAccountShippingResponse
1106
+ include Google::Apis::Core::Hashable
1107
+
1108
+ # The result of the execution of the batch requests.
1109
+ # Corresponds to the JSON property `entries`
1110
+ # @return [Array<Google::Apis::ContentV2::AccountShippingBatchResponseEntry>]
1111
+ attr_accessor :entries
1112
+
1113
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1114
+ # accountshippingCustomBatchResponse".
1115
+ # Corresponds to the JSON property `kind`
1116
+ # @return [String]
1117
+ attr_accessor :kind
1118
+
1119
+ def initialize(**args)
1120
+ update!(**args)
1121
+ end
1122
+
1123
+ # Update properties of this object
1124
+ def update!(**args)
1125
+ @entries = args[:entries] unless args[:entries].nil?
1126
+ @kind = args[:kind] unless args[:kind].nil?
1127
+ end
1128
+ end
1129
+
1130
+ # A batch entry encoding a single non-batch accountshipping response.
1131
+ class AccountShippingBatchResponseEntry
1132
+ include Google::Apis::Core::Hashable
1133
+
1134
+ # The shipping settings of a merchant account.
1135
+ # Corresponds to the JSON property `accountShipping`
1136
+ # @return [Google::Apis::ContentV2::AccountShipping]
1137
+ attr_accessor :account_shipping
1138
+
1139
+ # The ID of the request entry this entry responds to.
1140
+ # Corresponds to the JSON property `batchId`
1141
+ # @return [Fixnum]
1142
+ attr_accessor :batch_id
1143
+
1144
+ # A list of errors returned by a failed batch entry.
1145
+ # Corresponds to the JSON property `errors`
1146
+ # @return [Google::Apis::ContentV2::Errors]
1147
+ attr_accessor :errors
1148
+
1149
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1150
+ # accountshippingCustomBatchResponseEntry".
1151
+ # Corresponds to the JSON property `kind`
1152
+ # @return [String]
1153
+ attr_accessor :kind
1154
+
1155
+ def initialize(**args)
1156
+ update!(**args)
1157
+ end
1158
+
1159
+ # Update properties of this object
1160
+ def update!(**args)
1161
+ @account_shipping = args[:account_shipping] unless args[:account_shipping].nil?
1162
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1163
+ @errors = args[:errors] unless args[:errors].nil?
1164
+ @kind = args[:kind] unless args[:kind].nil?
1165
+ end
1166
+ end
1167
+
1168
+ #
1169
+ class ListAccountShippingResponse
1170
+ include Google::Apis::Core::Hashable
1171
+
1172
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1173
+ # accountshippingListResponse".
1174
+ # Corresponds to the JSON property `kind`
1175
+ # @return [String]
1176
+ attr_accessor :kind
1177
+
1178
+ # The token for the retrieval of the next page of account shipping settings.
1179
+ # Corresponds to the JSON property `nextPageToken`
1180
+ # @return [String]
1181
+ attr_accessor :next_page_token
1182
+
1183
+ #
1184
+ # Corresponds to the JSON property `resources`
1185
+ # @return [Array<Google::Apis::ContentV2::AccountShipping>]
1186
+ attr_accessor :resources
1187
+
1188
+ def initialize(**args)
1189
+ update!(**args)
1190
+ end
1191
+
1192
+ # Update properties of this object
1193
+ def update!(**args)
1194
+ @kind = args[:kind] unless args[:kind].nil?
1195
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1196
+ @resources = args[:resources] unless args[:resources].nil?
1197
+ end
1198
+ end
1199
+
1200
+ #
1201
+ class BatchAccountStatusesRequest
1202
+ include Google::Apis::Core::Hashable
1203
+
1204
+ # The request entries to be processed in the batch.
1205
+ # Corresponds to the JSON property `entries`
1206
+ # @return [Array<Google::Apis::ContentV2::AccountStatusesBatchRequestEntry>]
1207
+ attr_accessor :entries
1208
+
1209
+ def initialize(**args)
1210
+ update!(**args)
1211
+ end
1212
+
1213
+ # Update properties of this object
1214
+ def update!(**args)
1215
+ @entries = args[:entries] unless args[:entries].nil?
1216
+ end
1217
+ end
1218
+
1219
+ # A batch entry encoding a single non-batch accountstatuses request.
1220
+ class AccountStatusesBatchRequestEntry
1221
+ include Google::Apis::Core::Hashable
1222
+
1223
+ # The ID of the (sub-)account whose status to get.
1224
+ # Corresponds to the JSON property `accountId`
1225
+ # @return [String]
1226
+ attr_accessor :account_id
1227
+
1228
+ # An entry ID, unique within the batch request.
1229
+ # Corresponds to the JSON property `batchId`
1230
+ # @return [Fixnum]
1231
+ attr_accessor :batch_id
1232
+
1233
+ # The ID of the managing account.
1234
+ # Corresponds to the JSON property `merchantId`
1235
+ # @return [String]
1236
+ attr_accessor :merchant_id
1237
+
1238
+ # The method (get).
1239
+ # Corresponds to the JSON property `method`
1240
+ # @return [String]
1241
+ attr_accessor :request_method
1242
+
1243
+ def initialize(**args)
1244
+ update!(**args)
1245
+ end
1246
+
1247
+ # Update properties of this object
1248
+ def update!(**args)
1249
+ @account_id = args[:account_id] unless args[:account_id].nil?
1250
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1251
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
1252
+ @request_method = args[:request_method] unless args[:request_method].nil?
1253
+ end
1254
+ end
1255
+
1256
+ #
1257
+ class BatchAccountStatusesResponse
1258
+ include Google::Apis::Core::Hashable
1259
+
1260
+ # The result of the execution of the batch requests.
1261
+ # Corresponds to the JSON property `entries`
1262
+ # @return [Array<Google::Apis::ContentV2::AccountStatusesBatchResponseEntry>]
1263
+ attr_accessor :entries
1264
+
1265
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1266
+ # accountstatusesCustomBatchResponse".
1267
+ # Corresponds to the JSON property `kind`
1268
+ # @return [String]
1269
+ attr_accessor :kind
1270
+
1271
+ def initialize(**args)
1272
+ update!(**args)
1273
+ end
1274
+
1275
+ # Update properties of this object
1276
+ def update!(**args)
1277
+ @entries = args[:entries] unless args[:entries].nil?
1278
+ @kind = args[:kind] unless args[:kind].nil?
1279
+ end
1280
+ end
1281
+
1282
+ # A batch entry encoding a single non-batch accountstatuses response.
1283
+ class AccountStatusesBatchResponseEntry
1284
+ include Google::Apis::Core::Hashable
1285
+
1286
+ # The status of an account, i.e., information about its products, which is
1287
+ # computed offline and not returned immediately at insertion time.
1288
+ # Corresponds to the JSON property `accountStatus`
1289
+ # @return [Google::Apis::ContentV2::AccountStatus]
1290
+ attr_accessor :account_status
1291
+
1292
+ # The ID of the request entry this entry responds to.
1293
+ # Corresponds to the JSON property `batchId`
1294
+ # @return [Fixnum]
1295
+ attr_accessor :batch_id
1296
+
1297
+ # A list of errors returned by a failed batch entry.
1298
+ # Corresponds to the JSON property `errors`
1299
+ # @return [Google::Apis::ContentV2::Errors]
1300
+ attr_accessor :errors
1301
+
1302
+ def initialize(**args)
1303
+ update!(**args)
1304
+ end
1305
+
1306
+ # Update properties of this object
1307
+ def update!(**args)
1308
+ @account_status = args[:account_status] unless args[:account_status].nil?
1309
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1310
+ @errors = args[:errors] unless args[:errors].nil?
1311
+ end
1312
+ end
1313
+
1314
+ #
1315
+ class ListAccountStatusesResponse
1316
+ include Google::Apis::Core::Hashable
1317
+
1318
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1319
+ # accountstatusesListResponse".
1320
+ # Corresponds to the JSON property `kind`
1321
+ # @return [String]
1322
+ attr_accessor :kind
1323
+
1324
+ # The token for the retrieval of the next page of account statuses.
1325
+ # Corresponds to the JSON property `nextPageToken`
1326
+ # @return [String]
1327
+ attr_accessor :next_page_token
1328
+
1329
+ #
1330
+ # Corresponds to the JSON property `resources`
1331
+ # @return [Array<Google::Apis::ContentV2::AccountStatus>]
1332
+ attr_accessor :resources
1333
+
1334
+ def initialize(**args)
1335
+ update!(**args)
1336
+ end
1337
+
1338
+ # Update properties of this object
1339
+ def update!(**args)
1340
+ @kind = args[:kind] unless args[:kind].nil?
1341
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1342
+ @resources = args[:resources] unless args[:resources].nil?
1343
+ end
1344
+ end
1345
+
1346
+ #
1347
+ class BatchAccountTaxRequest
1348
+ include Google::Apis::Core::Hashable
1349
+
1350
+ # The request entries to be processed in the batch.
1351
+ # Corresponds to the JSON property `entries`
1352
+ # @return [Array<Google::Apis::ContentV2::AccountTaxBatchRequestEntry>]
1353
+ attr_accessor :entries
1354
+
1355
+ def initialize(**args)
1356
+ update!(**args)
1357
+ end
1358
+
1359
+ # Update properties of this object
1360
+ def update!(**args)
1361
+ @entries = args[:entries] unless args[:entries].nil?
1362
+ end
1363
+ end
1364
+
1365
+ # A batch entry encoding a single non-batch accounttax request.
1366
+ class AccountTaxBatchRequestEntry
1367
+ include Google::Apis::Core::Hashable
1368
+
1369
+ # The ID of the account for which to get/update account tax settings.
1370
+ # Corresponds to the JSON property `accountId`
1371
+ # @return [String]
1372
+ attr_accessor :account_id
1373
+
1374
+ # The tax settings of a merchant account.
1375
+ # Corresponds to the JSON property `accountTax`
1376
+ # @return [Google::Apis::ContentV2::AccountTax]
1377
+ attr_accessor :account_tax
1378
+
1379
+ # An entry ID, unique within the batch request.
1380
+ # Corresponds to the JSON property `batchId`
1381
+ # @return [Fixnum]
1382
+ attr_accessor :batch_id
1383
+
1384
+ # The ID of the managing account.
1385
+ # Corresponds to the JSON property `merchantId`
1386
+ # @return [String]
1387
+ attr_accessor :merchant_id
1388
+
1389
+ #
1390
+ # Corresponds to the JSON property `method`
1391
+ # @return [String]
1392
+ attr_accessor :request_method
1393
+
1394
+ def initialize(**args)
1395
+ update!(**args)
1396
+ end
1397
+
1398
+ # Update properties of this object
1399
+ def update!(**args)
1400
+ @account_id = args[:account_id] unless args[:account_id].nil?
1401
+ @account_tax = args[:account_tax] unless args[:account_tax].nil?
1402
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1403
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
1404
+ @request_method = args[:request_method] unless args[:request_method].nil?
1405
+ end
1406
+ end
1407
+
1408
+ #
1409
+ class BatchAccountTaxResponse
1410
+ include Google::Apis::Core::Hashable
1411
+
1412
+ # The result of the execution of the batch requests.
1413
+ # Corresponds to the JSON property `entries`
1414
+ # @return [Array<Google::Apis::ContentV2::AccountTaxBatchResponseEntry>]
1415
+ attr_accessor :entries
1416
+
1417
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1418
+ # accounttaxCustomBatchResponse".
1419
+ # Corresponds to the JSON property `kind`
1420
+ # @return [String]
1421
+ attr_accessor :kind
1422
+
1423
+ def initialize(**args)
1424
+ update!(**args)
1425
+ end
1426
+
1427
+ # Update properties of this object
1428
+ def update!(**args)
1429
+ @entries = args[:entries] unless args[:entries].nil?
1430
+ @kind = args[:kind] unless args[:kind].nil?
1431
+ end
1432
+ end
1433
+
1434
+ # A batch entry encoding a single non-batch accounttax response.
1435
+ class AccountTaxBatchResponseEntry
1436
+ include Google::Apis::Core::Hashable
1437
+
1438
+ # The tax settings of a merchant account.
1439
+ # Corresponds to the JSON property `accountTax`
1440
+ # @return [Google::Apis::ContentV2::AccountTax]
1441
+ attr_accessor :account_tax
1442
+
1443
+ # The ID of the request entry this entry responds to.
1444
+ # Corresponds to the JSON property `batchId`
1445
+ # @return [Fixnum]
1446
+ attr_accessor :batch_id
1447
+
1448
+ # A list of errors returned by a failed batch entry.
1449
+ # Corresponds to the JSON property `errors`
1450
+ # @return [Google::Apis::ContentV2::Errors]
1451
+ attr_accessor :errors
1452
+
1453
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1454
+ # accounttaxCustomBatchResponseEntry".
1455
+ # Corresponds to the JSON property `kind`
1456
+ # @return [String]
1457
+ attr_accessor :kind
1458
+
1459
+ def initialize(**args)
1460
+ update!(**args)
1461
+ end
1462
+
1463
+ # Update properties of this object
1464
+ def update!(**args)
1465
+ @account_tax = args[:account_tax] unless args[:account_tax].nil?
1466
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1467
+ @errors = args[:errors] unless args[:errors].nil?
1468
+ @kind = args[:kind] unless args[:kind].nil?
1469
+ end
1470
+ end
1471
+
1472
+ #
1473
+ class ListAccountTaxResponse
1474
+ include Google::Apis::Core::Hashable
1475
+
1476
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1477
+ # accounttaxListResponse".
1478
+ # Corresponds to the JSON property `kind`
1479
+ # @return [String]
1480
+ attr_accessor :kind
1481
+
1482
+ # The token for the retrieval of the next page of account tax settings.
1483
+ # Corresponds to the JSON property `nextPageToken`
1484
+ # @return [String]
1485
+ attr_accessor :next_page_token
1486
+
1487
+ #
1488
+ # Corresponds to the JSON property `resources`
1489
+ # @return [Array<Google::Apis::ContentV2::AccountTax>]
1490
+ attr_accessor :resources
1491
+
1492
+ def initialize(**args)
1493
+ update!(**args)
1494
+ end
1495
+
1496
+ # Update properties of this object
1497
+ def update!(**args)
1498
+ @kind = args[:kind] unless args[:kind].nil?
1499
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1500
+ @resources = args[:resources] unless args[:resources].nil?
1501
+ end
1502
+ end
1503
+
1504
+ # Datafeed data.
1505
+ class Datafeed
1506
+ include Google::Apis::Core::Hashable
1507
+
1508
+ # The two-letter ISO 639-1 language in which the attributes are defined in the
1509
+ # data feed.
1510
+ # Corresponds to the JSON property `attributeLanguage`
1511
+ # @return [String]
1512
+ attr_accessor :attribute_language
1513
+
1514
+ # The two-letter ISO 639-1 language of the items in the feed.
1515
+ # Corresponds to the JSON property `contentLanguage`
1516
+ # @return [String]
1517
+ attr_accessor :content_language
1518
+
1519
+ # The type of data feed.
1520
+ # Corresponds to the JSON property `contentType`
1521
+ # @return [String]
1522
+ attr_accessor :content_type
1523
+
1524
+ # The required fields vary based on the frequency of fetching. For a monthly
1525
+ # fetch schedule, day_of_month and hour are required. For a weekly fetch
1526
+ # schedule, weekday and hour are required. For a daily fetch schedule, only hour
1527
+ # is required.
1528
+ # Corresponds to the JSON property `fetchSchedule`
1529
+ # @return [Google::Apis::ContentV2::DatafeedFetchSchedule]
1530
+ attr_accessor :fetch_schedule
1531
+
1532
+ # The filename of the feed. All feeds must have a unique file name.
1533
+ # Corresponds to the JSON property `fileName`
1534
+ # @return [String]
1535
+ attr_accessor :file_name
1536
+
1537
+ # Format of the feed file.
1538
+ # Corresponds to the JSON property `format`
1539
+ # @return [Google::Apis::ContentV2::DatafeedFormat]
1540
+ attr_accessor :format
1541
+
1542
+ # The ID of the data feed.
1543
+ # Corresponds to the JSON property `id`
1544
+ # @return [String]
1545
+ attr_accessor :id
1546
+
1547
+ # The list of intended destinations (corresponds to checked check boxes in
1548
+ # Merchant Center).
1549
+ # Corresponds to the JSON property `intendedDestinations`
1550
+ # @return [Array<String>]
1551
+ attr_accessor :intended_destinations
1552
+
1553
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1554
+ # datafeed".
1555
+ # Corresponds to the JSON property `kind`
1556
+ # @return [String]
1557
+ attr_accessor :kind
1558
+
1559
+ # A descriptive name of the data feed.
1560
+ # Corresponds to the JSON property `name`
1561
+ # @return [String]
1562
+ attr_accessor :name
1563
+
1564
+ # The two-letter ISO 3166 country where the items in the feed will be included
1565
+ # in the search index.
1566
+ # Corresponds to the JSON property `targetCountry`
1567
+ # @return [String]
1568
+ attr_accessor :target_country
1569
+
1570
+ def initialize(**args)
1571
+ update!(**args)
1572
+ end
1573
+
1574
+ # Update properties of this object
1575
+ def update!(**args)
1576
+ @attribute_language = args[:attribute_language] unless args[:attribute_language].nil?
1577
+ @content_language = args[:content_language] unless args[:content_language].nil?
1578
+ @content_type = args[:content_type] unless args[:content_type].nil?
1579
+ @fetch_schedule = args[:fetch_schedule] unless args[:fetch_schedule].nil?
1580
+ @file_name = args[:file_name] unless args[:file_name].nil?
1581
+ @format = args[:format] unless args[:format].nil?
1582
+ @id = args[:id] unless args[:id].nil?
1583
+ @intended_destinations = args[:intended_destinations] unless args[:intended_destinations].nil?
1584
+ @kind = args[:kind] unless args[:kind].nil?
1585
+ @name = args[:name] unless args[:name].nil?
1586
+ @target_country = args[:target_country] unless args[:target_country].nil?
1587
+ end
1588
+ end
1589
+
1590
+ # The required fields vary based on the frequency of fetching. For a monthly
1591
+ # fetch schedule, day_of_month and hour are required. For a weekly fetch
1592
+ # schedule, weekday and hour are required. For a daily fetch schedule, only hour
1593
+ # is required.
1594
+ class DatafeedFetchSchedule
1595
+ include Google::Apis::Core::Hashable
1596
+
1597
+ # The day of the month the feed file should be fetched (1-31).
1598
+ # Corresponds to the JSON property `dayOfMonth`
1599
+ # @return [Fixnum]
1600
+ attr_accessor :day_of_month
1601
+
1602
+ # The URL where the feed file can be fetched. Google Merchant Center will
1603
+ # support automatic scheduled uploads using the HTTP, HTTPS, FTP, or SFTP
1604
+ # protocols, so the value will need to be a valid link using one of those four
1605
+ # protocols.
1606
+ # Corresponds to the JSON property `fetchUrl`
1607
+ # @return [String]
1608
+ attr_accessor :fetch_url
1609
+
1610
+ # The hour of the day the feed file should be fetched (0-24).
1611
+ # Corresponds to the JSON property `hour`
1612
+ # @return [Fixnum]
1613
+ attr_accessor :hour
1614
+
1615
+ # An optional password for fetch_url.
1616
+ # Corresponds to the JSON property `password`
1617
+ # @return [String]
1618
+ attr_accessor :password
1619
+
1620
+ # Time zone used for schedule. UTC by default. E.g., "America/Los_Angeles".
1621
+ # Corresponds to the JSON property `timeZone`
1622
+ # @return [String]
1623
+ attr_accessor :time_zone
1624
+
1625
+ # An optional user name for fetch_url.
1626
+ # Corresponds to the JSON property `username`
1627
+ # @return [String]
1628
+ attr_accessor :username
1629
+
1630
+ # The day of the week the feed file should be fetched.
1631
+ # Corresponds to the JSON property `weekday`
1632
+ # @return [String]
1633
+ attr_accessor :weekday
1634
+
1635
+ def initialize(**args)
1636
+ update!(**args)
1637
+ end
1638
+
1639
+ # Update properties of this object
1640
+ def update!(**args)
1641
+ @day_of_month = args[:day_of_month] unless args[:day_of_month].nil?
1642
+ @fetch_url = args[:fetch_url] unless args[:fetch_url].nil?
1643
+ @hour = args[:hour] unless args[:hour].nil?
1644
+ @password = args[:password] unless args[:password].nil?
1645
+ @time_zone = args[:time_zone] unless args[:time_zone].nil?
1646
+ @username = args[:username] unless args[:username].nil?
1647
+ @weekday = args[:weekday] unless args[:weekday].nil?
1648
+ end
1649
+ end
1650
+
1651
+ #
1652
+ class DatafeedFormat
1653
+ include Google::Apis::Core::Hashable
1654
+
1655
+ # Delimiter for the separation of values in a delimiter-separated values feed.
1656
+ # If not specified, the delimiter will be auto-detected. Ignored for non-DSV
1657
+ # data feeds.
1658
+ # Corresponds to the JSON property `columnDelimiter`
1659
+ # @return [String]
1660
+ attr_accessor :column_delimiter
1661
+
1662
+ # Character encoding scheme of the data feed. If not specified, the encoding
1663
+ # will be auto-detected.
1664
+ # Corresponds to the JSON property `fileEncoding`
1665
+ # @return [String]
1666
+ attr_accessor :file_encoding
1667
+
1668
+ # Specifies how double quotes are interpreted. If not specified, the mode will
1669
+ # be auto-detected. Ignored for non-DSV data feeds.
1670
+ # Corresponds to the JSON property `quotingMode`
1671
+ # @return [String]
1672
+ attr_accessor :quoting_mode
1673
+
1674
+ def initialize(**args)
1675
+ update!(**args)
1676
+ end
1677
+
1678
+ # Update properties of this object
1679
+ def update!(**args)
1680
+ @column_delimiter = args[:column_delimiter] unless args[:column_delimiter].nil?
1681
+ @file_encoding = args[:file_encoding] unless args[:file_encoding].nil?
1682
+ @quoting_mode = args[:quoting_mode] unless args[:quoting_mode].nil?
1683
+ end
1684
+ end
1685
+
1686
+ # The status of a datafeed, i.e., the result of the last retrieval of the
1687
+ # datafeed computed asynchronously when the feed processing is finished.
1688
+ class DatafeedStatus
1689
+ include Google::Apis::Core::Hashable
1690
+
1691
+ # The ID of the feed for which the status is reported.
1692
+ # Corresponds to the JSON property `datafeedId`
1693
+ # @return [String]
1694
+ attr_accessor :datafeed_id
1695
+
1696
+ # The list of errors occurring in the feed.
1697
+ # Corresponds to the JSON property `errors`
1698
+ # @return [Array<Google::Apis::ContentV2::DatafeedStatusError>]
1699
+ attr_accessor :errors
1700
+
1701
+ # The number of items in the feed that were processed.
1702
+ # Corresponds to the JSON property `itemsTotal`
1703
+ # @return [String]
1704
+ attr_accessor :items_total
1705
+
1706
+ # The number of items in the feed that were valid.
1707
+ # Corresponds to the JSON property `itemsValid`
1708
+ # @return [String]
1709
+ attr_accessor :items_valid
1710
+
1711
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1712
+ # datafeedStatus".
1713
+ # Corresponds to the JSON property `kind`
1714
+ # @return [String]
1715
+ attr_accessor :kind
1716
+
1717
+ # The last date at which the feed was uploaded.
1718
+ # Corresponds to the JSON property `lastUploadDate`
1719
+ # @return [String]
1720
+ attr_accessor :last_upload_date
1721
+
1722
+ # The processing status of the feed.
1723
+ # Corresponds to the JSON property `processingStatus`
1724
+ # @return [String]
1725
+ attr_accessor :processing_status
1726
+
1727
+ # The list of errors occurring in the feed.
1728
+ # Corresponds to the JSON property `warnings`
1729
+ # @return [Array<Google::Apis::ContentV2::DatafeedStatusError>]
1730
+ attr_accessor :warnings
1731
+
1732
+ def initialize(**args)
1733
+ update!(**args)
1734
+ end
1735
+
1736
+ # Update properties of this object
1737
+ def update!(**args)
1738
+ @datafeed_id = args[:datafeed_id] unless args[:datafeed_id].nil?
1739
+ @errors = args[:errors] unless args[:errors].nil?
1740
+ @items_total = args[:items_total] unless args[:items_total].nil?
1741
+ @items_valid = args[:items_valid] unless args[:items_valid].nil?
1742
+ @kind = args[:kind] unless args[:kind].nil?
1743
+ @last_upload_date = args[:last_upload_date] unless args[:last_upload_date].nil?
1744
+ @processing_status = args[:processing_status] unless args[:processing_status].nil?
1745
+ @warnings = args[:warnings] unless args[:warnings].nil?
1746
+ end
1747
+ end
1748
+
1749
+ # An error occurring in the feed, like "invalid price".
1750
+ class DatafeedStatusError
1751
+ include Google::Apis::Core::Hashable
1752
+
1753
+ # The code of the error, e.g., "validation/invalid_value".
1754
+ # Corresponds to the JSON property `code`
1755
+ # @return [String]
1756
+ attr_accessor :code
1757
+
1758
+ # The number of occurrences of the error in the feed.
1759
+ # Corresponds to the JSON property `count`
1760
+ # @return [String]
1761
+ attr_accessor :count
1762
+
1763
+ # A list of example occurrences of the error, grouped by product.
1764
+ # Corresponds to the JSON property `examples`
1765
+ # @return [Array<Google::Apis::ContentV2::DatafeedStatusExample>]
1766
+ attr_accessor :examples
1767
+
1768
+ # The error message, e.g., "Invalid price".
1769
+ # Corresponds to the JSON property `message`
1770
+ # @return [String]
1771
+ attr_accessor :message
1772
+
1773
+ def initialize(**args)
1774
+ update!(**args)
1775
+ end
1776
+
1777
+ # Update properties of this object
1778
+ def update!(**args)
1779
+ @code = args[:code] unless args[:code].nil?
1780
+ @count = args[:count] unless args[:count].nil?
1781
+ @examples = args[:examples] unless args[:examples].nil?
1782
+ @message = args[:message] unless args[:message].nil?
1783
+ end
1784
+ end
1785
+
1786
+ # An example occurrence for a particular error.
1787
+ class DatafeedStatusExample
1788
+ include Google::Apis::Core::Hashable
1789
+
1790
+ # The ID of the example item.
1791
+ # Corresponds to the JSON property `itemId`
1792
+ # @return [String]
1793
+ attr_accessor :item_id
1794
+
1795
+ # Line number in the data feed where the example is found.
1796
+ # Corresponds to the JSON property `lineNumber`
1797
+ # @return [String]
1798
+ attr_accessor :line_number
1799
+
1800
+ # The problematic value.
1801
+ # Corresponds to the JSON property `value`
1802
+ # @return [String]
1803
+ attr_accessor :value
1804
+
1805
+ def initialize(**args)
1806
+ update!(**args)
1807
+ end
1808
+
1809
+ # Update properties of this object
1810
+ def update!(**args)
1811
+ @item_id = args[:item_id] unless args[:item_id].nil?
1812
+ @line_number = args[:line_number] unless args[:line_number].nil?
1813
+ @value = args[:value] unless args[:value].nil?
1814
+ end
1815
+ end
1816
+
1817
+ #
1818
+ class BatchDatafeedsRequest
1819
+ include Google::Apis::Core::Hashable
1820
+
1821
+ # The request entries to be processed in the batch.
1822
+ # Corresponds to the JSON property `entries`
1823
+ # @return [Array<Google::Apis::ContentV2::DatafeedsBatchRequestEntry>]
1824
+ attr_accessor :entries
1825
+
1826
+ def initialize(**args)
1827
+ update!(**args)
1828
+ end
1829
+
1830
+ # Update properties of this object
1831
+ def update!(**args)
1832
+ @entries = args[:entries] unless args[:entries].nil?
1833
+ end
1834
+ end
1835
+
1836
+ # A batch entry encoding a single non-batch datafeeds request.
1837
+ class DatafeedsBatchRequestEntry
1838
+ include Google::Apis::Core::Hashable
1839
+
1840
+ # An entry ID, unique within the batch request.
1841
+ # Corresponds to the JSON property `batchId`
1842
+ # @return [Fixnum]
1843
+ attr_accessor :batch_id
1844
+
1845
+ # Datafeed data.
1846
+ # Corresponds to the JSON property `datafeed`
1847
+ # @return [Google::Apis::ContentV2::Datafeed]
1848
+ attr_accessor :datafeed
1849
+
1850
+ # The ID of the data feed to get or delete.
1851
+ # Corresponds to the JSON property `datafeedId`
1852
+ # @return [String]
1853
+ attr_accessor :datafeed_id
1854
+
1855
+ # The ID of the managing account.
1856
+ # Corresponds to the JSON property `merchantId`
1857
+ # @return [String]
1858
+ attr_accessor :merchant_id
1859
+
1860
+ #
1861
+ # Corresponds to the JSON property `method`
1862
+ # @return [String]
1863
+ attr_accessor :request_method
1864
+
1865
+ def initialize(**args)
1866
+ update!(**args)
1867
+ end
1868
+
1869
+ # Update properties of this object
1870
+ def update!(**args)
1871
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1872
+ @datafeed = args[:datafeed] unless args[:datafeed].nil?
1873
+ @datafeed_id = args[:datafeed_id] unless args[:datafeed_id].nil?
1874
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
1875
+ @request_method = args[:request_method] unless args[:request_method].nil?
1876
+ end
1877
+ end
1878
+
1879
+ #
1880
+ class BatchDatafeedsResponse
1881
+ include Google::Apis::Core::Hashable
1882
+
1883
+ # The result of the execution of the batch requests.
1884
+ # Corresponds to the JSON property `entries`
1885
+ # @return [Array<Google::Apis::ContentV2::DatafeedsBatchResponseEntry>]
1886
+ attr_accessor :entries
1887
+
1888
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1889
+ # datafeedsCustomBatchResponse".
1890
+ # Corresponds to the JSON property `kind`
1891
+ # @return [String]
1892
+ attr_accessor :kind
1893
+
1894
+ def initialize(**args)
1895
+ update!(**args)
1896
+ end
1897
+
1898
+ # Update properties of this object
1899
+ def update!(**args)
1900
+ @entries = args[:entries] unless args[:entries].nil?
1901
+ @kind = args[:kind] unless args[:kind].nil?
1902
+ end
1903
+ end
1904
+
1905
+ # A batch entry encoding a single non-batch datafeeds response.
1906
+ class DatafeedsBatchResponseEntry
1907
+ include Google::Apis::Core::Hashable
1908
+
1909
+ # The ID of the request entry this entry responds to.
1910
+ # Corresponds to the JSON property `batchId`
1911
+ # @return [Fixnum]
1912
+ attr_accessor :batch_id
1913
+
1914
+ # Datafeed data.
1915
+ # Corresponds to the JSON property `datafeed`
1916
+ # @return [Google::Apis::ContentV2::Datafeed]
1917
+ attr_accessor :datafeed
1918
+
1919
+ # A list of errors returned by a failed batch entry.
1920
+ # Corresponds to the JSON property `errors`
1921
+ # @return [Google::Apis::ContentV2::Errors]
1922
+ attr_accessor :errors
1923
+
1924
+ def initialize(**args)
1925
+ update!(**args)
1926
+ end
1927
+
1928
+ # Update properties of this object
1929
+ def update!(**args)
1930
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
1931
+ @datafeed = args[:datafeed] unless args[:datafeed].nil?
1932
+ @errors = args[:errors] unless args[:errors].nil?
1933
+ end
1934
+ end
1935
+
1936
+ #
1937
+ class ListDatafeedsResponse
1938
+ include Google::Apis::Core::Hashable
1939
+
1940
+ # Identifies what kind of resource this is. Value: the fixed string "content#
1941
+ # datafeedsListResponse".
1942
+ # Corresponds to the JSON property `kind`
1943
+ # @return [String]
1944
+ attr_accessor :kind
1945
+
1946
+ # The token for the retrieval of the next page of datafeeds.
1947
+ # Corresponds to the JSON property `nextPageToken`
1948
+ # @return [String]
1949
+ attr_accessor :next_page_token
1950
+
1951
+ #
1952
+ # Corresponds to the JSON property `resources`
1953
+ # @return [Array<Google::Apis::ContentV2::Datafeed>]
1954
+ attr_accessor :resources
1955
+
1956
+ def initialize(**args)
1957
+ update!(**args)
1958
+ end
1959
+
1960
+ # Update properties of this object
1961
+ def update!(**args)
1962
+ @kind = args[:kind] unless args[:kind].nil?
1963
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1964
+ @resources = args[:resources] unless args[:resources].nil?
1965
+ end
1966
+ end
1967
+
1968
+ #
1969
+ class BatchDatafeedStatusesRequest
1970
+ include Google::Apis::Core::Hashable
1971
+
1972
+ # The request entries to be processed in the batch.
1973
+ # Corresponds to the JSON property `entries`
1974
+ # @return [Array<Google::Apis::ContentV2::DatafeedStatusesBatchRequestEntry>]
1975
+ attr_accessor :entries
1976
+
1977
+ def initialize(**args)
1978
+ update!(**args)
1979
+ end
1980
+
1981
+ # Update properties of this object
1982
+ def update!(**args)
1983
+ @entries = args[:entries] unless args[:entries].nil?
1984
+ end
1985
+ end
1986
+
1987
+ # A batch entry encoding a single non-batch datafeedstatuses request.
1988
+ class DatafeedStatusesBatchRequestEntry
1989
+ include Google::Apis::Core::Hashable
1990
+
1991
+ # An entry ID, unique within the batch request.
1992
+ # Corresponds to the JSON property `batchId`
1993
+ # @return [Fixnum]
1994
+ attr_accessor :batch_id
1995
+
1996
+ # The ID of the data feed to get or delete.
1997
+ # Corresponds to the JSON property `datafeedId`
1998
+ # @return [String]
1999
+ attr_accessor :datafeed_id
2000
+
2001
+ # The ID of the managing account.
2002
+ # Corresponds to the JSON property `merchantId`
2003
+ # @return [String]
2004
+ attr_accessor :merchant_id
2005
+
2006
+ #
2007
+ # Corresponds to the JSON property `method`
2008
+ # @return [String]
2009
+ attr_accessor :request_method
2010
+
2011
+ def initialize(**args)
2012
+ update!(**args)
2013
+ end
2014
+
2015
+ # Update properties of this object
2016
+ def update!(**args)
2017
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
2018
+ @datafeed_id = args[:datafeed_id] unless args[:datafeed_id].nil?
2019
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
2020
+ @request_method = args[:request_method] unless args[:request_method].nil?
2021
+ end
2022
+ end
2023
+
2024
+ #
2025
+ class BatchDatafeedStatusesResponse
2026
+ include Google::Apis::Core::Hashable
2027
+
2028
+ # The result of the execution of the batch requests.
2029
+ # Corresponds to the JSON property `entries`
2030
+ # @return [Array<Google::Apis::ContentV2::DatafeedStatusesBatchResponseEntry>]
2031
+ attr_accessor :entries
2032
+
2033
+ # Identifies what kind of resource this is. Value: the fixed string "content#
2034
+ # datafeedstatusesCustomBatchResponse".
2035
+ # Corresponds to the JSON property `kind`
2036
+ # @return [String]
2037
+ attr_accessor :kind
2038
+
2039
+ def initialize(**args)
2040
+ update!(**args)
2041
+ end
2042
+
2043
+ # Update properties of this object
2044
+ def update!(**args)
2045
+ @entries = args[:entries] unless args[:entries].nil?
2046
+ @kind = args[:kind] unless args[:kind].nil?
2047
+ end
2048
+ end
2049
+
2050
+ # A batch entry encoding a single non-batch datafeedstatuses response.
2051
+ class DatafeedStatusesBatchResponseEntry
2052
+ include Google::Apis::Core::Hashable
2053
+
2054
+ # The ID of the request entry this entry responds to.
2055
+ # Corresponds to the JSON property `batchId`
2056
+ # @return [Fixnum]
2057
+ attr_accessor :batch_id
2058
+
2059
+ # The status of a datafeed, i.e., the result of the last retrieval of the
2060
+ # datafeed computed asynchronously when the feed processing is finished.
2061
+ # Corresponds to the JSON property `datafeedStatus`
2062
+ # @return [Google::Apis::ContentV2::DatafeedStatus]
2063
+ attr_accessor :datafeed_status
2064
+
2065
+ # A list of errors returned by a failed batch entry.
2066
+ # Corresponds to the JSON property `errors`
2067
+ # @return [Google::Apis::ContentV2::Errors]
2068
+ attr_accessor :errors
2069
+
2070
+ def initialize(**args)
2071
+ update!(**args)
2072
+ end
2073
+
2074
+ # Update properties of this object
2075
+ def update!(**args)
2076
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
2077
+ @datafeed_status = args[:datafeed_status] unless args[:datafeed_status].nil?
2078
+ @errors = args[:errors] unless args[:errors].nil?
2079
+ end
2080
+ end
2081
+
2082
+ #
2083
+ class ListDatafeedStatusesResponse
2084
+ include Google::Apis::Core::Hashable
2085
+
2086
+ # Identifies what kind of resource this is. Value: the fixed string "content#
2087
+ # datafeedstatusesListResponse".
2088
+ # Corresponds to the JSON property `kind`
2089
+ # @return [String]
2090
+ attr_accessor :kind
2091
+
2092
+ # The token for the retrieval of the next page of datafeed statuses.
2093
+ # Corresponds to the JSON property `nextPageToken`
2094
+ # @return [String]
2095
+ attr_accessor :next_page_token
2096
+
2097
+ #
2098
+ # Corresponds to the JSON property `resources`
2099
+ # @return [Array<Google::Apis::ContentV2::DatafeedStatus>]
2100
+ attr_accessor :resources
2101
+
2102
+ def initialize(**args)
2103
+ update!(**args)
2104
+ end
2105
+
2106
+ # Update properties of this object
2107
+ def update!(**args)
2108
+ @kind = args[:kind] unless args[:kind].nil?
2109
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2110
+ @resources = args[:resources] unless args[:resources].nil?
2111
+ end
2112
+ end
2113
+
2114
+ # An error returned by the API.
2115
+ class Error
2116
+ include Google::Apis::Core::Hashable
2117
+
2118
+ # The domain of the error.
2119
+ # Corresponds to the JSON property `domain`
2120
+ # @return [String]
2121
+ attr_accessor :domain
2122
+
2123
+ # A description of the error.
2124
+ # Corresponds to the JSON property `message`
2125
+ # @return [String]
2126
+ attr_accessor :message
2127
+
2128
+ # The error code.
2129
+ # Corresponds to the JSON property `reason`
2130
+ # @return [String]
2131
+ attr_accessor :reason
2132
+
2133
+ def initialize(**args)
2134
+ update!(**args)
2135
+ end
2136
+
2137
+ # Update properties of this object
2138
+ def update!(**args)
2139
+ @domain = args[:domain] unless args[:domain].nil?
2140
+ @message = args[:message] unless args[:message].nil?
2141
+ @reason = args[:reason] unless args[:reason].nil?
2142
+ end
2143
+ end
2144
+
2145
+ # A list of errors returned by a failed batch entry.
2146
+ class Errors
2147
+ include Google::Apis::Core::Hashable
2148
+
2149
+ # The HTTP status of the first error in errors.
2150
+ # Corresponds to the JSON property `code`
2151
+ # @return [Fixnum]
2152
+ attr_accessor :code
2153
+
2154
+ # A list of errors.
2155
+ # Corresponds to the JSON property `errors`
2156
+ # @return [Array<Google::Apis::ContentV2::Error>]
2157
+ attr_accessor :errors
2158
+
2159
+ # The message of the first error in errors.
2160
+ # Corresponds to the JSON property `message`
2161
+ # @return [String]
2162
+ attr_accessor :message
2163
+
2164
+ def initialize(**args)
2165
+ update!(**args)
2166
+ end
2167
+
2168
+ # Update properties of this object
2169
+ def update!(**args)
2170
+ @code = args[:code] unless args[:code].nil?
2171
+ @errors = args[:errors] unless args[:errors].nil?
2172
+ @message = args[:message] unless args[:message].nil?
2173
+ end
2174
+ end
2175
+
2176
+ #
2177
+ class Inventory
2178
+ include Google::Apis::Core::Hashable
2179
+
2180
+ # The availability of the product.
2181
+ # Corresponds to the JSON property `availability`
2182
+ # @return [String]
2183
+ attr_accessor :availability
2184
+
2185
+ # Identifies what kind of resource this is. Value: the fixed string "content#
2186
+ # inventory".
2187
+ # Corresponds to the JSON property `kind`
2188
+ # @return [String]
2189
+ attr_accessor :kind
2190
+
2191
+ # The price of the product.
2192
+ # Corresponds to the JSON property `price`
2193
+ # @return [Google::Apis::ContentV2::Price]
2194
+ attr_accessor :price
2195
+
2196
+ # The quantity of the product. Must be equal to or greater than zero. Supported
2197
+ # only for local products.
2198
+ # Corresponds to the JSON property `quantity`
2199
+ # @return [Fixnum]
2200
+ attr_accessor :quantity
2201
+
2202
+ # The sale price of the product. Mandatory if sale_price_effective_date is
2203
+ # defined.
2204
+ # Corresponds to the JSON property `salePrice`
2205
+ # @return [Google::Apis::ContentV2::Price]
2206
+ attr_accessor :sale_price
2207
+
2208
+ # A date range represented by a pair of ISO 8601 dates separated by a space,
2209
+ # comma, or slash. Both dates might be specified as 'null' if undecided.
2210
+ # Corresponds to the JSON property `salePriceEffectiveDate`
2211
+ # @return [String]
2212
+ attr_accessor :sale_price_effective_date
2213
+
2214
+ def initialize(**args)
2215
+ update!(**args)
2216
+ end
2217
+
2218
+ # Update properties of this object
2219
+ def update!(**args)
2220
+ @availability = args[:availability] unless args[:availability].nil?
2221
+ @kind = args[:kind] unless args[:kind].nil?
2222
+ @price = args[:price] unless args[:price].nil?
2223
+ @quantity = args[:quantity] unless args[:quantity].nil?
2224
+ @sale_price = args[:sale_price] unless args[:sale_price].nil?
2225
+ @sale_price_effective_date = args[:sale_price_effective_date] unless args[:sale_price_effective_date].nil?
2226
+ end
2227
+ end
2228
+
2229
+ #
2230
+ class BatchInventoryRequest
2231
+ include Google::Apis::Core::Hashable
2232
+
2233
+ # The request entries to be processed in the batch.
2234
+ # Corresponds to the JSON property `entries`
2235
+ # @return [Array<Google::Apis::ContentV2::InventoryBatchRequestEntry>]
2236
+ attr_accessor :entries
2237
+
2238
+ def initialize(**args)
2239
+ update!(**args)
2240
+ end
2241
+
2242
+ # Update properties of this object
2243
+ def update!(**args)
2244
+ @entries = args[:entries] unless args[:entries].nil?
2245
+ end
2246
+ end
2247
+
2248
+ # A batch entry encoding a single non-batch inventory request.
2249
+ class InventoryBatchRequestEntry
2250
+ include Google::Apis::Core::Hashable
2251
+
2252
+ # An entry ID, unique within the batch request.
2253
+ # Corresponds to the JSON property `batchId`
2254
+ # @return [Fixnum]
2255
+ attr_accessor :batch_id
2256
+
2257
+ # Price and availability of the product.
2258
+ # Corresponds to the JSON property `inventory`
2259
+ # @return [Google::Apis::ContentV2::Inventory]
2260
+ attr_accessor :inventory
2261
+
2262
+ # The ID of the managing account.
2263
+ # Corresponds to the JSON property `merchantId`
2264
+ # @return [String]
2265
+ attr_accessor :merchant_id
2266
+
2267
+ # The ID of the product for which to update price and availability.
2268
+ # Corresponds to the JSON property `productId`
2269
+ # @return [String]
2270
+ attr_accessor :product_id
2271
+
2272
+ # The code of the store for which to update price and availability. Use online
2273
+ # to update price and availability of an online product.
2274
+ # Corresponds to the JSON property `storeCode`
2275
+ # @return [String]
2276
+ attr_accessor :store_code
2277
+
2278
+ def initialize(**args)
2279
+ update!(**args)
2280
+ end
2281
+
2282
+ # Update properties of this object
2283
+ def update!(**args)
2284
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
2285
+ @inventory = args[:inventory] unless args[:inventory].nil?
2286
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
2287
+ @product_id = args[:product_id] unless args[:product_id].nil?
2288
+ @store_code = args[:store_code] unless args[:store_code].nil?
2289
+ end
2290
+ end
2291
+
2292
+ #
2293
+ class BatchInventoryResponse
2294
+ include Google::Apis::Core::Hashable
2295
+
2296
+ # The result of the execution of the batch requests.
2297
+ # Corresponds to the JSON property `entries`
2298
+ # @return [Array<Google::Apis::ContentV2::InventoryBatchResponseEntry>]
2299
+ attr_accessor :entries
2300
+
2301
+ # Identifies what kind of resource this is. Value: the fixed string "content#
2302
+ # inventoryCustomBatchResponse".
2303
+ # Corresponds to the JSON property `kind`
2304
+ # @return [String]
2305
+ attr_accessor :kind
2306
+
2307
+ def initialize(**args)
2308
+ update!(**args)
2309
+ end
2310
+
2311
+ # Update properties of this object
2312
+ def update!(**args)
2313
+ @entries = args[:entries] unless args[:entries].nil?
2314
+ @kind = args[:kind] unless args[:kind].nil?
2315
+ end
2316
+ end
2317
+
2318
+ # A batch entry encoding a single non-batch inventory response.
2319
+ class InventoryBatchResponseEntry
2320
+ include Google::Apis::Core::Hashable
2321
+
2322
+ # The ID of the request entry this entry responds to.
2323
+ # Corresponds to the JSON property `batchId`
2324
+ # @return [Fixnum]
2325
+ attr_accessor :batch_id
2326
+
2327
+ # A list of errors returned by a failed batch entry.
2328
+ # Corresponds to the JSON property `errors`
2329
+ # @return [Google::Apis::ContentV2::Errors]
2330
+ attr_accessor :errors
2331
+
2332
+ # Identifies what kind of resource this is. Value: the fixed string "content#
2333
+ # inventoryCustomBatchResponseEntry".
2334
+ # Corresponds to the JSON property `kind`
2335
+ # @return [String]
2336
+ attr_accessor :kind
2337
+
2338
+ def initialize(**args)
2339
+ update!(**args)
2340
+ end
2341
+
2342
+ # Update properties of this object
2343
+ def update!(**args)
2344
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
2345
+ @errors = args[:errors] unless args[:errors].nil?
2346
+ @kind = args[:kind] unless args[:kind].nil?
2347
+ end
2348
+ end
2349
+
2350
+ #
2351
+ class SetInventoryRequest
2352
+ include Google::Apis::Core::Hashable
2353
+
2354
+ # The availability of the product.
2355
+ # Corresponds to the JSON property `availability`
2356
+ # @return [String]
2357
+ attr_accessor :availability
2358
+
2359
+ # The price of the product.
2360
+ # Corresponds to the JSON property `price`
2361
+ # @return [Google::Apis::ContentV2::Price]
2362
+ attr_accessor :price
2363
+
2364
+ # The quantity of the product. Must be equal to or greater than zero. Supported
2365
+ # only for local products.
2366
+ # Corresponds to the JSON property `quantity`
2367
+ # @return [Fixnum]
2368
+ attr_accessor :quantity
2369
+
2370
+ # The sale price of the product. Mandatory if sale_price_effective_date is
2371
+ # defined.
2372
+ # Corresponds to the JSON property `salePrice`
2373
+ # @return [Google::Apis::ContentV2::Price]
2374
+ attr_accessor :sale_price
2375
+
2376
+ # A date range represented by a pair of ISO 8601 dates separated by a space,
2377
+ # comma, or slash. Both dates might be specified as 'null' if undecided.
2378
+ # Corresponds to the JSON property `salePriceEffectiveDate`
2379
+ # @return [String]
2380
+ attr_accessor :sale_price_effective_date
2381
+
2382
+ def initialize(**args)
2383
+ update!(**args)
2384
+ end
2385
+
2386
+ # Update properties of this object
2387
+ def update!(**args)
2388
+ @availability = args[:availability] unless args[:availability].nil?
2389
+ @price = args[:price] unless args[:price].nil?
2390
+ @quantity = args[:quantity] unless args[:quantity].nil?
2391
+ @sale_price = args[:sale_price] unless args[:sale_price].nil?
2392
+ @sale_price_effective_date = args[:sale_price_effective_date] unless args[:sale_price_effective_date].nil?
2393
+ end
2394
+ end
2395
+
2396
+ #
2397
+ class SetInventoryResponse
2398
+ include Google::Apis::Core::Hashable
2399
+
2400
+ # Identifies what kind of resource this is. Value: the fixed string "content#
2401
+ # inventorySetResponse".
2402
+ # Corresponds to the JSON property `kind`
2403
+ # @return [String]
2404
+ attr_accessor :kind
2405
+
2406
+ def initialize(**args)
2407
+ update!(**args)
2408
+ end
2409
+
2410
+ # Update properties of this object
2411
+ def update!(**args)
2412
+ @kind = args[:kind] unless args[:kind].nil?
2413
+ end
2414
+ end
2415
+
2416
+ #
2417
+ class LoyaltyPoints
2418
+ include Google::Apis::Core::Hashable
2419
+
2420
+ # Name of loyalty points program. It is recommended to limit the name to 12 full-
2421
+ # width characters or 24 Roman characters.
2422
+ # Corresponds to the JSON property `name`
2423
+ # @return [String]
2424
+ attr_accessor :name
2425
+
2426
+ # The retailer's loyalty points in absolute value.
2427
+ # Corresponds to the JSON property `pointsValue`
2428
+ # @return [String]
2429
+ attr_accessor :points_value
2430
+
2431
+ # The ratio of a point when converted to currency. Google assumes currency based
2432
+ # on Merchant Center settings. If ratio is left out, it defaults to 1.0.
2433
+ # Corresponds to the JSON property `ratio`
2434
+ # @return [Float]
2435
+ attr_accessor :ratio
2436
+
2437
+ def initialize(**args)
2438
+ update!(**args)
2439
+ end
2440
+
2441
+ # Update properties of this object
2442
+ def update!(**args)
2443
+ @name = args[:name] unless args[:name].nil?
2444
+ @points_value = args[:points_value] unless args[:points_value].nil?
2445
+ @ratio = args[:ratio] unless args[:ratio].nil?
2446
+ end
2447
+ end
2448
+
2449
+ #
2450
+ class Price
2451
+ include Google::Apis::Core::Hashable
2452
+
2453
+ # The currency of the price.
2454
+ # Corresponds to the JSON property `currency`
2455
+ # @return [String]
2456
+ attr_accessor :currency
2457
+
2458
+ # The price represented as a number.
2459
+ # Corresponds to the JSON property `value`
2460
+ # @return [String]
2461
+ attr_accessor :value
2462
+
2463
+ def initialize(**args)
2464
+ update!(**args)
2465
+ end
2466
+
2467
+ # Update properties of this object
2468
+ def update!(**args)
2469
+ @currency = args[:currency] unless args[:currency].nil?
2470
+ @value = args[:value] unless args[:value].nil?
2471
+ end
2472
+ end
2473
+
2474
+ # Product data.
2475
+ class Product
2476
+ include Google::Apis::Core::Hashable
2477
+
2478
+ # Additional URLs of images of the item.
2479
+ # Corresponds to the JSON property `additionalImageLinks`
2480
+ # @return [Array<String>]
2481
+ attr_accessor :additional_image_links
2482
+
2483
+ # Set to true if the item is targeted towards adults.
2484
+ # Corresponds to the JSON property `adult`
2485
+ # @return [Boolean]
2486
+ attr_accessor :adult
2487
+ alias_method :adult?, :adult
2488
+
2489
+ # Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.
2490
+ # Corresponds to the JSON property `adwordsGrouping`
2491
+ # @return [String]
2492
+ attr_accessor :adwords_grouping
2493
+
2494
+ # Similar to adwords_grouping, but only works on CPC.
2495
+ # Corresponds to the JSON property `adwordsLabels`
2496
+ # @return [Array<String>]
2497
+ attr_accessor :adwords_labels
2498
+
2499
+ # Allows advertisers to override the item URL when the product is shown within
2500
+ # the context of Product Ads.
2501
+ # Corresponds to the JSON property `adwordsRedirect`
2502
+ # @return [String]
2503
+ attr_accessor :adwords_redirect
2504
+
2505
+ # Target age group of the item.
2506
+ # Corresponds to the JSON property `ageGroup`
2507
+ # @return [String]
2508
+ attr_accessor :age_group
2509
+
2510
+ # Specifies the intended aspects for the product.
2511
+ # Corresponds to the JSON property `aspects`
2512
+ # @return [Array<Google::Apis::ContentV2::ProductAspect>]
2513
+ attr_accessor :aspects
2514
+
2515
+ # Availability status of the item.
2516
+ # Corresponds to the JSON property `availability`
2517
+ # @return [String]
2518
+ attr_accessor :availability
2519
+
2520
+ # The day a pre-ordered product becomes available for delivery, in ISO 8601
2521
+ # format.
2522
+ # Corresponds to the JSON property `availabilityDate`
2523
+ # @return [String]
2524
+ attr_accessor :availability_date
2525
+
2526
+ # Brand of the item.
2527
+ # Corresponds to the JSON property `brand`
2528
+ # @return [String]
2529
+ attr_accessor :brand
2530
+
2531
+ # The item's channel (online or local).
2532
+ # Corresponds to the JSON property `channel`
2533
+ # @return [String]
2534
+ attr_accessor :channel
2535
+
2536
+ # Color of the item.
2537
+ # Corresponds to the JSON property `color`
2538
+ # @return [String]
2539
+ attr_accessor :color
2540
+
2541
+ # Condition or state of the item.
2542
+ # Corresponds to the JSON property `condition`
2543
+ # @return [String]
2544
+ attr_accessor :condition
2545
+
2546
+ # The two-letter ISO 639-1 language code for the item.
2547
+ # Corresponds to the JSON property `contentLanguage`
2548
+ # @return [String]
2549
+ attr_accessor :content_language
2550
+
2551
+ # A list of custom (merchant-provided) attributes. It can also be used for
2552
+ # submitting any attribute of the feed specification in its generic form (e.g., `
2553
+ # "name": "size type", "type": "text", "value": "regular" `). This is useful
2554
+ # for submitting attributes not explicitly exposed by the API.
2555
+ # Corresponds to the JSON property `customAttributes`
2556
+ # @return [Array<Google::Apis::ContentV2::ProductCustomAttribute>]
2557
+ attr_accessor :custom_attributes
2558
+
2559
+ # A list of custom (merchant-provided) custom attribute groups.
2560
+ # Corresponds to the JSON property `customGroups`
2561
+ # @return [Array<Google::Apis::ContentV2::ProductCustomGroup>]
2562
+ attr_accessor :custom_groups
2563
+
2564
+ # Custom label 0 for custom grouping of items in a Shopping campaign.
2565
+ # Corresponds to the JSON property `customLabel0`
2566
+ # @return [String]
2567
+ attr_accessor :custom_label0
2568
+
2569
+ # Custom label 1 for custom grouping of items in a Shopping campaign.
2570
+ # Corresponds to the JSON property `customLabel1`
2571
+ # @return [String]
2572
+ attr_accessor :custom_label1
2573
+
2574
+ # Custom label 2 for custom grouping of items in a Shopping campaign.
2575
+ # Corresponds to the JSON property `customLabel2`
2576
+ # @return [String]
2577
+ attr_accessor :custom_label2
2578
+
2579
+ # Custom label 3 for custom grouping of items in a Shopping campaign.
2580
+ # Corresponds to the JSON property `customLabel3`
2581
+ # @return [String]
2582
+ attr_accessor :custom_label3
2583
+
2584
+ # Custom label 4 for custom grouping of items in a Shopping campaign.
2585
+ # Corresponds to the JSON property `customLabel4`
2586
+ # @return [String]
2587
+ attr_accessor :custom_label4
2588
+
2589
+ # Description of the item.
2590
+ # Corresponds to the JSON property `description`
2591
+ # @return [String]
2592
+ attr_accessor :description
2593
+
2594
+ # Specifies the intended destinations for the product.
2595
+ # Corresponds to the JSON property `destinations`
2596
+ # @return [Array<Google::Apis::ContentV2::ProductDestination>]
2597
+ attr_accessor :destinations
2598
+
2599
+ # An identifier for an item for dynamic remarketing campaigns.
2600
+ # Corresponds to the JSON property `displayAdsId`
2601
+ # @return [String]
2602
+ attr_accessor :display_ads_id
2603
+
2604
+ # URL directly to your item's landing page for dynamic remarketing campaigns.
2605
+ # Corresponds to the JSON property `displayAdsLink`
2606
+ # @return [String]
2607
+ attr_accessor :display_ads_link
2608
+
2609
+ # Advertiser-specified recommendations.
2610
+ # Corresponds to the JSON property `displayAdsSimilarIds`
2611
+ # @return [Array<String>]
2612
+ attr_accessor :display_ads_similar_ids
2613
+
2614
+ # Title of an item for dynamic remarketing campaigns.
2615
+ # Corresponds to the JSON property `displayAdsTitle`
2616
+ # @return [String]
2617
+ attr_accessor :display_ads_title
2618
+
2619
+ # Offer margin for dynamic remarketing campaigns.
2620
+ # Corresponds to the JSON property `displayAdsValue`
2621
+ # @return [Float]
2622
+ attr_accessor :display_ads_value
2623
+
2624
+ # The energy efficiency class as defined in EU directive 2010/30/EU.
2625
+ # Corresponds to the JSON property `energyEfficiencyClass`
2626
+ # @return [String]
2627
+ attr_accessor :energy_efficiency_class
2628
+
2629
+ # Date on which the item should expire, as specified upon insertion, in ISO 8601
2630
+ # format. The actual expiration date in Google Shopping is exposed in
2631
+ # productstatuses as googleExpirationDate and might be earlier if expirationDate
2632
+ # is too far in the future.
2633
+ # Corresponds to the JSON property `expirationDate`
2634
+ # @return [String]
2635
+ attr_accessor :expiration_date
2636
+
2637
+ # Target gender of the item.
2638
+ # Corresponds to the JSON property `gender`
2639
+ # @return [String]
2640
+ attr_accessor :gender
2641
+
2642
+ # Google's category of the item (see Google product taxonomy).
2643
+ # Corresponds to the JSON property `googleProductCategory`
2644
+ # @return [String]
2645
+ attr_accessor :google_product_category
2646
+
2647
+ # Global Trade Item Number (GTIN) of the item.
2648
+ # Corresponds to the JSON property `gtin`
2649
+ # @return [String]
2650
+ attr_accessor :gtin
2651
+
2652
+ # The REST id of the product.
2653
+ # Corresponds to the JSON property `id`
2654
+ # @return [String]
2655
+ attr_accessor :id
2656
+
2657
+ # False when the item does not have unique product identifiers appropriate to
2658
+ # its category, such as GTIN, MPN, and brand. Required according to the Unique
2659
+ # Product Identifier Rules for all target countries except for Canada.
2660
+ # Corresponds to the JSON property `identifierExists`
2661
+ # @return [Boolean]
2662
+ attr_accessor :identifier_exists
2663
+ alias_method :identifier_exists?, :identifier_exists
2664
+
2665
+ # URL of an image of the item.
2666
+ # Corresponds to the JSON property `imageLink`
2667
+ # @return [String]
2668
+ attr_accessor :image_link
2669
+
2670
+ # Number and amount of installments to pay for an item. Brazil only.
2671
+ # Corresponds to the JSON property `installment`
2672
+ # @return [Google::Apis::ContentV2::ProductInstallment]
2673
+ attr_accessor :installment
2674
+
2675
+ # Whether the item is a merchant-defined bundle. A bundle is a custom grouping
2676
+ # of different products sold by a merchant for a single price.
2677
+ # Corresponds to the JSON property `isBundle`
2678
+ # @return [Boolean]
2679
+ attr_accessor :is_bundle
2680
+ alias_method :is_bundle?, :is_bundle
2681
+
2682
+ # Shared identifier for all variants of the same product.
2683
+ # Corresponds to the JSON property `itemGroupId`
2684
+ # @return [String]
2685
+ attr_accessor :item_group_id
2686
+
2687
+ # Identifies what kind of resource this is. Value: the fixed string "content#
2688
+ # product".
2689
+ # Corresponds to the JSON property `kind`
2690
+ # @return [String]
2691
+ attr_accessor :kind
2692
+
2693
+ # URL directly linking to your item's page on your website.
2694
+ # Corresponds to the JSON property `link`
2695
+ # @return [String]
2696
+ attr_accessor :link
2697
+
2698
+ # Loyalty points that users receive after purchasing the item. Japan only.
2699
+ # Corresponds to the JSON property `loyaltyPoints`
2700
+ # @return [Google::Apis::ContentV2::LoyaltyPoints]
2701
+ attr_accessor :loyalty_points
2702
+
2703
+ # The material of which the item is made.
2704
+ # Corresponds to the JSON property `material`
2705
+ # @return [String]
2706
+ attr_accessor :material
2707
+
2708
+ # Link to a mobile-optimized version of the landing page.
2709
+ # Corresponds to the JSON property `mobileLink`
2710
+ # @return [String]
2711
+ attr_accessor :mobile_link
2712
+
2713
+ # Manufacturer Part Number (MPN) of the item.
2714
+ # Corresponds to the JSON property `mpn`
2715
+ # @return [String]
2716
+ attr_accessor :mpn
2717
+
2718
+ # The number of identical products in a merchant-defined multipack.
2719
+ # Corresponds to the JSON property `multipack`
2720
+ # @return [String]
2721
+ attr_accessor :multipack
2722
+
2723
+ # An identifier of the item.
2724
+ # Corresponds to the JSON property `offerId`
2725
+ # @return [String]
2726
+ attr_accessor :offer_id
2727
+
2728
+ # Whether an item is available for purchase only online.
2729
+ # Corresponds to the JSON property `onlineOnly`
2730
+ # @return [Boolean]
2731
+ attr_accessor :online_only
2732
+ alias_method :online_only?, :online_only
2733
+
2734
+ # The item's pattern (e.g. polka dots).
2735
+ # Corresponds to the JSON property `pattern`
2736
+ # @return [String]
2737
+ attr_accessor :pattern
2738
+
2739
+ # Price of the item.
2740
+ # Corresponds to the JSON property `price`
2741
+ # @return [Google::Apis::ContentV2::Price]
2742
+ attr_accessor :price
2743
+
2744
+ # Your category of the item (formatted as in product feeds specification).
2745
+ # Corresponds to the JSON property `productType`
2746
+ # @return [String]
2747
+ attr_accessor :product_type
2748
+
2749
+ # Advertised sale price of the item.
2750
+ # Corresponds to the JSON property `salePrice`
2751
+ # @return [Google::Apis::ContentV2::Price]
2752
+ attr_accessor :sale_price
2753
+
2754
+ # Date range during which the item is on sale (see product feed specifications).
2755
+ # Corresponds to the JSON property `salePriceEffectiveDate`
2756
+ # @return [String]
2757
+ attr_accessor :sale_price_effective_date
2758
+
2759
+ # Shipping rules.
2760
+ # Corresponds to the JSON property `shipping`
2761
+ # @return [Array<Google::Apis::ContentV2::ProductShipping>]
2762
+ attr_accessor :shipping
2763
+
2764
+ # Height of the item for shipping.
2765
+ # Corresponds to the JSON property `shippingHeight`
2766
+ # @return [Google::Apis::ContentV2::ProductShippingDimension]
2767
+ attr_accessor :shipping_height
2768
+
2769
+ # The shipping label of the product, used to group product in account-level
2770
+ # shipping rules.
2771
+ # Corresponds to the JSON property `shippingLabel`
2772
+ # @return [String]
2773
+ attr_accessor :shipping_label
2774
+
2775
+ # Length of the item for shipping.
2776
+ # Corresponds to the JSON property `shippingLength`
2777
+ # @return [Google::Apis::ContentV2::ProductShippingDimension]
2778
+ attr_accessor :shipping_length
2779
+
2780
+ # Weight of the item for shipping.
2781
+ # Corresponds to the JSON property `shippingWeight`
2782
+ # @return [Google::Apis::ContentV2::ProductShippingWeight]
2783
+ attr_accessor :shipping_weight
2784
+
2785
+ # Width of the item for shipping.
2786
+ # Corresponds to the JSON property `shippingWidth`
2787
+ # @return [Google::Apis::ContentV2::ProductShippingDimension]
2788
+ attr_accessor :shipping_width
2789
+
2790
+ # System in which the size is specified. Recommended for apparel items.
2791
+ # Corresponds to the JSON property `sizeSystem`
2792
+ # @return [String]
2793
+ attr_accessor :size_system
2794
+
2795
+ # The cut of the item. Recommended for apparel items.
2796
+ # Corresponds to the JSON property `sizeType`
2797
+ # @return [String]
2798
+ attr_accessor :size_type
2799
+
2800
+ # Size of the item.
2801
+ # Corresponds to the JSON property `sizes`
2802
+ # @return [Array<String>]
2803
+ attr_accessor :sizes
2804
+
2805
+ # The two-letter ISO 3166 country code for the item.
2806
+ # Corresponds to the JSON property `targetCountry`
2807
+ # @return [String]
2808
+ attr_accessor :target_country
2809
+
2810
+ # Tax information.
2811
+ # Corresponds to the JSON property `taxes`
2812
+ # @return [Array<Google::Apis::ContentV2::ProductTax>]
2813
+ attr_accessor :taxes
2814
+
2815
+ # Title of the item.
2816
+ # Corresponds to the JSON property `title`
2817
+ # @return [String]
2818
+ attr_accessor :title
2819
+
2820
+ # The preference of the denominator of the unit price.
2821
+ # Corresponds to the JSON property `unitPricingBaseMeasure`
2822
+ # @return [Google::Apis::ContentV2::ProductUnitPricingBaseMeasure]
2823
+ attr_accessor :unit_pricing_base_measure
2824
+
2825
+ # The measure and dimension of an item.
2826
+ # Corresponds to the JSON property `unitPricingMeasure`
2827
+ # @return [Google::Apis::ContentV2::ProductUnitPricingMeasure]
2828
+ attr_accessor :unit_pricing_measure
2829
+
2830
+ # The read-only list of intended destinations which passed validation.
2831
+ # Corresponds to the JSON property `validatedDestinations`
2832
+ # @return [Array<String>]
2833
+ attr_accessor :validated_destinations
2834
+
2835
+ # Read-only warnings.
2836
+ # Corresponds to the JSON property `warnings`
2837
+ # @return [Array<Google::Apis::ContentV2::Error>]
2838
+ attr_accessor :warnings
2839
+
2840
+ def initialize(**args)
2841
+ update!(**args)
2842
+ end
2843
+
2844
+ # Update properties of this object
2845
+ def update!(**args)
2846
+ @additional_image_links = args[:additional_image_links] unless args[:additional_image_links].nil?
2847
+ @adult = args[:adult] unless args[:adult].nil?
2848
+ @adwords_grouping = args[:adwords_grouping] unless args[:adwords_grouping].nil?
2849
+ @adwords_labels = args[:adwords_labels] unless args[:adwords_labels].nil?
2850
+ @adwords_redirect = args[:adwords_redirect] unless args[:adwords_redirect].nil?
2851
+ @age_group = args[:age_group] unless args[:age_group].nil?
2852
+ @aspects = args[:aspects] unless args[:aspects].nil?
2853
+ @availability = args[:availability] unless args[:availability].nil?
2854
+ @availability_date = args[:availability_date] unless args[:availability_date].nil?
2855
+ @brand = args[:brand] unless args[:brand].nil?
2856
+ @channel = args[:channel] unless args[:channel].nil?
2857
+ @color = args[:color] unless args[:color].nil?
2858
+ @condition = args[:condition] unless args[:condition].nil?
2859
+ @content_language = args[:content_language] unless args[:content_language].nil?
2860
+ @custom_attributes = args[:custom_attributes] unless args[:custom_attributes].nil?
2861
+ @custom_groups = args[:custom_groups] unless args[:custom_groups].nil?
2862
+ @custom_label0 = args[:custom_label0] unless args[:custom_label0].nil?
2863
+ @custom_label1 = args[:custom_label1] unless args[:custom_label1].nil?
2864
+ @custom_label2 = args[:custom_label2] unless args[:custom_label2].nil?
2865
+ @custom_label3 = args[:custom_label3] unless args[:custom_label3].nil?
2866
+ @custom_label4 = args[:custom_label4] unless args[:custom_label4].nil?
2867
+ @description = args[:description] unless args[:description].nil?
2868
+ @destinations = args[:destinations] unless args[:destinations].nil?
2869
+ @display_ads_id = args[:display_ads_id] unless args[:display_ads_id].nil?
2870
+ @display_ads_link = args[:display_ads_link] unless args[:display_ads_link].nil?
2871
+ @display_ads_similar_ids = args[:display_ads_similar_ids] unless args[:display_ads_similar_ids].nil?
2872
+ @display_ads_title = args[:display_ads_title] unless args[:display_ads_title].nil?
2873
+ @display_ads_value = args[:display_ads_value] unless args[:display_ads_value].nil?
2874
+ @energy_efficiency_class = args[:energy_efficiency_class] unless args[:energy_efficiency_class].nil?
2875
+ @expiration_date = args[:expiration_date] unless args[:expiration_date].nil?
2876
+ @gender = args[:gender] unless args[:gender].nil?
2877
+ @google_product_category = args[:google_product_category] unless args[:google_product_category].nil?
2878
+ @gtin = args[:gtin] unless args[:gtin].nil?
2879
+ @id = args[:id] unless args[:id].nil?
2880
+ @identifier_exists = args[:identifier_exists] unless args[:identifier_exists].nil?
2881
+ @image_link = args[:image_link] unless args[:image_link].nil?
2882
+ @installment = args[:installment] unless args[:installment].nil?
2883
+ @is_bundle = args[:is_bundle] unless args[:is_bundle].nil?
2884
+ @item_group_id = args[:item_group_id] unless args[:item_group_id].nil?
2885
+ @kind = args[:kind] unless args[:kind].nil?
2886
+ @link = args[:link] unless args[:link].nil?
2887
+ @loyalty_points = args[:loyalty_points] unless args[:loyalty_points].nil?
2888
+ @material = args[:material] unless args[:material].nil?
2889
+ @mobile_link = args[:mobile_link] unless args[:mobile_link].nil?
2890
+ @mpn = args[:mpn] unless args[:mpn].nil?
2891
+ @multipack = args[:multipack] unless args[:multipack].nil?
2892
+ @offer_id = args[:offer_id] unless args[:offer_id].nil?
2893
+ @online_only = args[:online_only] unless args[:online_only].nil?
2894
+ @pattern = args[:pattern] unless args[:pattern].nil?
2895
+ @price = args[:price] unless args[:price].nil?
2896
+ @product_type = args[:product_type] unless args[:product_type].nil?
2897
+ @sale_price = args[:sale_price] unless args[:sale_price].nil?
2898
+ @sale_price_effective_date = args[:sale_price_effective_date] unless args[:sale_price_effective_date].nil?
2899
+ @shipping = args[:shipping] unless args[:shipping].nil?
2900
+ @shipping_height = args[:shipping_height] unless args[:shipping_height].nil?
2901
+ @shipping_label = args[:shipping_label] unless args[:shipping_label].nil?
2902
+ @shipping_length = args[:shipping_length] unless args[:shipping_length].nil?
2903
+ @shipping_weight = args[:shipping_weight] unless args[:shipping_weight].nil?
2904
+ @shipping_width = args[:shipping_width] unless args[:shipping_width].nil?
2905
+ @size_system = args[:size_system] unless args[:size_system].nil?
2906
+ @size_type = args[:size_type] unless args[:size_type].nil?
2907
+ @sizes = args[:sizes] unless args[:sizes].nil?
2908
+ @target_country = args[:target_country] unless args[:target_country].nil?
2909
+ @taxes = args[:taxes] unless args[:taxes].nil?
2910
+ @title = args[:title] unless args[:title].nil?
2911
+ @unit_pricing_base_measure = args[:unit_pricing_base_measure] unless args[:unit_pricing_base_measure].nil?
2912
+ @unit_pricing_measure = args[:unit_pricing_measure] unless args[:unit_pricing_measure].nil?
2913
+ @validated_destinations = args[:validated_destinations] unless args[:validated_destinations].nil?
2914
+ @warnings = args[:warnings] unless args[:warnings].nil?
2915
+ end
2916
+ end
2917
+
2918
+ #
2919
+ class ProductAspect
2920
+ include Google::Apis::Core::Hashable
2921
+
2922
+ # The name of the aspect.
2923
+ # Corresponds to the JSON property `aspectName`
2924
+ # @return [String]
2925
+ attr_accessor :aspect_name
2926
+
2927
+ # The name of the destination. Leave out to apply to all destinations.
2928
+ # Corresponds to the JSON property `destinationName`
2929
+ # @return [String]
2930
+ attr_accessor :destination_name
2931
+
2932
+ # Whether the aspect is required, excluded or should be validated.
2933
+ # Corresponds to the JSON property `intention`
2934
+ # @return [String]
2935
+ attr_accessor :intention
2936
+
2937
+ def initialize(**args)
2938
+ update!(**args)
2939
+ end
2940
+
2941
+ # Update properties of this object
2942
+ def update!(**args)
2943
+ @aspect_name = args[:aspect_name] unless args[:aspect_name].nil?
2944
+ @destination_name = args[:destination_name] unless args[:destination_name].nil?
2945
+ @intention = args[:intention] unless args[:intention].nil?
2946
+ end
2947
+ end
2948
+
2949
+ #
2950
+ class ProductCustomAttribute
2951
+ include Google::Apis::Core::Hashable
2952
+
2953
+ # The name of the attribute. Underscores will be replaced by spaces upon
2954
+ # insertion.
2955
+ # Corresponds to the JSON property `name`
2956
+ # @return [String]
2957
+ attr_accessor :name
2958
+
2959
+ # The type of the attribute.
2960
+ # Corresponds to the JSON property `type`
2961
+ # @return [String]
2962
+ attr_accessor :type
2963
+
2964
+ # Free-form unit of the attribute. Unit can only be used for values of type INT
2965
+ # or FLOAT.
2966
+ # Corresponds to the JSON property `unit`
2967
+ # @return [String]
2968
+ attr_accessor :unit
2969
+
2970
+ # The value of the attribute.
2971
+ # Corresponds to the JSON property `value`
2972
+ # @return [String]
2973
+ attr_accessor :value
2974
+
2975
+ def initialize(**args)
2976
+ update!(**args)
2977
+ end
2978
+
2979
+ # Update properties of this object
2980
+ def update!(**args)
2981
+ @name = args[:name] unless args[:name].nil?
2982
+ @type = args[:type] unless args[:type].nil?
2983
+ @unit = args[:unit] unless args[:unit].nil?
2984
+ @value = args[:value] unless args[:value].nil?
2985
+ end
2986
+ end
2987
+
2988
+ #
2989
+ class ProductCustomGroup
2990
+ include Google::Apis::Core::Hashable
2991
+
2992
+ # The sub-attributes.
2993
+ # Corresponds to the JSON property `attributes`
2994
+ # @return [Array<Google::Apis::ContentV2::ProductCustomAttribute>]
2995
+ attr_accessor :attributes
2996
+
2997
+ # The name of the group. Underscores will be replaced by spaces upon insertion.
2998
+ # Corresponds to the JSON property `name`
2999
+ # @return [String]
3000
+ attr_accessor :name
3001
+
3002
+ def initialize(**args)
3003
+ update!(**args)
3004
+ end
3005
+
3006
+ # Update properties of this object
3007
+ def update!(**args)
3008
+ @attributes = args[:attributes] unless args[:attributes].nil?
3009
+ @name = args[:name] unless args[:name].nil?
3010
+ end
3011
+ end
3012
+
3013
+ #
3014
+ class ProductDestination
3015
+ include Google::Apis::Core::Hashable
3016
+
3017
+ # The name of the destination.
3018
+ # Corresponds to the JSON property `destinationName`
3019
+ # @return [String]
3020
+ attr_accessor :destination_name
3021
+
3022
+ # Whether the destination is required, excluded or should be validated.
3023
+ # Corresponds to the JSON property `intention`
3024
+ # @return [String]
3025
+ attr_accessor :intention
3026
+
3027
+ def initialize(**args)
3028
+ update!(**args)
3029
+ end
3030
+
3031
+ # Update properties of this object
3032
+ def update!(**args)
3033
+ @destination_name = args[:destination_name] unless args[:destination_name].nil?
3034
+ @intention = args[:intention] unless args[:intention].nil?
3035
+ end
3036
+ end
3037
+
3038
+ #
3039
+ class ProductInstallment
3040
+ include Google::Apis::Core::Hashable
3041
+
3042
+ # The amount the buyer has to pay per month.
3043
+ # Corresponds to the JSON property `amount`
3044
+ # @return [Google::Apis::ContentV2::Price]
3045
+ attr_accessor :amount
3046
+
3047
+ # The number of installments the buyer has to pay.
3048
+ # Corresponds to the JSON property `months`
3049
+ # @return [String]
3050
+ attr_accessor :months
3051
+
3052
+ def initialize(**args)
3053
+ update!(**args)
3054
+ end
3055
+
3056
+ # Update properties of this object
3057
+ def update!(**args)
3058
+ @amount = args[:amount] unless args[:amount].nil?
3059
+ @months = args[:months] unless args[:months].nil?
3060
+ end
3061
+ end
3062
+
3063
+ #
3064
+ class ProductShipping
3065
+ include Google::Apis::Core::Hashable
3066
+
3067
+ # The two-letter ISO 3166 country code for the country to which an item will
3068
+ # ship.
3069
+ # Corresponds to the JSON property `country`
3070
+ # @return [String]
3071
+ attr_accessor :country
3072
+
3073
+ # The location where the shipping is applicable, represented by a location group
3074
+ # name.
3075
+ # Corresponds to the JSON property `locationGroupName`
3076
+ # @return [String]
3077
+ attr_accessor :location_group_name
3078
+
3079
+ # The numeric id of a location that the shipping rate applies to as defined in
3080
+ # the AdWords API.
3081
+ # Corresponds to the JSON property `locationId`
3082
+ # @return [String]
3083
+ attr_accessor :location_id
3084
+
3085
+ # The postal code range that the shipping rate applies to, represented by a
3086
+ # postal code, a postal code prefix followed by a * wildcard, a range between
3087
+ # two postal codes or two postal code prefixes of equal length.
3088
+ # Corresponds to the JSON property `postalCode`
3089
+ # @return [String]
3090
+ attr_accessor :postal_code
3091
+
3092
+ # Fixed shipping price, represented as a number.
3093
+ # Corresponds to the JSON property `price`
3094
+ # @return [Google::Apis::ContentV2::Price]
3095
+ attr_accessor :price
3096
+
3097
+ # The geographic region to which a shipping rate applies (e.g. zip code).
3098
+ # Corresponds to the JSON property `region`
3099
+ # @return [String]
3100
+ attr_accessor :region
3101
+
3102
+ # A free-form description of the service class or delivery speed.
3103
+ # Corresponds to the JSON property `service`
3104
+ # @return [String]
3105
+ attr_accessor :service
3106
+
3107
+ def initialize(**args)
3108
+ update!(**args)
3109
+ end
3110
+
3111
+ # Update properties of this object
3112
+ def update!(**args)
3113
+ @country = args[:country] unless args[:country].nil?
3114
+ @location_group_name = args[:location_group_name] unless args[:location_group_name].nil?
3115
+ @location_id = args[:location_id] unless args[:location_id].nil?
3116
+ @postal_code = args[:postal_code] unless args[:postal_code].nil?
3117
+ @price = args[:price] unless args[:price].nil?
3118
+ @region = args[:region] unless args[:region].nil?
3119
+ @service = args[:service] unless args[:service].nil?
3120
+ end
3121
+ end
3122
+
3123
+ #
3124
+ class ProductShippingDimension
3125
+ include Google::Apis::Core::Hashable
3126
+
3127
+ # The unit of value.
3128
+ # Acceptable values are:
3129
+ # - "cm"
3130
+ # - "in"
3131
+ # Corresponds to the JSON property `unit`
3132
+ # @return [String]
3133
+ attr_accessor :unit
3134
+
3135
+ # The dimension of the product used to calculate the shipping cost of the item.
3136
+ # Corresponds to the JSON property `value`
3137
+ # @return [Float]
3138
+ attr_accessor :value
3139
+
3140
+ def initialize(**args)
3141
+ update!(**args)
3142
+ end
3143
+
3144
+ # Update properties of this object
3145
+ def update!(**args)
3146
+ @unit = args[:unit] unless args[:unit].nil?
3147
+ @value = args[:value] unless args[:value].nil?
3148
+ end
3149
+ end
3150
+
3151
+ #
3152
+ class ProductShippingWeight
3153
+ include Google::Apis::Core::Hashable
3154
+
3155
+ # The unit of value.
3156
+ # Corresponds to the JSON property `unit`
3157
+ # @return [String]
3158
+ attr_accessor :unit
3159
+
3160
+ # The weight of the product used to calculate the shipping cost of the item.
3161
+ # Corresponds to the JSON property `value`
3162
+ # @return [Float]
3163
+ attr_accessor :value
3164
+
3165
+ def initialize(**args)
3166
+ update!(**args)
3167
+ end
3168
+
3169
+ # Update properties of this object
3170
+ def update!(**args)
3171
+ @unit = args[:unit] unless args[:unit].nil?
3172
+ @value = args[:value] unless args[:value].nil?
3173
+ end
3174
+ end
3175
+
3176
+ # The status of a product, i.e., information about a product computed
3177
+ # asynchronously by the data quality analysis.
3178
+ class ProductStatus
3179
+ include Google::Apis::Core::Hashable
3180
+
3181
+ # Date on which the item has been created, in ISO 8601 format.
3182
+ # Corresponds to the JSON property `creationDate`
3183
+ # @return [String]
3184
+ attr_accessor :creation_date
3185
+
3186
+ # A list of data quality issues associated with the product.
3187
+ # Corresponds to the JSON property `dataQualityIssues`
3188
+ # @return [Array<Google::Apis::ContentV2::ProductStatusDataQualityIssue>]
3189
+ attr_accessor :data_quality_issues
3190
+
3191
+ # The intended destinations for the product.
3192
+ # Corresponds to the JSON property `destinationStatuses`
3193
+ # @return [Array<Google::Apis::ContentV2::ProductStatusDestinationStatus>]
3194
+ attr_accessor :destination_statuses
3195
+
3196
+ # Date on which the item expires in Google Shopping, in ISO 8601 format.
3197
+ # Corresponds to the JSON property `googleExpirationDate`
3198
+ # @return [String]
3199
+ attr_accessor :google_expiration_date
3200
+
3201
+ # Identifies what kind of resource this is. Value: the fixed string "content#
3202
+ # productStatus".
3203
+ # Corresponds to the JSON property `kind`
3204
+ # @return [String]
3205
+ attr_accessor :kind
3206
+
3207
+ # Date on which the item has been last updated, in ISO 8601 format.
3208
+ # Corresponds to the JSON property `lastUpdateDate`
3209
+ # @return [String]
3210
+ attr_accessor :last_update_date
3211
+
3212
+ # The link to the product.
3213
+ # Corresponds to the JSON property `link`
3214
+ # @return [String]
3215
+ attr_accessor :link
3216
+
3217
+ # The id of the product for which status is reported.
3218
+ # Corresponds to the JSON property `productId`
3219
+ # @return [String]
3220
+ attr_accessor :product_id
3221
+
3222
+ # The title of the product.
3223
+ # Corresponds to the JSON property `title`
3224
+ # @return [String]
3225
+ attr_accessor :title
3226
+
3227
+ def initialize(**args)
3228
+ update!(**args)
3229
+ end
3230
+
3231
+ # Update properties of this object
3232
+ def update!(**args)
3233
+ @creation_date = args[:creation_date] unless args[:creation_date].nil?
3234
+ @data_quality_issues = args[:data_quality_issues] unless args[:data_quality_issues].nil?
3235
+ @destination_statuses = args[:destination_statuses] unless args[:destination_statuses].nil?
3236
+ @google_expiration_date = args[:google_expiration_date] unless args[:google_expiration_date].nil?
3237
+ @kind = args[:kind] unless args[:kind].nil?
3238
+ @last_update_date = args[:last_update_date] unless args[:last_update_date].nil?
3239
+ @link = args[:link] unless args[:link].nil?
3240
+ @product_id = args[:product_id] unless args[:product_id].nil?
3241
+ @title = args[:title] unless args[:title].nil?
3242
+ end
3243
+ end
3244
+
3245
+ #
3246
+ class ProductStatusDataQualityIssue
3247
+ include Google::Apis::Core::Hashable
3248
+
3249
+ # A more detailed error string.
3250
+ # Corresponds to the JSON property `detail`
3251
+ # @return [String]
3252
+ attr_accessor :detail
3253
+
3254
+ # The fetch status for landing_page_errors.
3255
+ # Corresponds to the JSON property `fetchStatus`
3256
+ # @return [String]
3257
+ attr_accessor :fetch_status
3258
+
3259
+ # The id of the data quality issue.
3260
+ # Corresponds to the JSON property `id`
3261
+ # @return [String]
3262
+ attr_accessor :id
3263
+
3264
+ # The attribute name that is relevant for the issue.
3265
+ # Corresponds to the JSON property `location`
3266
+ # @return [String]
3267
+ attr_accessor :location
3268
+
3269
+ # The severity of the data quality issue.
3270
+ # Corresponds to the JSON property `severity`
3271
+ # @return [String]
3272
+ attr_accessor :severity
3273
+
3274
+ # The time stamp of the data quality issue.
3275
+ # Corresponds to the JSON property `timestamp`
3276
+ # @return [String]
3277
+ attr_accessor :timestamp
3278
+
3279
+ # The value of that attribute that was found on the landing page
3280
+ # Corresponds to the JSON property `valueOnLandingPage`
3281
+ # @return [String]
3282
+ attr_accessor :value_on_landing_page
3283
+
3284
+ # The value the attribute had at time of evaluation.
3285
+ # Corresponds to the JSON property `valueProvided`
3286
+ # @return [String]
3287
+ attr_accessor :value_provided
3288
+
3289
+ def initialize(**args)
3290
+ update!(**args)
3291
+ end
3292
+
3293
+ # Update properties of this object
3294
+ def update!(**args)
3295
+ @detail = args[:detail] unless args[:detail].nil?
3296
+ @fetch_status = args[:fetch_status] unless args[:fetch_status].nil?
3297
+ @id = args[:id] unless args[:id].nil?
3298
+ @location = args[:location] unless args[:location].nil?
3299
+ @severity = args[:severity] unless args[:severity].nil?
3300
+ @timestamp = args[:timestamp] unless args[:timestamp].nil?
3301
+ @value_on_landing_page = args[:value_on_landing_page] unless args[:value_on_landing_page].nil?
3302
+ @value_provided = args[:value_provided] unless args[:value_provided].nil?
3303
+ end
3304
+ end
3305
+
3306
+ #
3307
+ class ProductStatusDestinationStatus
3308
+ include Google::Apis::Core::Hashable
3309
+
3310
+ # The destination's approval status.
3311
+ # Corresponds to the JSON property `approvalStatus`
3312
+ # @return [String]
3313
+ attr_accessor :approval_status
3314
+
3315
+ # The name of the destination
3316
+ # Corresponds to the JSON property `destination`
3317
+ # @return [String]
3318
+ attr_accessor :destination
3319
+
3320
+ # Whether the destination is required, excluded, selected by default or should
3321
+ # be validated.
3322
+ # Corresponds to the JSON property `intention`
3323
+ # @return [String]
3324
+ attr_accessor :intention
3325
+
3326
+ def initialize(**args)
3327
+ update!(**args)
3328
+ end
3329
+
3330
+ # Update properties of this object
3331
+ def update!(**args)
3332
+ @approval_status = args[:approval_status] unless args[:approval_status].nil?
3333
+ @destination = args[:destination] unless args[:destination].nil?
3334
+ @intention = args[:intention] unless args[:intention].nil?
3335
+ end
3336
+ end
3337
+
3338
+ #
3339
+ class ProductTax
3340
+ include Google::Apis::Core::Hashable
3341
+
3342
+ # The country within which the item is taxed, specified with a two-letter ISO
3343
+ # 3166 country code.
3344
+ # Corresponds to the JSON property `country`
3345
+ # @return [String]
3346
+ attr_accessor :country
3347
+
3348
+ # The numeric id of a location that the tax rate applies to as defined in the
3349
+ # AdWords API.
3350
+ # Corresponds to the JSON property `locationId`
3351
+ # @return [String]
3352
+ attr_accessor :location_id
3353
+
3354
+ # The postal code range that the tax rate applies to, represented by a ZIP code,
3355
+ # a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP
3356
+ # code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*.
3357
+ # Corresponds to the JSON property `postalCode`
3358
+ # @return [String]
3359
+ attr_accessor :postal_code
3360
+
3361
+ # The percentage of tax rate that applies to the item price.
3362
+ # Corresponds to the JSON property `rate`
3363
+ # @return [Float]
3364
+ attr_accessor :rate
3365
+
3366
+ # The geographic region to which the tax rate applies.
3367
+ # Corresponds to the JSON property `region`
3368
+ # @return [String]
3369
+ attr_accessor :region
3370
+
3371
+ # Set to true if tax is charged on shipping.
3372
+ # Corresponds to the JSON property `taxShip`
3373
+ # @return [Boolean]
3374
+ attr_accessor :tax_ship
3375
+ alias_method :tax_ship?, :tax_ship
3376
+
3377
+ def initialize(**args)
3378
+ update!(**args)
3379
+ end
3380
+
3381
+ # Update properties of this object
3382
+ def update!(**args)
3383
+ @country = args[:country] unless args[:country].nil?
3384
+ @location_id = args[:location_id] unless args[:location_id].nil?
3385
+ @postal_code = args[:postal_code] unless args[:postal_code].nil?
3386
+ @rate = args[:rate] unless args[:rate].nil?
3387
+ @region = args[:region] unless args[:region].nil?
3388
+ @tax_ship = args[:tax_ship] unless args[:tax_ship].nil?
3389
+ end
3390
+ end
3391
+
3392
+ #
3393
+ class ProductUnitPricingBaseMeasure
3394
+ include Google::Apis::Core::Hashable
3395
+
3396
+ # The unit of the denominator.
3397
+ # Corresponds to the JSON property `unit`
3398
+ # @return [String]
3399
+ attr_accessor :unit
3400
+
3401
+ # The denominator of the unit price.
3402
+ # Corresponds to the JSON property `value`
3403
+ # @return [String]
3404
+ attr_accessor :value
3405
+
3406
+ def initialize(**args)
3407
+ update!(**args)
3408
+ end
3409
+
3410
+ # Update properties of this object
3411
+ def update!(**args)
3412
+ @unit = args[:unit] unless args[:unit].nil?
3413
+ @value = args[:value] unless args[:value].nil?
3414
+ end
3415
+ end
3416
+
3417
+ #
3418
+ class ProductUnitPricingMeasure
3419
+ include Google::Apis::Core::Hashable
3420
+
3421
+ # The unit of the measure.
3422
+ # Corresponds to the JSON property `unit`
3423
+ # @return [String]
3424
+ attr_accessor :unit
3425
+
3426
+ # The measure of an item.
3427
+ # Corresponds to the JSON property `value`
3428
+ # @return [Float]
3429
+ attr_accessor :value
3430
+
3431
+ def initialize(**args)
3432
+ update!(**args)
3433
+ end
3434
+
3435
+ # Update properties of this object
3436
+ def update!(**args)
3437
+ @unit = args[:unit] unless args[:unit].nil?
3438
+ @value = args[:value] unless args[:value].nil?
3439
+ end
3440
+ end
3441
+
3442
+ #
3443
+ class BatchProductsRequest
3444
+ include Google::Apis::Core::Hashable
3445
+
3446
+ # The request entries to be processed in the batch.
3447
+ # Corresponds to the JSON property `entries`
3448
+ # @return [Array<Google::Apis::ContentV2::ProductsBatchRequestEntry>]
3449
+ attr_accessor :entries
3450
+
3451
+ def initialize(**args)
3452
+ update!(**args)
3453
+ end
3454
+
3455
+ # Update properties of this object
3456
+ def update!(**args)
3457
+ @entries = args[:entries] unless args[:entries].nil?
3458
+ end
3459
+ end
3460
+
3461
+ # A batch entry encoding a single non-batch products request.
3462
+ class ProductsBatchRequestEntry
3463
+ include Google::Apis::Core::Hashable
3464
+
3465
+ # An entry ID, unique within the batch request.
3466
+ # Corresponds to the JSON property `batchId`
3467
+ # @return [Fixnum]
3468
+ attr_accessor :batch_id
3469
+
3470
+ # The ID of the managing account.
3471
+ # Corresponds to the JSON property `merchantId`
3472
+ # @return [String]
3473
+ attr_accessor :merchant_id
3474
+
3475
+ #
3476
+ # Corresponds to the JSON property `method`
3477
+ # @return [String]
3478
+ attr_accessor :request_method
3479
+
3480
+ # Product data.
3481
+ # Corresponds to the JSON property `product`
3482
+ # @return [Google::Apis::ContentV2::Product]
3483
+ attr_accessor :product
3484
+
3485
+ # The ID of the product to get or delete. Only defined if the method is get or
3486
+ # delete.
3487
+ # Corresponds to the JSON property `productId`
3488
+ # @return [String]
3489
+ attr_accessor :product_id
3490
+
3491
+ def initialize(**args)
3492
+ update!(**args)
3493
+ end
3494
+
3495
+ # Update properties of this object
3496
+ def update!(**args)
3497
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
3498
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
3499
+ @request_method = args[:request_method] unless args[:request_method].nil?
3500
+ @product = args[:product] unless args[:product].nil?
3501
+ @product_id = args[:product_id] unless args[:product_id].nil?
3502
+ end
3503
+ end
3504
+
3505
+ #
3506
+ class BatchProductsResponse
3507
+ include Google::Apis::Core::Hashable
3508
+
3509
+ # The result of the execution of the batch requests.
3510
+ # Corresponds to the JSON property `entries`
3511
+ # @return [Array<Google::Apis::ContentV2::ProductsBatchResponseEntry>]
3512
+ attr_accessor :entries
3513
+
3514
+ # Identifies what kind of resource this is. Value: the fixed string "content#
3515
+ # productsCustomBatchResponse".
3516
+ # Corresponds to the JSON property `kind`
3517
+ # @return [String]
3518
+ attr_accessor :kind
3519
+
3520
+ def initialize(**args)
3521
+ update!(**args)
3522
+ end
3523
+
3524
+ # Update properties of this object
3525
+ def update!(**args)
3526
+ @entries = args[:entries] unless args[:entries].nil?
3527
+ @kind = args[:kind] unless args[:kind].nil?
3528
+ end
3529
+ end
3530
+
3531
+ # A batch entry encoding a single non-batch products response.
3532
+ class ProductsBatchResponseEntry
3533
+ include Google::Apis::Core::Hashable
3534
+
3535
+ # The ID of the request entry this entry responds to.
3536
+ # Corresponds to the JSON property `batchId`
3537
+ # @return [Fixnum]
3538
+ attr_accessor :batch_id
3539
+
3540
+ # A list of errors returned by a failed batch entry.
3541
+ # Corresponds to the JSON property `errors`
3542
+ # @return [Google::Apis::ContentV2::Errors]
3543
+ attr_accessor :errors
3544
+
3545
+ # Identifies what kind of resource this is. Value: the fixed string "content#
3546
+ # productsCustomBatchResponseEntry".
3547
+ # Corresponds to the JSON property `kind`
3548
+ # @return [String]
3549
+ attr_accessor :kind
3550
+
3551
+ # Product data.
3552
+ # Corresponds to the JSON property `product`
3553
+ # @return [Google::Apis::ContentV2::Product]
3554
+ attr_accessor :product
3555
+
3556
+ def initialize(**args)
3557
+ update!(**args)
3558
+ end
3559
+
3560
+ # Update properties of this object
3561
+ def update!(**args)
3562
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
3563
+ @errors = args[:errors] unless args[:errors].nil?
3564
+ @kind = args[:kind] unless args[:kind].nil?
3565
+ @product = args[:product] unless args[:product].nil?
3566
+ end
3567
+ end
3568
+
3569
+ #
3570
+ class ListProductsResponse
3571
+ include Google::Apis::Core::Hashable
3572
+
3573
+ # Identifies what kind of resource this is. Value: the fixed string "content#
3574
+ # productsListResponse".
3575
+ # Corresponds to the JSON property `kind`
3576
+ # @return [String]
3577
+ attr_accessor :kind
3578
+
3579
+ # The token for the retrieval of the next page of products.
3580
+ # Corresponds to the JSON property `nextPageToken`
3581
+ # @return [String]
3582
+ attr_accessor :next_page_token
3583
+
3584
+ #
3585
+ # Corresponds to the JSON property `resources`
3586
+ # @return [Array<Google::Apis::ContentV2::Product>]
3587
+ attr_accessor :resources
3588
+
3589
+ def initialize(**args)
3590
+ update!(**args)
3591
+ end
3592
+
3593
+ # Update properties of this object
3594
+ def update!(**args)
3595
+ @kind = args[:kind] unless args[:kind].nil?
3596
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
3597
+ @resources = args[:resources] unless args[:resources].nil?
3598
+ end
3599
+ end
3600
+
3601
+ #
3602
+ class BatchProductStatusesRequest
3603
+ include Google::Apis::Core::Hashable
3604
+
3605
+ # The request entries to be processed in the batch.
3606
+ # Corresponds to the JSON property `entries`
3607
+ # @return [Array<Google::Apis::ContentV2::ProductStatusesBatchRequestEntry>]
3608
+ attr_accessor :entries
3609
+
3610
+ def initialize(**args)
3611
+ update!(**args)
3612
+ end
3613
+
3614
+ # Update properties of this object
3615
+ def update!(**args)
3616
+ @entries = args[:entries] unless args[:entries].nil?
3617
+ end
3618
+ end
3619
+
3620
+ # A batch entry encoding a single non-batch productstatuses request.
3621
+ class ProductStatusesBatchRequestEntry
3622
+ include Google::Apis::Core::Hashable
3623
+
3624
+ # An entry ID, unique within the batch request.
3625
+ # Corresponds to the JSON property `batchId`
3626
+ # @return [Fixnum]
3627
+ attr_accessor :batch_id
3628
+
3629
+ # The ID of the managing account.
3630
+ # Corresponds to the JSON property `merchantId`
3631
+ # @return [String]
3632
+ attr_accessor :merchant_id
3633
+
3634
+ #
3635
+ # Corresponds to the JSON property `method`
3636
+ # @return [String]
3637
+ attr_accessor :request_method
3638
+
3639
+ # The ID of the product whose status to get.
3640
+ # Corresponds to the JSON property `productId`
3641
+ # @return [String]
3642
+ attr_accessor :product_id
3643
+
3644
+ def initialize(**args)
3645
+ update!(**args)
3646
+ end
3647
+
3648
+ # Update properties of this object
3649
+ def update!(**args)
3650
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
3651
+ @merchant_id = args[:merchant_id] unless args[:merchant_id].nil?
3652
+ @request_method = args[:request_method] unless args[:request_method].nil?
3653
+ @product_id = args[:product_id] unless args[:product_id].nil?
3654
+ end
3655
+ end
3656
+
3657
+ #
3658
+ class BatchProductStatusesResponse
3659
+ include Google::Apis::Core::Hashable
3660
+
3661
+ # The result of the execution of the batch requests.
3662
+ # Corresponds to the JSON property `entries`
3663
+ # @return [Array<Google::Apis::ContentV2::ProductStatusesBatchResponseEntry>]
3664
+ attr_accessor :entries
3665
+
3666
+ # Identifies what kind of resource this is. Value: the fixed string "content#
3667
+ # productstatusesCustomBatchResponse".
3668
+ # Corresponds to the JSON property `kind`
3669
+ # @return [String]
3670
+ attr_accessor :kind
3671
+
3672
+ def initialize(**args)
3673
+ update!(**args)
3674
+ end
3675
+
3676
+ # Update properties of this object
3677
+ def update!(**args)
3678
+ @entries = args[:entries] unless args[:entries].nil?
3679
+ @kind = args[:kind] unless args[:kind].nil?
3680
+ end
3681
+ end
3682
+
3683
+ # A batch entry encoding a single non-batch productstatuses response.
3684
+ class ProductStatusesBatchResponseEntry
3685
+ include Google::Apis::Core::Hashable
3686
+
3687
+ # The ID of the request entry this entry responds to.
3688
+ # Corresponds to the JSON property `batchId`
3689
+ # @return [Fixnum]
3690
+ attr_accessor :batch_id
3691
+
3692
+ # A list of errors returned by a failed batch entry.
3693
+ # Corresponds to the JSON property `errors`
3694
+ # @return [Google::Apis::ContentV2::Errors]
3695
+ attr_accessor :errors
3696
+
3697
+ # Identifies what kind of resource this is. Value: the fixed string "content#
3698
+ # productstatusesCustomBatchResponseEntry".
3699
+ # Corresponds to the JSON property `kind`
3700
+ # @return [String]
3701
+ attr_accessor :kind
3702
+
3703
+ # The status of a product, i.e., information about a product computed
3704
+ # asynchronously by the data quality analysis.
3705
+ # Corresponds to the JSON property `productStatus`
3706
+ # @return [Google::Apis::ContentV2::ProductStatus]
3707
+ attr_accessor :product_status
3708
+
3709
+ def initialize(**args)
3710
+ update!(**args)
3711
+ end
3712
+
3713
+ # Update properties of this object
3714
+ def update!(**args)
3715
+ @batch_id = args[:batch_id] unless args[:batch_id].nil?
3716
+ @errors = args[:errors] unless args[:errors].nil?
3717
+ @kind = args[:kind] unless args[:kind].nil?
3718
+ @product_status = args[:product_status] unless args[:product_status].nil?
3719
+ end
3720
+ end
3721
+
3722
+ #
3723
+ class ListProductStatusesResponse
3724
+ include Google::Apis::Core::Hashable
3725
+
3726
+ # Identifies what kind of resource this is. Value: the fixed string "content#
3727
+ # productstatusesListResponse".
3728
+ # Corresponds to the JSON property `kind`
3729
+ # @return [String]
3730
+ attr_accessor :kind
3731
+
3732
+ # The token for the retrieval of the next page of products statuses.
3733
+ # Corresponds to the JSON property `nextPageToken`
3734
+ # @return [String]
3735
+ attr_accessor :next_page_token
3736
+
3737
+ #
3738
+ # Corresponds to the JSON property `resources`
3739
+ # @return [Array<Google::Apis::ContentV2::ProductStatus>]
3740
+ attr_accessor :resources
3741
+
3742
+ def initialize(**args)
3743
+ update!(**args)
3744
+ end
3745
+
3746
+ # Update properties of this object
3747
+ def update!(**args)
3748
+ @kind = args[:kind] unless args[:kind].nil?
3749
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
3750
+ @resources = args[:resources] unless args[:resources].nil?
3751
+ end
3752
+ end
3753
+
3754
+ #
3755
+ class Weight
3756
+ include Google::Apis::Core::Hashable
3757
+
3758
+ # The weight unit.
3759
+ # Corresponds to the JSON property `unit`
3760
+ # @return [String]
3761
+ attr_accessor :unit
3762
+
3763
+ # The weight represented as a number.
3764
+ # Corresponds to the JSON property `value`
3765
+ # @return [String]
3766
+ attr_accessor :value
3767
+
3768
+ def initialize(**args)
3769
+ update!(**args)
3770
+ end
3771
+
3772
+ # Update properties of this object
3773
+ def update!(**args)
3774
+ @unit = args[:unit] unless args[:unit].nil?
3775
+ @value = args[:value] unless args[:value].nil?
3776
+ end
3777
+ end
3778
+ end
3779
+ end
3780
+ end