google-api-client 0.37.3 → 0.38.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (440) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +146 -0
  3. data/api_list_config.yaml +2 -0
  4. data/api_names.yaml +2 -0
  5. data/bin/generate-api +9 -1
  6. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  7. data/generated/google/apis/accesscontextmanager_v1/classes.rb +0 -36
  8. data/generated/google/apis/accesscontextmanager_v1/representations.rb +0 -6
  9. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  10. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +0 -36
  11. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +0 -6
  12. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  13. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +10 -3
  14. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  15. data/generated/google/apis/admin_directory_v1.rb +1 -1
  16. data/generated/google/apis/admin_directory_v1/classes.rb +0 -147
  17. data/generated/google/apis/admin_directory_v1/representations.rb +0 -54
  18. data/generated/google/apis/admin_directory_v1/service.rb +0 -60
  19. data/generated/google/apis/adsense_v1_4.rb +1 -1
  20. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  21. data/generated/google/apis/adsensehost_v4_1/service.rb +5 -1
  22. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  23. data/generated/google/apis/alertcenter_v1beta1/classes.rb +1 -1
  24. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  25. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +2 -2
  26. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  27. data/generated/google/apis/androidenterprise_v1/classes.rb +2 -2
  28. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  29. data/generated/google/apis/androidmanagement_v1/service.rb +2 -2
  30. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  31. data/generated/google/apis/androidpublisher_v2/classes.rb +2 -2
  32. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  33. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -2
  34. data/generated/google/apis/appengine_v1.rb +1 -1
  35. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  36. data/generated/google/apis/appengine_v1beta.rb +1 -1
  37. data/generated/google/apis/bigquery_v2.rb +1 -1
  38. data/generated/google/apis/bigquery_v2/classes.rb +224 -5
  39. data/generated/google/apis/bigquery_v2/representations.rb +65 -0
  40. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  41. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  42. data/generated/google/apis/bigqueryreservation_v1/classes.rb +413 -0
  43. data/generated/google/apis/bigqueryreservation_v1/representations.rb +194 -0
  44. data/generated/google/apis/bigqueryreservation_v1/service.rb +745 -0
  45. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  46. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +69 -20
  47. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +29 -13
  48. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +4 -39
  49. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  50. data/generated/google/apis/bigtableadmin_v1/classes.rb +20 -17
  51. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  52. data/generated/google/apis/bigtableadmin_v2/classes.rb +26 -21
  53. data/generated/google/apis/bigtableadmin_v2/service.rb +93 -53
  54. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  55. data/generated/google/apis/billingbudgets_v1beta1/service.rb +3 -3
  56. data/generated/google/apis/blogger_v2.rb +5 -4
  57. data/generated/google/apis/blogger_v2/classes.rb +297 -45
  58. data/generated/google/apis/blogger_v2/representations.rb +105 -26
  59. data/generated/google/apis/blogger_v2/service.rb +79 -134
  60. data/generated/google/apis/blogger_v3.rb +4 -3
  61. data/generated/google/apis/blogger_v3/classes.rb +60 -53
  62. data/generated/google/apis/blogger_v3/representations.rb +10 -18
  63. data/generated/google/apis/blogger_v3/service.rb +183 -463
  64. data/generated/google/apis/calendar_v3.rb +1 -1
  65. data/generated/google/apis/calendar_v3/classes.rb +1 -14
  66. data/generated/google/apis/chat_v1.rb +1 -1
  67. data/generated/google/apis/chat_v1/classes.rb +1 -1
  68. data/generated/google/apis/cloudasset_v1.rb +1 -1
  69. data/generated/google/apis/cloudasset_v1/classes.rb +81 -90
  70. data/generated/google/apis/cloudasset_v1/representations.rb +1 -6
  71. data/generated/google/apis/cloudasset_v1/service.rb +2 -2
  72. data/generated/google/apis/cloudasset_v1p1beta1.rb +34 -0
  73. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +669 -0
  74. data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +199 -0
  75. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +187 -0
  76. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  77. data/generated/google/apis/cloudbuild_v1/classes.rb +12 -1
  78. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  79. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  80. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +9 -0
  81. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +1 -0
  82. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  83. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +9 -0
  84. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +1 -0
  85. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  86. data/generated/google/apis/clouddebugger_v2/classes.rb +8 -0
  87. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  88. data/generated/google/apis/cloudidentity_v1/classes.rb +0 -561
  89. data/generated/google/apis/cloudidentity_v1/representations.rb +0 -226
  90. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  91. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +652 -2
  92. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +272 -0
  93. data/generated/google/apis/cloudidentity_v1beta1/service.rb +2 -2
  94. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  95. data/generated/google/apis/cloudresourcemanager_v1/service.rb +3 -0
  96. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  97. data/generated/google/apis/cloudsearch_v1/classes.rb +52 -50
  98. data/generated/google/apis/cloudshell_v1.rb +1 -1
  99. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  100. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  101. data/generated/google/apis/cloudtasks_v2beta2/service.rb +6 -1
  102. data/generated/google/apis/cloudtrace_v1.rb +3 -3
  103. data/generated/google/apis/cloudtrace_v1/service.rb +2 -2
  104. data/generated/google/apis/cloudtrace_v2.rb +3 -3
  105. data/generated/google/apis/cloudtrace_v2/service.rb +2 -2
  106. data/generated/google/apis/cloudtrace_v2beta1.rb +3 -3
  107. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +1 -2
  108. data/generated/google/apis/cloudtrace_v2beta1/service.rb +2 -2
  109. data/generated/google/apis/composer_v1.rb +1 -1
  110. data/generated/google/apis/composer_v1/classes.rb +178 -0
  111. data/generated/google/apis/composer_v1/representations.rb +54 -0
  112. data/generated/google/apis/composer_v1beta1.rb +1 -1
  113. data/generated/google/apis/composer_v1beta1/classes.rb +36 -5
  114. data/generated/google/apis/composer_v1beta1/representations.rb +4 -0
  115. data/generated/google/apis/compute_alpha.rb +1 -1
  116. data/generated/google/apis/compute_alpha/classes.rb +1320 -307
  117. data/generated/google/apis/compute_alpha/representations.rb +284 -18
  118. data/generated/google/apis/compute_alpha/service.rb +4914 -3211
  119. data/generated/google/apis/compute_beta.rb +1 -1
  120. data/generated/google/apis/compute_beta/classes.rb +819 -236
  121. data/generated/google/apis/compute_beta/representations.rb +245 -16
  122. data/generated/google/apis/compute_beta/service.rb +3369 -2227
  123. data/generated/google/apis/compute_v1.rb +1 -1
  124. data/generated/google/apis/compute_v1/classes.rb +837 -133
  125. data/generated/google/apis/compute_v1/representations.rb +307 -0
  126. data/generated/google/apis/compute_v1/service.rb +3155 -2026
  127. data/generated/google/apis/container_v1.rb +1 -1
  128. data/generated/google/apis/container_v1/classes.rb +42 -22
  129. data/generated/google/apis/container_v1/service.rb +2 -2
  130. data/generated/google/apis/container_v1beta1.rb +1 -1
  131. data/generated/google/apis/container_v1beta1/classes.rb +116 -136
  132. data/generated/google/apis/container_v1beta1/representations.rb +23 -51
  133. data/generated/google/apis/container_v1beta1/service.rb +2 -2
  134. data/generated/google/apis/content_v2.rb +1 -1
  135. data/generated/google/apis/content_v2/classes.rb +1030 -113
  136. data/generated/google/apis/content_v2_1.rb +1 -1
  137. data/generated/google/apis/content_v2_1/classes.rb +987 -138
  138. data/generated/google/apis/content_v2_1/representations.rb +87 -0
  139. data/generated/google/apis/content_v2_1/service.rb +73 -0
  140. data/generated/google/apis/customsearch_v1.rb +3 -3
  141. data/generated/google/apis/customsearch_v1/classes.rb +1194 -353
  142. data/generated/google/apis/customsearch_v1/representations.rb +166 -95
  143. data/generated/google/apis/customsearch_v1/service.rb +373 -104
  144. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  145. data/generated/google/apis/datacatalog_v1beta1/classes.rb +2 -2
  146. data/generated/google/apis/datacatalog_v1beta1/service.rb +16 -24
  147. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  148. data/generated/google/apis/dataflow_v1b3/classes.rb +220 -0
  149. data/generated/google/apis/dataflow_v1b3/representations.rb +99 -0
  150. data/generated/google/apis/dataflow_v1b3/service.rb +327 -0
  151. data/generated/google/apis/datafusion_v1beta1.rb +1 -1
  152. data/generated/google/apis/datafusion_v1beta1/classes.rb +27 -1
  153. data/generated/google/apis/datafusion_v1beta1/representations.rb +15 -0
  154. data/generated/google/apis/dataproc_v1.rb +1 -1
  155. data/generated/google/apis/dataproc_v1/classes.rb +76 -7
  156. data/generated/google/apis/dataproc_v1/representations.rb +21 -0
  157. data/generated/google/apis/dataproc_v1/service.rb +72 -15
  158. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  159. data/generated/google/apis/dataproc_v1beta2/classes.rb +191 -7
  160. data/generated/google/apis/dataproc_v1beta2/representations.rb +79 -0
  161. data/generated/google/apis/dataproc_v1beta2/service.rb +148 -15
  162. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  163. data/generated/google/apis/dfareporting_v3_3/classes.rb +19 -13
  164. data/generated/google/apis/dfareporting_v3_3/service.rb +5 -4
  165. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  166. data/generated/google/apis/dfareporting_v3_4/classes.rb +152 -15
  167. data/generated/google/apis/dfareporting_v3_4/representations.rb +46 -0
  168. data/generated/google/apis/dfareporting_v3_4/service.rb +5 -4
  169. data/generated/google/apis/dialogflow_v2.rb +1 -1
  170. data/generated/google/apis/dialogflow_v2/classes.rb +130 -127
  171. data/generated/google/apis/dialogflow_v2/service.rb +49 -49
  172. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  173. data/generated/google/apis/dialogflow_v2beta1/classes.rb +129 -126
  174. data/generated/google/apis/dialogflow_v2beta1/service.rb +96 -96
  175. data/generated/google/apis/dlp_v2.rb +1 -1
  176. data/generated/google/apis/dlp_v2/classes.rb +80 -14
  177. data/generated/google/apis/dlp_v2/representations.rb +32 -0
  178. data/generated/google/apis/dlp_v2/service.rb +3 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  180. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +9 -2
  181. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  182. data/generated/google/apis/doubleclicksearch_v2/service.rb +0 -55
  183. data/generated/google/apis/drive_v2.rb +1 -1
  184. data/generated/google/apis/drive_v2/classes.rb +54 -2
  185. data/generated/google/apis/drive_v2/representations.rb +18 -0
  186. data/generated/google/apis/drive_v2/service.rb +81 -9
  187. data/generated/google/apis/drive_v3.rb +1 -1
  188. data/generated/google/apis/drive_v3/classes.rb +54 -2
  189. data/generated/google/apis/drive_v3/representations.rb +18 -0
  190. data/generated/google/apis/drive_v3/service.rb +37 -4
  191. data/generated/google/apis/file_v1.rb +1 -1
  192. data/generated/google/apis/file_v1beta1.rb +1 -1
  193. data/generated/google/apis/file_v1beta1/classes.rb +2 -2
  194. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  195. data/generated/google/apis/firebase_v1beta1/service.rb +8 -5
  196. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  197. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +6 -6
  198. data/generated/google/apis/firebasehosting_v1beta1/service.rb +762 -3
  199. data/generated/google/apis/firestore_v1.rb +1 -1
  200. data/generated/google/apis/firestore_v1/classes.rb +11 -2
  201. data/generated/google/apis/firestore_v1/representations.rb +2 -0
  202. data/generated/google/apis/firestore_v1/service.rb +2 -2
  203. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  204. data/generated/google/apis/firestore_v1beta1/classes.rb +11 -2
  205. data/generated/google/apis/firestore_v1beta1/representations.rb +2 -0
  206. data/generated/google/apis/firestore_v1beta1/service.rb +2 -2
  207. data/generated/google/apis/games_configuration_v1configuration.rb +4 -3
  208. data/generated/google/apis/games_configuration_v1configuration/classes.rb +39 -53
  209. data/generated/google/apis/games_configuration_v1configuration/service.rb +58 -169
  210. data/generated/google/apis/games_management_v1management.rb +1 -1
  211. data/generated/google/apis/games_management_v1management/classes.rb +7 -0
  212. data/generated/google/apis/games_management_v1management/representations.rb +1 -0
  213. data/generated/google/apis/games_v1.rb +1 -1
  214. data/generated/google/apis/games_v1/classes.rb +13 -0
  215. data/generated/google/apis/games_v1/representations.rb +2 -0
  216. data/generated/google/apis/{proximitybeacon_v1beta1.rb → gameservices_v1beta.rb} +11 -11
  217. data/generated/google/apis/gameservices_v1beta/classes.rb +2342 -0
  218. data/generated/google/apis/gameservices_v1beta/representations.rb +971 -0
  219. data/generated/google/apis/gameservices_v1beta/service.rb +1469 -0
  220. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  221. data/generated/google/apis/genomics_v2alpha1/service.rb +34 -0
  222. data/generated/google/apis/gmail_v1.rb +3 -2
  223. data/generated/google/apis/gmail_v1/classes.rb +258 -199
  224. data/generated/google/apis/gmail_v1/service.rb +552 -744
  225. data/generated/google/apis/{mirror_v1.rb → healthcare_v1.rb} +10 -13
  226. data/generated/google/apis/healthcare_v1/classes.rb +2639 -0
  227. data/generated/google/apis/healthcare_v1/representations.rb +1114 -0
  228. data/generated/google/apis/healthcare_v1/service.rb +3470 -0
  229. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  230. data/generated/google/apis/healthcare_v1beta1/classes.rb +569 -23
  231. data/generated/google/apis/healthcare_v1beta1/representations.rb +236 -1
  232. data/generated/google/apis/healthcare_v1beta1/service.rb +147 -18
  233. data/generated/google/apis/homegraph_v1.rb +1 -1
  234. data/generated/google/apis/homegraph_v1/classes.rb +67 -63
  235. data/generated/google/apis/homegraph_v1/service.rb +43 -47
  236. data/generated/google/apis/iap_v1.rb +1 -1
  237. data/generated/google/apis/iap_v1/classes.rb +190 -0
  238. data/generated/google/apis/iap_v1/representations.rb +66 -0
  239. data/generated/google/apis/jobs_v2.rb +1 -1
  240. data/generated/google/apis/language_v1.rb +1 -1
  241. data/generated/google/apis/language_v1/classes.rb +6 -6
  242. data/generated/google/apis/language_v1beta1.rb +1 -1
  243. data/generated/google/apis/language_v1beta1/classes.rb +5 -5
  244. data/generated/google/apis/language_v1beta2.rb +1 -1
  245. data/generated/google/apis/language_v1beta2/classes.rb +8 -7
  246. data/generated/google/apis/logging_v2.rb +3 -3
  247. data/generated/google/apis/logging_v2/classes.rb +3 -4
  248. data/generated/google/apis/logging_v2/service.rb +2 -2
  249. data/generated/google/apis/managedidentities_v1.rb +1 -1
  250. data/generated/google/apis/managedidentities_v1/classes.rb +54 -145
  251. data/generated/google/apis/managedidentities_v1/representations.rb +17 -33
  252. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  253. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +54 -145
  254. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +17 -33
  255. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  256. data/generated/google/apis/managedidentities_v1beta1/classes.rb +54 -145
  257. data/generated/google/apis/managedidentities_v1beta1/representations.rb +17 -33
  258. data/generated/google/apis/manufacturers_v1.rb +1 -1
  259. data/generated/google/apis/manufacturers_v1/classes.rb +3 -3
  260. data/generated/google/apis/manufacturers_v1/representations.rb +1 -1
  261. data/generated/google/apis/memcache_v1beta2.rb +35 -0
  262. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1 → memcache_v1beta2}/classes.rb +1083 -761
  263. data/generated/google/apis/memcache_v1beta2/representations.rb +557 -0
  264. data/generated/google/apis/memcache_v1beta2/service.rb +674 -0
  265. data/generated/google/apis/ml_v1.rb +1 -1
  266. data/generated/google/apis/ml_v1/classes.rb +47 -7
  267. data/generated/google/apis/ml_v1/representations.rb +4 -0
  268. data/generated/google/apis/monitoring_v1.rb +7 -8
  269. data/generated/google/apis/monitoring_v1/classes.rb +54 -15
  270. data/generated/google/apis/monitoring_v1/representations.rb +3 -0
  271. data/generated/google/apis/monitoring_v1/service.rb +7 -8
  272. data/generated/google/apis/monitoring_v3.rb +7 -8
  273. data/generated/google/apis/monitoring_v3/classes.rb +300 -27
  274. data/generated/google/apis/monitoring_v3/representations.rb +128 -0
  275. data/generated/google/apis/monitoring_v3/service.rb +52 -17
  276. data/generated/google/apis/oauth2_v2.rb +4 -4
  277. data/generated/google/apis/oauth2_v2/classes.rb +1 -13
  278. data/generated/google/apis/oauth2_v2/representations.rb +2 -4
  279. data/generated/google/apis/oauth2_v2/service.rb +10 -12
  280. data/generated/google/apis/osconfig_v1.rb +35 -0
  281. data/generated/google/apis/osconfig_v1/classes.rb +1223 -0
  282. data/generated/google/apis/osconfig_v1/representations.rb +506 -0
  283. data/generated/google/apis/osconfig_v1/service.rb +386 -0
  284. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  285. data/generated/google/apis/osconfig_v1beta/classes.rb +10 -2
  286. data/generated/google/apis/people_v1.rb +1 -1
  287. data/generated/google/apis/people_v1/classes.rb +30 -12
  288. data/generated/google/apis/people_v1/representations.rb +1 -0
  289. data/generated/google/apis/people_v1/service.rb +12 -24
  290. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  291. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +4 -3
  292. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +282 -0
  293. data/generated/google/apis/pubsub_v1.rb +1 -1
  294. data/generated/google/apis/pubsub_v1/classes.rb +9 -5
  295. data/generated/google/apis/pubsub_v1/service.rb +1 -1
  296. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  297. data/generated/google/apis/pubsub_v1beta2/classes.rb +5 -2
  298. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  299. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -4
  300. data/generated/google/apis/redis_v1.rb +1 -1
  301. data/generated/google/apis/redis_v1/classes.rb +30 -7
  302. data/generated/google/apis/redis_v1/representations.rb +13 -0
  303. data/generated/google/apis/redis_v1/service.rb +36 -0
  304. data/generated/google/apis/redis_v1beta1.rb +1 -1
  305. data/generated/google/apis/redis_v1beta1/classes.rb +11 -7
  306. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  307. data/generated/google/apis/remotebuildexecution_v1/classes.rb +171 -37
  308. data/generated/google/apis/remotebuildexecution_v1/representations.rb +28 -0
  309. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  310. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +171 -37
  311. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +28 -0
  312. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  313. data/generated/google/apis/remotebuildexecution_v2/classes.rb +181 -45
  314. data/generated/google/apis/remotebuildexecution_v2/representations.rb +29 -0
  315. data/generated/google/apis/remotebuildexecution_v2/service.rb +5 -1
  316. data/generated/google/apis/run_v1.rb +1 -1
  317. data/generated/google/apis/run_v1/classes.rb +6 -13
  318. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  319. data/generated/google/apis/sasportal_v1alpha1/classes.rb +4 -3
  320. data/generated/google/apis/sasportal_v1alpha1/service.rb +282 -0
  321. data/generated/google/apis/secretmanager_v1.rb +2 -2
  322. data/generated/google/apis/secretmanager_v1/service.rb +4 -1
  323. data/generated/google/apis/secretmanager_v1beta1.rb +2 -2
  324. data/generated/google/apis/secretmanager_v1beta1/service.rb +4 -1
  325. data/generated/google/apis/securitycenter_v1.rb +4 -4
  326. data/generated/google/apis/securitycenter_v1/classes.rb +142 -114
  327. data/generated/google/apis/securitycenter_v1/service.rb +11 -3
  328. data/generated/google/apis/securitycenter_v1beta1.rb +4 -4
  329. data/generated/google/apis/securitycenter_v1beta1/classes.rb +137 -123
  330. data/generated/google/apis/securitycenter_v1beta1/service.rb +3 -3
  331. data/generated/google/apis/securitycenter_v1p1alpha1.rb +4 -4
  332. data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +87 -75
  333. data/generated/google/apis/securitycenter_v1p1alpha1/service.rb +3 -3
  334. data/generated/google/apis/securitycenter_v1p1beta1.rb +4 -4
  335. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +117 -95
  336. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +11 -3
  337. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  338. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +41 -6
  339. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +1 -0
  340. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1.rb → serviceconsumermanagement_v1beta1.rb} +8 -9
  341. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +4170 -0
  342. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +1308 -0
  343. data/generated/google/apis/serviceconsumermanagement_v1beta1/service.rb +428 -0
  344. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  345. data/generated/google/apis/servicecontrol_v1/classes.rb +2 -2
  346. data/generated/google/apis/{cloudprivatecatalog_v1beta1.rb → servicedirectory_v1beta1.rb} +9 -9
  347. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +800 -0
  348. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +304 -0
  349. data/generated/google/apis/servicedirectory_v1beta1/service.rb +992 -0
  350. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  351. data/generated/google/apis/servicemanagement_v1/classes.rb +41 -6
  352. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -0
  353. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  354. data/generated/google/apis/servicenetworking_v1/classes.rb +179 -6
  355. data/generated/google/apis/servicenetworking_v1/representations.rb +72 -0
  356. data/generated/google/apis/servicenetworking_v1/service.rb +53 -21
  357. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  358. data/generated/google/apis/servicenetworking_v1beta/classes.rb +149 -6
  359. data/generated/google/apis/servicenetworking_v1beta/representations.rb +57 -0
  360. data/generated/google/apis/serviceusage_v1.rb +1 -1
  361. data/generated/google/apis/serviceusage_v1/classes.rb +116 -6
  362. data/generated/google/apis/serviceusage_v1/representations.rb +45 -0
  363. data/generated/google/apis/serviceusage_v1/service.rb +42 -0
  364. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  365. data/generated/google/apis/serviceusage_v1beta1/classes.rb +97 -32
  366. data/generated/google/apis/serviceusage_v1beta1/representations.rb +31 -15
  367. data/generated/google/apis/serviceusage_v1beta1/service.rb +0 -43
  368. data/generated/google/apis/sheets_v4.rb +1 -1
  369. data/generated/google/apis/sheets_v4/classes.rb +2 -2
  370. data/generated/google/apis/spanner_v1.rb +1 -1
  371. data/generated/google/apis/spanner_v1/classes.rb +463 -1
  372. data/generated/google/apis/spanner_v1/representations.rb +178 -0
  373. data/generated/google/apis/spanner_v1/service.rb +498 -10
  374. data/generated/google/apis/speech_v1.rb +1 -1
  375. data/generated/google/apis/speech_v1/classes.rb +7 -3
  376. data/generated/google/apis/speech_v1/representations.rb +1 -0
  377. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  378. data/generated/google/apis/speech_v1p1beta1/classes.rb +7 -3
  379. data/generated/google/apis/speech_v1p1beta1/representations.rb +1 -0
  380. data/generated/google/apis/speech_v2beta1.rb +1 -1
  381. data/generated/google/apis/speech_v2beta1/classes.rb +7 -0
  382. data/generated/google/apis/speech_v2beta1/representations.rb +1 -0
  383. data/generated/google/apis/sql_v1beta4.rb +1 -1
  384. data/generated/google/apis/sql_v1beta4/classes.rb +3 -3
  385. data/generated/google/apis/sql_v1beta4/service.rb +54 -384
  386. data/generated/google/apis/storage_v1.rb +1 -1
  387. data/generated/google/apis/storage_v1/classes.rb +18 -0
  388. data/generated/google/apis/storage_v1/representations.rb +2 -0
  389. data/generated/google/apis/storage_v1/service.rb +28 -3
  390. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  391. data/generated/google/apis/storagetransfer_v1/classes.rb +194 -11
  392. data/generated/google/apis/storagetransfer_v1/representations.rb +52 -0
  393. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  394. data/generated/google/apis/toolresults_v1beta3/classes.rb +217 -0
  395. data/generated/google/apis/toolresults_v1beta3/representations.rb +84 -0
  396. data/generated/google/apis/toolresults_v1beta3/service.rb +76 -29
  397. data/generated/google/apis/vault_v1.rb +1 -1
  398. data/generated/google/apis/videointelligence_v1.rb +1 -1
  399. data/generated/google/apis/videointelligence_v1/classes.rb +744 -4
  400. data/generated/google/apis/videointelligence_v1/representations.rb +356 -0
  401. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  402. data/generated/google/apis/videointelligence_v1beta2/classes.rb +744 -4
  403. data/generated/google/apis/videointelligence_v1beta2/representations.rb +356 -0
  404. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  405. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +744 -4
  406. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +356 -0
  407. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  408. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +744 -4
  409. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +356 -0
  410. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  411. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +744 -4
  412. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +356 -0
  413. data/generated/google/apis/vision_v1.rb +1 -1
  414. data/generated/google/apis/vision_v1/classes.rb +1 -1
  415. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  416. data/generated/google/apis/vision_v1p1beta1/classes.rb +1 -1
  417. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  418. data/generated/google/apis/vision_v1p2beta1/classes.rb +1 -1
  419. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  420. data/generated/google/apis/youtube_v3.rb +4 -1
  421. data/generated/google/apis/youtube_v3/classes.rb +7 -0
  422. data/generated/google/apis/youtube_v3/representations.rb +1 -0
  423. data/lib/google/apis/generator/annotator.rb +1 -1
  424. data/lib/google/apis/version.rb +1 -1
  425. metadata +32 -23
  426. data/generated/google/apis/cloudprivatecatalog_v1beta1/classes.rb +0 -358
  427. data/generated/google/apis/cloudprivatecatalog_v1beta1/representations.rb +0 -123
  428. data/generated/google/apis/cloudprivatecatalog_v1beta1/service.rb +0 -486
  429. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/representations.rb +0 -399
  430. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/service.rb +0 -1081
  431. data/generated/google/apis/mirror_v1/classes.rb +0 -1072
  432. data/generated/google/apis/mirror_v1/representations.rb +0 -390
  433. data/generated/google/apis/mirror_v1/service.rb +0 -928
  434. data/generated/google/apis/oauth2_v1.rb +0 -40
  435. data/generated/google/apis/oauth2_v1/classes.rb +0 -197
  436. data/generated/google/apis/oauth2_v1/representations.rb +0 -73
  437. data/generated/google/apis/oauth2_v1/service.rb +0 -160
  438. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +0 -845
  439. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +0 -350
  440. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +0 -933
@@ -574,6 +574,36 @@ module Google
574
574
  include Google::Apis::Core::JsonObjectSupport
575
575
  end
576
576
 
577
+ class LocalInventory
578
+ class Representation < Google::Apis::Core::JsonRepresentation; end
579
+
580
+ include Google::Apis::Core::JsonObjectSupport
581
+ end
582
+
583
+ class LocalinventoryCustomBatchRequest
584
+ class Representation < Google::Apis::Core::JsonRepresentation; end
585
+
586
+ include Google::Apis::Core::JsonObjectSupport
587
+ end
588
+
589
+ class LocalinventoryCustomBatchRequestEntry
590
+ class Representation < Google::Apis::Core::JsonRepresentation; end
591
+
592
+ include Google::Apis::Core::JsonObjectSupport
593
+ end
594
+
595
+ class LocalinventoryCustomBatchResponse
596
+ class Representation < Google::Apis::Core::JsonRepresentation; end
597
+
598
+ include Google::Apis::Core::JsonObjectSupport
599
+ end
600
+
601
+ class LocalinventoryCustomBatchResponseEntry
602
+ class Representation < Google::Apis::Core::JsonRepresentation; end
603
+
604
+ include Google::Apis::Core::JsonObjectSupport
605
+ end
606
+
577
607
  class LocationIdSet
578
608
  class Representation < Google::Apis::Core::JsonRepresentation; end
579
609
 
@@ -2512,6 +2542,63 @@ module Google
2512
2542
  end
2513
2543
  end
2514
2544
 
2545
+ class LocalInventory
2546
+ # @private
2547
+ class Representation < Google::Apis::Core::JsonRepresentation
2548
+ property :availability, as: 'availability'
2549
+ property :instore_product_location, as: 'instoreProductLocation'
2550
+ property :kind, as: 'kind'
2551
+ property :pickup_method, as: 'pickupMethod'
2552
+ property :pickup_sla, as: 'pickupSla'
2553
+ property :price, as: 'price', class: Google::Apis::ContentV2_1::Price, decorator: Google::Apis::ContentV2_1::Price::Representation
2554
+
2555
+ property :quantity, as: 'quantity'
2556
+ property :sale_price, as: 'salePrice', class: Google::Apis::ContentV2_1::Price, decorator: Google::Apis::ContentV2_1::Price::Representation
2557
+
2558
+ property :sale_price_effective_date, as: 'salePriceEffectiveDate'
2559
+ property :store_code, as: 'storeCode'
2560
+ end
2561
+ end
2562
+
2563
+ class LocalinventoryCustomBatchRequest
2564
+ # @private
2565
+ class Representation < Google::Apis::Core::JsonRepresentation
2566
+ collection :entries, as: 'entries', class: Google::Apis::ContentV2_1::LocalinventoryCustomBatchRequestEntry, decorator: Google::Apis::ContentV2_1::LocalinventoryCustomBatchRequestEntry::Representation
2567
+
2568
+ end
2569
+ end
2570
+
2571
+ class LocalinventoryCustomBatchRequestEntry
2572
+ # @private
2573
+ class Representation < Google::Apis::Core::JsonRepresentation
2574
+ property :batch_id, as: 'batchId'
2575
+ property :local_inventory, as: 'localInventory', class: Google::Apis::ContentV2_1::LocalInventory, decorator: Google::Apis::ContentV2_1::LocalInventory::Representation
2576
+
2577
+ property :merchant_id, :numeric_string => true, as: 'merchantId'
2578
+ property :method_prop, as: 'method'
2579
+ property :product_id, as: 'productId'
2580
+ end
2581
+ end
2582
+
2583
+ class LocalinventoryCustomBatchResponse
2584
+ # @private
2585
+ class Representation < Google::Apis::Core::JsonRepresentation
2586
+ collection :entries, as: 'entries', class: Google::Apis::ContentV2_1::LocalinventoryCustomBatchResponseEntry, decorator: Google::Apis::ContentV2_1::LocalinventoryCustomBatchResponseEntry::Representation
2587
+
2588
+ property :kind, as: 'kind'
2589
+ end
2590
+ end
2591
+
2592
+ class LocalinventoryCustomBatchResponseEntry
2593
+ # @private
2594
+ class Representation < Google::Apis::Core::JsonRepresentation
2595
+ property :batch_id, as: 'batchId'
2596
+ property :errors, as: 'errors', class: Google::Apis::ContentV2_1::Errors, decorator: Google::Apis::ContentV2_1::Errors::Representation
2597
+
2598
+ property :kind, as: 'kind'
2599
+ end
2600
+ end
2601
+
2515
2602
  class LocationIdSet
2516
2603
  # @private
2517
2604
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1494,6 +1494,79 @@ module Google
1494
1494
  execute_or_queue_command(command, &block)
1495
1495
  end
1496
1496
 
1497
+ # Updates local inventory for multiple products or stores in a single request.
1498
+ # @param [Google::Apis::ContentV2_1::LocalinventoryCustomBatchRequest] localinventory_custom_batch_request_object
1499
+ # @param [String] fields
1500
+ # Selector specifying which fields to include in a partial response.
1501
+ # @param [String] quota_user
1502
+ # An opaque string that represents a user for quota purposes. Must not exceed 40
1503
+ # characters.
1504
+ # @param [String] user_ip
1505
+ # Deprecated. Please use quotaUser instead.
1506
+ # @param [Google::Apis::RequestOptions] options
1507
+ # Request-specific options
1508
+ #
1509
+ # @yield [result, err] Result & error if block supplied
1510
+ # @yieldparam result [Google::Apis::ContentV2_1::LocalinventoryCustomBatchResponse] parsed result object
1511
+ # @yieldparam err [StandardError] error object if request failed
1512
+ #
1513
+ # @return [Google::Apis::ContentV2_1::LocalinventoryCustomBatchResponse]
1514
+ #
1515
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1516
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1517
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1518
+ def custombatch_localinventory(localinventory_custom_batch_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
1519
+ command = make_simple_command(:post, 'localinventory/batch', options)
1520
+ command.request_representation = Google::Apis::ContentV2_1::LocalinventoryCustomBatchRequest::Representation
1521
+ command.request_object = localinventory_custom_batch_request_object
1522
+ command.response_representation = Google::Apis::ContentV2_1::LocalinventoryCustomBatchResponse::Representation
1523
+ command.response_class = Google::Apis::ContentV2_1::LocalinventoryCustomBatchResponse
1524
+ command.query['fields'] = fields unless fields.nil?
1525
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1526
+ command.query['userIp'] = user_ip unless user_ip.nil?
1527
+ execute_or_queue_command(command, &block)
1528
+ end
1529
+
1530
+ # Update the local inventory of a product in your Merchant Center account.
1531
+ # @param [Fixnum] merchant_id
1532
+ # The ID of the account that contains the product. This account cannot be a
1533
+ # multi-client account.
1534
+ # @param [String] product_id
1535
+ # The REST ID of the product for which to update local inventory.
1536
+ # @param [Google::Apis::ContentV2_1::LocalInventory] local_inventory_object
1537
+ # @param [String] fields
1538
+ # Selector specifying which fields to include in a partial response.
1539
+ # @param [String] quota_user
1540
+ # An opaque string that represents a user for quota purposes. Must not exceed 40
1541
+ # characters.
1542
+ # @param [String] user_ip
1543
+ # Deprecated. Please use quotaUser instead.
1544
+ # @param [Google::Apis::RequestOptions] options
1545
+ # Request-specific options
1546
+ #
1547
+ # @yield [result, err] Result & error if block supplied
1548
+ # @yieldparam result [Google::Apis::ContentV2_1::LocalInventory] parsed result object
1549
+ # @yieldparam err [StandardError] error object if request failed
1550
+ #
1551
+ # @return [Google::Apis::ContentV2_1::LocalInventory]
1552
+ #
1553
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1554
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1555
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1556
+ def insert_localinventory(merchant_id, product_id, local_inventory_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
1557
+ command = make_simple_command(:post, '{merchantId}/products/{productId}/localinventory', options)
1558
+ command.request_representation = Google::Apis::ContentV2_1::LocalInventory::Representation
1559
+ command.request_object = local_inventory_object
1560
+ command.response_representation = Google::Apis::ContentV2_1::LocalInventory::Representation
1561
+ command.response_class = Google::Apis::ContentV2_1::LocalInventory
1562
+ command.params['merchantId'] = merchant_id unless merchant_id.nil?
1563
+ command.params['productId'] = product_id unless product_id.nil?
1564
+ command.query['fields'] = fields unless fields.nil?
1565
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1566
+ command.query['userIp'] = user_ip unless user_ip.nil?
1567
+ execute_or_queue_command(command, &block)
1568
+ end
1569
+
1497
1570
  # Creates a charge invoice for a shipment group, and triggers a charge capture
1498
1571
  # for orderinvoice enabled orders.
1499
1572
  # @param [Fixnum] merchant_id
@@ -18,14 +18,14 @@ require 'google/apis/customsearch_v1/representations.rb'
18
18
 
19
19
  module Google
20
20
  module Apis
21
- # CustomSearch API
21
+ # Custom Search API
22
22
  #
23
23
  # Searches over a website or collection of websites
24
24
  #
25
- # @see https://developers.google.com/custom-search/v1/using_rest
25
+ # @see https://developers.google.com/custom-search/v1/introduction
26
26
  module CustomsearchV1
27
27
  VERSION = 'V1'
28
- REVISION = '20181001'
28
+ REVISION = '20200408'
29
29
  end
30
30
  end
31
31
  end
@@ -22,92 +22,39 @@ module Google
22
22
  module Apis
23
23
  module CustomsearchV1
24
24
 
25
- #
26
- class Context
27
- include Google::Apis::Core::Hashable
28
-
29
- #
30
- # Corresponds to the JSON property `facets`
31
- # @return [Array<Array<Google::Apis::CustomsearchV1::Context::Facet>>]
32
- attr_accessor :facets
33
-
34
- #
35
- # Corresponds to the JSON property `title`
36
- # @return [String]
37
- attr_accessor :title
38
-
39
- def initialize(**args)
40
- update!(**args)
41
- end
42
-
43
- # Update properties of this object
44
- def update!(**args)
45
- @facets = args[:facets] if args.key?(:facets)
46
- @title = args[:title] if args.key?(:title)
47
- end
48
-
49
- #
50
- class Facet
51
- include Google::Apis::Core::Hashable
52
-
53
- #
54
- # Corresponds to the JSON property `anchor`
55
- # @return [String]
56
- attr_accessor :anchor
57
-
58
- #
59
- # Corresponds to the JSON property `label`
60
- # @return [String]
61
- attr_accessor :label
62
-
63
- #
64
- # Corresponds to the JSON property `label_with_op`
65
- # @return [String]
66
- attr_accessor :label_with_op
67
-
68
- def initialize(**args)
69
- update!(**args)
70
- end
71
-
72
- # Update properties of this object
73
- def update!(**args)
74
- @anchor = args[:anchor] if args.key?(:anchor)
75
- @label = args[:label] if args.key?(:label)
76
- @label_with_op = args[:label_with_op] if args.key?(:label_with_op)
77
- end
78
- end
79
- end
80
-
81
- #
25
+ # Promotion result.
82
26
  class Promotion
83
27
  include Google::Apis::Core::Hashable
84
28
 
85
- #
29
+ # An array of block objects for this promotion. See [Google WebSearch
30
+ # Protocol
31
+ # reference](https://developers.google.com/custom-search/docs/xml_results)
32
+ # for more information.
86
33
  # Corresponds to the JSON property `bodyLines`
87
34
  # @return [Array<Google::Apis::CustomsearchV1::Promotion::BodyLine>]
88
35
  attr_accessor :body_lines
89
36
 
90
- #
37
+ # An abridged version of this search's result URL, e.g. www.example.com.
91
38
  # Corresponds to the JSON property `displayLink`
92
39
  # @return [String]
93
40
  attr_accessor :display_link
94
41
 
95
- #
42
+ # The title of the promotion, in HTML.
96
43
  # Corresponds to the JSON property `htmlTitle`
97
44
  # @return [String]
98
45
  attr_accessor :html_title
99
46
 
100
- #
47
+ # Image belonging to a promotion.
101
48
  # Corresponds to the JSON property `image`
102
49
  # @return [Google::Apis::CustomsearchV1::Promotion::Image]
103
50
  attr_accessor :image
104
51
 
105
- #
52
+ # The URL of the promotion.
106
53
  # Corresponds to the JSON property `link`
107
54
  # @return [String]
108
55
  attr_accessor :link
109
56
 
110
- #
57
+ # The title of the promotion.
111
58
  # Corresponds to the JSON property `title`
112
59
  # @return [String]
113
60
  attr_accessor :title
@@ -126,26 +73,26 @@ module Google
126
73
  @title = args[:title] if args.key?(:title)
127
74
  end
128
75
 
129
- #
76
+ # Block object belonging to a promotion.
130
77
  class BodyLine
131
78
  include Google::Apis::Core::Hashable
132
79
 
133
- #
80
+ # The block object's text in HTML, if it has text.
134
81
  # Corresponds to the JSON property `htmlTitle`
135
82
  # @return [String]
136
83
  attr_accessor :html_title
137
84
 
138
- #
85
+ # The anchor text of the block object's link, if it has a link.
139
86
  # Corresponds to the JSON property `link`
140
87
  # @return [String]
141
88
  attr_accessor :link
142
89
 
143
- #
90
+ # The block object's text, if it has text.
144
91
  # Corresponds to the JSON property `title`
145
92
  # @return [String]
146
93
  attr_accessor :title
147
94
 
148
- #
95
+ # The URL of the block object's link, if it has one.
149
96
  # Corresponds to the JSON property `url`
150
97
  # @return [String]
151
98
  attr_accessor :url
@@ -163,21 +110,21 @@ module Google
163
110
  end
164
111
  end
165
112
 
166
- #
113
+ # Image belonging to a promotion.
167
114
  class Image
168
115
  include Google::Apis::Core::Hashable
169
116
 
170
- #
117
+ # Image height in pixels.
171
118
  # Corresponds to the JSON property `height`
172
119
  # @return [Fixnum]
173
120
  attr_accessor :height
174
121
 
175
- #
122
+ # URL of the image for this promotion link.
176
123
  # Corresponds to the JSON property `source`
177
124
  # @return [String]
178
125
  attr_accessor :source
179
126
 
180
- #
127
+ # Image width in pixels.
181
128
  # Corresponds to the JSON property `width`
182
129
  # @return [Fixnum]
183
130
  attr_accessor :width
@@ -195,310 +142,87 @@ module Google
195
142
  end
196
143
  end
197
144
 
198
- #
199
- class Query
200
- include Google::Apis::Core::Hashable
201
-
202
- #
203
- # Corresponds to the JSON property `count`
204
- # @return [Fixnum]
205
- attr_accessor :count
206
-
207
- #
208
- # Corresponds to the JSON property `cr`
209
- # @return [String]
210
- attr_accessor :cr
211
-
212
- #
213
- # Corresponds to the JSON property `cx`
214
- # @return [String]
215
- attr_accessor :cx
216
-
217
- #
218
- # Corresponds to the JSON property `dateRestrict`
219
- # @return [String]
220
- attr_accessor :date_restrict
221
-
222
- #
223
- # Corresponds to the JSON property `disableCnTwTranslation`
224
- # @return [String]
225
- attr_accessor :disable_cn_tw_translation
226
-
227
- #
228
- # Corresponds to the JSON property `exactTerms`
229
- # @return [String]
230
- attr_accessor :exact_terms
231
-
232
- #
233
- # Corresponds to the JSON property `excludeTerms`
234
- # @return [String]
235
- attr_accessor :exclude_terms
236
-
237
- #
238
- # Corresponds to the JSON property `fileType`
239
- # @return [String]
240
- attr_accessor :file_type
241
-
242
- #
243
- # Corresponds to the JSON property `filter`
244
- # @return [String]
245
- attr_accessor :filter
246
-
247
- #
248
- # Corresponds to the JSON property `gl`
249
- # @return [String]
250
- attr_accessor :gl
251
-
252
- #
253
- # Corresponds to the JSON property `googleHost`
254
- # @return [String]
255
- attr_accessor :google_host
256
-
257
- #
258
- # Corresponds to the JSON property `highRange`
259
- # @return [String]
260
- attr_accessor :high_range
261
-
262
- #
263
- # Corresponds to the JSON property `hl`
264
- # @return [String]
265
- attr_accessor :hl
266
-
267
- #
268
- # Corresponds to the JSON property `hq`
269
- # @return [String]
270
- attr_accessor :hq
271
-
272
- #
273
- # Corresponds to the JSON property `imgColorType`
274
- # @return [String]
275
- attr_accessor :img_color_type
276
-
277
- #
278
- # Corresponds to the JSON property `imgDominantColor`
279
- # @return [String]
280
- attr_accessor :img_dominant_color
281
-
282
- #
283
- # Corresponds to the JSON property `imgSize`
284
- # @return [String]
285
- attr_accessor :img_size
286
-
287
- #
288
- # Corresponds to the JSON property `imgType`
289
- # @return [String]
290
- attr_accessor :img_type
291
-
292
- #
293
- # Corresponds to the JSON property `inputEncoding`
294
- # @return [String]
295
- attr_accessor :input_encoding
296
-
297
- #
298
- # Corresponds to the JSON property `language`
299
- # @return [String]
300
- attr_accessor :language
301
-
302
- #
303
- # Corresponds to the JSON property `linkSite`
304
- # @return [String]
305
- attr_accessor :link_site
306
-
307
- #
308
- # Corresponds to the JSON property `lowRange`
309
- # @return [String]
310
- attr_accessor :low_range
311
-
312
- #
313
- # Corresponds to the JSON property `orTerms`
314
- # @return [String]
315
- attr_accessor :or_terms
316
-
317
- #
318
- # Corresponds to the JSON property `outputEncoding`
319
- # @return [String]
320
- attr_accessor :output_encoding
321
-
322
- #
323
- # Corresponds to the JSON property `relatedSite`
324
- # @return [String]
325
- attr_accessor :related_site
326
-
327
- #
328
- # Corresponds to the JSON property `rights`
329
- # @return [String]
330
- attr_accessor :rights
331
-
332
- #
333
- # Corresponds to the JSON property `safe`
334
- # @return [String]
335
- attr_accessor :safe
336
-
337
- #
338
- # Corresponds to the JSON property `searchTerms`
339
- # @return [String]
340
- attr_accessor :search_terms
341
-
342
- #
343
- # Corresponds to the JSON property `searchType`
344
- # @return [String]
345
- attr_accessor :search_type
346
-
347
- #
348
- # Corresponds to the JSON property `siteSearch`
349
- # @return [String]
350
- attr_accessor :site_search
351
-
352
- #
353
- # Corresponds to the JSON property `siteSearchFilter`
354
- # @return [String]
355
- attr_accessor :site_search_filter
356
-
357
- #
358
- # Corresponds to the JSON property `sort`
359
- # @return [String]
360
- attr_accessor :sort
361
-
362
- #
363
- # Corresponds to the JSON property `startIndex`
364
- # @return [Fixnum]
365
- attr_accessor :start_index
366
-
367
- #
368
- # Corresponds to the JSON property `startPage`
369
- # @return [Fixnum]
370
- attr_accessor :start_page
371
-
372
- #
373
- # Corresponds to the JSON property `title`
374
- # @return [String]
375
- attr_accessor :title
376
-
377
- #
378
- # Corresponds to the JSON property `totalResults`
379
- # @return [Fixnum]
380
- attr_accessor :total_results
381
-
382
- def initialize(**args)
383
- update!(**args)
384
- end
385
-
386
- # Update properties of this object
387
- def update!(**args)
388
- @count = args[:count] if args.key?(:count)
389
- @cr = args[:cr] if args.key?(:cr)
390
- @cx = args[:cx] if args.key?(:cx)
391
- @date_restrict = args[:date_restrict] if args.key?(:date_restrict)
392
- @disable_cn_tw_translation = args[:disable_cn_tw_translation] if args.key?(:disable_cn_tw_translation)
393
- @exact_terms = args[:exact_terms] if args.key?(:exact_terms)
394
- @exclude_terms = args[:exclude_terms] if args.key?(:exclude_terms)
395
- @file_type = args[:file_type] if args.key?(:file_type)
396
- @filter = args[:filter] if args.key?(:filter)
397
- @gl = args[:gl] if args.key?(:gl)
398
- @google_host = args[:google_host] if args.key?(:google_host)
399
- @high_range = args[:high_range] if args.key?(:high_range)
400
- @hl = args[:hl] if args.key?(:hl)
401
- @hq = args[:hq] if args.key?(:hq)
402
- @img_color_type = args[:img_color_type] if args.key?(:img_color_type)
403
- @img_dominant_color = args[:img_dominant_color] if args.key?(:img_dominant_color)
404
- @img_size = args[:img_size] if args.key?(:img_size)
405
- @img_type = args[:img_type] if args.key?(:img_type)
406
- @input_encoding = args[:input_encoding] if args.key?(:input_encoding)
407
- @language = args[:language] if args.key?(:language)
408
- @link_site = args[:link_site] if args.key?(:link_site)
409
- @low_range = args[:low_range] if args.key?(:low_range)
410
- @or_terms = args[:or_terms] if args.key?(:or_terms)
411
- @output_encoding = args[:output_encoding] if args.key?(:output_encoding)
412
- @related_site = args[:related_site] if args.key?(:related_site)
413
- @rights = args[:rights] if args.key?(:rights)
414
- @safe = args[:safe] if args.key?(:safe)
415
- @search_terms = args[:search_terms] if args.key?(:search_terms)
416
- @search_type = args[:search_type] if args.key?(:search_type)
417
- @site_search = args[:site_search] if args.key?(:site_search)
418
- @site_search_filter = args[:site_search_filter] if args.key?(:site_search_filter)
419
- @sort = args[:sort] if args.key?(:sort)
420
- @start_index = args[:start_index] if args.key?(:start_index)
421
- @start_page = args[:start_page] if args.key?(:start_page)
422
- @title = args[:title] if args.key?(:title)
423
- @total_results = args[:total_results] if args.key?(:total_results)
424
- end
425
- end
426
-
427
- #
145
+ # A custom search result.
428
146
  class Result
429
147
  include Google::Apis::Core::Hashable
430
148
 
431
- #
149
+ # Indicates the ID of Google's cached version of the search result.
432
150
  # Corresponds to the JSON property `cacheId`
433
151
  # @return [String]
434
152
  attr_accessor :cache_id
435
153
 
436
- #
154
+ # An abridged version of this search result’s URL, e.g. www.example.com.
437
155
  # Corresponds to the JSON property `displayLink`
438
156
  # @return [String]
439
157
  attr_accessor :display_link
440
158
 
441
- #
159
+ # The file format of the search result.
442
160
  # Corresponds to the JSON property `fileFormat`
443
161
  # @return [String]
444
162
  attr_accessor :file_format
445
163
 
446
- #
164
+ # The URL displayed after the snippet for each search result.
447
165
  # Corresponds to the JSON property `formattedUrl`
448
166
  # @return [String]
449
167
  attr_accessor :formatted_url
450
168
 
451
- #
169
+ # The HTML-formatted URL displayed after the snippet for each search result.
452
170
  # Corresponds to the JSON property `htmlFormattedUrl`
453
171
  # @return [String]
454
172
  attr_accessor :html_formatted_url
455
173
 
456
- #
174
+ # The snippet of the search result, in HTML.
457
175
  # Corresponds to the JSON property `htmlSnippet`
458
176
  # @return [String]
459
177
  attr_accessor :html_snippet
460
178
 
461
- #
179
+ # The title of the search result, in HTML.
462
180
  # Corresponds to the JSON property `htmlTitle`
463
181
  # @return [String]
464
182
  attr_accessor :html_title
465
183
 
466
- #
184
+ # Image belonging to a custom search result.
467
185
  # Corresponds to the JSON property `image`
468
186
  # @return [Google::Apis::CustomsearchV1::Result::Image]
469
187
  attr_accessor :image
470
188
 
471
- #
189
+ # A unique identifier for the type of current object. For this API, it is
190
+ # `customsearch#result.`
472
191
  # Corresponds to the JSON property `kind`
473
192
  # @return [String]
474
193
  attr_accessor :kind
475
194
 
476
- #
195
+ # Encapsulates all information about [refinement
196
+ # labels](https://developers.google.com/custom-search/docs/xml_results).
477
197
  # Corresponds to the JSON property `labels`
478
198
  # @return [Array<Google::Apis::CustomsearchV1::Result::Label>]
479
199
  attr_accessor :labels
480
200
 
481
- #
201
+ # The full URL to which the search result is pointing, e.g.
202
+ # http://www.example.com/foo/bar.
482
203
  # Corresponds to the JSON property `link`
483
204
  # @return [String]
484
205
  attr_accessor :link
485
206
 
486
- #
207
+ # The MIME type of the search result.
487
208
  # Corresponds to the JSON property `mime`
488
209
  # @return [String]
489
210
  attr_accessor :mime
490
211
 
491
- #
212
+ # Contains
213
+ # [PageMap](https://developers.google.com/custom-search/docs/structured_data#
214
+ # pagemaps)
215
+ # information for this search result.
492
216
  # Corresponds to the JSON property `pagemap`
493
- # @return [Hash<String,Array<Hash<String,Object>>>]
217
+ # @return [Hash<String,Object>]
494
218
  attr_accessor :pagemap
495
219
 
496
- #
220
+ # The snippet of the search result, in plain text.
497
221
  # Corresponds to the JSON property `snippet`
498
222
  # @return [String]
499
223
  attr_accessor :snippet
500
224
 
501
- #
225
+ # The title of the search result, in plain text.
502
226
  # Corresponds to the JSON property `title`
503
227
  # @return [String]
504
228
  attr_accessor :title
@@ -526,41 +250,41 @@ module Google
526
250
  @title = args[:title] if args.key?(:title)
527
251
  end
528
252
 
529
- #
253
+ # Image belonging to a custom search result.
530
254
  class Image
531
255
  include Google::Apis::Core::Hashable
532
256
 
533
- #
257
+ # The size of the image, in pixels.
534
258
  # Corresponds to the JSON property `byteSize`
535
259
  # @return [Fixnum]
536
260
  attr_accessor :byte_size
537
261
 
538
- #
262
+ # A URL pointing to the webpage hosting the image.
539
263
  # Corresponds to the JSON property `contextLink`
540
264
  # @return [String]
541
265
  attr_accessor :context_link
542
266
 
543
- #
267
+ # The height of the image, in pixels.
544
268
  # Corresponds to the JSON property `height`
545
269
  # @return [Fixnum]
546
270
  attr_accessor :height
547
271
 
548
- #
272
+ # The height of the thumbnail image, in pixels.
549
273
  # Corresponds to the JSON property `thumbnailHeight`
550
274
  # @return [Fixnum]
551
275
  attr_accessor :thumbnail_height
552
276
 
553
- #
277
+ # A URL to the thumbnail image.
554
278
  # Corresponds to the JSON property `thumbnailLink`
555
279
  # @return [String]
556
280
  attr_accessor :thumbnail_link
557
281
 
558
- #
282
+ # The width of the thumbnail image, in pixels.
559
283
  # Corresponds to the JSON property `thumbnailWidth`
560
284
  # @return [Fixnum]
561
285
  attr_accessor :thumbnail_width
562
286
 
563
- #
287
+ # The width of the image, in pixels.
564
288
  # Corresponds to the JSON property `width`
565
289
  # @return [Fixnum]
566
290
  attr_accessor :width
@@ -581,21 +305,23 @@ module Google
581
305
  end
582
306
  end
583
307
 
584
- #
308
+ # Refinement label associated with a custom search result.
585
309
  class Label
586
310
  include Google::Apis::Core::Hashable
587
311
 
588
- #
312
+ # The display name of a refinement label. This is the name you should
313
+ # display in your user interface.
589
314
  # Corresponds to the JSON property `displayName`
590
315
  # @return [String]
591
316
  attr_accessor :display_name
592
317
 
593
- #
318
+ # Refinement label and the associated refinement operation.
594
319
  # Corresponds to the JSON property `label_with_op`
595
320
  # @return [String]
596
321
  attr_accessor :label_with_op
597
322
 
598
- #
323
+ # The name of a refinement label, which you can use to refine searches.
324
+ # Don't display this in your user interface; instead, use displayName.
599
325
  # Corresponds to the JSON property `name`
600
326
  # @return [String]
601
327
  attr_accessor :name
@@ -613,46 +339,55 @@ module Google
613
339
  end
614
340
  end
615
341
 
616
- #
342
+ # Response to a custom search request.
617
343
  class Search
618
344
  include Google::Apis::Core::Hashable
619
345
 
620
- #
346
+ # Metadata and refinements associated with the given search engine,
347
+ # including:
348
+ # * The name of the search engine that was used for the query.
349
+ # * A set of [facet
350
+ # objects](https://developers.google.com/custom-search/docs/refinements#create)
351
+ # (refinements) you can use for refining a search.
621
352
  # Corresponds to the JSON property `context`
622
- # @return [Google::Apis::CustomsearchV1::Context]
353
+ # @return [Hash<String,Object>]
623
354
  attr_accessor :context
624
355
 
625
- #
356
+ # The current set of custom search results.
626
357
  # Corresponds to the JSON property `items`
627
358
  # @return [Array<Google::Apis::CustomsearchV1::Result>]
628
359
  attr_accessor :items
629
360
 
630
- #
361
+ # Unique identifier for the type of current object. For this API, it is
362
+ # customsearch#search.
631
363
  # Corresponds to the JSON property `kind`
632
364
  # @return [String]
633
365
  attr_accessor :kind
634
366
 
635
- #
367
+ # The set of
368
+ # [promotions](https://developers.google.com/custom-search/docs/promotions).
369
+ # Present only if the custom search engine's configuration files define any
370
+ # promotions for the given query.
636
371
  # Corresponds to the JSON property `promotions`
637
372
  # @return [Array<Google::Apis::CustomsearchV1::Promotion>]
638
373
  attr_accessor :promotions
639
374
 
640
- #
375
+ # Query metadata for the previous, current, and next pages of results.
641
376
  # Corresponds to the JSON property `queries`
642
- # @return [Hash<String,Array<Google::Apis::CustomsearchV1::Query>>]
377
+ # @return [Google::Apis::CustomsearchV1::Search::Queries]
643
378
  attr_accessor :queries
644
379
 
645
- #
380
+ # Metadata about a search operation.
646
381
  # Corresponds to the JSON property `searchInformation`
647
382
  # @return [Google::Apis::CustomsearchV1::Search::SearchInformation]
648
383
  attr_accessor :search_information
649
384
 
650
- #
385
+ # Spell correction information for a query.
651
386
  # Corresponds to the JSON property `spelling`
652
387
  # @return [Google::Apis::CustomsearchV1::Search::Spelling]
653
388
  attr_accessor :spelling
654
389
 
655
- #
390
+ # OpenSearch template and URL.
656
391
  # Corresponds to the JSON property `url`
657
392
  # @return [Google::Apis::CustomsearchV1::Search::Url]
658
393
  attr_accessor :url
@@ -673,28 +408,1131 @@ module Google
673
408
  @url = args[:url] if args.key?(:url)
674
409
  end
675
410
 
676
- #
411
+ # Query metadata for the previous, current, and next pages of results.
412
+ class Queries
413
+ include Google::Apis::Core::Hashable
414
+
415
+ # Metadata representing the next page of results, if applicable.
416
+ # Corresponds to the JSON property `nextPage`
417
+ # @return [Array<Google::Apis::CustomsearchV1::Search::Queries::NextPage>]
418
+ attr_accessor :next_page
419
+
420
+ # Metadata representing the previous page of results, if applicable.
421
+ # Corresponds to the JSON property `previousPage`
422
+ # @return [Array<Google::Apis::CustomsearchV1::Search::Queries::PreviousPage>]
423
+ attr_accessor :previous_page
424
+
425
+ # Metadata representing the current request.
426
+ # Corresponds to the JSON property `request`
427
+ # @return [Array<Google::Apis::CustomsearchV1::Search::Queries::Request>]
428
+ attr_accessor :request
429
+
430
+ def initialize(**args)
431
+ update!(**args)
432
+ end
433
+
434
+ # Update properties of this object
435
+ def update!(**args)
436
+ @next_page = args[:next_page] if args.key?(:next_page)
437
+ @previous_page = args[:previous_page] if args.key?(:previous_page)
438
+ @request = args[:request] if args.key?(:request)
439
+ end
440
+
441
+ # Custom search request metadata.
442
+ class NextPage
443
+ include Google::Apis::Core::Hashable
444
+
445
+ # Number of search results returned in this set.
446
+ # Corresponds to the JSON property `count`
447
+ # @return [Fixnum]
448
+ attr_accessor :count
449
+
450
+ # Restricts search results to documents originating in a particular
451
+ # country. You may use [Boolean
452
+ # operators](https://developers.google.com/custom-search/docs/xml_results#
453
+ # booleanOperators)
454
+ # in the `cr` parameter's value.
455
+ # Google WebSearch determines the country of a document by analyzing the
456
+ # following:
457
+ # * The top-level domain (TLD) of the document's URL.
458
+ # * The geographic location of the web server's IP address.
459
+ # See [Country (cr) Parameter
460
+ # Values](https://developers.google.com/custom-search/docs/xml_results#
461
+ # countryCollections)
462
+ # for a list of valid values for this parameter.
463
+ # Corresponds to the JSON property `cr`
464
+ # @return [String]
465
+ attr_accessor :cr
466
+
467
+ # The identifier of a custom search engine created using the Custom Search
468
+ # [Control Panel](https://cse.google.com/). This is a custom property not
469
+ # defined in the OpenSearch spec. This parameter is **required**.
470
+ # Corresponds to the JSON property `cx`
471
+ # @return [String]
472
+ attr_accessor :cx
473
+
474
+ # Restricts results to URLs based on date. Supported values include:
475
+ # * `d[number]`: requests results from the specified number of past days.
476
+ # * `w[number]`: requests results from the specified number of past weeks.
477
+ # * `m[number]`: requests results from the specified number of past months.
478
+ # * `y[number]`: requests results from the specified number of past years.
479
+ # Corresponds to the JSON property `dateRestrict`
480
+ # @return [String]
481
+ attr_accessor :date_restrict
482
+
483
+ # Enables or disables the [Simplified and Traditional Chinese
484
+ # Search](https://developers.google.com/custom-search/docs/xml_results#
485
+ # chineseSearch)
486
+ # feature.
487
+ # Supported values are:
488
+ # * `0`: enabled (default)
489
+ # * `1`: disabled
490
+ # Corresponds to the JSON property `disableCnTwTranslation`
491
+ # @return [String]
492
+ attr_accessor :disable_cn_tw_translation
493
+
494
+ # Identifies a phrase that all documents in the search results must
495
+ # contain.
496
+ # Corresponds to the JSON property `exactTerms`
497
+ # @return [String]
498
+ attr_accessor :exact_terms
499
+
500
+ # Identifies a word or phrase that should not appear in any documents in
501
+ # the search results.
502
+ # Corresponds to the JSON property `excludeTerms`
503
+ # @return [String]
504
+ attr_accessor :exclude_terms
505
+
506
+ # Restricts results to files of a specified extension. Filetypes supported
507
+ # by Google include:
508
+ # * Adobe Portable Document Format (`pdf`)
509
+ # * Adobe PostScript (`ps`)
510
+ # * Lotus 1-2-3 (`wk1`, `wk2`, `wk3`, `wk4`, `wk5`, `wki`, `wks`, `wku`)
511
+ # * Lotus WordPro (`lwp`)
512
+ # * Macwrite (`mw`)
513
+ # * Microsoft Excel (`xls`)
514
+ # * Microsoft PowerPoint (`ppt`)
515
+ # * Microsoft Word (`doc`)
516
+ # * Microsoft Works (`wks`, `wps`, `wdb`)
517
+ # * Microsoft Write (`wri`)
518
+ # * Rich Text Format (`rtf`)
519
+ # * Shockwave Flash (`swf`)
520
+ # * Text (`ans`, `txt`).
521
+ # Additional filetypes may be added in the future. An up-to-date list can
522
+ # always be found in Google's [file type
523
+ # FAQ](https://support.google.com/webmasters/answer/35287).
524
+ # Corresponds to the JSON property `fileType`
525
+ # @return [String]
526
+ attr_accessor :file_type
527
+
528
+ # Activates or deactivates the automatic filtering of Google search
529
+ # results. See [Automatic
530
+ # Filtering](https://developers.google.com/custom-search/docs/xml_results#
531
+ # automaticFiltering)
532
+ # for more information about Google's search results filters. Valid values
533
+ # for this parameter are:
534
+ # * `0`: Disabled
535
+ # * `1`: Enabled (default)
536
+ # **Note**: By default, Google applies filtering to all search results to
537
+ # improve the quality of those results.
538
+ # Corresponds to the JSON property `filter`
539
+ # @return [String]
540
+ attr_accessor :filter
541
+
542
+ # Boosts search results whose country of origin matches the parameter
543
+ # value. See [Country
544
+ # Codes](https://developers.google.com/custom-search/docs/xml_results#
545
+ # countryCodes)
546
+ # for a list of valid values.
547
+ # Specifying a `gl` parameter value in WebSearch requests should improve
548
+ # the relevance of results. This is particularly true for international
549
+ # customers and, even more specifically, for customers in English-speaking
550
+ # countries other than the United States.
551
+ # Corresponds to the JSON property `gl`
552
+ # @return [String]
553
+ attr_accessor :gl
554
+
555
+ # Specifies the Google domain (for example, google.com, google.de, or
556
+ # google.fr) to which the search should be limited.
557
+ # Corresponds to the JSON property `googleHost`
558
+ # @return [String]
559
+ attr_accessor :google_host
560
+
561
+ # Specifies the ending value for a search range. Use `cse:lowRange` and
562
+ # `cse:highrange` to append an inclusive search range of
563
+ # `lowRange...highRange` to the query.
564
+ # Corresponds to the JSON property `highRange`
565
+ # @return [String]
566
+ attr_accessor :high_range
567
+
568
+ # Specifies the interface language (host language) of your user interface.
569
+ # Explicitly setting this parameter improves the performance and the
570
+ # quality of your search results.
571
+ # See the [Interface
572
+ # Languages](https://developers.google.com/custom-search/docs/xml_results#
573
+ # wsInterfaceLanguages)
574
+ # section of [Internationalizing Queries and Results
575
+ # Presentation](https://developers.google.com/custom-search/docs/xml_results#
576
+ # wsInternationalizing)
577
+ # for more information, and [Supported Interface
578
+ # Languages](https://developers.google.com/custom-search/docs/
579
+ # xml_results_appendices#interfaceLanguages)
580
+ # for a list of supported languages.
581
+ # Corresponds to the JSON property `hl`
582
+ # @return [String]
583
+ attr_accessor :hl
584
+
585
+ # Appends the specified query terms to the query, as if they were combined
586
+ # with a logical `AND` operator.
587
+ # Corresponds to the JSON property `hq`
588
+ # @return [String]
589
+ attr_accessor :hq
590
+
591
+ # Restricts results to images of a specified color type. Supported values
592
+ # are:
593
+ # * `mono` (black and white)
594
+ # * `gray` (grayscale)
595
+ # * `color` (color)
596
+ # Corresponds to the JSON property `imgColorType`
597
+ # @return [String]
598
+ attr_accessor :img_color_type
599
+
600
+ # Restricts results to images with a specific dominant color. Supported
601
+ # values are:
602
+ # * `red`
603
+ # * `orange`
604
+ # * `yellow`
605
+ # * `green`
606
+ # * `teal`
607
+ # * `blue`
608
+ # * `purple`
609
+ # * `pink`
610
+ # * `white`
611
+ # * `gray`
612
+ # * `black`
613
+ # * `brown`
614
+ # Corresponds to the JSON property `imgDominantColor`
615
+ # @return [String]
616
+ attr_accessor :img_dominant_color
617
+
618
+ # Restricts results to images of a specified size. Supported values are:
619
+ # * `icon` (small)
620
+ # * `small | medium | large | xlarge` (medium)
621
+ # * `xxlarge` (large)
622
+ # * `huge` (extra-large)
623
+ # Corresponds to the JSON property `imgSize`
624
+ # @return [String]
625
+ attr_accessor :img_size
626
+
627
+ # Restricts results to images of a specified type. Supported values are:
628
+ # * `clipart` (Clip art)
629
+ # * `face` (Face)
630
+ # * `lineart` (Line drawing)
631
+ # * `photo` (Photo)
632
+ # * `animated` (Animated)
633
+ # * `stock` (Stock)
634
+ # Corresponds to the JSON property `imgType`
635
+ # @return [String]
636
+ attr_accessor :img_type
637
+
638
+ # The character encoding supported for search requests.
639
+ # Corresponds to the JSON property `inputEncoding`
640
+ # @return [String]
641
+ attr_accessor :input_encoding
642
+
643
+ # The language of the search results.
644
+ # Corresponds to the JSON property `language`
645
+ # @return [String]
646
+ attr_accessor :language
647
+
648
+ # Specifies that all results should contain a link to a specific URL.
649
+ # Corresponds to the JSON property `linkSite`
650
+ # @return [String]
651
+ attr_accessor :link_site
652
+
653
+ # Specifies the starting value for a search range. Use `cse:lowRange` and
654
+ # `cse:highrange` to append an inclusive search range of
655
+ # `lowRange...highRange` to the query.
656
+ # Corresponds to the JSON property `lowRange`
657
+ # @return [String]
658
+ attr_accessor :low_range
659
+
660
+ # Provides additional search terms to check for in a document, where each
661
+ # document in the search results must contain at least one of the
662
+ # additional search terms. You can also use the [Boolean
663
+ # OR](https://developers.google.com/custom-search/docs/xml_results#BooleanOrqt)
664
+ # query term for this type of query.
665
+ # Corresponds to the JSON property `orTerms`
666
+ # @return [String]
667
+ attr_accessor :or_terms
668
+
669
+ # The character encoding supported for search results.
670
+ # Corresponds to the JSON property `outputEncoding`
671
+ # @return [String]
672
+ attr_accessor :output_encoding
673
+
674
+ # Specifies that all search results should be pages that are related to the
675
+ # specified URL. The parameter value should be a URL.
676
+ # Corresponds to the JSON property `relatedSite`
677
+ # @return [String]
678
+ attr_accessor :related_site
679
+
680
+ # Filters based on licensing. Supported values include:
681
+ # * `cc_publicdomain`
682
+ # * `cc_attribute`
683
+ # * `cc_sharealike`
684
+ # * `cc_noncommercial`
685
+ # * `cc_nonderived`
686
+ # Corresponds to the JSON property `rights`
687
+ # @return [String]
688
+ attr_accessor :rights
689
+
690
+ # Specifies the [SafeSearch
691
+ # level](https://developers.google.com/custom-search/docs/xml_results#
692
+ # safeSearchLevels)
693
+ # used for filtering out adult results. This is a custom property not
694
+ # defined in the OpenSearch spec. Valid parameter values are:
695
+ # * `"off"`: Disable SafeSearch
696
+ # * `"active"`: Enable SafeSearch
697
+ # Corresponds to the JSON property `safe`
698
+ # @return [String]
699
+ attr_accessor :safe
700
+
701
+ # The search terms entered by the user.
702
+ # Corresponds to the JSON property `searchTerms`
703
+ # @return [String]
704
+ attr_accessor :search_terms
705
+
706
+ # Allowed values are `web` or `image`. If unspecified, results are limited
707
+ # to webpages.
708
+ # Corresponds to the JSON property `searchType`
709
+ # @return [String]
710
+ attr_accessor :search_type
711
+
712
+ # Restricts results to URLs from a specified site.
713
+ # Corresponds to the JSON property `siteSearch`
714
+ # @return [String]
715
+ attr_accessor :site_search
716
+
717
+ # Specifies whether to include or exclude results from the site named in
718
+ # the `sitesearch` parameter. Supported values are:
719
+ # * `i`: include content from site
720
+ # * `e`: exclude content from site
721
+ # Corresponds to the JSON property `siteSearchFilter`
722
+ # @return [String]
723
+ attr_accessor :site_search_filter
724
+
725
+ # Specifies that results should be sorted according to the specified
726
+ # expression. For example, sort by date.
727
+ # Corresponds to the JSON property `sort`
728
+ # @return [String]
729
+ attr_accessor :sort
730
+
731
+ # The index of the current set of search results into the total set of
732
+ # results, where the index of the first result is 1.
733
+ # Corresponds to the JSON property `startIndex`
734
+ # @return [Fixnum]
735
+ attr_accessor :start_index
736
+
737
+ # The page number of this set of results, where the page length is set by
738
+ # the `count` property.
739
+ # Corresponds to the JSON property `startPage`
740
+ # @return [Fixnum]
741
+ attr_accessor :start_page
742
+
743
+ # A description of the query.
744
+ # Corresponds to the JSON property `title`
745
+ # @return [String]
746
+ attr_accessor :title
747
+
748
+ # Estimated number of total search results. May not be accurate.
749
+ # Corresponds to the JSON property `totalResults`
750
+ # @return [Fixnum]
751
+ attr_accessor :total_results
752
+
753
+ def initialize(**args)
754
+ update!(**args)
755
+ end
756
+
757
+ # Update properties of this object
758
+ def update!(**args)
759
+ @count = args[:count] if args.key?(:count)
760
+ @cr = args[:cr] if args.key?(:cr)
761
+ @cx = args[:cx] if args.key?(:cx)
762
+ @date_restrict = args[:date_restrict] if args.key?(:date_restrict)
763
+ @disable_cn_tw_translation = args[:disable_cn_tw_translation] if args.key?(:disable_cn_tw_translation)
764
+ @exact_terms = args[:exact_terms] if args.key?(:exact_terms)
765
+ @exclude_terms = args[:exclude_terms] if args.key?(:exclude_terms)
766
+ @file_type = args[:file_type] if args.key?(:file_type)
767
+ @filter = args[:filter] if args.key?(:filter)
768
+ @gl = args[:gl] if args.key?(:gl)
769
+ @google_host = args[:google_host] if args.key?(:google_host)
770
+ @high_range = args[:high_range] if args.key?(:high_range)
771
+ @hl = args[:hl] if args.key?(:hl)
772
+ @hq = args[:hq] if args.key?(:hq)
773
+ @img_color_type = args[:img_color_type] if args.key?(:img_color_type)
774
+ @img_dominant_color = args[:img_dominant_color] if args.key?(:img_dominant_color)
775
+ @img_size = args[:img_size] if args.key?(:img_size)
776
+ @img_type = args[:img_type] if args.key?(:img_type)
777
+ @input_encoding = args[:input_encoding] if args.key?(:input_encoding)
778
+ @language = args[:language] if args.key?(:language)
779
+ @link_site = args[:link_site] if args.key?(:link_site)
780
+ @low_range = args[:low_range] if args.key?(:low_range)
781
+ @or_terms = args[:or_terms] if args.key?(:or_terms)
782
+ @output_encoding = args[:output_encoding] if args.key?(:output_encoding)
783
+ @related_site = args[:related_site] if args.key?(:related_site)
784
+ @rights = args[:rights] if args.key?(:rights)
785
+ @safe = args[:safe] if args.key?(:safe)
786
+ @search_terms = args[:search_terms] if args.key?(:search_terms)
787
+ @search_type = args[:search_type] if args.key?(:search_type)
788
+ @site_search = args[:site_search] if args.key?(:site_search)
789
+ @site_search_filter = args[:site_search_filter] if args.key?(:site_search_filter)
790
+ @sort = args[:sort] if args.key?(:sort)
791
+ @start_index = args[:start_index] if args.key?(:start_index)
792
+ @start_page = args[:start_page] if args.key?(:start_page)
793
+ @title = args[:title] if args.key?(:title)
794
+ @total_results = args[:total_results] if args.key?(:total_results)
795
+ end
796
+ end
797
+
798
+ # Custom search request metadata.
799
+ class PreviousPage
800
+ include Google::Apis::Core::Hashable
801
+
802
+ # Number of search results returned in this set.
803
+ # Corresponds to the JSON property `count`
804
+ # @return [Fixnum]
805
+ attr_accessor :count
806
+
807
+ # Restricts search results to documents originating in a particular
808
+ # country. You may use [Boolean
809
+ # operators](https://developers.google.com/custom-search/docs/xml_results#
810
+ # booleanOperators)
811
+ # in the `cr` parameter's value.
812
+ # Google WebSearch determines the country of a document by analyzing the
813
+ # following:
814
+ # * The top-level domain (TLD) of the document's URL.
815
+ # * The geographic location of the web server's IP address.
816
+ # See [Country (cr) Parameter
817
+ # Values](https://developers.google.com/custom-search/docs/xml_results#
818
+ # countryCollections)
819
+ # for a list of valid values for this parameter.
820
+ # Corresponds to the JSON property `cr`
821
+ # @return [String]
822
+ attr_accessor :cr
823
+
824
+ # The identifier of a custom search engine created using the Custom Search
825
+ # [Control Panel](https://cse.google.com/). This is a custom property not
826
+ # defined in the OpenSearch spec. This parameter is **required**.
827
+ # Corresponds to the JSON property `cx`
828
+ # @return [String]
829
+ attr_accessor :cx
830
+
831
+ # Restricts results to URLs based on date. Supported values include:
832
+ # * `d[number]`: requests results from the specified number of past days.
833
+ # * `w[number]`: requests results from the specified number of past weeks.
834
+ # * `m[number]`: requests results from the specified number of past months.
835
+ # * `y[number]`: requests results from the specified number of past years.
836
+ # Corresponds to the JSON property `dateRestrict`
837
+ # @return [String]
838
+ attr_accessor :date_restrict
839
+
840
+ # Enables or disables the [Simplified and Traditional Chinese
841
+ # Search](https://developers.google.com/custom-search/docs/xml_results#
842
+ # chineseSearch)
843
+ # feature.
844
+ # Supported values are:
845
+ # * `0`: enabled (default)
846
+ # * `1`: disabled
847
+ # Corresponds to the JSON property `disableCnTwTranslation`
848
+ # @return [String]
849
+ attr_accessor :disable_cn_tw_translation
850
+
851
+ # Identifies a phrase that all documents in the search results must
852
+ # contain.
853
+ # Corresponds to the JSON property `exactTerms`
854
+ # @return [String]
855
+ attr_accessor :exact_terms
856
+
857
+ # Identifies a word or phrase that should not appear in any documents in
858
+ # the search results.
859
+ # Corresponds to the JSON property `excludeTerms`
860
+ # @return [String]
861
+ attr_accessor :exclude_terms
862
+
863
+ # Restricts results to files of a specified extension. Filetypes supported
864
+ # by Google include:
865
+ # * Adobe Portable Document Format (`pdf`)
866
+ # * Adobe PostScript (`ps`)
867
+ # * Lotus 1-2-3 (`wk1`, `wk2`, `wk3`, `wk4`, `wk5`, `wki`, `wks`, `wku`)
868
+ # * Lotus WordPro (`lwp`)
869
+ # * Macwrite (`mw`)
870
+ # * Microsoft Excel (`xls`)
871
+ # * Microsoft PowerPoint (`ppt`)
872
+ # * Microsoft Word (`doc`)
873
+ # * Microsoft Works (`wks`, `wps`, `wdb`)
874
+ # * Microsoft Write (`wri`)
875
+ # * Rich Text Format (`rtf`)
876
+ # * Shockwave Flash (`swf`)
877
+ # * Text (`ans`, `txt`).
878
+ # Additional filetypes may be added in the future. An up-to-date list can
879
+ # always be found in Google's [file type
880
+ # FAQ](https://support.google.com/webmasters/answer/35287).
881
+ # Corresponds to the JSON property `fileType`
882
+ # @return [String]
883
+ attr_accessor :file_type
884
+
885
+ # Activates or deactivates the automatic filtering of Google search
886
+ # results. See [Automatic
887
+ # Filtering](https://developers.google.com/custom-search/docs/xml_results#
888
+ # automaticFiltering)
889
+ # for more information about Google's search results filters. Valid values
890
+ # for this parameter are:
891
+ # * `0`: Disabled
892
+ # * `1`: Enabled (default)
893
+ # **Note**: By default, Google applies filtering to all search results to
894
+ # improve the quality of those results.
895
+ # Corresponds to the JSON property `filter`
896
+ # @return [String]
897
+ attr_accessor :filter
898
+
899
+ # Boosts search results whose country of origin matches the parameter
900
+ # value. See [Country
901
+ # Codes](https://developers.google.com/custom-search/docs/xml_results#
902
+ # countryCodes)
903
+ # for a list of valid values.
904
+ # Specifying a `gl` parameter value in WebSearch requests should improve
905
+ # the relevance of results. This is particularly true for international
906
+ # customers and, even more specifically, for customers in English-speaking
907
+ # countries other than the United States.
908
+ # Corresponds to the JSON property `gl`
909
+ # @return [String]
910
+ attr_accessor :gl
911
+
912
+ # Specifies the Google domain (for example, google.com, google.de, or
913
+ # google.fr) to which the search should be limited.
914
+ # Corresponds to the JSON property `googleHost`
915
+ # @return [String]
916
+ attr_accessor :google_host
917
+
918
+ # Specifies the ending value for a search range. Use `cse:lowRange` and
919
+ # `cse:highrange` to append an inclusive search range of
920
+ # `lowRange...highRange` to the query.
921
+ # Corresponds to the JSON property `highRange`
922
+ # @return [String]
923
+ attr_accessor :high_range
924
+
925
+ # Specifies the interface language (host language) of your user interface.
926
+ # Explicitly setting this parameter improves the performance and the
927
+ # quality of your search results.
928
+ # See the [Interface
929
+ # Languages](https://developers.google.com/custom-search/docs/xml_results#
930
+ # wsInterfaceLanguages)
931
+ # section of [Internationalizing Queries and Results
932
+ # Presentation](https://developers.google.com/custom-search/docs/xml_results#
933
+ # wsInternationalizing)
934
+ # for more information, and [Supported Interface
935
+ # Languages](https://developers.google.com/custom-search/docs/
936
+ # xml_results_appendices#interfaceLanguages)
937
+ # for a list of supported languages.
938
+ # Corresponds to the JSON property `hl`
939
+ # @return [String]
940
+ attr_accessor :hl
941
+
942
+ # Appends the specified query terms to the query, as if they were combined
943
+ # with a logical `AND` operator.
944
+ # Corresponds to the JSON property `hq`
945
+ # @return [String]
946
+ attr_accessor :hq
947
+
948
+ # Restricts results to images of a specified color type. Supported values
949
+ # are:
950
+ # * `mono` (black and white)
951
+ # * `gray` (grayscale)
952
+ # * `color` (color)
953
+ # Corresponds to the JSON property `imgColorType`
954
+ # @return [String]
955
+ attr_accessor :img_color_type
956
+
957
+ # Restricts results to images with a specific dominant color. Supported
958
+ # values are:
959
+ # * `red`
960
+ # * `orange`
961
+ # * `yellow`
962
+ # * `green`
963
+ # * `teal`
964
+ # * `blue`
965
+ # * `purple`
966
+ # * `pink`
967
+ # * `white`
968
+ # * `gray`
969
+ # * `black`
970
+ # * `brown`
971
+ # Corresponds to the JSON property `imgDominantColor`
972
+ # @return [String]
973
+ attr_accessor :img_dominant_color
974
+
975
+ # Restricts results to images of a specified size. Supported values are:
976
+ # * `icon` (small)
977
+ # * `small | medium | large | xlarge` (medium)
978
+ # * `xxlarge` (large)
979
+ # * `huge` (extra-large)
980
+ # Corresponds to the JSON property `imgSize`
981
+ # @return [String]
982
+ attr_accessor :img_size
983
+
984
+ # Restricts results to images of a specified type. Supported values are:
985
+ # * `clipart` (Clip art)
986
+ # * `face` (Face)
987
+ # * `lineart` (Line drawing)
988
+ # * `photo` (Photo)
989
+ # * `animated` (Animated)
990
+ # * `stock` (Stock)
991
+ # Corresponds to the JSON property `imgType`
992
+ # @return [String]
993
+ attr_accessor :img_type
994
+
995
+ # The character encoding supported for search requests.
996
+ # Corresponds to the JSON property `inputEncoding`
997
+ # @return [String]
998
+ attr_accessor :input_encoding
999
+
1000
+ # The language of the search results.
1001
+ # Corresponds to the JSON property `language`
1002
+ # @return [String]
1003
+ attr_accessor :language
1004
+
1005
+ # Specifies that all results should contain a link to a specific URL.
1006
+ # Corresponds to the JSON property `linkSite`
1007
+ # @return [String]
1008
+ attr_accessor :link_site
1009
+
1010
+ # Specifies the starting value for a search range. Use `cse:lowRange` and
1011
+ # `cse:highrange` to append an inclusive search range of
1012
+ # `lowRange...highRange` to the query.
1013
+ # Corresponds to the JSON property `lowRange`
1014
+ # @return [String]
1015
+ attr_accessor :low_range
1016
+
1017
+ # Provides additional search terms to check for in a document, where each
1018
+ # document in the search results must contain at least one of the
1019
+ # additional search terms. You can also use the [Boolean
1020
+ # OR](https://developers.google.com/custom-search/docs/xml_results#BooleanOrqt)
1021
+ # query term for this type of query.
1022
+ # Corresponds to the JSON property `orTerms`
1023
+ # @return [String]
1024
+ attr_accessor :or_terms
1025
+
1026
+ # The character encoding supported for search results.
1027
+ # Corresponds to the JSON property `outputEncoding`
1028
+ # @return [String]
1029
+ attr_accessor :output_encoding
1030
+
1031
+ # Specifies that all search results should be pages that are related to the
1032
+ # specified URL. The parameter value should be a URL.
1033
+ # Corresponds to the JSON property `relatedSite`
1034
+ # @return [String]
1035
+ attr_accessor :related_site
1036
+
1037
+ # Filters based on licensing. Supported values include:
1038
+ # * `cc_publicdomain`
1039
+ # * `cc_attribute`
1040
+ # * `cc_sharealike`
1041
+ # * `cc_noncommercial`
1042
+ # * `cc_nonderived`
1043
+ # Corresponds to the JSON property `rights`
1044
+ # @return [String]
1045
+ attr_accessor :rights
1046
+
1047
+ # Specifies the [SafeSearch
1048
+ # level](https://developers.google.com/custom-search/docs/xml_results#
1049
+ # safeSearchLevels)
1050
+ # used for filtering out adult results. This is a custom property not
1051
+ # defined in the OpenSearch spec. Valid parameter values are:
1052
+ # * `"off"`: Disable SafeSearch
1053
+ # * `"active"`: Enable SafeSearch
1054
+ # Corresponds to the JSON property `safe`
1055
+ # @return [String]
1056
+ attr_accessor :safe
1057
+
1058
+ # The search terms entered by the user.
1059
+ # Corresponds to the JSON property `searchTerms`
1060
+ # @return [String]
1061
+ attr_accessor :search_terms
1062
+
1063
+ # Allowed values are `web` or `image`. If unspecified, results are limited
1064
+ # to webpages.
1065
+ # Corresponds to the JSON property `searchType`
1066
+ # @return [String]
1067
+ attr_accessor :search_type
1068
+
1069
+ # Restricts results to URLs from a specified site.
1070
+ # Corresponds to the JSON property `siteSearch`
1071
+ # @return [String]
1072
+ attr_accessor :site_search
1073
+
1074
+ # Specifies whether to include or exclude results from the site named in
1075
+ # the `sitesearch` parameter. Supported values are:
1076
+ # * `i`: include content from site
1077
+ # * `e`: exclude content from site
1078
+ # Corresponds to the JSON property `siteSearchFilter`
1079
+ # @return [String]
1080
+ attr_accessor :site_search_filter
1081
+
1082
+ # Specifies that results should be sorted according to the specified
1083
+ # expression. For example, sort by date.
1084
+ # Corresponds to the JSON property `sort`
1085
+ # @return [String]
1086
+ attr_accessor :sort
1087
+
1088
+ # The index of the current set of search results into the total set of
1089
+ # results, where the index of the first result is 1.
1090
+ # Corresponds to the JSON property `startIndex`
1091
+ # @return [Fixnum]
1092
+ attr_accessor :start_index
1093
+
1094
+ # The page number of this set of results, where the page length is set by
1095
+ # the `count` property.
1096
+ # Corresponds to the JSON property `startPage`
1097
+ # @return [Fixnum]
1098
+ attr_accessor :start_page
1099
+
1100
+ # A description of the query.
1101
+ # Corresponds to the JSON property `title`
1102
+ # @return [String]
1103
+ attr_accessor :title
1104
+
1105
+ # Estimated number of total search results. May not be accurate.
1106
+ # Corresponds to the JSON property `totalResults`
1107
+ # @return [Fixnum]
1108
+ attr_accessor :total_results
1109
+
1110
+ def initialize(**args)
1111
+ update!(**args)
1112
+ end
1113
+
1114
+ # Update properties of this object
1115
+ def update!(**args)
1116
+ @count = args[:count] if args.key?(:count)
1117
+ @cr = args[:cr] if args.key?(:cr)
1118
+ @cx = args[:cx] if args.key?(:cx)
1119
+ @date_restrict = args[:date_restrict] if args.key?(:date_restrict)
1120
+ @disable_cn_tw_translation = args[:disable_cn_tw_translation] if args.key?(:disable_cn_tw_translation)
1121
+ @exact_terms = args[:exact_terms] if args.key?(:exact_terms)
1122
+ @exclude_terms = args[:exclude_terms] if args.key?(:exclude_terms)
1123
+ @file_type = args[:file_type] if args.key?(:file_type)
1124
+ @filter = args[:filter] if args.key?(:filter)
1125
+ @gl = args[:gl] if args.key?(:gl)
1126
+ @google_host = args[:google_host] if args.key?(:google_host)
1127
+ @high_range = args[:high_range] if args.key?(:high_range)
1128
+ @hl = args[:hl] if args.key?(:hl)
1129
+ @hq = args[:hq] if args.key?(:hq)
1130
+ @img_color_type = args[:img_color_type] if args.key?(:img_color_type)
1131
+ @img_dominant_color = args[:img_dominant_color] if args.key?(:img_dominant_color)
1132
+ @img_size = args[:img_size] if args.key?(:img_size)
1133
+ @img_type = args[:img_type] if args.key?(:img_type)
1134
+ @input_encoding = args[:input_encoding] if args.key?(:input_encoding)
1135
+ @language = args[:language] if args.key?(:language)
1136
+ @link_site = args[:link_site] if args.key?(:link_site)
1137
+ @low_range = args[:low_range] if args.key?(:low_range)
1138
+ @or_terms = args[:or_terms] if args.key?(:or_terms)
1139
+ @output_encoding = args[:output_encoding] if args.key?(:output_encoding)
1140
+ @related_site = args[:related_site] if args.key?(:related_site)
1141
+ @rights = args[:rights] if args.key?(:rights)
1142
+ @safe = args[:safe] if args.key?(:safe)
1143
+ @search_terms = args[:search_terms] if args.key?(:search_terms)
1144
+ @search_type = args[:search_type] if args.key?(:search_type)
1145
+ @site_search = args[:site_search] if args.key?(:site_search)
1146
+ @site_search_filter = args[:site_search_filter] if args.key?(:site_search_filter)
1147
+ @sort = args[:sort] if args.key?(:sort)
1148
+ @start_index = args[:start_index] if args.key?(:start_index)
1149
+ @start_page = args[:start_page] if args.key?(:start_page)
1150
+ @title = args[:title] if args.key?(:title)
1151
+ @total_results = args[:total_results] if args.key?(:total_results)
1152
+ end
1153
+ end
1154
+
1155
+ # Custom search request metadata.
1156
+ class Request
1157
+ include Google::Apis::Core::Hashable
1158
+
1159
+ # Number of search results returned in this set.
1160
+ # Corresponds to the JSON property `count`
1161
+ # @return [Fixnum]
1162
+ attr_accessor :count
1163
+
1164
+ # Restricts search results to documents originating in a particular
1165
+ # country. You may use [Boolean
1166
+ # operators](https://developers.google.com/custom-search/docs/xml_results#
1167
+ # booleanOperators)
1168
+ # in the `cr` parameter's value.
1169
+ # Google WebSearch determines the country of a document by analyzing the
1170
+ # following:
1171
+ # * The top-level domain (TLD) of the document's URL.
1172
+ # * The geographic location of the web server's IP address.
1173
+ # See [Country (cr) Parameter
1174
+ # Values](https://developers.google.com/custom-search/docs/xml_results#
1175
+ # countryCollections)
1176
+ # for a list of valid values for this parameter.
1177
+ # Corresponds to the JSON property `cr`
1178
+ # @return [String]
1179
+ attr_accessor :cr
1180
+
1181
+ # The identifier of a custom search engine created using the Custom Search
1182
+ # [Control Panel](https://cse.google.com/). This is a custom property not
1183
+ # defined in the OpenSearch spec. This parameter is **required**.
1184
+ # Corresponds to the JSON property `cx`
1185
+ # @return [String]
1186
+ attr_accessor :cx
1187
+
1188
+ # Restricts results to URLs based on date. Supported values include:
1189
+ # * `d[number]`: requests results from the specified number of past days.
1190
+ # * `w[number]`: requests results from the specified number of past weeks.
1191
+ # * `m[number]`: requests results from the specified number of past months.
1192
+ # * `y[number]`: requests results from the specified number of past years.
1193
+ # Corresponds to the JSON property `dateRestrict`
1194
+ # @return [String]
1195
+ attr_accessor :date_restrict
1196
+
1197
+ # Enables or disables the [Simplified and Traditional Chinese
1198
+ # Search](https://developers.google.com/custom-search/docs/xml_results#
1199
+ # chineseSearch)
1200
+ # feature.
1201
+ # Supported values are:
1202
+ # * `0`: enabled (default)
1203
+ # * `1`: disabled
1204
+ # Corresponds to the JSON property `disableCnTwTranslation`
1205
+ # @return [String]
1206
+ attr_accessor :disable_cn_tw_translation
1207
+
1208
+ # Identifies a phrase that all documents in the search results must
1209
+ # contain.
1210
+ # Corresponds to the JSON property `exactTerms`
1211
+ # @return [String]
1212
+ attr_accessor :exact_terms
1213
+
1214
+ # Identifies a word or phrase that should not appear in any documents in
1215
+ # the search results.
1216
+ # Corresponds to the JSON property `excludeTerms`
1217
+ # @return [String]
1218
+ attr_accessor :exclude_terms
1219
+
1220
+ # Restricts results to files of a specified extension. Filetypes supported
1221
+ # by Google include:
1222
+ # * Adobe Portable Document Format (`pdf`)
1223
+ # * Adobe PostScript (`ps`)
1224
+ # * Lotus 1-2-3 (`wk1`, `wk2`, `wk3`, `wk4`, `wk5`, `wki`, `wks`, `wku`)
1225
+ # * Lotus WordPro (`lwp`)
1226
+ # * Macwrite (`mw`)
1227
+ # * Microsoft Excel (`xls`)
1228
+ # * Microsoft PowerPoint (`ppt`)
1229
+ # * Microsoft Word (`doc`)
1230
+ # * Microsoft Works (`wks`, `wps`, `wdb`)
1231
+ # * Microsoft Write (`wri`)
1232
+ # * Rich Text Format (`rtf`)
1233
+ # * Shockwave Flash (`swf`)
1234
+ # * Text (`ans`, `txt`).
1235
+ # Additional filetypes may be added in the future. An up-to-date list can
1236
+ # always be found in Google's [file type
1237
+ # FAQ](https://support.google.com/webmasters/answer/35287).
1238
+ # Corresponds to the JSON property `fileType`
1239
+ # @return [String]
1240
+ attr_accessor :file_type
1241
+
1242
+ # Activates or deactivates the automatic filtering of Google search
1243
+ # results. See [Automatic
1244
+ # Filtering](https://developers.google.com/custom-search/docs/xml_results#
1245
+ # automaticFiltering)
1246
+ # for more information about Google's search results filters. Valid values
1247
+ # for this parameter are:
1248
+ # * `0`: Disabled
1249
+ # * `1`: Enabled (default)
1250
+ # **Note**: By default, Google applies filtering to all search results to
1251
+ # improve the quality of those results.
1252
+ # Corresponds to the JSON property `filter`
1253
+ # @return [String]
1254
+ attr_accessor :filter
1255
+
1256
+ # Boosts search results whose country of origin matches the parameter
1257
+ # value. See [Country
1258
+ # Codes](https://developers.google.com/custom-search/docs/xml_results#
1259
+ # countryCodes)
1260
+ # for a list of valid values.
1261
+ # Specifying a `gl` parameter value in WebSearch requests should improve
1262
+ # the relevance of results. This is particularly true for international
1263
+ # customers and, even more specifically, for customers in English-speaking
1264
+ # countries other than the United States.
1265
+ # Corresponds to the JSON property `gl`
1266
+ # @return [String]
1267
+ attr_accessor :gl
1268
+
1269
+ # Specifies the Google domain (for example, google.com, google.de, or
1270
+ # google.fr) to which the search should be limited.
1271
+ # Corresponds to the JSON property `googleHost`
1272
+ # @return [String]
1273
+ attr_accessor :google_host
1274
+
1275
+ # Specifies the ending value for a search range. Use `cse:lowRange` and
1276
+ # `cse:highrange` to append an inclusive search range of
1277
+ # `lowRange...highRange` to the query.
1278
+ # Corresponds to the JSON property `highRange`
1279
+ # @return [String]
1280
+ attr_accessor :high_range
1281
+
1282
+ # Specifies the interface language (host language) of your user interface.
1283
+ # Explicitly setting this parameter improves the performance and the
1284
+ # quality of your search results.
1285
+ # See the [Interface
1286
+ # Languages](https://developers.google.com/custom-search/docs/xml_results#
1287
+ # wsInterfaceLanguages)
1288
+ # section of [Internationalizing Queries and Results
1289
+ # Presentation](https://developers.google.com/custom-search/docs/xml_results#
1290
+ # wsInternationalizing)
1291
+ # for more information, and [Supported Interface
1292
+ # Languages](https://developers.google.com/custom-search/docs/
1293
+ # xml_results_appendices#interfaceLanguages)
1294
+ # for a list of supported languages.
1295
+ # Corresponds to the JSON property `hl`
1296
+ # @return [String]
1297
+ attr_accessor :hl
1298
+
1299
+ # Appends the specified query terms to the query, as if they were combined
1300
+ # with a logical `AND` operator.
1301
+ # Corresponds to the JSON property `hq`
1302
+ # @return [String]
1303
+ attr_accessor :hq
1304
+
1305
+ # Restricts results to images of a specified color type. Supported values
1306
+ # are:
1307
+ # * `mono` (black and white)
1308
+ # * `gray` (grayscale)
1309
+ # * `color` (color)
1310
+ # Corresponds to the JSON property `imgColorType`
1311
+ # @return [String]
1312
+ attr_accessor :img_color_type
1313
+
1314
+ # Restricts results to images with a specific dominant color. Supported
1315
+ # values are:
1316
+ # * `red`
1317
+ # * `orange`
1318
+ # * `yellow`
1319
+ # * `green`
1320
+ # * `teal`
1321
+ # * `blue`
1322
+ # * `purple`
1323
+ # * `pink`
1324
+ # * `white`
1325
+ # * `gray`
1326
+ # * `black`
1327
+ # * `brown`
1328
+ # Corresponds to the JSON property `imgDominantColor`
1329
+ # @return [String]
1330
+ attr_accessor :img_dominant_color
1331
+
1332
+ # Restricts results to images of a specified size. Supported values are:
1333
+ # * `icon` (small)
1334
+ # * `small | medium | large | xlarge` (medium)
1335
+ # * `xxlarge` (large)
1336
+ # * `huge` (extra-large)
1337
+ # Corresponds to the JSON property `imgSize`
1338
+ # @return [String]
1339
+ attr_accessor :img_size
1340
+
1341
+ # Restricts results to images of a specified type. Supported values are:
1342
+ # * `clipart` (Clip art)
1343
+ # * `face` (Face)
1344
+ # * `lineart` (Line drawing)
1345
+ # * `photo` (Photo)
1346
+ # * `animated` (Animated)
1347
+ # * `stock` (Stock)
1348
+ # Corresponds to the JSON property `imgType`
1349
+ # @return [String]
1350
+ attr_accessor :img_type
1351
+
1352
+ # The character encoding supported for search requests.
1353
+ # Corresponds to the JSON property `inputEncoding`
1354
+ # @return [String]
1355
+ attr_accessor :input_encoding
1356
+
1357
+ # The language of the search results.
1358
+ # Corresponds to the JSON property `language`
1359
+ # @return [String]
1360
+ attr_accessor :language
1361
+
1362
+ # Specifies that all results should contain a link to a specific URL.
1363
+ # Corresponds to the JSON property `linkSite`
1364
+ # @return [String]
1365
+ attr_accessor :link_site
1366
+
1367
+ # Specifies the starting value for a search range. Use `cse:lowRange` and
1368
+ # `cse:highrange` to append an inclusive search range of
1369
+ # `lowRange...highRange` to the query.
1370
+ # Corresponds to the JSON property `lowRange`
1371
+ # @return [String]
1372
+ attr_accessor :low_range
1373
+
1374
+ # Provides additional search terms to check for in a document, where each
1375
+ # document in the search results must contain at least one of the
1376
+ # additional search terms. You can also use the [Boolean
1377
+ # OR](https://developers.google.com/custom-search/docs/xml_results#BooleanOrqt)
1378
+ # query term for this type of query.
1379
+ # Corresponds to the JSON property `orTerms`
1380
+ # @return [String]
1381
+ attr_accessor :or_terms
1382
+
1383
+ # The character encoding supported for search results.
1384
+ # Corresponds to the JSON property `outputEncoding`
1385
+ # @return [String]
1386
+ attr_accessor :output_encoding
1387
+
1388
+ # Specifies that all search results should be pages that are related to the
1389
+ # specified URL. The parameter value should be a URL.
1390
+ # Corresponds to the JSON property `relatedSite`
1391
+ # @return [String]
1392
+ attr_accessor :related_site
1393
+
1394
+ # Filters based on licensing. Supported values include:
1395
+ # * `cc_publicdomain`
1396
+ # * `cc_attribute`
1397
+ # * `cc_sharealike`
1398
+ # * `cc_noncommercial`
1399
+ # * `cc_nonderived`
1400
+ # Corresponds to the JSON property `rights`
1401
+ # @return [String]
1402
+ attr_accessor :rights
1403
+
1404
+ # Specifies the [SafeSearch
1405
+ # level](https://developers.google.com/custom-search/docs/xml_results#
1406
+ # safeSearchLevels)
1407
+ # used for filtering out adult results. This is a custom property not
1408
+ # defined in the OpenSearch spec. Valid parameter values are:
1409
+ # * `"off"`: Disable SafeSearch
1410
+ # * `"active"`: Enable SafeSearch
1411
+ # Corresponds to the JSON property `safe`
1412
+ # @return [String]
1413
+ attr_accessor :safe
1414
+
1415
+ # The search terms entered by the user.
1416
+ # Corresponds to the JSON property `searchTerms`
1417
+ # @return [String]
1418
+ attr_accessor :search_terms
1419
+
1420
+ # Allowed values are `web` or `image`. If unspecified, results are limited
1421
+ # to webpages.
1422
+ # Corresponds to the JSON property `searchType`
1423
+ # @return [String]
1424
+ attr_accessor :search_type
1425
+
1426
+ # Restricts results to URLs from a specified site.
1427
+ # Corresponds to the JSON property `siteSearch`
1428
+ # @return [String]
1429
+ attr_accessor :site_search
1430
+
1431
+ # Specifies whether to include or exclude results from the site named in
1432
+ # the `sitesearch` parameter. Supported values are:
1433
+ # * `i`: include content from site
1434
+ # * `e`: exclude content from site
1435
+ # Corresponds to the JSON property `siteSearchFilter`
1436
+ # @return [String]
1437
+ attr_accessor :site_search_filter
1438
+
1439
+ # Specifies that results should be sorted according to the specified
1440
+ # expression. For example, sort by date.
1441
+ # Corresponds to the JSON property `sort`
1442
+ # @return [String]
1443
+ attr_accessor :sort
1444
+
1445
+ # The index of the current set of search results into the total set of
1446
+ # results, where the index of the first result is 1.
1447
+ # Corresponds to the JSON property `startIndex`
1448
+ # @return [Fixnum]
1449
+ attr_accessor :start_index
1450
+
1451
+ # The page number of this set of results, where the page length is set by
1452
+ # the `count` property.
1453
+ # Corresponds to the JSON property `startPage`
1454
+ # @return [Fixnum]
1455
+ attr_accessor :start_page
1456
+
1457
+ # A description of the query.
1458
+ # Corresponds to the JSON property `title`
1459
+ # @return [String]
1460
+ attr_accessor :title
1461
+
1462
+ # Estimated number of total search results. May not be accurate.
1463
+ # Corresponds to the JSON property `totalResults`
1464
+ # @return [Fixnum]
1465
+ attr_accessor :total_results
1466
+
1467
+ def initialize(**args)
1468
+ update!(**args)
1469
+ end
1470
+
1471
+ # Update properties of this object
1472
+ def update!(**args)
1473
+ @count = args[:count] if args.key?(:count)
1474
+ @cr = args[:cr] if args.key?(:cr)
1475
+ @cx = args[:cx] if args.key?(:cx)
1476
+ @date_restrict = args[:date_restrict] if args.key?(:date_restrict)
1477
+ @disable_cn_tw_translation = args[:disable_cn_tw_translation] if args.key?(:disable_cn_tw_translation)
1478
+ @exact_terms = args[:exact_terms] if args.key?(:exact_terms)
1479
+ @exclude_terms = args[:exclude_terms] if args.key?(:exclude_terms)
1480
+ @file_type = args[:file_type] if args.key?(:file_type)
1481
+ @filter = args[:filter] if args.key?(:filter)
1482
+ @gl = args[:gl] if args.key?(:gl)
1483
+ @google_host = args[:google_host] if args.key?(:google_host)
1484
+ @high_range = args[:high_range] if args.key?(:high_range)
1485
+ @hl = args[:hl] if args.key?(:hl)
1486
+ @hq = args[:hq] if args.key?(:hq)
1487
+ @img_color_type = args[:img_color_type] if args.key?(:img_color_type)
1488
+ @img_dominant_color = args[:img_dominant_color] if args.key?(:img_dominant_color)
1489
+ @img_size = args[:img_size] if args.key?(:img_size)
1490
+ @img_type = args[:img_type] if args.key?(:img_type)
1491
+ @input_encoding = args[:input_encoding] if args.key?(:input_encoding)
1492
+ @language = args[:language] if args.key?(:language)
1493
+ @link_site = args[:link_site] if args.key?(:link_site)
1494
+ @low_range = args[:low_range] if args.key?(:low_range)
1495
+ @or_terms = args[:or_terms] if args.key?(:or_terms)
1496
+ @output_encoding = args[:output_encoding] if args.key?(:output_encoding)
1497
+ @related_site = args[:related_site] if args.key?(:related_site)
1498
+ @rights = args[:rights] if args.key?(:rights)
1499
+ @safe = args[:safe] if args.key?(:safe)
1500
+ @search_terms = args[:search_terms] if args.key?(:search_terms)
1501
+ @search_type = args[:search_type] if args.key?(:search_type)
1502
+ @site_search = args[:site_search] if args.key?(:site_search)
1503
+ @site_search_filter = args[:site_search_filter] if args.key?(:site_search_filter)
1504
+ @sort = args[:sort] if args.key?(:sort)
1505
+ @start_index = args[:start_index] if args.key?(:start_index)
1506
+ @start_page = args[:start_page] if args.key?(:start_page)
1507
+ @title = args[:title] if args.key?(:title)
1508
+ @total_results = args[:total_results] if args.key?(:total_results)
1509
+ end
1510
+ end
1511
+ end
1512
+
1513
+ # Metadata about a search operation.
677
1514
  class SearchInformation
678
1515
  include Google::Apis::Core::Hashable
679
1516
 
680
- #
1517
+ # The time taken for the server to return search results, formatted
1518
+ # according to locale style.
681
1519
  # Corresponds to the JSON property `formattedSearchTime`
682
1520
  # @return [String]
683
1521
  attr_accessor :formatted_search_time
684
1522
 
685
- #
1523
+ # The total number of search results, formatted according to locale style.
686
1524
  # Corresponds to the JSON property `formattedTotalResults`
687
1525
  # @return [String]
688
1526
  attr_accessor :formatted_total_results
689
1527
 
690
- #
1528
+ # The time taken for the server to return search results.
691
1529
  # Corresponds to the JSON property `searchTime`
692
1530
  # @return [Float]
693
1531
  attr_accessor :search_time
694
1532
 
695
- #
1533
+ # The total number of search results returned by the query.
696
1534
  # Corresponds to the JSON property `totalResults`
697
- # @return [Fixnum]
1535
+ # @return [String]
698
1536
  attr_accessor :total_results
699
1537
 
700
1538
  def initialize(**args)
@@ -710,16 +1548,16 @@ module Google
710
1548
  end
711
1549
  end
712
1550
 
713
- #
1551
+ # Spell correction information for a query.
714
1552
  class Spelling
715
1553
  include Google::Apis::Core::Hashable
716
1554
 
717
- #
1555
+ # The corrected query.
718
1556
  # Corresponds to the JSON property `correctedQuery`
719
1557
  # @return [String]
720
1558
  attr_accessor :corrected_query
721
1559
 
722
- #
1560
+ # The corrected query, formatted in HTML.
723
1561
  # Corresponds to the JSON property `htmlCorrectedQuery`
724
1562
  # @return [String]
725
1563
  attr_accessor :html_corrected_query
@@ -735,16 +1573,19 @@ module Google
735
1573
  end
736
1574
  end
737
1575
 
738
- #
1576
+ # OpenSearch template and URL.
739
1577
  class Url
740
1578
  include Google::Apis::Core::Hashable
741
1579
 
742
- #
1580
+ # The actual [OpenSearch
1581
+ # template](http://www.opensearch.org/specifications/opensearch/1.1#
1582
+ # opensearch_url_template_syntax)
1583
+ # for this API.
743
1584
  # Corresponds to the JSON property `template`
744
1585
  # @return [String]
745
1586
  attr_accessor :template
746
1587
 
747
- #
1588
+ # The MIME type of the OpenSearch URL template for the Custom Search API.
748
1589
  # Corresponds to the JSON property `type`
749
1590
  # @return [String]
750
1591
  attr_accessor :type