google-api-client 0.41.0 → 0.42.2

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