google-api-client 0.8.3 → 0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (497) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +22 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +52 -2
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +35 -1
  11. data/MIGRATING.md +171 -0
  12. data/README.md +181 -148
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +1036 -0
  15. data/api_names_out.yaml +26053 -0
  16. data/bin/generate-api +95 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  21. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/service.rb +668 -0
  24. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  25. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  26. data/generated/google/apis/admin_datatransfer_v1/representations.rb +118 -0
  27. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  28. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  29. data/generated/google/apis/admin_directory_v1/classes.rb +3141 -0
  30. data/generated/google/apis/admin_directory_v1/representations.rb +1029 -0
  31. data/generated/google/apis/admin_directory_v1/service.rb +3818 -0
  32. data/generated/google/apis/admin_directory_v1.rb +113 -0
  33. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  34. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  35. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  36. data/generated/google/apis/admin_reports_v1.rb +38 -0
  37. data/generated/google/apis/adsense_v1_4/classes.rb +1285 -0
  38. data/generated/google/apis/adsense_v1_4/representations.rb +494 -0
  39. data/generated/google/apis/adsense_v1_4/service.rb +1714 -0
  40. data/generated/google/apis/adsense_v1_4.rb +38 -0
  41. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  42. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  43. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  44. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  45. data/generated/google/apis/analytics_v3/classes.rb +5118 -0
  46. data/generated/google/apis/analytics_v3/representations.rb +1662 -0
  47. data/generated/google/apis/analytics_v3/service.rb +3568 -0
  48. data/generated/google/apis/analytics_v3.rb +49 -0
  49. data/generated/google/apis/androidenterprise_v1/classes.rb +1443 -0
  50. data/generated/google/apis/androidenterprise_v1/representations.rb +538 -0
  51. data/generated/google/apis/androidenterprise_v1/service.rb +2602 -0
  52. data/generated/google/apis/androidenterprise_v1.rb +35 -0
  53. data/generated/google/apis/androidpublisher_v2/classes.rb +1411 -0
  54. data/generated/google/apis/androidpublisher_v2/representations.rb +646 -0
  55. data/generated/google/apis/androidpublisher_v2/service.rb +2338 -0
  56. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  57. data/generated/google/apis/appengine_v1beta4/classes.rb +1532 -0
  58. data/generated/google/apis/appengine_v1beta4/representations.rb +526 -0
  59. data/generated/google/apis/appengine_v1beta4/service.rb +476 -0
  60. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  61. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  62. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  63. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  64. data/generated/google/apis/appsactivity_v1.rb +46 -0
  65. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  66. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  67. data/generated/google/apis/appstate_v1/service.rb +260 -0
  68. data/generated/google/apis/appstate_v1.rb +34 -0
  69. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  70. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  71. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  72. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  73. data/generated/google/apis/bigquery_v2/classes.rb +2471 -0
  74. data/generated/google/apis/bigquery_v2/representations.rb +816 -0
  75. data/generated/google/apis/bigquery_v2/service.rb +982 -0
  76. data/generated/google/apis/bigquery_v2.rb +52 -0
  77. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  78. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  79. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  80. data/generated/google/apis/blogger_v3.rb +37 -0
  81. data/generated/google/apis/books_v1/classes.rb +3956 -0
  82. data/generated/google/apis/books_v1/representations.rb +1538 -0
  83. data/generated/google/apis/books_v1/service.rb +2290 -0
  84. data/generated/google/apis/books_v1.rb +34 -0
  85. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  86. data/generated/google/apis/calendar_v3/representations.rb +567 -0
  87. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  88. data/generated/google/apis/calendar_v3.rb +37 -0
  89. data/generated/google/apis/civicinfo_v2/classes.rb +1127 -0
  90. data/generated/google/apis/civicinfo_v2/representations.rb +383 -0
  91. data/generated/google/apis/civicinfo_v2/service.rb +279 -0
  92. data/{lib/google/api_client/service_account.rb → generated/google/apis/civicinfo_v2.rb} +18 -8
  93. data/generated/google/apis/classroom_v1/classes.rb +512 -0
  94. data/generated/google/apis/classroom_v1/representations.rb +217 -0
  95. data/generated/google/apis/classroom_v1/service.rb +970 -0
  96. data/generated/google/apis/classroom_v1.rb +49 -0
  97. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  98. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  99. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  100. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  101. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  102. data/generated/google/apis/cloudbilling_v1/representations.rb +79 -0
  103. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  104. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  105. data/generated/google/apis/clouddebugger_v2/classes.rb +1004 -0
  106. data/generated/google/apis/clouddebugger_v2/representations.rb +410 -0
  107. data/generated/google/apis/clouddebugger_v2/service.rb +370 -0
  108. data/generated/google/apis/clouddebugger_v2.rb +41 -0
  109. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  110. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  111. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  112. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  113. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +437 -0
  114. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +188 -0
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +623 -0
  116. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  117. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  118. data/generated/google/apis/cloudtrace_v1/representations.rb +92 -0
  119. data/generated/google/apis/cloudtrace_v1/service.rb +190 -0
  120. data/generated/google/apis/cloudtrace_v1.rb +35 -0
  121. data/generated/google/apis/clouduseraccounts_beta/classes.rb +823 -0
  122. data/generated/google/apis/clouduseraccounts_beta/representations.rb +313 -0
  123. data/generated/google/apis/clouduseraccounts_beta/service.rb +854 -0
  124. data/generated/google/apis/clouduseraccounts_beta.rb +43 -0
  125. data/generated/google/apis/compute_beta/classes.rb +9128 -0
  126. data/generated/google/apis/compute_beta/representations.rb +3048 -0
  127. data/generated/google/apis/compute_beta/service.rb +10154 -0
  128. data/generated/google/apis/compute_beta.rb +49 -0
  129. data/generated/google/apis/compute_v1/classes.rb +8681 -0
  130. data/generated/google/apis/compute_v1/representations.rb +2895 -0
  131. data/generated/google/apis/compute_v1/service.rb +9252 -0
  132. data/generated/google/apis/compute_v1.rb +49 -0
  133. data/generated/google/apis/container_v1/classes.rb +463 -0
  134. data/generated/google/apis/container_v1/representations.rb +175 -0
  135. data/generated/google/apis/container_v1/service.rb +367 -0
  136. data/generated/google/apis/container_v1.rb +35 -0
  137. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  138. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  139. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  140. data/generated/google/apis/container_v1beta1.rb +35 -0
  141. data/generated/google/apis/content_v2/classes.rb +5986 -0
  142. data/generated/google/apis/content_v2/representations.rb +2288 -0
  143. data/generated/google/apis/content_v2/service.rb +2338 -0
  144. data/generated/google/apis/content_v2.rb +35 -0
  145. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  146. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  147. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  148. data/generated/google/apis/coordinate_v1.rb +37 -0
  149. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  150. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  151. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  152. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  153. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  154. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  155. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  156. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  157. data/generated/google/apis/deploymentmanager_v2/classes.rb +1091 -0
  158. data/generated/google/apis/deploymentmanager_v2/representations.rb +422 -0
  159. data/generated/google/apis/deploymentmanager_v2/service.rb +857 -0
  160. data/generated/google/apis/deploymentmanager_v2.rb +44 -0
  161. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  162. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  163. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  164. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  165. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  166. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  167. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  168. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  169. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  170. data/generated/google/apis/discovery_v1/representations.rb +357 -0
  171. data/generated/google/apis/discovery_v1/service.rb +142 -0
  172. data/generated/google/apis/discovery_v1.rb +32 -0
  173. data/generated/google/apis/dns_v1/classes.rb +406 -0
  174. data/generated/google/apis/dns_v1/representations.rb +151 -0
  175. data/generated/google/apis/dns_v1/service.rb +454 -0
  176. data/generated/google/apis/dns_v1.rb +44 -0
  177. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +716 -0
  178. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +298 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +341 -0
  180. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  181. data/generated/google/apis/doubleclicksearch_v2/classes.rb +956 -0
  182. data/generated/google/apis/doubleclicksearch_v2/representations.rb +316 -0
  183. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  184. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  185. data/generated/google/apis/drive_v2/classes.rb +2562 -0
  186. data/generated/google/apis/drive_v2/representations.rb +795 -0
  187. data/generated/google/apis/drive_v2/service.rb +2696 -0
  188. data/generated/google/apis/drive_v2.rb +58 -0
  189. data/generated/google/apis/drive_v3/classes.rb +1534 -0
  190. data/generated/google/apis/drive_v3/representations.rb +497 -0
  191. data/generated/google/apis/drive_v3/service.rb +1541 -0
  192. data/generated/google/apis/drive_v3.rb +55 -0
  193. data/generated/google/apis/fitness_v1/classes.rb +885 -0
  194. data/generated/google/apis/fitness_v1/representations.rb +320 -0
  195. data/generated/google/apis/fitness_v1/service.rb +675 -0
  196. data/generated/google/apis/fitness_v1.rb +49 -0
  197. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  198. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  199. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  200. data/generated/google/apis/fusiontables_v2.rb +37 -0
  201. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  202. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  203. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  204. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  205. data/generated/google/apis/games_management_v1management/classes.rb +524 -0
  206. data/generated/google/apis/games_management_v1management/representations.rb +231 -0
  207. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  208. data/generated/google/apis/games_management_v1management.rb +37 -0
  209. data/generated/google/apis/games_v1/classes.rb +4617 -0
  210. data/generated/google/apis/games_v1/representations.rb +1584 -0
  211. data/generated/google/apis/games_v1/service.rb +2290 -0
  212. data/generated/google/apis/games_v1.rb +40 -0
  213. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  214. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  215. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  216. data/generated/google/apis/gan_v1beta1.rb +31 -0
  217. data/generated/google/apis/genomics_v1/classes.rb +2609 -0
  218. data/generated/google/apis/genomics_v1/representations.rb +909 -0
  219. data/generated/google/apis/genomics_v1/service.rb +1676 -0
  220. data/generated/google/apis/genomics_v1.rb +49 -0
  221. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  222. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  223. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  224. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  225. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  226. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  227. data/generated/google/apis/gmail_v1/service.rb +1470 -0
  228. data/generated/google/apis/gmail_v1.rb +52 -0
  229. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  230. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  231. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  232. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  233. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  234. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  235. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  236. data/generated/google/apis/groupssettings_v1.rb +34 -0
  237. data/generated/google/apis/identitytoolkit_v3/classes.rb +1466 -0
  238. data/generated/google/apis/identitytoolkit_v3/representations.rb +509 -0
  239. data/generated/google/apis/identitytoolkit_v3/service.rb +581 -0
  240. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  241. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  242. data/generated/google/apis/kgsearch_v1/representations.rb +39 -0
  243. data/generated/google/apis/kgsearch_v1/service.rb +111 -0
  244. data/{spec/google/api_client/request_spec.rb → generated/google/apis/kgsearch_v1.rb} +16 -13
  245. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  246. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  247. data/generated/google/apis/licensing_v1/service.rb +369 -0
  248. data/generated/google/apis/licensing_v1.rb +34 -0
  249. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  250. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  251. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  252. data/generated/google/apis/logging_v1beta3.rb +47 -0
  253. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  254. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  255. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  256. data/generated/google/apis/manager_v1beta2.rb +53 -0
  257. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  258. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  259. data/generated/google/apis/mapsengine_v1/service.rb +3388 -0
  260. data/generated/google/apis/mapsengine_v1.rb +38 -0
  261. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  262. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  263. data/generated/google/apis/mirror_v1/service.rb +977 -0
  264. data/generated/google/apis/mirror_v1.rb +37 -0
  265. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  266. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  267. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  268. data/generated/google/apis/oauth2_v2.rb +43 -0
  269. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  270. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  271. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  272. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  273. data/generated/google/apis/partners_v2/classes.rb +942 -0
  274. data/generated/google/apis/partners_v2/representations.rb +402 -0
  275. data/generated/google/apis/partners_v2/service.rb +400 -0
  276. data/generated/google/apis/partners_v2.rb +32 -0
  277. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  278. data/generated/google/apis/plus_domains_v1/representations.rb +987 -0
  279. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  280. data/generated/google/apis/plus_domains_v1.rb +61 -0
  281. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  282. data/generated/google/apis/plus_v1/representations.rb +805 -0
  283. data/generated/google/apis/plus_v1/service.rb +470 -0
  284. data/generated/google/apis/plus_v1.rb +43 -0
  285. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  286. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  287. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  288. data/generated/google/apis/prediction_v1_6.rb +44 -0
  289. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +639 -0
  290. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +274 -0
  291. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +591 -0
  292. data/generated/google/apis/proximitybeacon_v1beta1.rb +31 -0
  293. data/generated/google/apis/pubsub_v1/classes.rb +614 -0
  294. data/generated/google/apis/pubsub_v1/representations.rb +281 -0
  295. data/generated/google/apis/pubsub_v1/service.rb +774 -0
  296. data/generated/google/apis/pubsub_v1.rb +37 -0
  297. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  298. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  299. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  300. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  301. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  302. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  303. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  304. data/generated/google/apis/qpx_express_v1.rb +31 -0
  305. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  306. data/generated/google/apis/replicapool_v1beta2/representations.rb +236 -0
  307. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  308. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  309. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  310. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +264 -0
  311. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +508 -0
  312. data/generated/google/apis/replicapoolupdater_v1beta1.rb +44 -0
  313. data/generated/google/apis/reseller_v1/classes.rb +520 -0
  314. data/generated/google/apis/reseller_v1/representations.rb +200 -0
  315. data/generated/google/apis/reseller_v1/service.rb +623 -0
  316. data/generated/google/apis/reseller_v1.rb +37 -0
  317. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  318. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  319. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  320. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  321. data/generated/google/apis/script_v1/classes.rb +259 -0
  322. data/generated/google/apis/script_v1/representations.rb +106 -0
  323. data/generated/google/apis/script_v1/service.rb +98 -0
  324. data/generated/google/apis/script_v1.rb +61 -0
  325. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  326. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  327. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  328. data/generated/google/apis/site_verification_v1.rb +37 -0
  329. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2001 -0
  330. data/generated/google/apis/sqladmin_v1beta4/representations.rb +758 -0
  331. data/generated/google/apis/sqladmin_v1beta4/service.rb +1625 -0
  332. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  333. data/generated/google/apis/storage_v1/classes.rb +1222 -0
  334. data/generated/google/apis/storage_v1/representations.rb +445 -0
  335. data/generated/google/apis/storage_v1/service.rb +1903 -0
  336. data/generated/google/apis/storage_v1.rb +46 -0
  337. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  338. data/generated/google/apis/storagetransfer_v1/representations.rb +370 -0
  339. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  340. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  341. data/generated/google/apis/tagmanager_v1/classes.rb +1384 -0
  342. data/generated/google/apis/tagmanager_v1/representations.rb +515 -0
  343. data/generated/google/apis/tagmanager_v1/service.rb +1817 -0
  344. data/generated/google/apis/tagmanager_v1.rb +52 -0
  345. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  346. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  347. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  348. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  349. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  350. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  351. data/generated/google/apis/tasks_v1/service.rb +643 -0
  352. data/generated/google/apis/tasks_v1.rb +37 -0
  353. data/generated/google/apis/translate_v2/classes.rb +168 -0
  354. data/generated/google/apis/translate_v2/representations.rb +109 -0
  355. data/generated/google/apis/translate_v2/service.rb +182 -0
  356. data/generated/google/apis/translate_v2.rb +31 -0
  357. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  358. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  359. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  360. data/generated/google/apis/urlshortener_v1.rb +34 -0
  361. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  362. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  363. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  364. data/generated/google/apis/webmasters_v3.rb +37 -0
  365. data/generated/google/apis/youtube_analytics_v1/classes.rb +546 -0
  366. data/generated/google/apis/youtube_analytics_v1/representations.rb +243 -0
  367. data/generated/google/apis/youtube_analytics_v1/service.rb +562 -0
  368. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  369. data/generated/google/apis/youtube_v3/classes.rb +8136 -0
  370. data/generated/google/apis/youtube_v3/representations.rb +2838 -0
  371. data/generated/google/apis/youtube_v3/service.rb +4403 -0
  372. data/generated/google/apis/youtube_v3.rb +49 -0
  373. data/generated/google/apis/youtubereporting_v1/classes.rb +258 -0
  374. data/generated/google/apis/youtubereporting_v1/representations.rb +128 -0
  375. data/generated/google/apis/youtubereporting_v1/service.rb +364 -0
  376. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  377. data/google-api-client.gemspec +27 -39
  378. data/lib/google/api_client/auth/installed_app.rb +7 -5
  379. data/lib/google/api_client/auth/key_utils.rb +12 -11
  380. data/lib/google/api_client/auth/storage.rb +5 -2
  381. data/lib/google/api_client/auth/storages/file_store.rb +2 -3
  382. data/lib/google/api_client/auth/storages/redis_store.rb +7 -2
  383. data/lib/google/api_client/client_secrets.rb +4 -5
  384. data/lib/google/apis/core/api_command.rb +135 -0
  385. data/lib/google/apis/core/base_service.rb +317 -0
  386. data/lib/google/apis/core/batch.rb +239 -0
  387. data/lib/google/apis/core/download.rb +94 -0
  388. data/lib/google/apis/core/hashable.rb +44 -0
  389. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  390. data/lib/google/apis/core/http_command.rb +312 -0
  391. data/lib/google/apis/core/json_representation.rb +127 -0
  392. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  393. data/lib/google/apis/core/multipart.rb +187 -0
  394. data/lib/google/apis/core/upload.rb +288 -0
  395. data/lib/google/{api_client → apis}/errors.rb +39 -28
  396. data/lib/google/apis/generator/annotator.rb +295 -0
  397. data/lib/google/apis/generator/helpers.rb +74 -0
  398. data/lib/google/apis/generator/model.rb +143 -0
  399. data/lib/google/apis/generator/template.rb +124 -0
  400. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  401. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  402. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  403. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  404. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  405. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  406. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  407. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  408. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  409. data/lib/google/apis/generator.rb +70 -0
  410. data/lib/google/apis/options.rb +85 -0
  411. data/lib/google/apis/version.rb +39 -0
  412. data/lib/google/apis.rb +48 -0
  413. data/rakelib/metrics.rake +22 -0
  414. data/rakelib/rubocop.rake +10 -0
  415. data/rakelib/spec.rake +11 -0
  416. data/rakelib/yard.rake +11 -0
  417. data/samples/Gemfile +7 -0
  418. data/samples/README.md +51 -0
  419. data/samples/google-api-samples +32 -0
  420. data/samples/lib/base_cli.rb +94 -0
  421. data/samples/lib/samples/analytics.rb +62 -0
  422. data/samples/lib/samples/calendar.rb +83 -0
  423. data/samples/lib/samples/drive.rb +82 -0
  424. data/samples/lib/samples/gmail.rb +50 -0
  425. data/samples/lib/samples/pubsub.rb +114 -0
  426. data/samples/lib/samples/translate.rb +44 -0
  427. data/samples/lib/samples/you_tube.rb +44 -0
  428. data/script/generate +95 -0
  429. data/script/package +8 -0
  430. data/script/release +15 -0
  431. data/spec/fixtures/files/api_names.yaml +3 -0
  432. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  433. data/spec/fixtures/files/child/.gitignore +0 -0
  434. data/spec/fixtures/files/client_secrets.json +1 -0
  435. data/spec/fixtures/files/invalid.json +1 -0
  436. data/spec/fixtures/files/test.blah +1 -0
  437. data/spec/fixtures/files/test.txt +1 -0
  438. data/spec/fixtures/files/test_api.json +440 -0
  439. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  440. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  441. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  442. data/spec/google/api_client/client_secrets_spec.rb +38 -1
  443. data/spec/google/apis/core/api_command_spec.rb +209 -0
  444. data/spec/google/apis/core/batch_spec.rb +142 -0
  445. data/spec/google/apis/core/download_spec.rb +103 -0
  446. data/spec/google/apis/core/hashable_spec.rb +60 -0
  447. data/spec/google/apis/core/http_command_spec.rb +284 -0
  448. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  449. data/spec/google/apis/core/service_spec.rb +247 -0
  450. data/spec/google/apis/core/upload_spec.rb +300 -0
  451. data/{lib/google/api_client/discovery.rb → spec/google/apis/generated_spec.rb} +13 -5
  452. data/spec/google/apis/generator/generator_spec.rb +272 -0
  453. data/spec/google/apis/logging_spec.rb +45 -0
  454. data/spec/google/apis/options_spec.rb +40 -0
  455. data/spec/integration_tests/adsense_spec.rb +29 -0
  456. data/spec/integration_tests/drive_spec.rb +35 -0
  457. data/spec/integration_tests/pubsub_spec.rb +48 -0
  458. data/spec/integration_tests/url_shortener_spec.rb +45 -0
  459. data/spec/spec_helper/load_path_spec.rb +33 -0
  460. data/spec/spec_helper.rb +131 -44
  461. data/third_party/hurley_patches.rb +103 -0
  462. metadata +533 -170
  463. data/lib/compat/multi_json.rb +0 -19
  464. data/lib/google/api_client/auth/file_storage.rb +0 -59
  465. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  466. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  467. data/lib/google/api_client/batch.rb +0 -325
  468. data/lib/google/api_client/charset.rb +0 -33
  469. data/lib/google/api_client/discovery/api.rb +0 -300
  470. data/lib/google/api_client/discovery/media.rb +0 -77
  471. data/lib/google/api_client/discovery/method.rb +0 -363
  472. data/lib/google/api_client/discovery/resource.rb +0 -156
  473. data/lib/google/api_client/discovery/schema.rb +0 -119
  474. data/lib/google/api_client/environment.rb +0 -42
  475. data/lib/google/api_client/gzip.rb +0 -28
  476. data/lib/google/api_client/logging.rb +0 -32
  477. data/lib/google/api_client/media.rb +0 -259
  478. data/lib/google/api_client/railtie.rb +0 -18
  479. data/lib/google/api_client/request.rb +0 -350
  480. data/lib/google/api_client/result.rb +0 -255
  481. data/lib/google/api_client/service/batch.rb +0 -110
  482. data/lib/google/api_client/service/request.rb +0 -144
  483. data/lib/google/api_client/service/resource.rb +0 -40
  484. data/lib/google/api_client/service/result.rb +0 -162
  485. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  486. data/lib/google/api_client/service/stub_generator.rb +0 -61
  487. data/lib/google/api_client/service.rb +0 -233
  488. data/lib/google/api_client.rb +0 -750
  489. data/spec/google/api_client/batch_spec.rb +0 -248
  490. data/spec/google/api_client/discovery_spec.rb +0 -662
  491. data/spec/google/api_client/gzip_spec.rb +0 -98
  492. data/spec/google/api_client/media_spec.rb +0 -178
  493. data/spec/google/api_client/result_spec.rb +0 -207
  494. data/spec/google/api_client/service_account_spec.rb +0 -169
  495. data/spec/google/api_client/service_spec.rb +0 -618
  496. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  497. data/spec/google/api_client_spec.rb +0 -352
@@ -0,0 +1,1127 @@
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 CivicinfoV2
24
+
25
+ # Describes information about a regional election administrative area.
26
+ class AdministrationRegion
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Information about an election administrative body (e.g. County Board of
30
+ # Elections).
31
+ # Corresponds to the JSON property `electionAdministrationBody`
32
+ # @return [Google::Apis::CivicinfoV2::AdministrativeBody]
33
+ attr_accessor :election_administration_body
34
+
35
+ # An ID for this object. IDs may change in future requests and should not be
36
+ # cached. Access to this field requires special access that can be requested
37
+ # from the Request more link on the Quotas page.
38
+ # Corresponds to the JSON property `id`
39
+ # @return [String]
40
+ attr_accessor :id
41
+
42
+ # Describes information about a regional election administrative area.
43
+ # Corresponds to the JSON property `local_jurisdiction`
44
+ # @return [Google::Apis::CivicinfoV2::AdministrationRegion]
45
+ attr_accessor :local_jurisdiction
46
+
47
+ # The name of the jurisdiction.
48
+ # Corresponds to the JSON property `name`
49
+ # @return [String]
50
+ attr_accessor :name
51
+
52
+ # A list of sources for this area. If multiple sources are listed the data has
53
+ # been aggregated from those sources.
54
+ # Corresponds to the JSON property `sources`
55
+ # @return [Array<Google::Apis::CivicinfoV2::Source>]
56
+ attr_accessor :sources
57
+
58
+ def initialize(**args)
59
+ update!(**args)
60
+ end
61
+
62
+ # Update properties of this object
63
+ def update!(**args)
64
+ @election_administration_body = args[:election_administration_body] unless args[:election_administration_body].nil?
65
+ @id = args[:id] unless args[:id].nil?
66
+ @local_jurisdiction = args[:local_jurisdiction] unless args[:local_jurisdiction].nil?
67
+ @name = args[:name] unless args[:name].nil?
68
+ @sources = args[:sources] unless args[:sources].nil?
69
+ end
70
+ end
71
+
72
+ # Information about an election administrative body (e.g. County Board of
73
+ # Elections).
74
+ class AdministrativeBody
75
+ include Google::Apis::Core::Hashable
76
+
77
+ # A URL provided by this administrative body for information on absentee voting.
78
+ # Corresponds to the JSON property `absenteeVotingInfoUrl`
79
+ # @return [String]
80
+ attr_accessor :absentee_voting_info_url
81
+
82
+ # A URL provided by this administrative body to give contest information to the
83
+ # voter.
84
+ # Corresponds to the JSON property `ballotInfoUrl`
85
+ # @return [String]
86
+ attr_accessor :ballot_info_url
87
+
88
+ # A simple representation of an address.
89
+ # Corresponds to the JSON property `correspondenceAddress`
90
+ # @return [Google::Apis::CivicinfoV2::SimpleAddressType]
91
+ attr_accessor :correspondence_address
92
+
93
+ # A URL provided by this administrative body for looking up general election
94
+ # information.
95
+ # Corresponds to the JSON property `electionInfoUrl`
96
+ # @return [String]
97
+ attr_accessor :election_info_url
98
+
99
+ # The election officials for this election administrative body.
100
+ # Corresponds to the JSON property `electionOfficials`
101
+ # @return [Array<Google::Apis::CivicinfoV2::ElectionOfficial>]
102
+ attr_accessor :election_officials
103
+
104
+ # A URL provided by this administrative body for confirming that the voter is
105
+ # registered to vote.
106
+ # Corresponds to the JSON property `electionRegistrationConfirmationUrl`
107
+ # @return [String]
108
+ attr_accessor :election_registration_confirmation_url
109
+
110
+ # A URL provided by this administrative body for looking up how to register to
111
+ # vote.
112
+ # Corresponds to the JSON property `electionRegistrationUrl`
113
+ # @return [String]
114
+ attr_accessor :election_registration_url
115
+
116
+ # A URL provided by this administrative body describing election rules to the
117
+ # voter.
118
+ # Corresponds to the JSON property `electionRulesUrl`
119
+ # @return [String]
120
+ attr_accessor :election_rules_url
121
+
122
+ # A description of the hours of operation for this administrative body.
123
+ # Corresponds to the JSON property `hoursOfOperation`
124
+ # @return [String]
125
+ attr_accessor :hours_of_operation
126
+
127
+ # The name of this election administrative body.
128
+ # Corresponds to the JSON property `name`
129
+ # @return [String]
130
+ attr_accessor :name
131
+
132
+ # A simple representation of an address.
133
+ # Corresponds to the JSON property `physicalAddress`
134
+ # @return [Google::Apis::CivicinfoV2::SimpleAddressType]
135
+ attr_accessor :physical_address
136
+
137
+ # A description of the services this administrative body may provide.
138
+ # Corresponds to the JSON property `voter_services`
139
+ # @return [Array<String>]
140
+ attr_accessor :voter_services
141
+
142
+ # A URL provided by this administrative body for looking up where to vote.
143
+ # Corresponds to the JSON property `votingLocationFinderUrl`
144
+ # @return [String]
145
+ attr_accessor :voting_location_finder_url
146
+
147
+ def initialize(**args)
148
+ update!(**args)
149
+ end
150
+
151
+ # Update properties of this object
152
+ def update!(**args)
153
+ @absentee_voting_info_url = args[:absentee_voting_info_url] unless args[:absentee_voting_info_url].nil?
154
+ @ballot_info_url = args[:ballot_info_url] unless args[:ballot_info_url].nil?
155
+ @correspondence_address = args[:correspondence_address] unless args[:correspondence_address].nil?
156
+ @election_info_url = args[:election_info_url] unless args[:election_info_url].nil?
157
+ @election_officials = args[:election_officials] unless args[:election_officials].nil?
158
+ @election_registration_confirmation_url = args[:election_registration_confirmation_url] unless args[:election_registration_confirmation_url].nil?
159
+ @election_registration_url = args[:election_registration_url] unless args[:election_registration_url].nil?
160
+ @election_rules_url = args[:election_rules_url] unless args[:election_rules_url].nil?
161
+ @hours_of_operation = args[:hours_of_operation] unless args[:hours_of_operation].nil?
162
+ @name = args[:name] unless args[:name].nil?
163
+ @physical_address = args[:physical_address] unless args[:physical_address].nil?
164
+ @voter_services = args[:voter_services] unless args[:voter_services].nil?
165
+ @voting_location_finder_url = args[:voting_location_finder_url] unless args[:voting_location_finder_url].nil?
166
+ end
167
+ end
168
+
169
+ # Information about a candidate running for elected office.
170
+ class Candidate
171
+ include Google::Apis::Core::Hashable
172
+
173
+ # The URL for the candidate's campaign web site.
174
+ # Corresponds to the JSON property `candidateUrl`
175
+ # @return [String]
176
+ attr_accessor :candidate_url
177
+
178
+ # A list of known (social) media channels for this candidate.
179
+ # Corresponds to the JSON property `channels`
180
+ # @return [Array<Google::Apis::CivicinfoV2::Channel>]
181
+ attr_accessor :channels
182
+
183
+ # The email address for the candidate's campaign.
184
+ # Corresponds to the JSON property `email`
185
+ # @return [String]
186
+ attr_accessor :email
187
+
188
+ # The candidate's name.
189
+ # Corresponds to the JSON property `name`
190
+ # @return [String]
191
+ attr_accessor :name
192
+
193
+ # The order the candidate appears on the ballot for this contest.
194
+ # Corresponds to the JSON property `orderOnBallot`
195
+ # @return [String]
196
+ attr_accessor :order_on_ballot
197
+
198
+ # The full name of the party the candidate is a member of.
199
+ # Corresponds to the JSON property `party`
200
+ # @return [String]
201
+ attr_accessor :party
202
+
203
+ # The voice phone number for the candidate's campaign office.
204
+ # Corresponds to the JSON property `phone`
205
+ # @return [String]
206
+ attr_accessor :phone
207
+
208
+ # A URL for a photo of the candidate.
209
+ # Corresponds to the JSON property `photoUrl`
210
+ # @return [String]
211
+ attr_accessor :photo_url
212
+
213
+ def initialize(**args)
214
+ update!(**args)
215
+ end
216
+
217
+ # Update properties of this object
218
+ def update!(**args)
219
+ @candidate_url = args[:candidate_url] unless args[:candidate_url].nil?
220
+ @channels = args[:channels] unless args[:channels].nil?
221
+ @email = args[:email] unless args[:email].nil?
222
+ @name = args[:name] unless args[:name].nil?
223
+ @order_on_ballot = args[:order_on_ballot] unless args[:order_on_ballot].nil?
224
+ @party = args[:party] unless args[:party].nil?
225
+ @phone = args[:phone] unless args[:phone].nil?
226
+ @photo_url = args[:photo_url] unless args[:photo_url].nil?
227
+ end
228
+ end
229
+
230
+ # A social media or web channel for a candidate.
231
+ class Channel
232
+ include Google::Apis::Core::Hashable
233
+
234
+ # The unique public identifier for the candidate's channel.
235
+ # Corresponds to the JSON property `id`
236
+ # @return [String]
237
+ attr_accessor :id
238
+
239
+ # The type of channel. The following is a list of types of channels, but is not
240
+ # exhaustive. More channel types may be added at a later time. One of:
241
+ # GooglePlus, YouTube, Facebook, Twitter
242
+ # Corresponds to the JSON property `type`
243
+ # @return [String]
244
+ attr_accessor :type
245
+
246
+ def initialize(**args)
247
+ update!(**args)
248
+ end
249
+
250
+ # Update properties of this object
251
+ def update!(**args)
252
+ @id = args[:id] unless args[:id].nil?
253
+ @type = args[:type] unless args[:type].nil?
254
+ end
255
+ end
256
+
257
+ # Information about a contest that appears on a voter's ballot.
258
+ class Contest
259
+ include Google::Apis::Core::Hashable
260
+
261
+ # A number specifying the position of this contest on the voter's ballot.
262
+ # Corresponds to the JSON property `ballotPlacement`
263
+ # @return [String]
264
+ attr_accessor :ballot_placement
265
+
266
+ # The candidate choices for this contest.
267
+ # Corresponds to the JSON property `candidates`
268
+ # @return [Array<Google::Apis::CivicinfoV2::Candidate>]
269
+ attr_accessor :candidates
270
+
271
+ # Describes the geographic scope of a contest.
272
+ # Corresponds to the JSON property `district`
273
+ # @return [Google::Apis::CivicinfoV2::ElectoralDistrict]
274
+ attr_accessor :district
275
+
276
+ # A description of any additional eligibility requirements for voting in this
277
+ # contest.
278
+ # Corresponds to the JSON property `electorateSpecifications`
279
+ # @return [String]
280
+ attr_accessor :electorate_specifications
281
+
282
+ # An ID for this object. IDs may change in future requests and should not be
283
+ # cached. Access to this field requires special access that can be requested
284
+ # from the Request more link on the Quotas page.
285
+ # Corresponds to the JSON property `id`
286
+ # @return [String]
287
+ attr_accessor :id
288
+
289
+ # The levels of government of the office for this contest. There may be more
290
+ # than one in cases where a jurisdiction effectively acts at two different
291
+ # levels of government; for example, the mayor of the District of Columbia acts
292
+ # at "locality" level, but also effectively at both "administrative-area-2" and "
293
+ # administrative-area-1".
294
+ # Corresponds to the JSON property `level`
295
+ # @return [Array<String>]
296
+ attr_accessor :level
297
+
298
+ # The number of candidates that will be elected to office in this contest.
299
+ # Corresponds to the JSON property `numberElected`
300
+ # @return [String]
301
+ attr_accessor :number_elected
302
+
303
+ # The number of candidates that a voter may vote for in this contest.
304
+ # Corresponds to the JSON property `numberVotingFor`
305
+ # @return [String]
306
+ attr_accessor :number_voting_for
307
+
308
+ # The name of the office for this contest.
309
+ # Corresponds to the JSON property `office`
310
+ # @return [String]
311
+ attr_accessor :office
312
+
313
+ # If this is a partisan election, the name of the party it is for.
314
+ # Corresponds to the JSON property `primaryParty`
315
+ # @return [String]
316
+ attr_accessor :primary_party
317
+
318
+ # The set of ballot responses for the referendum. A ballot response represents a
319
+ # line on the ballot. Common examples might include "yes" or "no" for referenda,
320
+ # or a judge's name for a retention contest. This field is only populated for
321
+ # contests of type 'Referendum'.
322
+ # Corresponds to the JSON property `referendumBallotResponses`
323
+ # @return [Array<String>]
324
+ attr_accessor :referendum_ballot_responses
325
+
326
+ # Specifies a short summary of the referendum that is typically on the ballot
327
+ # below the title but above the text. This field is only populated for contests
328
+ # of type 'Referendum'.
329
+ # Corresponds to the JSON property `referendumBrief`
330
+ # @return [String]
331
+ attr_accessor :referendum_brief
332
+
333
+ # A statement in opposition to the referendum. It does not necessarily appear on
334
+ # the ballot. This field is only populated for contests of type 'Referendum'.
335
+ # Corresponds to the JSON property `referendumConStatement`
336
+ # @return [String]
337
+ attr_accessor :referendum_con_statement
338
+
339
+ # Specifies what effect abstaining (not voting) on the proposition will have (i.
340
+ # e. whether abstaining is considered a vote against it). This field is only
341
+ # populated for contests of type 'Referendum'.
342
+ # Corresponds to the JSON property `referendumEffectOfAbstain`
343
+ # @return [String]
344
+ attr_accessor :referendum_effect_of_abstain
345
+
346
+ # The threshold of votes that the referendum needs in order to pass, e.g. "two-
347
+ # thirds". This field is only populated for contests of type 'Referendum'.
348
+ # Corresponds to the JSON property `referendumPassageThreshold`
349
+ # @return [String]
350
+ attr_accessor :referendum_passage_threshold
351
+
352
+ # A statement in favor of the referendum. It does not necessarily appear on the
353
+ # ballot. This field is only populated for contests of type 'Referendum'.
354
+ # Corresponds to the JSON property `referendumProStatement`
355
+ # @return [String]
356
+ attr_accessor :referendum_pro_statement
357
+
358
+ # A brief description of the referendum. This field is only populated for
359
+ # contests of type 'Referendum'.
360
+ # Corresponds to the JSON property `referendumSubtitle`
361
+ # @return [String]
362
+ attr_accessor :referendum_subtitle
363
+
364
+ # The full text of the referendum. This field is only populated for contests of
365
+ # type 'Referendum'.
366
+ # Corresponds to the JSON property `referendumText`
367
+ # @return [String]
368
+ attr_accessor :referendum_text
369
+
370
+ # The title of the referendum (e.g. 'Proposition 42'). This field is only
371
+ # populated for contests of type 'Referendum'.
372
+ # Corresponds to the JSON property `referendumTitle`
373
+ # @return [String]
374
+ attr_accessor :referendum_title
375
+
376
+ # A link to the referendum. This field is only populated for contests of type '
377
+ # Referendum'.
378
+ # Corresponds to the JSON property `referendumUrl`
379
+ # @return [String]
380
+ attr_accessor :referendum_url
381
+
382
+ # The roles which this office fulfills.
383
+ # Corresponds to the JSON property `roles`
384
+ # @return [Array<String>]
385
+ attr_accessor :roles
386
+
387
+ # A list of sources for this contest. If multiple sources are listed, the data
388
+ # has been aggregated from those sources.
389
+ # Corresponds to the JSON property `sources`
390
+ # @return [Array<Google::Apis::CivicinfoV2::Source>]
391
+ attr_accessor :sources
392
+
393
+ # "Yes" or "No" depending on whether this a contest being held outside the
394
+ # normal election cycle.
395
+ # Corresponds to the JSON property `special`
396
+ # @return [String]
397
+ attr_accessor :special
398
+
399
+ # The type of contest. Usually this will be 'General', 'Primary', or 'Run-off'
400
+ # for contests with candidates. For referenda this will be 'Referendum'.
401
+ # Corresponds to the JSON property `type`
402
+ # @return [String]
403
+ attr_accessor :type
404
+
405
+ def initialize(**args)
406
+ update!(**args)
407
+ end
408
+
409
+ # Update properties of this object
410
+ def update!(**args)
411
+ @ballot_placement = args[:ballot_placement] unless args[:ballot_placement].nil?
412
+ @candidates = args[:candidates] unless args[:candidates].nil?
413
+ @district = args[:district] unless args[:district].nil?
414
+ @electorate_specifications = args[:electorate_specifications] unless args[:electorate_specifications].nil?
415
+ @id = args[:id] unless args[:id].nil?
416
+ @level = args[:level] unless args[:level].nil?
417
+ @number_elected = args[:number_elected] unless args[:number_elected].nil?
418
+ @number_voting_for = args[:number_voting_for] unless args[:number_voting_for].nil?
419
+ @office = args[:office] unless args[:office].nil?
420
+ @primary_party = args[:primary_party] unless args[:primary_party].nil?
421
+ @referendum_ballot_responses = args[:referendum_ballot_responses] unless args[:referendum_ballot_responses].nil?
422
+ @referendum_brief = args[:referendum_brief] unless args[:referendum_brief].nil?
423
+ @referendum_con_statement = args[:referendum_con_statement] unless args[:referendum_con_statement].nil?
424
+ @referendum_effect_of_abstain = args[:referendum_effect_of_abstain] unless args[:referendum_effect_of_abstain].nil?
425
+ @referendum_passage_threshold = args[:referendum_passage_threshold] unless args[:referendum_passage_threshold].nil?
426
+ @referendum_pro_statement = args[:referendum_pro_statement] unless args[:referendum_pro_statement].nil?
427
+ @referendum_subtitle = args[:referendum_subtitle] unless args[:referendum_subtitle].nil?
428
+ @referendum_text = args[:referendum_text] unless args[:referendum_text].nil?
429
+ @referendum_title = args[:referendum_title] unless args[:referendum_title].nil?
430
+ @referendum_url = args[:referendum_url] unless args[:referendum_url].nil?
431
+ @roles = args[:roles] unless args[:roles].nil?
432
+ @sources = args[:sources] unless args[:sources].nil?
433
+ @special = args[:special] unless args[:special].nil?
434
+ @type = args[:type] unless args[:type].nil?
435
+ end
436
+ end
437
+
438
+ # The result of a division search query.
439
+ class DivisionSearchResponse
440
+ include Google::Apis::Core::Hashable
441
+
442
+ # Identifies what kind of resource this is. Value: the fixed string "civicinfo#
443
+ # divisionSearchResponse".
444
+ # Corresponds to the JSON property `kind`
445
+ # @return [String]
446
+ attr_accessor :kind
447
+
448
+ #
449
+ # Corresponds to the JSON property `results`
450
+ # @return [Array<Google::Apis::CivicinfoV2::DivisionSearchResult>]
451
+ attr_accessor :results
452
+
453
+ def initialize(**args)
454
+ update!(**args)
455
+ end
456
+
457
+ # Update properties of this object
458
+ def update!(**args)
459
+ @kind = args[:kind] unless args[:kind].nil?
460
+ @results = args[:results] unless args[:results].nil?
461
+ end
462
+ end
463
+
464
+ # Represents a political geographic division that matches the requested query.
465
+ class DivisionSearchResult
466
+ include Google::Apis::Core::Hashable
467
+
468
+ # Other Open Civic Data identifiers that refer to the same division -- for
469
+ # example, those that refer to other political divisions whose boundaries are
470
+ # defined to be coterminous with this one. For example, ocd-division/country:us/
471
+ # state:wy will include an alias of ocd-division/country:us/state:wy/cd:1, since
472
+ # Wyoming has only one Congressional district.
473
+ # Corresponds to the JSON property `aliases`
474
+ # @return [Array<String>]
475
+ attr_accessor :aliases
476
+
477
+ # The name of the division.
478
+ # Corresponds to the JSON property `name`
479
+ # @return [String]
480
+ attr_accessor :name
481
+
482
+ # The unique Open Civic Data identifier for this division.
483
+ # Corresponds to the JSON property `ocdId`
484
+ # @return [String]
485
+ attr_accessor :ocd_id
486
+
487
+ def initialize(**args)
488
+ update!(**args)
489
+ end
490
+
491
+ # Update properties of this object
492
+ def update!(**args)
493
+ @aliases = args[:aliases] unless args[:aliases].nil?
494
+ @name = args[:name] unless args[:name].nil?
495
+ @ocd_id = args[:ocd_id] unless args[:ocd_id].nil?
496
+ end
497
+ end
498
+
499
+ # Information about the election that was queried.
500
+ class Election
501
+ include Google::Apis::Core::Hashable
502
+
503
+ # Day of the election in YYYY-MM-DD format.
504
+ # Corresponds to the JSON property `electionDay`
505
+ # @return [String]
506
+ attr_accessor :election_day
507
+
508
+ # The unique ID of this election.
509
+ # Corresponds to the JSON property `id`
510
+ # @return [String]
511
+ attr_accessor :id
512
+
513
+ # A displayable name for the election.
514
+ # Corresponds to the JSON property `name`
515
+ # @return [String]
516
+ attr_accessor :name
517
+
518
+ # The political division of the election. Represented as an OCD Division ID.
519
+ # Voters within these political jurisdictions are covered by this election. This
520
+ # is typically a state such as ocd-division/country:us/state:ca or for the
521
+ # midterms or general election the entire US (i.e. ocd-division/country:us).
522
+ # Corresponds to the JSON property `ocdDivisionId`
523
+ # @return [String]
524
+ attr_accessor :ocd_division_id
525
+
526
+ def initialize(**args)
527
+ update!(**args)
528
+ end
529
+
530
+ # Update properties of this object
531
+ def update!(**args)
532
+ @election_day = args[:election_day] unless args[:election_day].nil?
533
+ @id = args[:id] unless args[:id].nil?
534
+ @name = args[:name] unless args[:name].nil?
535
+ @ocd_division_id = args[:ocd_division_id] unless args[:ocd_division_id].nil?
536
+ end
537
+ end
538
+
539
+ # Information about individual election officials.
540
+ class ElectionOfficial
541
+ include Google::Apis::Core::Hashable
542
+
543
+ # The email address of the election official.
544
+ # Corresponds to the JSON property `emailAddress`
545
+ # @return [String]
546
+ attr_accessor :email_address
547
+
548
+ # The fax number of the election official.
549
+ # Corresponds to the JSON property `faxNumber`
550
+ # @return [String]
551
+ attr_accessor :fax_number
552
+
553
+ # The full name of the election official.
554
+ # Corresponds to the JSON property `name`
555
+ # @return [String]
556
+ attr_accessor :name
557
+
558
+ # The office phone number of the election official.
559
+ # Corresponds to the JSON property `officePhoneNumber`
560
+ # @return [String]
561
+ attr_accessor :office_phone_number
562
+
563
+ # The title of the election official.
564
+ # Corresponds to the JSON property `title`
565
+ # @return [String]
566
+ attr_accessor :title
567
+
568
+ def initialize(**args)
569
+ update!(**args)
570
+ end
571
+
572
+ # Update properties of this object
573
+ def update!(**args)
574
+ @email_address = args[:email_address] unless args[:email_address].nil?
575
+ @fax_number = args[:fax_number] unless args[:fax_number].nil?
576
+ @name = args[:name] unless args[:name].nil?
577
+ @office_phone_number = args[:office_phone_number] unless args[:office_phone_number].nil?
578
+ @title = args[:title] unless args[:title].nil?
579
+ end
580
+ end
581
+
582
+ # The list of elections available for this version of the API.
583
+ class QueryElectionsResponse
584
+ include Google::Apis::Core::Hashable
585
+
586
+ # A list of available elections
587
+ # Corresponds to the JSON property `elections`
588
+ # @return [Array<Google::Apis::CivicinfoV2::Election>]
589
+ attr_accessor :elections
590
+
591
+ # Identifies what kind of resource this is. Value: the fixed string "civicinfo#
592
+ # electionsQueryResponse".
593
+ # Corresponds to the JSON property `kind`
594
+ # @return [String]
595
+ attr_accessor :kind
596
+
597
+ def initialize(**args)
598
+ update!(**args)
599
+ end
600
+
601
+ # Update properties of this object
602
+ def update!(**args)
603
+ @elections = args[:elections] unless args[:elections].nil?
604
+ @kind = args[:kind] unless args[:kind].nil?
605
+ end
606
+ end
607
+
608
+ # Describes the geographic scope of a contest.
609
+ class ElectoralDistrict
610
+ include Google::Apis::Core::Hashable
611
+
612
+ # An identifier for this district, relative to its scope. For example, the 34th
613
+ # State Senate district would have id "34" and a scope of stateUpper.
614
+ # Corresponds to the JSON property `id`
615
+ # @return [String]
616
+ attr_accessor :id
617
+
618
+ # The name of the district.
619
+ # Corresponds to the JSON property `name`
620
+ # @return [String]
621
+ attr_accessor :name
622
+
623
+ # The geographic scope of this district. If unspecified the district's geography
624
+ # is not known. One of: national, statewide, congressional, stateUpper,
625
+ # stateLower, countywide, judicial, schoolBoard, cityWide, township,
626
+ # countyCouncil, cityCouncil, ward, special
627
+ # Corresponds to the JSON property `scope`
628
+ # @return [String]
629
+ attr_accessor :scope
630
+
631
+ def initialize(**args)
632
+ update!(**args)
633
+ end
634
+
635
+ # Update properties of this object
636
+ def update!(**args)
637
+ @id = args[:id] unless args[:id].nil?
638
+ @name = args[:name] unless args[:name].nil?
639
+ @scope = args[:scope] unless args[:scope].nil?
640
+ end
641
+ end
642
+
643
+ # Describes a political geography.
644
+ class GeographicDivision
645
+ include Google::Apis::Core::Hashable
646
+
647
+ # Any other valid OCD IDs that refer to the same division.
648
+ # Because OCD IDs are meant to be human-readable and at least somewhat
649
+ # predictable, there are occasionally several identifiers for a single division.
650
+ # These identifiers are defined to be equivalent to one another, and one is
651
+ # always indicated as the primary identifier. The primary identifier will be
652
+ # returned in ocd_id above, and any other equivalent valid identifiers will be
653
+ # returned in this list.
654
+ # For example, if this division's OCD ID is ocd-division/country:us/district:dc,
655
+ # this will contain ocd-division/country:us/state:dc.
656
+ # Corresponds to the JSON property `alsoKnownAs`
657
+ # @return [Array<String>]
658
+ attr_accessor :also_known_as
659
+
660
+ # The name of the division.
661
+ # Corresponds to the JSON property `name`
662
+ # @return [String]
663
+ attr_accessor :name
664
+
665
+ # List of indices in the offices array, one for each office elected from this
666
+ # division. Will only be present if includeOffices was true (or absent) in the
667
+ # request.
668
+ # Corresponds to the JSON property `officeIndices`
669
+ # @return [Array<Fixnum>]
670
+ attr_accessor :office_indices
671
+
672
+ def initialize(**args)
673
+ update!(**args)
674
+ end
675
+
676
+ # Update properties of this object
677
+ def update!(**args)
678
+ @also_known_as = args[:also_known_as] unless args[:also_known_as].nil?
679
+ @name = args[:name] unless args[:name].nil?
680
+ @office_indices = args[:office_indices] unless args[:office_indices].nil?
681
+ end
682
+ end
683
+
684
+ # Information about an Office held by one or more Officials.
685
+ class Office
686
+ include Google::Apis::Core::Hashable
687
+
688
+ # The OCD ID of the division with which this office is associated.
689
+ # Corresponds to the JSON property `divisionId`
690
+ # @return [String]
691
+ attr_accessor :division_id
692
+
693
+ # The levels of government of which this office is part. There may be more than
694
+ # one in cases where a jurisdiction effectively acts at two different levels of
695
+ # government; for example, the mayor of the District of Columbia acts at "
696
+ # locality" level, but also effectively at both "administrative-area-2" and "
697
+ # administrative-area-1".
698
+ # Corresponds to the JSON property `levels`
699
+ # @return [Array<String>]
700
+ attr_accessor :levels
701
+
702
+ # The human-readable name of the office.
703
+ # Corresponds to the JSON property `name`
704
+ # @return [String]
705
+ attr_accessor :name
706
+
707
+ # List of indices in the officials array of people who presently hold this
708
+ # office.
709
+ # Corresponds to the JSON property `officialIndices`
710
+ # @return [Array<Fixnum>]
711
+ attr_accessor :official_indices
712
+
713
+ # The roles which this office fulfills. Roles are not meant to be exhaustive, or
714
+ # to exactly specify the entire set of responsibilities of a given office, but
715
+ # are meant to be rough categories that are useful for general selection from or
716
+ # sorting of a list of offices.
717
+ # Corresponds to the JSON property `roles`
718
+ # @return [Array<String>]
719
+ attr_accessor :roles
720
+
721
+ # A list of sources for this office. If multiple sources are listed, the data
722
+ # has been aggregated from those sources.
723
+ # Corresponds to the JSON property `sources`
724
+ # @return [Array<Google::Apis::CivicinfoV2::Source>]
725
+ attr_accessor :sources
726
+
727
+ def initialize(**args)
728
+ update!(**args)
729
+ end
730
+
731
+ # Update properties of this object
732
+ def update!(**args)
733
+ @division_id = args[:division_id] unless args[:division_id].nil?
734
+ @levels = args[:levels] unless args[:levels].nil?
735
+ @name = args[:name] unless args[:name].nil?
736
+ @official_indices = args[:official_indices] unless args[:official_indices].nil?
737
+ @roles = args[:roles] unless args[:roles].nil?
738
+ @sources = args[:sources] unless args[:sources].nil?
739
+ end
740
+ end
741
+
742
+ # Information about a person holding an elected office.
743
+ class Official
744
+ include Google::Apis::Core::Hashable
745
+
746
+ # Addresses at which to contact the official.
747
+ # Corresponds to the JSON property `address`
748
+ # @return [Array<Google::Apis::CivicinfoV2::SimpleAddressType>]
749
+ attr_accessor :address
750
+
751
+ # A list of known (social) media channels for this official.
752
+ # Corresponds to the JSON property `channels`
753
+ # @return [Array<Google::Apis::CivicinfoV2::Channel>]
754
+ attr_accessor :channels
755
+
756
+ # The direct email addresses for the official.
757
+ # Corresponds to the JSON property `emails`
758
+ # @return [Array<String>]
759
+ attr_accessor :emails
760
+
761
+ # The official's name.
762
+ # Corresponds to the JSON property `name`
763
+ # @return [String]
764
+ attr_accessor :name
765
+
766
+ # The full name of the party the official belongs to.
767
+ # Corresponds to the JSON property `party`
768
+ # @return [String]
769
+ attr_accessor :party
770
+
771
+ # The official's public contact phone numbers.
772
+ # Corresponds to the JSON property `phones`
773
+ # @return [Array<String>]
774
+ attr_accessor :phones
775
+
776
+ # A URL for a photo of the official.
777
+ # Corresponds to the JSON property `photoUrl`
778
+ # @return [String]
779
+ attr_accessor :photo_url
780
+
781
+ # The official's public website URLs.
782
+ # Corresponds to the JSON property `urls`
783
+ # @return [Array<String>]
784
+ attr_accessor :urls
785
+
786
+ def initialize(**args)
787
+ update!(**args)
788
+ end
789
+
790
+ # Update properties of this object
791
+ def update!(**args)
792
+ @address = args[:address] unless args[:address].nil?
793
+ @channels = args[:channels] unless args[:channels].nil?
794
+ @emails = args[:emails] unless args[:emails].nil?
795
+ @name = args[:name] unless args[:name].nil?
796
+ @party = args[:party] unless args[:party].nil?
797
+ @phones = args[:phones] unless args[:phones].nil?
798
+ @photo_url = args[:photo_url] unless args[:photo_url].nil?
799
+ @urls = args[:urls] unless args[:urls].nil?
800
+ end
801
+ end
802
+
803
+ # A location where a voter can vote. This may be an early vote site, an election
804
+ # day voting location, or a drop off location for a completed ballot.
805
+ class PollingLocation
806
+ include Google::Apis::Core::Hashable
807
+
808
+ # A simple representation of an address.
809
+ # Corresponds to the JSON property `address`
810
+ # @return [Google::Apis::CivicinfoV2::SimpleAddressType]
811
+ attr_accessor :address
812
+
813
+ # The last date that this early vote site or drop off location may be used. This
814
+ # field is not populated for polling locations.
815
+ # Corresponds to the JSON property `endDate`
816
+ # @return [String]
817
+ attr_accessor :end_date
818
+
819
+ # An ID for this object. IDs may change in future requests and should not be
820
+ # cached. Access to this field requires special access that can be requested
821
+ # from the Request more link on the Quotas page.
822
+ # Corresponds to the JSON property `id`
823
+ # @return [String]
824
+ attr_accessor :id
825
+
826
+ # The name of the early vote site or drop off location. This field is not
827
+ # populated for polling locations.
828
+ # Corresponds to the JSON property `name`
829
+ # @return [String]
830
+ attr_accessor :name
831
+
832
+ # Notes about this location (e.g. accessibility ramp or entrance to use).
833
+ # Corresponds to the JSON property `notes`
834
+ # @return [String]
835
+ attr_accessor :notes
836
+
837
+ # A description of when this location is open.
838
+ # Corresponds to the JSON property `pollingHours`
839
+ # @return [String]
840
+ attr_accessor :polling_hours
841
+
842
+ # A list of sources for this location. If multiple sources are listed the data
843
+ # has been aggregated from those sources.
844
+ # Corresponds to the JSON property `sources`
845
+ # @return [Array<Google::Apis::CivicinfoV2::Source>]
846
+ attr_accessor :sources
847
+
848
+ # The first date that this early vote site or drop off location may be used.
849
+ # This field is not populated for polling locations.
850
+ # Corresponds to the JSON property `startDate`
851
+ # @return [String]
852
+ attr_accessor :start_date
853
+
854
+ # The services provided by this early vote site or drop off location. This field
855
+ # is not populated for polling locations.
856
+ # Corresponds to the JSON property `voterServices`
857
+ # @return [String]
858
+ attr_accessor :voter_services
859
+
860
+ def initialize(**args)
861
+ update!(**args)
862
+ end
863
+
864
+ # Update properties of this object
865
+ def update!(**args)
866
+ @address = args[:address] unless args[:address].nil?
867
+ @end_date = args[:end_date] unless args[:end_date].nil?
868
+ @id = args[:id] unless args[:id].nil?
869
+ @name = args[:name] unless args[:name].nil?
870
+ @notes = args[:notes] unless args[:notes].nil?
871
+ @polling_hours = args[:polling_hours] unless args[:polling_hours].nil?
872
+ @sources = args[:sources] unless args[:sources].nil?
873
+ @start_date = args[:start_date] unless args[:start_date].nil?
874
+ @voter_services = args[:voter_services] unless args[:voter_services].nil?
875
+ end
876
+ end
877
+
878
+ #
879
+ class RepresentativeInfoData
880
+ include Google::Apis::Core::Hashable
881
+
882
+ # Political geographic divisions that contain the requested address.
883
+ # Corresponds to the JSON property `divisions`
884
+ # @return [Hash<String,Google::Apis::CivicinfoV2::GeographicDivision>]
885
+ attr_accessor :divisions
886
+
887
+ # Elected offices referenced by the divisions listed above. Will only be present
888
+ # if includeOffices was true in the request.
889
+ # Corresponds to the JSON property `offices`
890
+ # @return [Array<Google::Apis::CivicinfoV2::Office>]
891
+ attr_accessor :offices
892
+
893
+ # Officials holding the offices listed above. Will only be present if
894
+ # includeOffices was true in the request.
895
+ # Corresponds to the JSON property `officials`
896
+ # @return [Array<Google::Apis::CivicinfoV2::Official>]
897
+ attr_accessor :officials
898
+
899
+ def initialize(**args)
900
+ update!(**args)
901
+ end
902
+
903
+ # Update properties of this object
904
+ def update!(**args)
905
+ @divisions = args[:divisions] unless args[:divisions].nil?
906
+ @offices = args[:offices] unless args[:offices].nil?
907
+ @officials = args[:officials] unless args[:officials].nil?
908
+ end
909
+ end
910
+
911
+ # The result of a representative info lookup query.
912
+ class RepresentativeInfoResponse
913
+ include Google::Apis::Core::Hashable
914
+
915
+ # Political geographic divisions that contain the requested address.
916
+ # Corresponds to the JSON property `divisions`
917
+ # @return [Hash<String,Google::Apis::CivicinfoV2::GeographicDivision>]
918
+ attr_accessor :divisions
919
+
920
+ # Identifies what kind of resource this is. Value: the fixed string "civicinfo#
921
+ # representativeInfoResponse".
922
+ # Corresponds to the JSON property `kind`
923
+ # @return [String]
924
+ attr_accessor :kind
925
+
926
+ # A simple representation of an address.
927
+ # Corresponds to the JSON property `normalizedInput`
928
+ # @return [Google::Apis::CivicinfoV2::SimpleAddressType]
929
+ attr_accessor :normalized_input
930
+
931
+ # Elected offices referenced by the divisions listed above. Will only be present
932
+ # if includeOffices was true in the request.
933
+ # Corresponds to the JSON property `offices`
934
+ # @return [Array<Google::Apis::CivicinfoV2::Office>]
935
+ attr_accessor :offices
936
+
937
+ # Officials holding the offices listed above. Will only be present if
938
+ # includeOffices was true in the request.
939
+ # Corresponds to the JSON property `officials`
940
+ # @return [Array<Google::Apis::CivicinfoV2::Official>]
941
+ attr_accessor :officials
942
+
943
+ def initialize(**args)
944
+ update!(**args)
945
+ end
946
+
947
+ # Update properties of this object
948
+ def update!(**args)
949
+ @divisions = args[:divisions] unless args[:divisions].nil?
950
+ @kind = args[:kind] unless args[:kind].nil?
951
+ @normalized_input = args[:normalized_input] unless args[:normalized_input].nil?
952
+ @offices = args[:offices] unless args[:offices].nil?
953
+ @officials = args[:officials] unless args[:officials].nil?
954
+ end
955
+ end
956
+
957
+ # A simple representation of an address.
958
+ class SimpleAddressType
959
+ include Google::Apis::Core::Hashable
960
+
961
+ # The city or town for the address.
962
+ # Corresponds to the JSON property `city`
963
+ # @return [String]
964
+ attr_accessor :city
965
+
966
+ # The street name and number of this address.
967
+ # Corresponds to the JSON property `line1`
968
+ # @return [String]
969
+ attr_accessor :line1
970
+
971
+ # The second line the address, if needed.
972
+ # Corresponds to the JSON property `line2`
973
+ # @return [String]
974
+ attr_accessor :line2
975
+
976
+ # The third line of the address, if needed.
977
+ # Corresponds to the JSON property `line3`
978
+ # @return [String]
979
+ attr_accessor :line3
980
+
981
+ # The name of the location.
982
+ # Corresponds to the JSON property `locationName`
983
+ # @return [String]
984
+ attr_accessor :location_name
985
+
986
+ # The US two letter state abbreviation of the address.
987
+ # Corresponds to the JSON property `state`
988
+ # @return [String]
989
+ attr_accessor :state
990
+
991
+ # The US Postal Zip Code of the address.
992
+ # Corresponds to the JSON property `zip`
993
+ # @return [String]
994
+ attr_accessor :zip
995
+
996
+ def initialize(**args)
997
+ update!(**args)
998
+ end
999
+
1000
+ # Update properties of this object
1001
+ def update!(**args)
1002
+ @city = args[:city] unless args[:city].nil?
1003
+ @line1 = args[:line1] unless args[:line1].nil?
1004
+ @line2 = args[:line2] unless args[:line2].nil?
1005
+ @line3 = args[:line3] unless args[:line3].nil?
1006
+ @location_name = args[:location_name] unless args[:location_name].nil?
1007
+ @state = args[:state] unless args[:state].nil?
1008
+ @zip = args[:zip] unless args[:zip].nil?
1009
+ end
1010
+ end
1011
+
1012
+ # Contains information about the data source for the element containing it.
1013
+ class Source
1014
+ include Google::Apis::Core::Hashable
1015
+
1016
+ # The name of the data source.
1017
+ # Corresponds to the JSON property `name`
1018
+ # @return [String]
1019
+ attr_accessor :name
1020
+
1021
+ # Whether this data comes from an official government source.
1022
+ # Corresponds to the JSON property `official`
1023
+ # @return [Boolean]
1024
+ attr_accessor :official
1025
+ alias_method :official?, :official
1026
+
1027
+ def initialize(**args)
1028
+ update!(**args)
1029
+ end
1030
+
1031
+ # Update properties of this object
1032
+ def update!(**args)
1033
+ @name = args[:name] unless args[:name].nil?
1034
+ @official = args[:official] unless args[:official].nil?
1035
+ end
1036
+ end
1037
+
1038
+ # The result of a voter info lookup query.
1039
+ class VoterInfoResponse
1040
+ include Google::Apis::Core::Hashable
1041
+
1042
+ # Contests that will appear on the voter's ballot.
1043
+ # Corresponds to the JSON property `contests`
1044
+ # @return [Array<Google::Apis::CivicinfoV2::Contest>]
1045
+ attr_accessor :contests
1046
+
1047
+ # Locations where a voter is eligible to drop off a completed ballot. The voter
1048
+ # must have received and completed a ballot prior to arriving at the location.
1049
+ # The location may not have ballots available on the premises. These locations
1050
+ # could be open on or before election day as indicated in the pollingHours field.
1051
+ # Corresponds to the JSON property `dropOffLocations`
1052
+ # @return [Array<Google::Apis::CivicinfoV2::PollingLocation>]
1053
+ attr_accessor :drop_off_locations
1054
+
1055
+ # Locations where the voter is eligible to vote early, prior to election day.
1056
+ # Corresponds to the JSON property `earlyVoteSites`
1057
+ # @return [Array<Google::Apis::CivicinfoV2::PollingLocation>]
1058
+ attr_accessor :early_vote_sites
1059
+
1060
+ # Information about the election that was queried.
1061
+ # Corresponds to the JSON property `election`
1062
+ # @return [Google::Apis::CivicinfoV2::Election]
1063
+ attr_accessor :election
1064
+
1065
+ # Identifies what kind of resource this is. Value: the fixed string "civicinfo#
1066
+ # voterInfoResponse".
1067
+ # Corresponds to the JSON property `kind`
1068
+ # @return [String]
1069
+ attr_accessor :kind
1070
+
1071
+ # Specifies whether voters in the precinct vote only by mailing their ballots (
1072
+ # with the possible option of dropping off their ballots as well).
1073
+ # Corresponds to the JSON property `mailOnly`
1074
+ # @return [Boolean]
1075
+ attr_accessor :mail_only
1076
+ alias_method :mail_only?, :mail_only
1077
+
1078
+ # A simple representation of an address.
1079
+ # Corresponds to the JSON property `normalizedInput`
1080
+ # @return [Google::Apis::CivicinfoV2::SimpleAddressType]
1081
+ attr_accessor :normalized_input
1082
+
1083
+ # If no election ID was specified in the query, and there was more than one
1084
+ # election with data for the given voter, this will contain information about
1085
+ # the other elections that could apply.
1086
+ # Corresponds to the JSON property `otherElections`
1087
+ # @return [Array<Google::Apis::CivicinfoV2::Election>]
1088
+ attr_accessor :other_elections
1089
+
1090
+ # Locations where the voter is eligible to vote on election day.
1091
+ # Corresponds to the JSON property `pollingLocations`
1092
+ # @return [Array<Google::Apis::CivicinfoV2::PollingLocation>]
1093
+ attr_accessor :polling_locations
1094
+
1095
+ #
1096
+ # Corresponds to the JSON property `precinctId`
1097
+ # @return [String]
1098
+ attr_accessor :precinct_id
1099
+
1100
+ # Local Election Information for the state that the voter votes in. For the US,
1101
+ # there will only be one element in this array.
1102
+ # Corresponds to the JSON property `state`
1103
+ # @return [Array<Google::Apis::CivicinfoV2::AdministrationRegion>]
1104
+ attr_accessor :state
1105
+
1106
+ def initialize(**args)
1107
+ update!(**args)
1108
+ end
1109
+
1110
+ # Update properties of this object
1111
+ def update!(**args)
1112
+ @contests = args[:contests] unless args[:contests].nil?
1113
+ @drop_off_locations = args[:drop_off_locations] unless args[:drop_off_locations].nil?
1114
+ @early_vote_sites = args[:early_vote_sites] unless args[:early_vote_sites].nil?
1115
+ @election = args[:election] unless args[:election].nil?
1116
+ @kind = args[:kind] unless args[:kind].nil?
1117
+ @mail_only = args[:mail_only] unless args[:mail_only].nil?
1118
+ @normalized_input = args[:normalized_input] unless args[:normalized_input].nil?
1119
+ @other_elections = args[:other_elections] unless args[:other_elections].nil?
1120
+ @polling_locations = args[:polling_locations] unless args[:polling_locations].nil?
1121
+ @precinct_id = args[:precinct_id] unless args[:precinct_id].nil?
1122
+ @state = args[:state] unless args[:state].nil?
1123
+ end
1124
+ end
1125
+ end
1126
+ end
1127
+ end