google-api-client 0.41.0 → 0.42.2

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