google-api-client 0.37.3 → 0.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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