google-api-client 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/api_names.yaml +945 -41609
  4. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +12 -12
  5. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +2 -2
  6. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1437 -412
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +516 -71
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +1098 -422
  10. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +6 -6
  11. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +3 -3
  12. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +3 -3
  13. data/generated/google/apis/adexchangeseller_v2_0/service.rb +10 -10
  14. data/generated/google/apis/admin_directory_v1/service.rb +26 -26
  15. data/generated/google/apis/adsense_v1_4.rb +1 -1
  16. data/generated/google/apis/adsense_v1_4/classes.rb +2 -2
  17. data/generated/google/apis/adsense_v1_4/representations.rb +3 -3
  18. data/generated/google/apis/adsense_v1_4/service.rb +44 -44
  19. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  20. data/generated/google/apis/adsensehost_v4_1/service.rb +22 -22
  21. data/generated/google/apis/analytics_v3/classes.rb +3 -3
  22. data/generated/google/apis/analytics_v3/representations.rb +3 -3
  23. data/generated/google/apis/analytics_v3/service.rb +82 -82
  24. data/generated/google/apis/analyticsreporting_v4/classes.rb +937 -937
  25. data/generated/google/apis/analyticsreporting_v4/representations.rb +128 -128
  26. data/generated/google/apis/analyticsreporting_v4/service.rb +1 -1
  27. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  28. data/generated/google/apis/androidenterprise_v1/classes.rb +10 -10
  29. data/generated/google/apis/androidenterprise_v1/representations.rb +20 -20
  30. data/generated/google/apis/androidenterprise_v1/service.rb +43 -43
  31. data/generated/google/apis/androidpublisher_v2/classes.rb +26 -26
  32. data/generated/google/apis/androidpublisher_v2/representations.rb +46 -46
  33. data/generated/google/apis/androidpublisher_v2/service.rb +95 -95
  34. data/generated/google/apis/appengine_v1.rb +4 -4
  35. data/generated/google/apis/appengine_v1/classes.rb +1570 -1512
  36. data/generated/google/apis/appengine_v1/representations.rb +362 -343
  37. data/generated/google/apis/appengine_v1/service.rb +220 -220
  38. data/generated/google/apis/appstate_v1.rb +1 -1
  39. data/generated/google/apis/bigquery_v2.rb +1 -1
  40. data/generated/google/apis/bigquery_v2/classes.rb +5 -5
  41. data/generated/google/apis/bigquery_v2/representations.rb +8 -8
  42. data/generated/google/apis/bigquery_v2/service.rb +13 -13
  43. data/generated/google/apis/blogger_v3/service.rb +3 -3
  44. data/generated/google/apis/books_v1/classes.rb +55 -55
  45. data/generated/google/apis/books_v1/representations.rb +67 -67
  46. data/generated/google/apis/books_v1/service.rb +82 -82
  47. data/generated/google/apis/calendar_v3.rb +1 -1
  48. data/generated/google/apis/calendar_v3/classes.rb +6 -6
  49. data/generated/google/apis/calendar_v3/representations.rb +3 -3
  50. data/generated/google/apis/calendar_v3/service.rb +2 -2
  51. data/generated/google/apis/civicinfo_v2/classes.rb +2 -2
  52. data/generated/google/apis/civicinfo_v2/representations.rb +4 -4
  53. data/generated/google/apis/civicinfo_v2/service.rb +12 -12
  54. data/generated/google/apis/classroom_v1.rb +7 -7
  55. data/generated/google/apis/classroom_v1/classes.rb +1013 -991
  56. data/generated/google/apis/classroom_v1/representations.rb +207 -204
  57. data/generated/google/apis/classroom_v1/service.rb +709 -709
  58. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  59. data/generated/google/apis/cloudbuild_v1/classes.rb +307 -307
  60. data/generated/google/apis/cloudbuild_v1/representations.rb +84 -84
  61. data/generated/google/apis/cloudbuild_v1/service.rb +125 -125
  62. data/generated/google/apis/clouddebugger_v2/classes.rb +673 -673
  63. data/generated/google/apis/clouddebugger_v2/representations.rb +152 -152
  64. data/generated/google/apis/clouddebugger_v2/service.rb +55 -55
  65. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  66. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +121 -121
  67. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +25 -25
  68. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +74 -74
  69. data/generated/google/apis/cloudkms_v1.rb +1 -1
  70. data/generated/google/apis/cloudkms_v1/classes.rb +668 -613
  71. data/generated/google/apis/cloudkms_v1/representations.rb +151 -133
  72. data/generated/google/apis/cloudkms_v1/service.rb +267 -267
  73. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  74. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1167 -1168
  75. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +193 -193
  76. data/generated/google/apis/cloudresourcemanager_v1/service.rb +470 -469
  77. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  78. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +508 -509
  79. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +94 -94
  80. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +157 -156
  81. data/generated/google/apis/cloudtrace_v1/service.rb +34 -34
  82. data/generated/google/apis/compute_beta.rb +1 -1
  83. data/generated/google/apis/compute_beta/classes.rb +163 -15
  84. data/generated/google/apis/compute_beta/representations.rb +54 -14
  85. data/generated/google/apis/compute_beta/service.rb +2258 -482
  86. data/generated/google/apis/compute_v1.rb +1 -1
  87. data/generated/google/apis/compute_v1/classes.rb +465 -13
  88. data/generated/google/apis/compute_v1/representations.rb +202 -16
  89. data/generated/google/apis/compute_v1/service.rb +573 -309
  90. data/generated/google/apis/container_v1.rb +1 -1
  91. data/generated/google/apis/container_v1/classes.rb +635 -589
  92. data/generated/google/apis/container_v1/representations.rb +139 -111
  93. data/generated/google/apis/container_v1/service.rb +272 -227
  94. data/generated/google/apis/content_v2.rb +1 -1
  95. data/generated/google/apis/content_v2/classes.rb +86 -74
  96. data/generated/google/apis/content_v2/representations.rb +107 -105
  97. data/generated/google/apis/content_v2/service.rb +131 -130
  98. data/generated/google/apis/customsearch_v1.rb +2 -2
  99. data/generated/google/apis/customsearch_v1/classes.rb +0 -6
  100. data/generated/google/apis/customsearch_v1/representations.rb +0 -1
  101. data/generated/google/apis/customsearch_v1/service.rb +2 -5
  102. data/generated/google/apis/dataflow_v1b3.rb +7 -4
  103. data/generated/google/apis/dataflow_v1b3/classes.rb +3405 -3405
  104. data/generated/google/apis/dataflow_v1b3/representations.rb +834 -834
  105. data/generated/google/apis/dataflow_v1b3/service.rb +244 -244
  106. data/generated/google/apis/dataproc_v1.rb +1 -1
  107. data/generated/google/apis/dataproc_v1/classes.rb +543 -691
  108. data/generated/google/apis/dataproc_v1/representations.rb +129 -185
  109. data/generated/google/apis/dataproc_v1/service.rb +347 -347
  110. data/generated/google/apis/datastore_v1.rb +4 -4
  111. data/generated/google/apis/datastore_v1/classes.rb +833 -833
  112. data/generated/google/apis/datastore_v1/representations.rb +182 -182
  113. data/generated/google/apis/datastore_v1/service.rb +45 -45
  114. data/generated/google/apis/deploymentmanager_v2/classes.rb +5 -5
  115. data/generated/google/apis/deploymentmanager_v2/representations.rb +10 -10
  116. data/generated/google/apis/deploymentmanager_v2/service.rb +20 -20
  117. data/generated/google/apis/discovery_v1/classes.rb +4 -4
  118. data/generated/google/apis/discovery_v1/representations.rb +2 -2
  119. data/generated/google/apis/discovery_v1/service.rb +1 -1
  120. data/generated/google/apis/dns_v1.rb +1 -1
  121. data/generated/google/apis/dns_v1/classes.rb +3 -3
  122. data/generated/google/apis/dns_v1/representations.rb +6 -6
  123. data/generated/google/apis/dns_v1/service.rb +12 -12
  124. data/generated/google/apis/dns_v2beta1.rb +1 -1
  125. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +8 -8
  126. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  127. data/generated/google/apis/drive_v2.rb +1 -1
  128. data/generated/google/apis/drive_v2/classes.rb +1 -1
  129. data/generated/google/apis/drive_v2/service.rb +1 -1
  130. data/generated/google/apis/drive_v3.rb +1 -1
  131. data/generated/google/apis/drive_v3/service.rb +1 -1
  132. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  133. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +160 -110
  134. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +60 -31
  135. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +38 -3
  136. data/generated/google/apis/firebaserules_v1/classes.rb +354 -354
  137. data/generated/google/apis/firebaserules_v1/representations.rb +87 -87
  138. data/generated/google/apis/firebaserules_v1/service.rb +103 -103
  139. data/generated/google/apis/fusiontables_v2/service.rb +2 -2
  140. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  141. data/generated/google/apis/games_configuration_v1configuration/classes.rb +2 -2
  142. data/generated/google/apis/games_configuration_v1configuration/representations.rb +4 -4
  143. data/generated/google/apis/games_configuration_v1configuration/service.rb +8 -8
  144. data/generated/google/apis/games_management_v1management.rb +1 -1
  145. data/generated/google/apis/games_v1.rb +1 -1
  146. data/generated/google/apis/games_v1/classes.rb +23 -23
  147. data/generated/google/apis/games_v1/representations.rb +43 -43
  148. data/generated/google/apis/games_v1/service.rb +72 -72
  149. data/generated/google/apis/genomics_v1.rb +1 -1
  150. data/generated/google/apis/genomics_v1/classes.rb +2316 -2316
  151. data/generated/google/apis/genomics_v1/representations.rb +291 -291
  152. data/generated/google/apis/genomics_v1/service.rb +821 -821
  153. data/generated/google/apis/gmail_v1.rb +1 -1
  154. data/generated/google/apis/groupsmigration_v1.rb +1 -1
  155. data/generated/google/apis/groupssettings_v1.rb +1 -1
  156. data/generated/google/apis/groupssettings_v1/classes.rb +2 -2
  157. data/generated/google/apis/groupssettings_v1/service.rb +3 -0
  158. data/generated/google/apis/iam_v1/classes.rb +338 -338
  159. data/generated/google/apis/iam_v1/representations.rb +98 -98
  160. data/generated/google/apis/iam_v1/service.rb +35 -35
  161. data/generated/google/apis/identitytoolkit_v3/classes.rb +15 -15
  162. data/generated/google/apis/identitytoolkit_v3/representations.rb +30 -30
  163. data/generated/google/apis/identitytoolkit_v3/service.rb +64 -64
  164. data/generated/google/apis/kgsearch_v1/service.rb +13 -13
  165. data/generated/google/apis/language_v1.rb +1 -1
  166. data/generated/google/apis/language_v1/classes.rb +374 -374
  167. data/generated/google/apis/language_v1/representations.rb +97 -97
  168. data/generated/google/apis/language_v1/service.rb +16 -16
  169. data/generated/google/apis/language_v1beta1.rb +1 -1
  170. data/generated/google/apis/language_v1beta1/classes.rb +441 -441
  171. data/generated/google/apis/language_v1beta1/representations.rb +108 -108
  172. data/generated/google/apis/language_v1beta1/service.rb +30 -30
  173. data/generated/google/apis/licensing_v1/service.rb +2 -2
  174. data/generated/google/apis/logging_v2.rb +1 -1
  175. data/generated/google/apis/logging_v2/classes.rb +712 -712
  176. data/generated/google/apis/logging_v2/representations.rb +109 -109
  177. data/generated/google/apis/logging_v2/service.rb +543 -539
  178. data/generated/google/apis/logging_v2beta1.rb +1 -1
  179. data/generated/google/apis/logging_v2beta1/classes.rb +752 -752
  180. data/generated/google/apis/logging_v2beta1/representations.rb +94 -94
  181. data/generated/google/apis/logging_v2beta1/service.rb +257 -256
  182. data/generated/google/apis/manufacturers_v1/classes.rb +130 -130
  183. data/generated/google/apis/manufacturers_v1/representations.rb +28 -28
  184. data/generated/google/apis/mirror_v1/classes.rb +5 -5
  185. data/generated/google/apis/mirror_v1/representations.rb +10 -10
  186. data/generated/google/apis/mirror_v1/service.rb +20 -20
  187. data/generated/google/apis/ml_v1.rb +1 -1
  188. data/generated/google/apis/ml_v1/classes.rb +1830 -1210
  189. data/generated/google/apis/ml_v1/representations.rb +342 -120
  190. data/generated/google/apis/ml_v1/service.rb +365 -258
  191. data/generated/google/apis/monitoring_v3.rb +4 -4
  192. data/generated/google/apis/monitoring_v3/classes.rb +889 -889
  193. data/generated/google/apis/monitoring_v3/representations.rb +174 -174
  194. data/generated/google/apis/monitoring_v3/service.rb +119 -119
  195. data/generated/google/apis/mybusiness_v3/service.rb +5 -5
  196. data/generated/google/apis/oauth2_v2/service.rb +1 -1
  197. data/generated/google/apis/pagespeedonline_v2/classes.rb +11 -11
  198. data/generated/google/apis/pagespeedonline_v2/representations.rb +13 -13
  199. data/generated/google/apis/pagespeedonline_v2/service.rb +1 -1
  200. data/generated/google/apis/partners_v2.rb +1 -1
  201. data/generated/google/apis/partners_v2/classes.rb +550 -536
  202. data/generated/google/apis/partners_v2/representations.rb +118 -116
  203. data/generated/google/apis/partners_v2/service.rb +439 -439
  204. data/generated/google/apis/people_v1.rb +4 -4
  205. data/generated/google/apis/people_v1/classes.rb +414 -413
  206. data/generated/google/apis/people_v1/representations.rb +85 -85
  207. data/generated/google/apis/people_v1/service.rb +111 -18
  208. data/generated/google/apis/plus_domains_v1.rb +1 -1
  209. data/generated/google/apis/plus_domains_v1/service.rb +4 -4
  210. data/generated/google/apis/plus_v1.rb +1 -1
  211. data/generated/google/apis/plus_v1/service.rb +1 -1
  212. data/generated/google/apis/prediction_v1_6/service.rb +8 -8
  213. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  214. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +443 -443
  215. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +92 -92
  216. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +152 -152
  217. data/generated/google/apis/pubsub_v1/classes.rb +249 -249
  218. data/generated/google/apis/pubsub_v1/representations.rb +80 -80
  219. data/generated/google/apis/pubsub_v1/service.rb +415 -415
  220. data/generated/google/apis/qpx_express_v1/classes.rb +2 -2
  221. data/generated/google/apis/qpx_express_v1/representations.rb +4 -4
  222. data/generated/google/apis/qpx_express_v1/service.rb +8 -8
  223. data/generated/google/apis/replicapool_v1beta2/classes.rb +5 -5
  224. data/generated/google/apis/replicapool_v1beta2/representations.rb +10 -10
  225. data/generated/google/apis/replicapool_v1beta2/service.rb +21 -21
  226. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +1 -1
  227. data/generated/google/apis/resourceviews_v1beta2/classes.rb +5 -5
  228. data/generated/google/apis/resourceviews_v1beta2/representations.rb +10 -10
  229. data/generated/google/apis/resourceviews_v1beta2/service.rb +20 -20
  230. data/generated/google/apis/runtimeconfig_v1.rb +4 -4
  231. data/generated/google/apis/runtimeconfig_v1/classes.rb +15 -15
  232. data/generated/google/apis/runtimeconfig_v1/representations.rb +2 -2
  233. data/generated/google/apis/runtimeconfig_v1/service.rb +4 -4
  234. data/generated/google/apis/script_v1.rb +17 -17
  235. data/generated/google/apis/script_v1/classes.rb +27 -27
  236. data/generated/google/apis/script_v1/representations.rb +5 -5
  237. data/generated/google/apis/script_v1/service.rb +4 -4
  238. data/generated/google/apis/searchconsole_v1.rb +1 -1
  239. data/generated/google/apis/searchconsole_v1/classes.rb +53 -53
  240. data/generated/google/apis/searchconsole_v1/representations.rb +23 -23
  241. data/generated/google/apis/searchconsole_v1/service.rb +4 -4
  242. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  243. data/generated/google/apis/servicecontrol_v1/classes.rb +1175 -1175
  244. data/generated/google/apis/servicecontrol_v1/representations.rb +206 -206
  245. data/generated/google/apis/servicecontrol_v1/service.rb +116 -116
  246. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  247. data/generated/google/apis/servicemanagement_v1/classes.rb +1186 -1125
  248. data/generated/google/apis/servicemanagement_v1/representations.rb +241 -223
  249. data/generated/google/apis/servicemanagement_v1/service.rb +201 -201
  250. data/generated/google/apis/serviceuser_v1.rb +1 -1
  251. data/generated/google/apis/serviceuser_v1/classes.rb +2645 -2641
  252. data/generated/google/apis/serviceuser_v1/representations.rb +234 -234
  253. data/generated/google/apis/serviceuser_v1/service.rb +37 -37
  254. data/generated/google/apis/sheets_v4.rb +1 -1
  255. data/generated/google/apis/sheets_v4/classes.rb +5042 -4111
  256. data/generated/google/apis/sheets_v4/representations.rb +994 -824
  257. data/generated/google/apis/sheets_v4/service.rb +80 -80
  258. data/generated/google/apis/site_verification_v1/classes.rb +6 -6
  259. data/generated/google/apis/site_verification_v1/representations.rb +8 -8
  260. data/generated/google/apis/site_verification_v1/service.rb +12 -12
  261. data/generated/google/apis/slides_v1.rb +1 -1
  262. data/generated/google/apis/slides_v1/classes.rb +2885 -2885
  263. data/generated/google/apis/slides_v1/representations.rb +310 -310
  264. data/generated/google/apis/slides_v1/service.rb +54 -54
  265. data/generated/google/apis/sourcerepo_v1/classes.rb +206 -206
  266. data/generated/google/apis/sourcerepo_v1/representations.rb +52 -52
  267. data/generated/google/apis/sourcerepo_v1/service.rb +5 -5
  268. data/generated/google/apis/spanner_v1.rb +1 -1
  269. data/generated/google/apis/spanner_v1/classes.rb +2142 -2141
  270. data/generated/google/apis/spanner_v1/representations.rb +174 -174
  271. data/generated/google/apis/spanner_v1/service.rb +497 -497
  272. data/generated/google/apis/speech_v1beta1.rb +1 -1
  273. data/generated/google/apis/speech_v1beta1/classes.rb +227 -227
  274. data/generated/google/apis/speech_v1beta1/representations.rb +50 -50
  275. data/generated/google/apis/speech_v1beta1/service.rb +33 -33
  276. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  277. data/generated/google/apis/sqladmin_v1beta4/classes.rb +21 -21
  278. data/generated/google/apis/sqladmin_v1beta4/representations.rb +29 -29
  279. data/generated/google/apis/sqladmin_v1beta4/service.rb +56 -56
  280. data/generated/google/apis/storage_v1.rb +1 -1
  281. data/generated/google/apis/storage_v1/classes.rb +40 -6
  282. data/generated/google/apis/storage_v1/representations.rb +20 -4
  283. data/generated/google/apis/storage_v1/service.rb +61 -46
  284. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  285. data/generated/google/apis/storagetransfer_v1/classes.rb +184 -184
  286. data/generated/google/apis/storagetransfer_v1/representations.rb +35 -35
  287. data/generated/google/apis/storagetransfer_v1/service.rb +70 -70
  288. data/generated/google/apis/tagmanager_v1/service.rb +33 -33
  289. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  290. data/generated/google/apis/translate_v2/classes.rb +12 -12
  291. data/generated/google/apis/translate_v2/representations.rb +10 -10
  292. data/generated/google/apis/translate_v2/service.rb +62 -62
  293. data/generated/google/apis/vision_v1.rb +1 -1
  294. data/generated/google/apis/vision_v1/classes.rb +1267 -1267
  295. data/generated/google/apis/vision_v1/representations.rb +200 -200
  296. data/generated/google/apis/vision_v1/service.rb +10 -10
  297. data/generated/google/apis/webmasters_v3.rb +1 -1
  298. data/generated/google/apis/webmasters_v3/classes.rb +4 -4
  299. data/generated/google/apis/webmasters_v3/representations.rb +8 -8
  300. data/generated/google/apis/webmasters_v3/service.rb +21 -21
  301. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  302. data/generated/google/apis/youtube_analytics_v1/classes.rb +2 -2
  303. data/generated/google/apis/youtube_analytics_v1/representations.rb +4 -4
  304. data/generated/google/apis/youtube_analytics_v1/service.rb +8 -8
  305. data/generated/google/apis/youtube_v3/classes.rb +20 -20
  306. data/generated/google/apis/youtube_v3/representations.rb +40 -40
  307. data/generated/google/apis/youtube_v3/service.rb +80 -80
  308. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  309. data/generated/google/apis/youtubereporting_v1/classes.rb +129 -129
  310. data/generated/google/apis/youtubereporting_v1/representations.rb +38 -38
  311. data/generated/google/apis/youtubereporting_v1/service.rb +97 -97
  312. data/lib/google/apis/generator/annotator.rb +2 -2
  313. data/lib/google/apis/generator/model.rb +2 -2
  314. data/lib/google/apis/version.rb +1 -1
  315. metadata +2 -2
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/google-apps/calendar/firstapp
26
26
  module CalendarV3
27
27
  VERSION = 'V3'
28
- REVISION = '20170523'
28
+ REVISION = '20170528'
29
29
 
30
30
  # Manage your calendars
31
31
  AUTH_CALENDAR = 'https://www.googleapis.com/auth/calendar'
@@ -430,7 +430,7 @@ module Google
430
430
  # on inserts and updates. SMS reminders are only available for G Suite customers.
431
431
  # Corresponds to the JSON property `method`
432
432
  # @return [String]
433
- attr_accessor :method_prop
433
+ attr_accessor :delivery_method
434
434
 
435
435
  # The type of notification. Possible values are:
436
436
  # - "eventCreation" - Notification sent when a new event is put on the calendar.
@@ -448,7 +448,7 @@ module Google
448
448
 
449
449
  # Update properties of this object
450
450
  def update!(**args)
451
- @method_prop = args[:method_prop] if args.key?(:method_prop)
451
+ @delivery_method = args[:delivery_method] if args.key?(:delivery_method)
452
452
  @type = args[:type] if args.key?(:type)
453
453
  end
454
454
  end
@@ -1082,7 +1082,7 @@ module Google
1082
1082
  # - "chip" - The gadget displays when the event is clicked.
1083
1083
  # Corresponds to the JSON property `display`
1084
1084
  # @return [String]
1085
- attr_accessor :display_prop
1085
+ attr_accessor :display_mode
1086
1086
 
1087
1087
  # The gadget's height in pixels. The height must be an integer greater than 0.
1088
1088
  # Optional.
@@ -1127,7 +1127,7 @@ module Google
1127
1127
 
1128
1128
  # Update properties of this object
1129
1129
  def update!(**args)
1130
- @display_prop = args[:display_prop] if args.key?(:display_prop)
1130
+ @display_mode = args[:display_mode] if args.key?(:display_mode)
1131
1131
  @height = args[:height] if args.key?(:height)
1132
1132
  @icon_link = args[:icon_link] if args.key?(:icon_link)
1133
1133
  @link = args[:link] if args.key?(:link)
@@ -1443,7 +1443,7 @@ module Google
1443
1443
  # - "popup" - Reminders are sent via a UI popup.
1444
1444
  # Corresponds to the JSON property `method`
1445
1445
  # @return [String]
1446
- attr_accessor :method_prop
1446
+ attr_accessor :reminder_method
1447
1447
 
1448
1448
  # Number of minutes before the start of the event when the reminder should
1449
1449
  # trigger. Valid values are between 0 and 40320 (4 weeks in minutes).
@@ -1457,7 +1457,7 @@ module Google
1457
1457
 
1458
1458
  # Update properties of this object
1459
1459
  def update!(**args)
1460
- @method_prop = args[:method_prop] if args.key?(:method_prop)
1460
+ @reminder_method = args[:reminder_method] if args.key?(:reminder_method)
1461
1461
  @minutes = args[:minutes] if args.key?(:minutes)
1462
1462
  end
1463
1463
  end
@@ -344,7 +344,7 @@ module Google
344
344
  class CalendarNotification
345
345
  # @private
346
346
  class Representation < Google::Apis::Core::JsonRepresentation
347
- property :method_prop, as: 'method'
347
+ property :delivery_method, as: 'method'
348
348
  property :type, as: 'type'
349
349
  end
350
350
  end
@@ -490,7 +490,7 @@ module Google
490
490
  class Gadget
491
491
  # @private
492
492
  class Representation < Google::Apis::Core::JsonRepresentation
493
- property :display_prop, as: 'display'
493
+ property :display_mode, as: 'display'
494
494
  property :height, as: 'height'
495
495
  property :icon_link, as: 'iconLink'
496
496
  property :link, as: 'link'
@@ -579,7 +579,7 @@ module Google
579
579
  class EventReminder
580
580
  # @private
581
581
  class Representation < Google::Apis::Core::JsonRepresentation
582
- property :method_prop, as: 'method'
582
+ property :reminder_method, as: 'method'
583
583
  property :minutes, as: 'minutes'
584
584
  end
585
585
  end
@@ -1268,7 +1268,7 @@ module Google
1268
1268
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1269
1269
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1270
1270
  # @raise [Google::Apis::AuthorizationError] Authorization is required
1271
- def instances_event(calendar_id, event_id, always_include_email: nil, max_attendees: nil, max_results: nil, original_start: nil, page_token: nil, show_deleted: nil, time_max: nil, time_min: nil, time_zone: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
1271
+ def list_event_instances(calendar_id, event_id, always_include_email: nil, max_attendees: nil, max_results: nil, original_start: nil, page_token: nil, show_deleted: nil, time_max: nil, time_min: nil, time_zone: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
1272
1272
  command = make_simple_command(:get, 'calendars/{calendarId}/events/{eventId}/instances', options)
1273
1273
  command.response_representation = Google::Apis::CalendarV3::Events::Representation
1274
1274
  command.response_class = Google::Apis::CalendarV3::Events
@@ -1570,7 +1570,7 @@ module Google
1570
1570
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1571
1571
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1572
1572
  # @raise [Google::Apis::AuthorizationError] Authorization is required
1573
- def quick_event_add(calendar_id, text, send_notifications: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
1573
+ def quick_add_event(calendar_id, text, send_notifications: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
1574
1574
  command = make_simple_command(:post, 'calendars/{calendarId}/events/quickAdd', options)
1575
1575
  command.response_representation = Google::Apis::CalendarV3::Event::Representation
1576
1576
  command.response_class = Google::Apis::CalendarV3::Event
@@ -501,7 +501,7 @@ module Google
501
501
  end
502
502
 
503
503
  # The result of a division search query.
504
- class DivisionSearchResponse
504
+ class SearchDivisionResponse
505
505
  include Google::Apis::Core::Hashable
506
506
 
507
507
  # Identifies what kind of resource this is. Value: the fixed string "civicinfo#
@@ -664,7 +664,7 @@ module Google
664
664
  end
665
665
 
666
666
  # The list of elections available for this version of the API.
667
- class ElectionsQueryResponse
667
+ class QueryElectionsResponse
668
668
  include Google::Apis::Core::Hashable
669
669
 
670
670
  # A list of available elections
@@ -70,7 +70,7 @@ module Google
70
70
  include Google::Apis::Core::JsonObjectSupport
71
71
  end
72
72
 
73
- class DivisionSearchResponse
73
+ class SearchDivisionResponse
74
74
  class Representation < Google::Apis::Core::JsonRepresentation; end
75
75
 
76
76
  include Google::Apis::Core::JsonObjectSupport
@@ -100,7 +100,7 @@ module Google
100
100
  include Google::Apis::Core::JsonObjectSupport
101
101
  end
102
102
 
103
- class ElectionsQueryResponse
103
+ class QueryElectionsResponse
104
104
  class Representation < Google::Apis::Core::JsonRepresentation; end
105
105
 
106
106
  include Google::Apis::Core::JsonObjectSupport
@@ -306,7 +306,7 @@ module Google
306
306
  end
307
307
  end
308
308
 
309
- class DivisionSearchResponse
309
+ class SearchDivisionResponse
310
310
  # @private
311
311
  class Representation < Google::Apis::Core::JsonRepresentation
312
312
  property :kind, as: 'kind'
@@ -353,7 +353,7 @@ module Google
353
353
  end
354
354
  end
355
355
 
356
- class ElectionsQueryResponse
356
+ class QueryElectionsResponse
357
357
  # @private
358
358
  class Representation < Google::Apis::Core::JsonRepresentation
359
359
  collection :elections, as: 'elections', class: Google::Apis::CivicinfoV2::Election, decorator: Google::Apis::CivicinfoV2::Election::Representation
@@ -74,10 +74,10 @@ module Google
74
74
  # Request-specific options
75
75
  #
76
76
  # @yield [result, err] Result & error if block supplied
77
- # @yieldparam result [Google::Apis::CivicinfoV2::DivisionSearchResponse] parsed result object
77
+ # @yieldparam result [Google::Apis::CivicinfoV2::SearchDivisionResponse] parsed result object
78
78
  # @yieldparam err [StandardError] error object if request failed
79
79
  #
80
- # @return [Google::Apis::CivicinfoV2::DivisionSearchResponse]
80
+ # @return [Google::Apis::CivicinfoV2::SearchDivisionResponse]
81
81
  #
82
82
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
83
83
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
@@ -86,8 +86,8 @@ module Google
86
86
  command = make_simple_command(:get, 'divisions', options)
87
87
  command.request_representation = Google::Apis::CivicinfoV2::DivisionSearchRequest::Representation
88
88
  command.request_object = division_search_request_object
89
- command.response_representation = Google::Apis::CivicinfoV2::DivisionSearchResponse::Representation
90
- command.response_class = Google::Apis::CivicinfoV2::DivisionSearchResponse
89
+ command.response_representation = Google::Apis::CivicinfoV2::SearchDivisionResponse::Representation
90
+ command.response_class = Google::Apis::CivicinfoV2::SearchDivisionResponse
91
91
  command.query['query'] = query unless query.nil?
92
92
  command.query['fields'] = fields unless fields.nil?
93
93
  command.query['quotaUser'] = quota_user unless quota_user.nil?
@@ -110,20 +110,20 @@ module Google
110
110
  # Request-specific options
111
111
  #
112
112
  # @yield [result, err] Result & error if block supplied
113
- # @yieldparam result [Google::Apis::CivicinfoV2::ElectionsQueryResponse] parsed result object
113
+ # @yieldparam result [Google::Apis::CivicinfoV2::QueryElectionsResponse] parsed result object
114
114
  # @yieldparam err [StandardError] error object if request failed
115
115
  #
116
- # @return [Google::Apis::CivicinfoV2::ElectionsQueryResponse]
116
+ # @return [Google::Apis::CivicinfoV2::QueryElectionsResponse]
117
117
  #
118
118
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
119
119
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
120
120
  # @raise [Google::Apis::AuthorizationError] Authorization is required
121
- def election_election_query(elections_query_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
121
+ def query_election(elections_query_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
122
122
  command = make_simple_command(:get, 'elections', options)
123
123
  command.request_representation = Google::Apis::CivicinfoV2::ElectionsQueryRequest::Representation
124
124
  command.request_object = elections_query_request_object
125
- command.response_representation = Google::Apis::CivicinfoV2::ElectionsQueryResponse::Representation
126
- command.response_class = Google::Apis::CivicinfoV2::ElectionsQueryResponse
125
+ command.response_representation = Google::Apis::CivicinfoV2::QueryElectionsResponse::Representation
126
+ command.response_class = Google::Apis::CivicinfoV2::QueryElectionsResponse
127
127
  command.query['fields'] = fields unless fields.nil?
128
128
  command.query['quotaUser'] = quota_user unless quota_user.nil?
129
129
  command.query['userIp'] = user_ip unless user_ip.nil?
@@ -165,7 +165,7 @@ module Google
165
165
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
166
166
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
167
167
  # @raise [Google::Apis::AuthorizationError] Authorization is required
168
- def voter_election_info_query(address, voter_info_request_object = nil, election_id: nil, official_only: nil, return_all_available_data: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
168
+ def query_voter_info(address, voter_info_request_object = nil, election_id: nil, official_only: nil, return_all_available_data: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
169
169
  command = make_simple_command(:get, 'voterinfo', options)
170
170
  command.request_representation = Google::Apis::CivicinfoV2::VoterInfoRequest::Representation
171
171
  command.request_object = voter_info_request_object
@@ -219,7 +219,7 @@ module Google
219
219
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
220
220
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
221
221
  # @raise [Google::Apis::AuthorizationError] Authorization is required
222
- def representative_representative_info_by_address(representative_info_request_object = nil, address: nil, include_offices: nil, levels: nil, roles: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
222
+ def representative_info_by_address(representative_info_request_object = nil, address: nil, include_offices: nil, levels: nil, roles: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
223
223
  command = make_simple_command(:get, 'representatives', options)
224
224
  command.request_representation = Google::Apis::CivicinfoV2::RepresentativeInfoRequest::Representation
225
225
  command.request_object = representative_info_request_object
@@ -272,7 +272,7 @@ module Google
272
272
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
273
273
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
274
274
  # @raise [Google::Apis::AuthorizationError] Authorization is required
275
- def representative_representative_info_by_division(ocd_id, division_representative_info_request_object = nil, levels: nil, recursive: nil, roles: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
275
+ def representative_info_by_division(ocd_id, division_representative_info_request_object = nil, levels: nil, recursive: nil, roles: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
276
276
  command = make_simple_command(:get, 'representatives/{ocdId}', options)
277
277
  command.request_representation = Google::Apis::CivicinfoV2::DivisionRepresentativeInfoRequest::Representation
278
278
  command.request_object = division_representative_info_request_object
@@ -25,7 +25,10 @@ module Google
25
25
  # @see https://developers.google.com/classroom/
26
26
  module ClassroomV1
27
27
  VERSION = 'V1'
28
- REVISION = '20170601'
28
+ REVISION = '20170612'
29
+
30
+ # View the email addresses of people in your classes
31
+ AUTH_CLASSROOM_PROFILE_EMAILS = 'https://www.googleapis.com/auth/classroom.profile.emails'
29
32
 
30
33
  # Manage your course work and view your grades in Google Classroom
31
34
  AUTH_CLASSROOM_COURSEWORK_ME = 'https://www.googleapis.com/auth/classroom.coursework.me'
@@ -57,20 +60,17 @@ module Google
57
60
  # View your course work and grades in Google Classroom
58
61
  AUTH_CLASSROOM_STUDENT_SUBMISSIONS_ME_READONLY = 'https://www.googleapis.com/auth/classroom.student-submissions.me.readonly'
59
62
 
60
- # View your Google Classroom guardians
61
- AUTH_CLASSROOM_GUARDIANLINKS_ME_READONLY = 'https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly'
62
-
63
63
  # Manage course work and grades for students in the Google Classroom classes you teach and view the course work and grades for classes you administer
64
64
  AUTH_CLASSROOM_COURSEWORK_STUDENTS = 'https://www.googleapis.com/auth/classroom.coursework.students'
65
65
 
66
+ # View your Google Classroom guardians
67
+ AUTH_CLASSROOM_GUARDIANLINKS_ME_READONLY = 'https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly'
68
+
66
69
  # View course work and grades for students in the Google Classroom classes you teach or administer
67
70
  AUTH_CLASSROOM_COURSEWORK_STUDENTS_READONLY = 'https://www.googleapis.com/auth/classroom.coursework.students.readonly'
68
71
 
69
72
  # View your course work and grades in Google Classroom
70
73
  AUTH_CLASSROOM_COURSEWORK_ME_READONLY = 'https://www.googleapis.com/auth/classroom.coursework.me.readonly'
71
-
72
- # View the email addresses of people in your classes
73
- AUTH_CLASSROOM_PROFILE_EMAILS = 'https://www.googleapis.com/auth/classroom.profile.emails'
74
74
  end
75
75
  end
76
76
  end
@@ -22,30 +22,32 @@ module Google
22
22
  module Apis
23
23
  module ClassroomV1
24
24
 
25
- # Teacher of a course.
26
- class Teacher
25
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
26
+ # time zone are either specified elsewhere or are not significant. The date
27
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
28
+ # represent a year and month where the day is not significant, e.g. credit card
29
+ # expiration date. The year may be 0 to represent a month and day independent
30
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
31
+ # and `google.protobuf.Timestamp`.
32
+ class Date
27
33
  include Google::Apis::Core::Hashable
28
34
 
29
- # Identifier of the user.
30
- # When specified as a parameter of a request, this identifier can be one of
31
- # the following:
32
- # * the numeric identifier for the user
33
- # * the email address of the user
34
- # * the string literal `"me"`, indicating the requesting user
35
- # Corresponds to the JSON property `userId`
36
- # @return [String]
37
- attr_accessor :user_id
35
+ # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
36
+ # a year.
37
+ # Corresponds to the JSON property `year`
38
+ # @return [Fixnum]
39
+ attr_accessor :year
38
40
 
39
- # Identifier of the course.
40
- # Read-only.
41
- # Corresponds to the JSON property `courseId`
42
- # @return [String]
43
- attr_accessor :course_id
41
+ # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
42
+ # if specifying a year/month where the day is not significant.
43
+ # Corresponds to the JSON property `day`
44
+ # @return [Fixnum]
45
+ attr_accessor :day
44
46
 
45
- # Global information for a user.
46
- # Corresponds to the JSON property `profile`
47
- # @return [Google::Apis::ClassroomV1::UserProfile]
48
- attr_accessor :profile
47
+ # Month of year. Must be from 1 to 12.
48
+ # Corresponds to the JSON property `month`
49
+ # @return [Fixnum]
50
+ attr_accessor :month
49
51
 
50
52
  def initialize(**args)
51
53
  update!(**args)
@@ -53,39 +55,54 @@ module Google
53
55
 
54
56
  # Update properties of this object
55
57
  def update!(**args)
56
- @user_id = args[:user_id] if args.key?(:user_id)
57
- @course_id = args[:course_id] if args.key?(:course_id)
58
- @profile = args[:profile] if args.key?(:profile)
58
+ @year = args[:year] if args.key?(:year)
59
+ @day = args[:day] if args.key?(:day)
60
+ @month = args[:month] if args.key?(:month)
59
61
  end
60
62
  end
61
63
 
62
- # Request to reclaim a student submission.
63
- class ReclaimStudentSubmissionRequest
64
+ # Student work for a multiple-choice question.
65
+ class MultipleChoiceSubmission
64
66
  include Google::Apis::Core::Hashable
65
67
 
68
+ # Student's select choice.
69
+ # Corresponds to the JSON property `answer`
70
+ # @return [String]
71
+ attr_accessor :answer
72
+
66
73
  def initialize(**args)
67
74
  update!(**args)
68
75
  end
69
76
 
70
77
  # Update properties of this object
71
78
  def update!(**args)
79
+ @answer = args[:answer] if args.key?(:answer)
72
80
  end
73
81
  end
74
82
 
75
- # Student work for an assignment.
76
- class AssignmentSubmission
83
+ # A material attached to a course as part of a material set.
84
+ class CourseMaterial
77
85
  include Google::Apis::Core::Hashable
78
86
 
79
- # Attachments added by the student.
80
- # Drive files that correspond to materials with a share mode of
81
- # STUDENT_COPY may not exist yet if the student has not accessed the
82
- # assignment in Classroom.
83
- # Some attachment metadata is only populated if the requesting user has
84
- # permission to access it. Identifier and alternate_link fields are always
85
- # available, but others (e.g. title) may not be.
86
- # Corresponds to the JSON property `attachments`
87
- # @return [Array<Google::Apis::ClassroomV1::Attachment>]
88
- attr_accessor :attachments
87
+ # Representation of a Google Drive file.
88
+ # Corresponds to the JSON property `driveFile`
89
+ # @return [Google::Apis::ClassroomV1::DriveFile]
90
+ attr_accessor :drive_file
91
+
92
+ # YouTube video item.
93
+ # Corresponds to the JSON property `youTubeVideo`
94
+ # @return [Google::Apis::ClassroomV1::YouTubeVideo]
95
+ attr_accessor :you_tube_video
96
+
97
+ # Google Forms item.
98
+ # Corresponds to the JSON property `form`
99
+ # @return [Google::Apis::ClassroomV1::Form]
100
+ attr_accessor :form
101
+
102
+ # URL item.
103
+ # Corresponds to the JSON property `link`
104
+ # @return [Google::Apis::ClassroomV1::Link]
105
+ attr_accessor :link
89
106
 
90
107
  def initialize(**args)
91
108
  update!(**args)
@@ -93,34 +110,80 @@ module Google
93
110
 
94
111
  # Update properties of this object
95
112
  def update!(**args)
96
- @attachments = args[:attachments] if args.key?(:attachments)
113
+ @drive_file = args[:drive_file] if args.key?(:drive_file)
114
+ @you_tube_video = args[:you_tube_video] if args.key?(:you_tube_video)
115
+ @form = args[:form] if args.key?(:form)
116
+ @link = args[:link] if args.key?(:link)
97
117
  end
98
118
  end
99
119
 
100
- # Material attached to course work.
101
- # When creating attachments, setting the `form` field is not supported.
102
- class Material
120
+ # Details of the user's name.
121
+ class Name
103
122
  include Google::Apis::Core::Hashable
104
123
 
105
- # URL item.
106
- # Corresponds to the JSON property `link`
107
- # @return [Google::Apis::ClassroomV1::Link]
108
- attr_accessor :link
124
+ # The user's first name.
125
+ # Read-only.
126
+ # Corresponds to the JSON property `givenName`
127
+ # @return [String]
128
+ attr_accessor :given_name
109
129
 
110
- # YouTube video item.
111
- # Corresponds to the JSON property `youtubeVideo`
112
- # @return [Google::Apis::ClassroomV1::YouTubeVideo]
113
- attr_accessor :youtube_video
130
+ # The user's last name.
131
+ # Read-only.
132
+ # Corresponds to the JSON property `familyName`
133
+ # @return [String]
134
+ attr_accessor :family_name
114
135
 
115
- # Drive file that is used as material for course work.
136
+ # The user's full name formed by concatenating the first and last name
137
+ # values.
138
+ # Read-only.
139
+ # Corresponds to the JSON property `fullName`
140
+ # @return [String]
141
+ attr_accessor :full_name
142
+
143
+ def initialize(**args)
144
+ update!(**args)
145
+ end
146
+
147
+ # Update properties of this object
148
+ def update!(**args)
149
+ @given_name = args[:given_name] if args.key?(:given_name)
150
+ @family_name = args[:family_name] if args.key?(:family_name)
151
+ @full_name = args[:full_name] if args.key?(:full_name)
152
+ end
153
+ end
154
+
155
+ # Additional details for assignments.
156
+ class Assignment
157
+ include Google::Apis::Core::Hashable
158
+
159
+ # Representation of a Google Drive folder.
160
+ # Corresponds to the JSON property `studentWorkFolder`
161
+ # @return [Google::Apis::ClassroomV1::DriveFolder]
162
+ attr_accessor :student_work_folder
163
+
164
+ def initialize(**args)
165
+ update!(**args)
166
+ end
167
+
168
+ # Update properties of this object
169
+ def update!(**args)
170
+ @student_work_folder = args[:student_work_folder] if args.key?(:student_work_folder)
171
+ end
172
+ end
173
+
174
+ # Drive file that is used as material for course work.
175
+ class SharedDriveFile
176
+ include Google::Apis::Core::Hashable
177
+
178
+ # Representation of a Google Drive file.
116
179
  # Corresponds to the JSON property `driveFile`
117
- # @return [Google::Apis::ClassroomV1::SharedDriveFile]
180
+ # @return [Google::Apis::ClassroomV1::DriveFile]
118
181
  attr_accessor :drive_file
119
182
 
120
- # Google Forms item.
121
- # Corresponds to the JSON property `form`
122
- # @return [Google::Apis::ClassroomV1::Form]
123
- attr_accessor :form
183
+ # Mechanism by which students access the Drive item.
184
+ # Corresponds to the JSON property `shareMode`
185
+ # @return [String]
186
+ attr_accessor :share_mode
124
187
 
125
188
  def initialize(**args)
126
189
  update!(**args)
@@ -128,182 +191,192 @@ module Google
128
191
 
129
192
  # Update properties of this object
130
193
  def update!(**args)
131
- @link = args[:link] if args.key?(:link)
132
- @youtube_video = args[:youtube_video] if args.key?(:youtube_video)
133
194
  @drive_file = args[:drive_file] if args.key?(:drive_file)
134
- @form = args[:form] if args.key?(:form)
195
+ @share_mode = args[:share_mode] if args.key?(:share_mode)
135
196
  end
136
197
  end
137
198
 
138
- # Course work created by a teacher for students of the course.
139
- class CourseWork
199
+ # A generic empty message that you can re-use to avoid defining duplicated
200
+ # empty messages in your APIs. A typical example is to use it as the request
201
+ # or the response type of an API method. For instance:
202
+ # service Foo `
203
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
204
+ # `
205
+ # The JSON representation for `Empty` is empty JSON object ````.
206
+ class Empty
140
207
  include Google::Apis::Core::Hashable
141
208
 
142
- # Additional details for assignments.
143
- # Corresponds to the JSON property `assignment`
144
- # @return [Google::Apis::ClassroomV1::Assignment]
145
- attr_accessor :assignment
209
+ def initialize(**args)
210
+ update!(**args)
211
+ end
146
212
 
147
- # Type of this course work.
148
- # The type is set when the course work is created and cannot be changed.
149
- # Corresponds to the JSON property `workType`
150
- # @return [String]
151
- attr_accessor :work_type
213
+ # Update properties of this object
214
+ def update!(**args)
215
+ end
216
+ end
152
217
 
153
- # Additional details for multiple-choice questions.
154
- # Corresponds to the JSON property `multipleChoiceQuestion`
155
- # @return [Google::Apis::ClassroomV1::MultipleChoiceQuestion]
156
- attr_accessor :multiple_choice_question
218
+ # Additional details for multiple-choice questions.
219
+ class MultipleChoiceQuestion
220
+ include Google::Apis::Core::Hashable
157
221
 
158
- # Optional description of this course work.
159
- # If set, the description must be a valid UTF-8 string containing no more
160
- # than 30,000 characters.
161
- # Corresponds to the JSON property `description`
162
- # @return [String]
163
- attr_accessor :description
222
+ # Possible choices.
223
+ # Corresponds to the JSON property `choices`
224
+ # @return [Array<String>]
225
+ attr_accessor :choices
164
226
 
165
- # Timestamp when this course work was created.
166
- # Read-only.
167
- # Corresponds to the JSON property `creationTime`
168
- # @return [String]
169
- attr_accessor :creation_time
227
+ def initialize(**args)
228
+ update!(**args)
229
+ end
170
230
 
171
- # Represents a whole calendar date, e.g. date of birth. The time of day and
172
- # time zone are either specified elsewhere or are not significant. The date
173
- # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
174
- # represent a year and month where the day is not significant, e.g. credit card
175
- # expiration date. The year may be 0 to represent a month and day independent
176
- # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
177
- # and `google.protobuf.Timestamp`.
178
- # Corresponds to the JSON property `dueDate`
179
- # @return [Google::Apis::ClassroomV1::Date]
180
- attr_accessor :due_date
231
+ # Update properties of this object
232
+ def update!(**args)
233
+ @choices = args[:choices] if args.key?(:choices)
234
+ end
235
+ end
181
236
 
182
- # Status of this course work.
183
- # If unspecified, the default state is `DRAFT`.
184
- # Corresponds to the JSON property `state`
185
- # @return [String]
186
- attr_accessor :state
237
+ # A Course in Classroom.
238
+ class Course
239
+ include Google::Apis::Core::Hashable
187
240
 
188
- # Setting to determine when students are allowed to modify submissions.
189
- # If unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`.
190
- # Corresponds to the JSON property `submissionModificationMode`
241
+ # The Calendar ID for a calendar that all course members can see, to which
242
+ # Classroom adds events for course work and announcements in the course.
243
+ # Read-only.
244
+ # Corresponds to the JSON property `calendarId`
191
245
  # @return [String]
192
- attr_accessor :submission_modification_mode
246
+ attr_accessor :calendar_id
193
247
 
194
- # Identifier of the course.
248
+ # Time of the most recent update to this course.
249
+ # Specifying this field in a course update mask results in an error.
195
250
  # Read-only.
196
- # Corresponds to the JSON property `courseId`
251
+ # Corresponds to the JSON property `updateTime`
197
252
  # @return [String]
198
- attr_accessor :course_id
253
+ attr_accessor :update_time
199
254
 
200
- # Classroom-assigned identifier of this course work, unique per course.
255
+ # Absolute link to this course in the Classroom web UI.
201
256
  # Read-only.
202
- # Corresponds to the JSON property `id`
257
+ # Corresponds to the JSON property `alternateLink`
203
258
  # @return [String]
204
- attr_accessor :id
259
+ attr_accessor :alternate_link
205
260
 
206
- # Represents a time of day. The date and time zone are either not significant
207
- # or are specified elsewhere. An API may choose to allow leap seconds. Related
208
- # types are google.type.Date and `google.protobuf.Timestamp`.
209
- # Corresponds to the JSON property `dueTime`
210
- # @return [Google::Apis::ClassroomV1::TimeOfDay]
211
- attr_accessor :due_time
261
+ # Whether or not guardian notifications are enabled for this course.
262
+ # Read-only.
263
+ # Corresponds to the JSON property `guardiansEnabled`
264
+ # @return [Boolean]
265
+ attr_accessor :guardians_enabled
266
+ alias_method :guardians_enabled?, :guardians_enabled
212
267
 
213
- # Title of this course work.
214
- # The title must be a valid UTF-8 string containing between 1 and 3000
215
- # characters.
216
- # Corresponds to the JSON property `title`
268
+ # The identifier of the owner of a course.
269
+ # When specified as a parameter of a
270
+ # create course request, this
271
+ # field is required.
272
+ # The identifier can be one of the following:
273
+ # * the numeric identifier for the user
274
+ # * the email address of the user
275
+ # * the string literal `"me"`, indicating the requesting user
276
+ # This must be set in a create request. Specifying this field in a course
277
+ # update mask results in an `INVALID_ARGUMENT` error.
278
+ # Corresponds to the JSON property `ownerId`
217
279
  # @return [String]
218
- attr_accessor :title
280
+ attr_accessor :owner_id
219
281
 
220
- # Whether this course work item is associated with the Developer Console
221
- # project making the request.
222
- # See google.classroom.Work.CreateCourseWork for more
223
- # details.
224
- # Read-only.
225
- # Corresponds to the JSON property `associatedWithDeveloper`
226
- # @return [Boolean]
227
- attr_accessor :associated_with_developer
228
- alias_method :associated_with_developer?, :associated_with_developer
282
+ # State of the course.
283
+ # If unspecified, the default state is `PROVISIONED`.
284
+ # Corresponds to the JSON property `courseState`
285
+ # @return [String]
286
+ attr_accessor :course_state
229
287
 
230
- # Additional materials.
231
- # CourseWork must have no more than 20 material items.
232
- # Corresponds to the JSON property `materials`
233
- # @return [Array<Google::Apis::ClassroomV1::Material>]
234
- attr_accessor :materials
288
+ # Optional description.
289
+ # For example, "We'll be learning about the structure of living
290
+ # creatures from a combination of textbooks, guest lectures, and lab work.
291
+ # Expect to be excited!"
292
+ # If set, this field must be a valid UTF-8 string and no longer than 30,000
293
+ # characters.
294
+ # Corresponds to the JSON property `description`
295
+ # @return [String]
296
+ attr_accessor :description
235
297
 
236
- # Timestamp of the most recent change to this course work.
298
+ # The email address of a Google group containing all teachers of the course.
299
+ # This group does not accept email and can only be used for permissions.
237
300
  # Read-only.
238
- # Corresponds to the JSON property `updateTime`
301
+ # Corresponds to the JSON property `teacherGroupEmail`
239
302
  # @return [String]
240
- attr_accessor :update_time
303
+ attr_accessor :teacher_group_email
241
304
 
242
- # Absolute link to this course work in the Classroom web UI.
243
- # This is only populated if `state` is `PUBLISHED`.
305
+ # Creation time of the course.
306
+ # Specifying this field in a course update mask results in an error.
244
307
  # Read-only.
245
- # Corresponds to the JSON property `alternateLink`
308
+ # Corresponds to the JSON property `creationTime`
246
309
  # @return [String]
247
- attr_accessor :alternate_link
310
+ attr_accessor :creation_time
248
311
 
249
- # Maximum grade for this course work.
250
- # If zero or unspecified, this assignment is considered ungraded.
251
- # This must be a non-negative integer value.
252
- # Corresponds to the JSON property `maxPoints`
253
- # @return [Float]
254
- attr_accessor :max_points
312
+ # Representation of a Google Drive folder.
313
+ # Corresponds to the JSON property `teacherFolder`
314
+ # @return [Google::Apis::ClassroomV1::DriveFolder]
315
+ attr_accessor :teacher_folder
255
316
 
256
- def initialize(**args)
257
- update!(**args)
258
- end
317
+ # Name of the course.
318
+ # For example, "10th Grade Biology".
319
+ # The name is required. It must be between 1 and 750 characters and a valid
320
+ # UTF-8 string.
321
+ # Corresponds to the JSON property `name`
322
+ # @return [String]
323
+ attr_accessor :name
259
324
 
260
- # Update properties of this object
261
- def update!(**args)
262
- @assignment = args[:assignment] if args.key?(:assignment)
263
- @work_type = args[:work_type] if args.key?(:work_type)
264
- @multiple_choice_question = args[:multiple_choice_question] if args.key?(:multiple_choice_question)
265
- @description = args[:description] if args.key?(:description)
266
- @creation_time = args[:creation_time] if args.key?(:creation_time)
267
- @due_date = args[:due_date] if args.key?(:due_date)
268
- @state = args[:state] if args.key?(:state)
269
- @submission_modification_mode = args[:submission_modification_mode] if args.key?(:submission_modification_mode)
270
- @course_id = args[:course_id] if args.key?(:course_id)
271
- @id = args[:id] if args.key?(:id)
272
- @due_time = args[:due_time] if args.key?(:due_time)
273
- @title = args[:title] if args.key?(:title)
274
- @associated_with_developer = args[:associated_with_developer] if args.key?(:associated_with_developer)
275
- @materials = args[:materials] if args.key?(:materials)
276
- @update_time = args[:update_time] if args.key?(:update_time)
277
- @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
278
- @max_points = args[:max_points] if args.key?(:max_points)
279
- end
280
- end
325
+ # Section of the course.
326
+ # For example, "Period 2".
327
+ # If set, this field must be a valid UTF-8 string and no longer than 2800
328
+ # characters.
329
+ # Corresponds to the JSON property `section`
330
+ # @return [String]
331
+ attr_accessor :section
281
332
 
282
- # Association between a student and a guardian of that student. The guardian
283
- # may receive information about the student's course work.
284
- class Guardian
285
- include Google::Apis::Core::Hashable
333
+ # Identifier for this course assigned by Classroom.
334
+ # When
335
+ # creating a course,
336
+ # you may optionally set this identifier to an
337
+ # alias string in the
338
+ # request to create a corresponding alias. The `id` is still assigned by
339
+ # Classroom and cannot be updated after the course is created.
340
+ # Specifying this field in a course update mask results in an error.
341
+ # Corresponds to the JSON property `id`
342
+ # @return [String]
343
+ attr_accessor :id
286
344
 
287
- # Identifier for the student to whom the guardian relationship applies.
288
- # Corresponds to the JSON property `studentId`
345
+ # Optional room location.
346
+ # For example, "301".
347
+ # If set, this field must be a valid UTF-8 string and no longer than 650
348
+ # characters.
349
+ # Corresponds to the JSON property `room`
289
350
  # @return [String]
290
- attr_accessor :student_id
351
+ attr_accessor :room
291
352
 
292
- # Identifier for the guardian.
293
- # Corresponds to the JSON property `guardianId`
353
+ # The email address of a Google group containing all members of the course.
354
+ # This group does not accept email and can only be used for permissions.
355
+ # Read-only.
356
+ # Corresponds to the JSON property `courseGroupEmail`
294
357
  # @return [String]
295
- attr_accessor :guardian_id
358
+ attr_accessor :course_group_email
296
359
 
297
- # The email address to which the initial guardian invitation was sent.
298
- # This field is only visible to domain administrators.
299
- # Corresponds to the JSON property `invitedEmailAddress`
360
+ # Sets of materials that appear on the "about" page of this course.
361
+ # Read-only.
362
+ # Corresponds to the JSON property `courseMaterialSets`
363
+ # @return [Array<Google::Apis::ClassroomV1::CourseMaterialSet>]
364
+ attr_accessor :course_material_sets
365
+
366
+ # Enrollment code to use when joining this course.
367
+ # Specifying this field in a course update mask results in an error.
368
+ # Read-only.
369
+ # Corresponds to the JSON property `enrollmentCode`
300
370
  # @return [String]
301
- attr_accessor :invited_email_address
371
+ attr_accessor :enrollment_code
302
372
 
303
- # Global information for a user.
304
- # Corresponds to the JSON property `guardianProfile`
305
- # @return [Google::Apis::ClassroomV1::UserProfile]
306
- attr_accessor :guardian_profile
373
+ # Optional heading for the description.
374
+ # For example, "Welcome to 10th Grade Biology."
375
+ # If set, this field must be a valid UTF-8 string and no longer than 3600
376
+ # characters.
377
+ # Corresponds to the JSON property `descriptionHeading`
378
+ # @return [String]
379
+ attr_accessor :description_heading
307
380
 
308
381
  def initialize(**args)
309
382
  update!(**args)
@@ -311,45 +384,53 @@ module Google
311
384
 
312
385
  # Update properties of this object
313
386
  def update!(**args)
314
- @student_id = args[:student_id] if args.key?(:student_id)
315
- @guardian_id = args[:guardian_id] if args.key?(:guardian_id)
316
- @invited_email_address = args[:invited_email_address] if args.key?(:invited_email_address)
317
- @guardian_profile = args[:guardian_profile] if args.key?(:guardian_profile)
387
+ @calendar_id = args[:calendar_id] if args.key?(:calendar_id)
388
+ @update_time = args[:update_time] if args.key?(:update_time)
389
+ @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
390
+ @guardians_enabled = args[:guardians_enabled] if args.key?(:guardians_enabled)
391
+ @owner_id = args[:owner_id] if args.key?(:owner_id)
392
+ @course_state = args[:course_state] if args.key?(:course_state)
393
+ @description = args[:description] if args.key?(:description)
394
+ @teacher_group_email = args[:teacher_group_email] if args.key?(:teacher_group_email)
395
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
396
+ @teacher_folder = args[:teacher_folder] if args.key?(:teacher_folder)
397
+ @name = args[:name] if args.key?(:name)
398
+ @section = args[:section] if args.key?(:section)
399
+ @id = args[:id] if args.key?(:id)
400
+ @room = args[:room] if args.key?(:room)
401
+ @course_group_email = args[:course_group_email] if args.key?(:course_group_email)
402
+ @course_material_sets = args[:course_material_sets] if args.key?(:course_material_sets)
403
+ @enrollment_code = args[:enrollment_code] if args.key?(:enrollment_code)
404
+ @description_heading = args[:description_heading] if args.key?(:description_heading)
318
405
  end
319
406
  end
320
407
 
321
- # Global information for a user.
322
- class UserProfile
408
+ # Representation of a Google Drive file.
409
+ class DriveFile
323
410
  include Google::Apis::Core::Hashable
324
411
 
325
- # Identifier of the user.
412
+ # URL of a thumbnail image of the Drive item.
326
413
  # Read-only.
414
+ # Corresponds to the JSON property `thumbnailUrl`
415
+ # @return [String]
416
+ attr_accessor :thumbnail_url
417
+
418
+ # Drive API resource ID.
327
419
  # Corresponds to the JSON property `id`
328
420
  # @return [String]
329
421
  attr_accessor :id
330
422
 
331
- # Email address of the user.
423
+ # Title of the Drive item.
332
424
  # Read-only.
333
- # Corresponds to the JSON property `emailAddress`
425
+ # Corresponds to the JSON property `title`
334
426
  # @return [String]
335
- attr_accessor :email_address
427
+ attr_accessor :title
336
428
 
337
- # URL of user's profile photo.
429
+ # URL that can be used to access the Drive item.
338
430
  # Read-only.
339
- # Corresponds to the JSON property `photoUrl`
431
+ # Corresponds to the JSON property `alternateLink`
340
432
  # @return [String]
341
- attr_accessor :photo_url
342
-
343
- # Global permissions of the user.
344
- # Read-only.
345
- # Corresponds to the JSON property `permissions`
346
- # @return [Array<Google::Apis::ClassroomV1::GlobalPermission>]
347
- attr_accessor :permissions
348
-
349
- # Details of the user's name.
350
- # Corresponds to the JSON property `name`
351
- # @return [Google::Apis::ClassroomV1::Name]
352
- attr_accessor :name
433
+ attr_accessor :alternate_link
353
434
 
354
435
  def initialize(**args)
355
436
  update!(**args)
@@ -357,28 +438,21 @@ module Google
357
438
 
358
439
  # Update properties of this object
359
440
  def update!(**args)
441
+ @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url)
360
442
  @id = args[:id] if args.key?(:id)
361
- @email_address = args[:email_address] if args.key?(:email_address)
362
- @photo_url = args[:photo_url] if args.key?(:photo_url)
363
- @permissions = args[:permissions] if args.key?(:permissions)
364
- @name = args[:name] if args.key?(:name)
443
+ @title = args[:title] if args.key?(:title)
444
+ @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
365
445
  end
366
446
  end
367
447
 
368
- # Response when listing students.
369
- class ListStudentsResponse
448
+ # Global user permission description.
449
+ class GlobalPermission
370
450
  include Google::Apis::Core::Hashable
371
451
 
372
- # Students who match the list request.
373
- # Corresponds to the JSON property `students`
374
- # @return [Array<Google::Apis::ClassroomV1::Student>]
375
- attr_accessor :students
376
-
377
- # Token identifying the next page of results to return. If empty, no further
378
- # results are available.
379
- # Corresponds to the JSON property `nextPageToken`
452
+ # Permission value.
453
+ # Corresponds to the JSON property `permission`
380
454
  # @return [String]
381
- attr_accessor :next_page_token
455
+ attr_accessor :permission
382
456
 
383
457
  def initialize(**args)
384
458
  update!(**args)
@@ -386,13 +460,25 @@ module Google
386
460
 
387
461
  # Update properties of this object
388
462
  def update!(**args)
389
- @students = args[:students] if args.key?(:students)
390
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
463
+ @permission = args[:permission] if args.key?(:permission)
391
464
  end
392
465
  end
393
466
 
394
- # Student in a course.
395
- class Student
467
+ # Request to return a student submission.
468
+ class ReturnStudentSubmissionRequest
469
+ include Google::Apis::Core::Hashable
470
+
471
+ def initialize(**args)
472
+ update!(**args)
473
+ end
474
+
475
+ # Update properties of this object
476
+ def update!(**args)
477
+ end
478
+ end
479
+
480
+ # Teacher of a course.
481
+ class Teacher
396
482
  include Google::Apis::Core::Hashable
397
483
 
398
484
  # Global information for a user.
@@ -400,11 +486,6 @@ module Google
400
486
  # @return [Google::Apis::ClassroomV1::UserProfile]
401
487
  attr_accessor :profile
402
488
 
403
- # Representation of a Google Drive folder.
404
- # Corresponds to the JSON property `studentWorkFolder`
405
- # @return [Google::Apis::ClassroomV1::DriveFolder]
406
- attr_accessor :student_work_folder
407
-
408
489
  # Identifier of the user.
409
490
  # When specified as a parameter of a request, this identifier can be one of
410
491
  # the following:
@@ -428,76 +509,38 @@ module Google
428
509
  # Update properties of this object
429
510
  def update!(**args)
430
511
  @profile = args[:profile] if args.key?(:profile)
431
- @student_work_folder = args[:student_work_folder] if args.key?(:student_work_folder)
432
512
  @user_id = args[:user_id] if args.key?(:user_id)
433
513
  @course_id = args[:course_id] if args.key?(:course_id)
434
514
  end
435
515
  end
436
516
 
437
- # An invitation to join a course.
438
- class Invitation
517
+ # Request to reclaim a student submission.
518
+ class ReclaimStudentSubmissionRequest
439
519
  include Google::Apis::Core::Hashable
440
520
 
441
- # Identifier assigned by Classroom.
442
- # Read-only.
443
- # Corresponds to the JSON property `id`
444
- # @return [String]
445
- attr_accessor :id
446
-
447
- # Role to invite the user to have.
448
- # Must not be `COURSE_ROLE_UNSPECIFIED`.
449
- # Corresponds to the JSON property `role`
450
- # @return [String]
451
- attr_accessor :role
452
-
453
- # Identifier of the invited user.
454
- # When specified as a parameter of a request, this identifier can be set to
455
- # one of the following:
456
- # * the numeric identifier for the user
457
- # * the email address of the user
458
- # * the string literal `"me"`, indicating the requesting user
459
- # Corresponds to the JSON property `userId`
460
- # @return [String]
461
- attr_accessor :user_id
462
-
463
- # Identifier of the course to invite the user to.
464
- # Corresponds to the JSON property `courseId`
465
- # @return [String]
466
- attr_accessor :course_id
467
-
468
521
  def initialize(**args)
469
522
  update!(**args)
470
523
  end
471
524
 
472
525
  # Update properties of this object
473
526
  def update!(**args)
474
- @id = args[:id] if args.key?(:id)
475
- @role = args[:role] if args.key?(:role)
476
- @user_id = args[:user_id] if args.key?(:user_id)
477
- @course_id = args[:course_id] if args.key?(:course_id)
478
527
  end
479
528
  end
480
529
 
481
- # Representation of a Google Drive folder.
482
- class DriveFolder
530
+ # Student work for an assignment.
531
+ class AssignmentSubmission
483
532
  include Google::Apis::Core::Hashable
484
533
 
485
- # Drive API resource ID.
486
- # Corresponds to the JSON property `id`
487
- # @return [String]
488
- attr_accessor :id
489
-
490
- # Title of the Drive folder.
491
- # Read-only.
492
- # Corresponds to the JSON property `title`
493
- # @return [String]
494
- attr_accessor :title
495
-
496
- # URL that can be used to access the Drive folder.
497
- # Read-only.
498
- # Corresponds to the JSON property `alternateLink`
499
- # @return [String]
500
- attr_accessor :alternate_link
534
+ # Attachments added by the student.
535
+ # Drive files that correspond to materials with a share mode of
536
+ # STUDENT_COPY may not exist yet if the student has not accessed the
537
+ # assignment in Classroom.
538
+ # Some attachment metadata is only populated if the requesting user has
539
+ # permission to access it. Identifier and alternate_link fields are always
540
+ # available, but others (e.g. title) may not be.
541
+ # Corresponds to the JSON property `attachments`
542
+ # @return [Array<Google::Apis::ClassroomV1::Attachment>]
543
+ attr_accessor :attachments
501
544
 
502
545
  def initialize(**args)
503
546
  update!(**args)
@@ -505,20 +548,34 @@ module Google
505
548
 
506
549
  # Update properties of this object
507
550
  def update!(**args)
508
- @id = args[:id] if args.key?(:id)
509
- @title = args[:title] if args.key?(:title)
510
- @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
551
+ @attachments = args[:attachments] if args.key?(:attachments)
511
552
  end
512
553
  end
513
554
 
514
- # Student work for a short answer question.
515
- class ShortAnswerSubmission
555
+ # Material attached to course work.
556
+ # When creating attachments, setting the `form` field is not supported.
557
+ class Material
516
558
  include Google::Apis::Core::Hashable
517
559
 
518
- # Student response to a short-answer question.
519
- # Corresponds to the JSON property `answer`
520
- # @return [String]
521
- attr_accessor :answer
560
+ # YouTube video item.
561
+ # Corresponds to the JSON property `youtubeVideo`
562
+ # @return [Google::Apis::ClassroomV1::YouTubeVideo]
563
+ attr_accessor :youtube_video
564
+
565
+ # Drive file that is used as material for course work.
566
+ # Corresponds to the JSON property `driveFile`
567
+ # @return [Google::Apis::ClassroomV1::SharedDriveFile]
568
+ attr_accessor :drive_file
569
+
570
+ # Google Forms item.
571
+ # Corresponds to the JSON property `form`
572
+ # @return [Google::Apis::ClassroomV1::Form]
573
+ attr_accessor :form
574
+
575
+ # URL item.
576
+ # Corresponds to the JSON property `link`
577
+ # @return [Google::Apis::ClassroomV1::Link]
578
+ attr_accessor :link
522
579
 
523
580
  def initialize(**args)
524
581
  update!(**args)
@@ -526,28 +583,50 @@ module Google
526
583
 
527
584
  # Update properties of this object
528
585
  def update!(**args)
529
- @answer = args[:answer] if args.key?(:answer)
586
+ @youtube_video = args[:youtube_video] if args.key?(:youtube_video)
587
+ @drive_file = args[:drive_file] if args.key?(:drive_file)
588
+ @form = args[:form] if args.key?(:form)
589
+ @link = args[:link] if args.key?(:link)
530
590
  end
531
591
  end
532
592
 
533
- # Student submission for course work.
534
- # StudentSubmission items are generated when a CourseWork item is created.
535
- # StudentSubmissions that have never been accessed (i.e. with `state` = NEW)
536
- # may not have a creation time or update time.
537
- class StudentSubmission
593
+ # Course work created by a teacher for students of the course.
594
+ class CourseWork
538
595
  include Google::Apis::Core::Hashable
539
596
 
540
- # Student work for a multiple-choice question.
541
- # Corresponds to the JSON property `multipleChoiceSubmission`
542
- # @return [Google::Apis::ClassroomV1::MultipleChoiceSubmission]
543
- attr_accessor :multiple_choice_submission
597
+ # Identifier of the course.
598
+ # Read-only.
599
+ # Corresponds to the JSON property `courseId`
600
+ # @return [String]
601
+ attr_accessor :course_id
544
602
 
545
- # Student work for an assignment.
546
- # Corresponds to the JSON property `assignmentSubmission`
547
- # @return [Google::Apis::ClassroomV1::AssignmentSubmission]
548
- attr_accessor :assignment_submission
603
+ # Classroom-assigned identifier of this course work, unique per course.
604
+ # Read-only.
605
+ # Corresponds to the JSON property `id`
606
+ # @return [String]
607
+ attr_accessor :id
549
608
 
550
- # Whether this student submission is associated with the Developer Console
609
+ # Represents a time of day. The date and time zone are either not significant
610
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
611
+ # types are google.type.Date and `google.protobuf.Timestamp`.
612
+ # Corresponds to the JSON property `dueTime`
613
+ # @return [Google::Apis::ClassroomV1::TimeOfDay]
614
+ attr_accessor :due_time
615
+
616
+ # Title of this course work.
617
+ # The title must be a valid UTF-8 string containing between 1 and 3000
618
+ # characters.
619
+ # Corresponds to the JSON property `title`
620
+ # @return [String]
621
+ attr_accessor :title
622
+
623
+ # Additional materials.
624
+ # CourseWork must have no more than 20 material items.
625
+ # Corresponds to the JSON property `materials`
626
+ # @return [Array<Google::Apis::ClassroomV1::Material>]
627
+ attr_accessor :materials
628
+
629
+ # Whether this course work item is associated with the Developer Console
551
630
  # project making the request.
552
631
  # See google.classroom.Work.CreateCourseWork for more
553
632
  # details.
@@ -557,88 +636,82 @@ module Google
557
636
  attr_accessor :associated_with_developer
558
637
  alias_method :associated_with_developer?, :associated_with_developer
559
638
 
560
- # Student work for a short answer question.
561
- # Corresponds to the JSON property `shortAnswerSubmission`
562
- # @return [Google::Apis::ClassroomV1::ShortAnswerSubmission]
563
- attr_accessor :short_answer_submission
564
-
565
- # Last update time of this submission.
566
- # This may be unset if the student has not accessed this item.
639
+ # Timestamp of the most recent change to this course work.
567
640
  # Read-only.
568
641
  # Corresponds to the JSON property `updateTime`
569
642
  # @return [String]
570
643
  attr_accessor :update_time
571
644
 
572
- # Absolute link to the submission in the Classroom web UI.
645
+ # Absolute link to this course work in the Classroom web UI.
646
+ # This is only populated if `state` is `PUBLISHED`.
573
647
  # Read-only.
574
648
  # Corresponds to the JSON property `alternateLink`
575
649
  # @return [String]
576
650
  attr_accessor :alternate_link
577
651
 
578
- # Optional pending grade. If unset, no grade was set.
652
+ # Maximum grade for this course work.
653
+ # If zero or unspecified, this assignment is considered ungraded.
579
654
  # This must be a non-negative integer value.
580
- # This is only visible to and modifiable by course teachers.
581
- # Corresponds to the JSON property `draftGrade`
655
+ # Corresponds to the JSON property `maxPoints`
582
656
  # @return [Float]
583
- attr_accessor :draft_grade
584
-
585
- # Whether this submission is late.
586
- # Read-only.
587
- # Corresponds to the JSON property `late`
588
- # @return [Boolean]
589
- attr_accessor :late
590
- alias_method :late?, :late
657
+ attr_accessor :max_points
591
658
 
592
- # Type of course work this submission is for.
593
- # Read-only.
594
- # Corresponds to the JSON property `courseWorkType`
659
+ # Type of this course work.
660
+ # The type is set when the course work is created and cannot be changed.
661
+ # Corresponds to the JSON property `workType`
595
662
  # @return [String]
596
- attr_accessor :course_work_type
663
+ attr_accessor :work_type
597
664
 
598
- # Creation time of this submission.
599
- # This may be unset if the student has not accessed this item.
600
- # Read-only.
601
- # Corresponds to the JSON property `creationTime`
602
- # @return [String]
603
- attr_accessor :creation_time
665
+ # Additional details for multiple-choice questions.
666
+ # Corresponds to the JSON property `multipleChoiceQuestion`
667
+ # @return [Google::Apis::ClassroomV1::MultipleChoiceQuestion]
668
+ attr_accessor :multiple_choice_question
604
669
 
605
- # State of this submission.
606
- # Read-only.
607
- # Corresponds to the JSON property `state`
608
- # @return [String]
609
- attr_accessor :state
670
+ # Additional details for assignments.
671
+ # Corresponds to the JSON property `assignment`
672
+ # @return [Google::Apis::ClassroomV1::Assignment]
673
+ attr_accessor :assignment
610
674
 
611
- # Identifier for the student that owns this submission.
612
- # Read-only.
613
- # Corresponds to the JSON property `userId`
675
+ # Optional description of this course work.
676
+ # If set, the description must be a valid UTF-8 string containing no more
677
+ # than 30,000 characters.
678
+ # Corresponds to the JSON property `description`
614
679
  # @return [String]
615
- attr_accessor :user_id
680
+ attr_accessor :description
616
681
 
617
- # Identifier for the course work this corresponds to.
618
- # Read-only.
619
- # Corresponds to the JSON property `courseWorkId`
682
+ # Optional timestamp when this course work is scheduled to be published.
683
+ # Corresponds to the JSON property `scheduledTime`
620
684
  # @return [String]
621
- attr_accessor :course_work_id
685
+ attr_accessor :scheduled_time
622
686
 
623
- # Identifier of the course.
687
+ # Timestamp when this course work was created.
624
688
  # Read-only.
625
- # Corresponds to the JSON property `courseId`
689
+ # Corresponds to the JSON property `creationTime`
626
690
  # @return [String]
627
- attr_accessor :course_id
691
+ attr_accessor :creation_time
628
692
 
629
- # Classroom-assigned Identifier for the student submission.
630
- # This is unique among submissions for the relevant course work.
631
- # Read-only.
632
- # Corresponds to the JSON property `id`
693
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
694
+ # time zone are either specified elsewhere or are not significant. The date
695
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
696
+ # represent a year and month where the day is not significant, e.g. credit card
697
+ # expiration date. The year may be 0 to represent a month and day independent
698
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
699
+ # and `google.protobuf.Timestamp`.
700
+ # Corresponds to the JSON property `dueDate`
701
+ # @return [Google::Apis::ClassroomV1::Date]
702
+ attr_accessor :due_date
703
+
704
+ # Setting to determine when students are allowed to modify submissions.
705
+ # If unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`.
706
+ # Corresponds to the JSON property `submissionModificationMode`
633
707
  # @return [String]
634
- attr_accessor :id
708
+ attr_accessor :submission_modification_mode
635
709
 
636
- # Optional grade. If unset, no grade was set.
637
- # This must be a non-negative integer value.
638
- # This may be modified only by course teachers.
639
- # Corresponds to the JSON property `assignedGrade`
640
- # @return [Float]
641
- attr_accessor :assigned_grade
710
+ # Status of this course work.
711
+ # If unspecified, the default state is `DRAFT`.
712
+ # Corresponds to the JSON property `state`
713
+ # @return [String]
714
+ attr_accessor :state
642
715
 
643
716
  def initialize(**args)
644
717
  update!(**args)
@@ -646,100 +719,52 @@ module Google
646
719
 
647
720
  # Update properties of this object
648
721
  def update!(**args)
649
- @multiple_choice_submission = args[:multiple_choice_submission] if args.key?(:multiple_choice_submission)
650
- @assignment_submission = args[:assignment_submission] if args.key?(:assignment_submission)
722
+ @course_id = args[:course_id] if args.key?(:course_id)
723
+ @id = args[:id] if args.key?(:id)
724
+ @due_time = args[:due_time] if args.key?(:due_time)
725
+ @title = args[:title] if args.key?(:title)
726
+ @materials = args[:materials] if args.key?(:materials)
651
727
  @associated_with_developer = args[:associated_with_developer] if args.key?(:associated_with_developer)
652
- @short_answer_submission = args[:short_answer_submission] if args.key?(:short_answer_submission)
653
728
  @update_time = args[:update_time] if args.key?(:update_time)
654
729
  @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
655
- @draft_grade = args[:draft_grade] if args.key?(:draft_grade)
656
- @late = args[:late] if args.key?(:late)
657
- @course_work_type = args[:course_work_type] if args.key?(:course_work_type)
730
+ @max_points = args[:max_points] if args.key?(:max_points)
731
+ @work_type = args[:work_type] if args.key?(:work_type)
732
+ @multiple_choice_question = args[:multiple_choice_question] if args.key?(:multiple_choice_question)
733
+ @assignment = args[:assignment] if args.key?(:assignment)
734
+ @description = args[:description] if args.key?(:description)
735
+ @scheduled_time = args[:scheduled_time] if args.key?(:scheduled_time)
658
736
  @creation_time = args[:creation_time] if args.key?(:creation_time)
737
+ @due_date = args[:due_date] if args.key?(:due_date)
738
+ @submission_modification_mode = args[:submission_modification_mode] if args.key?(:submission_modification_mode)
659
739
  @state = args[:state] if args.key?(:state)
660
- @user_id = args[:user_id] if args.key?(:user_id)
661
- @course_work_id = args[:course_work_id] if args.key?(:course_work_id)
662
- @course_id = args[:course_id] if args.key?(:course_id)
663
- @id = args[:id] if args.key?(:id)
664
- @assigned_grade = args[:assigned_grade] if args.key?(:assigned_grade)
665
- end
666
- end
667
-
668
- # Request to turn in a student submission.
669
- class TurnInStudentSubmissionRequest
670
- include Google::Apis::Core::Hashable
671
-
672
- def initialize(**args)
673
- update!(**args)
674
- end
675
-
676
- # Update properties of this object
677
- def update!(**args)
678
740
  end
679
741
  end
680
742
 
681
- # Response when listing student submissions.
682
- class ListStudentSubmissionsResponse
743
+ # Association between a student and a guardian of that student. The guardian
744
+ # may receive information about the student's course work.
745
+ class Guardian
683
746
  include Google::Apis::Core::Hashable
684
747
 
685
- # Token identifying the next page of results to return. If empty, no further
686
- # results are available.
687
- # Corresponds to the JSON property `nextPageToken`
748
+ # Identifier for the student to whom the guardian relationship applies.
749
+ # Corresponds to the JSON property `studentId`
688
750
  # @return [String]
689
- attr_accessor :next_page_token
690
-
691
- # Student work that matches the request.
692
- # Corresponds to the JSON property `studentSubmissions`
693
- # @return [Array<Google::Apis::ClassroomV1::StudentSubmission>]
694
- attr_accessor :student_submissions
695
-
696
- def initialize(**args)
697
- update!(**args)
698
- end
699
-
700
- # Update properties of this object
701
- def update!(**args)
702
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
703
- @student_submissions = args[:student_submissions] if args.key?(:student_submissions)
704
- end
705
- end
706
-
707
- # Response when listing course work.
708
- class ListCourseWorkResponse
709
- include Google::Apis::Core::Hashable
751
+ attr_accessor :student_id
710
752
 
711
- # Token identifying the next page of results to return. If empty, no further
712
- # results are available.
713
- # Corresponds to the JSON property `nextPageToken`
753
+ # Identifier for the guardian.
754
+ # Corresponds to the JSON property `guardianId`
714
755
  # @return [String]
715
- attr_accessor :next_page_token
716
-
717
- # Course work items that match the request.
718
- # Corresponds to the JSON property `courseWork`
719
- # @return [Array<Google::Apis::ClassroomV1::CourseWork>]
720
- attr_accessor :course_work
721
-
722
- def initialize(**args)
723
- update!(**args)
724
- end
725
-
726
- # Update properties of this object
727
- def update!(**args)
728
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
729
- @course_work = args[:course_work] if args.key?(:course_work)
730
- end
731
- end
756
+ attr_accessor :guardian_id
732
757
 
733
- # Request to modify the attachments of a student submission.
734
- class ModifyAttachmentsRequest
735
- include Google::Apis::Core::Hashable
758
+ # The email address to which the initial guardian invitation was sent.
759
+ # This field is only visible to domain administrators.
760
+ # Corresponds to the JSON property `invitedEmailAddress`
761
+ # @return [String]
762
+ attr_accessor :invited_email_address
736
763
 
737
- # Attachments to add.
738
- # A student submission may not have more than 20 attachments.
739
- # Form attachments are not supported.
740
- # Corresponds to the JSON property `addAttachments`
741
- # @return [Array<Google::Apis::ClassroomV1::Attachment>]
742
- attr_accessor :add_attachments
764
+ # Global information for a user.
765
+ # Corresponds to the JSON property `guardianProfile`
766
+ # @return [Google::Apis::ClassroomV1::UserProfile]
767
+ attr_accessor :guardian_profile
743
768
 
744
769
  def initialize(**args)
745
770
  update!(**args)
@@ -747,36 +772,52 @@ module Google
747
772
 
748
773
  # Update properties of this object
749
774
  def update!(**args)
750
- @add_attachments = args[:add_attachments] if args.key?(:add_attachments)
775
+ @student_id = args[:student_id] if args.key?(:student_id)
776
+ @guardian_id = args[:guardian_id] if args.key?(:guardian_id)
777
+ @invited_email_address = args[:invited_email_address] if args.key?(:invited_email_address)
778
+ @guardian_profile = args[:guardian_profile] if args.key?(:guardian_profile)
751
779
  end
752
780
  end
753
781
 
754
- # YouTube video item.
755
- class YouTubeVideo
782
+ # Global information for a user.
783
+ class UserProfile
756
784
  include Google::Apis::Core::Hashable
757
785
 
758
- # YouTube API resource ID.
759
- # Corresponds to the JSON property `id`
786
+ # Email address of the user.
787
+ # Read-only.
788
+ # Corresponds to the JSON property `emailAddress`
760
789
  # @return [String]
761
- attr_accessor :id
790
+ attr_accessor :email_address
762
791
 
763
- # Title of the YouTube video.
792
+ # URL of user's profile photo.
764
793
  # Read-only.
765
- # Corresponds to the JSON property `title`
794
+ # Corresponds to the JSON property `photoUrl`
766
795
  # @return [String]
767
- attr_accessor :title
796
+ attr_accessor :photo_url
768
797
 
769
- # URL that can be used to view the YouTube video.
798
+ # Global permissions of the user.
770
799
  # Read-only.
771
- # Corresponds to the JSON property `alternateLink`
772
- # @return [String]
773
- attr_accessor :alternate_link
800
+ # Corresponds to the JSON property `permissions`
801
+ # @return [Array<Google::Apis::ClassroomV1::GlobalPermission>]
802
+ attr_accessor :permissions
774
803
 
775
- # URL of a thumbnail image of the YouTube video.
804
+ # Details of the user's name.
805
+ # Corresponds to the JSON property `name`
806
+ # @return [Google::Apis::ClassroomV1::Name]
807
+ attr_accessor :name
808
+
809
+ # Identifier of the user.
776
810
  # Read-only.
777
- # Corresponds to the JSON property `thumbnailUrl`
811
+ # Corresponds to the JSON property `id`
778
812
  # @return [String]
779
- attr_accessor :thumbnail_url
813
+ attr_accessor :id
814
+
815
+ # Whether or not the user is a verified teacher
816
+ # Read-only
817
+ # Corresponds to the JSON property `verifiedTeacher`
818
+ # @return [Boolean]
819
+ attr_accessor :verified_teacher
820
+ alias_method :verified_teacher?, :verified_teacher
780
821
 
781
822
  def initialize(**args)
782
823
  update!(**args)
@@ -784,63 +825,70 @@ module Google
784
825
 
785
826
  # Update properties of this object
786
827
  def update!(**args)
828
+ @email_address = args[:email_address] if args.key?(:email_address)
829
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
830
+ @permissions = args[:permissions] if args.key?(:permissions)
831
+ @name = args[:name] if args.key?(:name)
787
832
  @id = args[:id] if args.key?(:id)
788
- @title = args[:title] if args.key?(:title)
789
- @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
790
- @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url)
833
+ @verified_teacher = args[:verified_teacher] if args.key?(:verified_teacher)
791
834
  end
792
835
  end
793
836
 
794
- # Response when listing invitations.
795
- class ListInvitationsResponse
837
+ # Response when listing students.
838
+ class ListStudentsResponse
796
839
  include Google::Apis::Core::Hashable
797
840
 
841
+ # Students who match the list request.
842
+ # Corresponds to the JSON property `students`
843
+ # @return [Array<Google::Apis::ClassroomV1::Student>]
844
+ attr_accessor :students
845
+
798
846
  # Token identifying the next page of results to return. If empty, no further
799
847
  # results are available.
800
848
  # Corresponds to the JSON property `nextPageToken`
801
849
  # @return [String]
802
850
  attr_accessor :next_page_token
803
851
 
804
- # Invitations that match the list request.
805
- # Corresponds to the JSON property `invitations`
806
- # @return [Array<Google::Apis::ClassroomV1::Invitation>]
807
- attr_accessor :invitations
808
-
809
852
  def initialize(**args)
810
853
  update!(**args)
811
854
  end
812
855
 
813
856
  # Update properties of this object
814
857
  def update!(**args)
858
+ @students = args[:students] if args.key?(:students)
815
859
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
816
- @invitations = args[:invitations] if args.key?(:invitations)
817
860
  end
818
861
  end
819
862
 
820
- # Attachment added to student assignment work.
821
- # When creating attachments, setting the `form` field is not supported.
822
- class Attachment
863
+ # Student in a course.
864
+ class Student
823
865
  include Google::Apis::Core::Hashable
824
866
 
825
- # Representation of a Google Drive file.
826
- # Corresponds to the JSON property `driveFile`
827
- # @return [Google::Apis::ClassroomV1::DriveFile]
828
- attr_accessor :drive_file
867
+ # Identifier of the course.
868
+ # Read-only.
869
+ # Corresponds to the JSON property `courseId`
870
+ # @return [String]
871
+ attr_accessor :course_id
829
872
 
830
- # YouTube video item.
831
- # Corresponds to the JSON property `youTubeVideo`
832
- # @return [Google::Apis::ClassroomV1::YouTubeVideo]
833
- attr_accessor :you_tube_video
873
+ # Global information for a user.
874
+ # Corresponds to the JSON property `profile`
875
+ # @return [Google::Apis::ClassroomV1::UserProfile]
876
+ attr_accessor :profile
834
877
 
835
- # Google Forms item.
836
- # Corresponds to the JSON property `form`
837
- # @return [Google::Apis::ClassroomV1::Form]
838
- attr_accessor :form
878
+ # Representation of a Google Drive folder.
879
+ # Corresponds to the JSON property `studentWorkFolder`
880
+ # @return [Google::Apis::ClassroomV1::DriveFolder]
881
+ attr_accessor :student_work_folder
839
882
 
840
- # URL item.
841
- # Corresponds to the JSON property `link`
842
- # @return [Google::Apis::ClassroomV1::Link]
843
- attr_accessor :link
883
+ # Identifier of the user.
884
+ # When specified as a parameter of a request, this identifier can be one of
885
+ # the following:
886
+ # * the numeric identifier for the user
887
+ # * the email address of the user
888
+ # * the string literal `"me"`, indicating the requesting user
889
+ # Corresponds to the JSON property `userId`
890
+ # @return [String]
891
+ attr_accessor :user_id
844
892
 
845
893
  def initialize(**args)
846
894
  update!(**args)
@@ -848,45 +896,43 @@ module Google
848
896
 
849
897
  # Update properties of this object
850
898
  def update!(**args)
851
- @drive_file = args[:drive_file] if args.key?(:drive_file)
852
- @you_tube_video = args[:you_tube_video] if args.key?(:you_tube_video)
853
- @form = args[:form] if args.key?(:form)
854
- @link = args[:link] if args.key?(:link)
899
+ @course_id = args[:course_id] if args.key?(:course_id)
900
+ @profile = args[:profile] if args.key?(:profile)
901
+ @student_work_folder = args[:student_work_folder] if args.key?(:student_work_folder)
902
+ @user_id = args[:user_id] if args.key?(:user_id)
855
903
  end
856
904
  end
857
905
 
858
- # An invitation to become the guardian of a specified user, sent to a specified
859
- # email address.
860
- class GuardianInvitation
906
+ # An invitation to join a course.
907
+ class Invitation
861
908
  include Google::Apis::Core::Hashable
862
909
 
863
- # The time that this invitation was created.
864
- # Read-only.
865
- # Corresponds to the JSON property `creationTime`
866
- # @return [String]
867
- attr_accessor :creation_time
868
-
869
- # Unique identifier for this invitation.
870
- # Read-only.
871
- # Corresponds to the JSON property `invitationId`
910
+ # Identifier of the invited user.
911
+ # When specified as a parameter of a request, this identifier can be set to
912
+ # one of the following:
913
+ # * the numeric identifier for the user
914
+ # * the email address of the user
915
+ # * the string literal `"me"`, indicating the requesting user
916
+ # Corresponds to the JSON property `userId`
872
917
  # @return [String]
873
- attr_accessor :invitation_id
918
+ attr_accessor :user_id
874
919
 
875
- # ID of the student (in standard format)
876
- # Corresponds to the JSON property `studentId`
920
+ # Identifier of the course to invite the user to.
921
+ # Corresponds to the JSON property `courseId`
877
922
  # @return [String]
878
- attr_accessor :student_id
923
+ attr_accessor :course_id
879
924
 
880
- # The state that this invitation is in.
881
- # Corresponds to the JSON property `state`
925
+ # Identifier assigned by Classroom.
926
+ # Read-only.
927
+ # Corresponds to the JSON property `id`
882
928
  # @return [String]
883
- attr_accessor :state
929
+ attr_accessor :id
884
930
 
885
- # Email address that the invitation was sent to.
886
- # This field is only visible to domain administrators.
887
- # Corresponds to the JSON property `invitedEmailAddress`
931
+ # Role to invite the user to have.
932
+ # Must not be `COURSE_ROLE_UNSPECIFIED`.
933
+ # Corresponds to the JSON property `role`
888
934
  # @return [String]
889
- attr_accessor :invited_email_address
935
+ attr_accessor :role
890
936
 
891
937
  def initialize(**args)
892
938
  update!(**args)
@@ -894,29 +940,33 @@ module Google
894
940
 
895
941
  # Update properties of this object
896
942
  def update!(**args)
897
- @creation_time = args[:creation_time] if args.key?(:creation_time)
898
- @invitation_id = args[:invitation_id] if args.key?(:invitation_id)
899
- @student_id = args[:student_id] if args.key?(:student_id)
900
- @state = args[:state] if args.key?(:state)
901
- @invited_email_address = args[:invited_email_address] if args.key?(:invited_email_address)
943
+ @user_id = args[:user_id] if args.key?(:user_id)
944
+ @course_id = args[:course_id] if args.key?(:course_id)
945
+ @id = args[:id] if args.key?(:id)
946
+ @role = args[:role] if args.key?(:role)
902
947
  end
903
948
  end
904
949
 
905
- # A set of materials that appears on the "About" page of the course.
906
- # These materials might include a syllabus, schedule, or other background
907
- # information relating to the course as a whole.
908
- class CourseMaterialSet
950
+ # Representation of a Google Drive folder.
951
+ class DriveFolder
909
952
  include Google::Apis::Core::Hashable
910
953
 
911
- # Title for this set.
954
+ # Drive API resource ID.
955
+ # Corresponds to the JSON property `id`
956
+ # @return [String]
957
+ attr_accessor :id
958
+
959
+ # Title of the Drive folder.
960
+ # Read-only.
912
961
  # Corresponds to the JSON property `title`
913
962
  # @return [String]
914
963
  attr_accessor :title
915
964
 
916
- # Materials attached to this set.
917
- # Corresponds to the JSON property `materials`
918
- # @return [Array<Google::Apis::ClassroomV1::CourseMaterial>]
919
- attr_accessor :materials
965
+ # URL that can be used to access the Drive folder.
966
+ # Read-only.
967
+ # Corresponds to the JSON property `alternateLink`
968
+ # @return [String]
969
+ attr_accessor :alternate_link
920
970
 
921
971
  def initialize(**args)
922
972
  update!(**args)
@@ -924,38 +974,20 @@ module Google
924
974
 
925
975
  # Update properties of this object
926
976
  def update!(**args)
977
+ @id = args[:id] if args.key?(:id)
927
978
  @title = args[:title] if args.key?(:title)
928
- @materials = args[:materials] if args.key?(:materials)
979
+ @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
929
980
  end
930
981
  end
931
982
 
932
- # Represents a time of day. The date and time zone are either not significant
933
- # or are specified elsewhere. An API may choose to allow leap seconds. Related
934
- # types are google.type.Date and `google.protobuf.Timestamp`.
935
- class TimeOfDay
983
+ # Student work for a short answer question.
984
+ class ShortAnswerSubmission
936
985
  include Google::Apis::Core::Hashable
937
986
 
938
- # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
939
- # to allow the value "24:00:00" for scenarios like business closing time.
940
- # Corresponds to the JSON property `hours`
941
- # @return [Fixnum]
942
- attr_accessor :hours
943
-
944
- # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
945
- # Corresponds to the JSON property `nanos`
946
- # @return [Fixnum]
947
- attr_accessor :nanos
948
-
949
- # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
950
- # allow the value 60 if it allows leap-seconds.
951
- # Corresponds to the JSON property `seconds`
952
- # @return [Fixnum]
953
- attr_accessor :seconds
954
-
955
- # Minutes of hour of day. Must be from 0 to 59.
956
- # Corresponds to the JSON property `minutes`
957
- # @return [Fixnum]
958
- attr_accessor :minutes
987
+ # Student response to a short-answer question.
988
+ # Corresponds to the JSON property `answer`
989
+ # @return [String]
990
+ attr_accessor :answer
959
991
 
960
992
  def initialize(**args)
961
993
  update!(**args)
@@ -963,95 +995,119 @@ module Google
963
995
 
964
996
  # Update properties of this object
965
997
  def update!(**args)
966
- @hours = args[:hours] if args.key?(:hours)
967
- @nanos = args[:nanos] if args.key?(:nanos)
968
- @seconds = args[:seconds] if args.key?(:seconds)
969
- @minutes = args[:minutes] if args.key?(:minutes)
998
+ @answer = args[:answer] if args.key?(:answer)
970
999
  end
971
1000
  end
972
1001
 
973
- # Response when listing courses.
974
- class ListCoursesResponse
1002
+ # Student submission for course work.
1003
+ # StudentSubmission items are generated when a CourseWork item is created.
1004
+ # StudentSubmissions that have never been accessed (i.e. with `state` = NEW)
1005
+ # may not have a creation time or update time.
1006
+ class StudentSubmission
975
1007
  include Google::Apis::Core::Hashable
976
1008
 
977
- # Token identifying the next page of results to return. If empty, no further
978
- # results are available.
979
- # Corresponds to the JSON property `nextPageToken`
980
- # @return [String]
981
- attr_accessor :next_page_token
1009
+ # Whether this submission is late.
1010
+ # Read-only.
1011
+ # Corresponds to the JSON property `late`
1012
+ # @return [Boolean]
1013
+ attr_accessor :late
1014
+ alias_method :late?, :late
982
1015
 
983
- # Courses that match the list request.
984
- # Corresponds to the JSON property `courses`
985
- # @return [Array<Google::Apis::ClassroomV1::Course>]
986
- attr_accessor :courses
1016
+ # Optional pending grade. If unset, no grade was set.
1017
+ # This must be a non-negative integer value.
1018
+ # This is only visible to and modifiable by course teachers.
1019
+ # Corresponds to the JSON property `draftGrade`
1020
+ # @return [Float]
1021
+ attr_accessor :draft_grade
987
1022
 
988
- def initialize(**args)
989
- update!(**args)
990
- end
1023
+ # Type of course work this submission is for.
1024
+ # Read-only.
1025
+ # Corresponds to the JSON property `courseWorkType`
1026
+ # @return [String]
1027
+ attr_accessor :course_work_type
991
1028
 
992
- # Update properties of this object
993
- def update!(**args)
994
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
995
- @courses = args[:courses] if args.key?(:courses)
996
- end
997
- end
1029
+ # Creation time of this submission.
1030
+ # This may be unset if the student has not accessed this item.
1031
+ # Read-only.
1032
+ # Corresponds to the JSON property `creationTime`
1033
+ # @return [String]
1034
+ attr_accessor :creation_time
998
1035
 
999
- # Google Forms item.
1000
- class Form
1001
- include Google::Apis::Core::Hashable
1036
+ # State of this submission.
1037
+ # Read-only.
1038
+ # Corresponds to the JSON property `state`
1039
+ # @return [String]
1040
+ attr_accessor :state
1002
1041
 
1003
- # URL of a thumbnail image of the Form.
1042
+ # Identifier for the student that owns this submission.
1004
1043
  # Read-only.
1005
- # Corresponds to the JSON property `thumbnailUrl`
1044
+ # Corresponds to the JSON property `userId`
1006
1045
  # @return [String]
1007
- attr_accessor :thumbnail_url
1046
+ attr_accessor :user_id
1008
1047
 
1009
- # URL of the form responses document.
1010
- # Only set if respsonses have been recorded and only when the
1011
- # requesting user is an editor of the form.
1048
+ # Identifier for the course work this corresponds to.
1012
1049
  # Read-only.
1013
- # Corresponds to the JSON property `responseUrl`
1050
+ # Corresponds to the JSON property `courseWorkId`
1014
1051
  # @return [String]
1015
- attr_accessor :response_url
1052
+ attr_accessor :course_work_id
1016
1053
 
1017
- # URL of the form.
1018
- # Corresponds to the JSON property `formUrl`
1054
+ # Identifier of the course.
1055
+ # Read-only.
1056
+ # Corresponds to the JSON property `courseId`
1019
1057
  # @return [String]
1020
- attr_accessor :form_url
1058
+ attr_accessor :course_id
1021
1059
 
1022
- # Title of the Form.
1060
+ # Classroom-assigned Identifier for the student submission.
1061
+ # This is unique among submissions for the relevant course work.
1023
1062
  # Read-only.
1024
- # Corresponds to the JSON property `title`
1063
+ # Corresponds to the JSON property `id`
1025
1064
  # @return [String]
1026
- attr_accessor :title
1065
+ attr_accessor :id
1027
1066
 
1028
- def initialize(**args)
1029
- update!(**args)
1030
- end
1067
+ # Optional grade. If unset, no grade was set.
1068
+ # This must be a non-negative integer value.
1069
+ # This may be modified only by course teachers.
1070
+ # Corresponds to the JSON property `assignedGrade`
1071
+ # @return [Float]
1072
+ attr_accessor :assigned_grade
1031
1073
 
1032
- # Update properties of this object
1033
- def update!(**args)
1034
- @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url)
1035
- @response_url = args[:response_url] if args.key?(:response_url)
1036
- @form_url = args[:form_url] if args.key?(:form_url)
1037
- @title = args[:title] if args.key?(:title)
1038
- end
1039
- end
1074
+ # Student work for a multiple-choice question.
1075
+ # Corresponds to the JSON property `multipleChoiceSubmission`
1076
+ # @return [Google::Apis::ClassroomV1::MultipleChoiceSubmission]
1077
+ attr_accessor :multiple_choice_submission
1040
1078
 
1041
- # Response when listing teachers.
1042
- class ListTeachersResponse
1043
- include Google::Apis::Core::Hashable
1079
+ # Student work for an assignment.
1080
+ # Corresponds to the JSON property `assignmentSubmission`
1081
+ # @return [Google::Apis::ClassroomV1::AssignmentSubmission]
1082
+ attr_accessor :assignment_submission
1044
1083
 
1045
- # Token identifying the next page of results to return. If empty, no further
1046
- # results are available.
1047
- # Corresponds to the JSON property `nextPageToken`
1084
+ # Whether this student submission is associated with the Developer Console
1085
+ # project making the request.
1086
+ # See google.classroom.Work.CreateCourseWork for more
1087
+ # details.
1088
+ # Read-only.
1089
+ # Corresponds to the JSON property `associatedWithDeveloper`
1090
+ # @return [Boolean]
1091
+ attr_accessor :associated_with_developer
1092
+ alias_method :associated_with_developer?, :associated_with_developer
1093
+
1094
+ # Student work for a short answer question.
1095
+ # Corresponds to the JSON property `shortAnswerSubmission`
1096
+ # @return [Google::Apis::ClassroomV1::ShortAnswerSubmission]
1097
+ attr_accessor :short_answer_submission
1098
+
1099
+ # Last update time of this submission.
1100
+ # This may be unset if the student has not accessed this item.
1101
+ # Read-only.
1102
+ # Corresponds to the JSON property `updateTime`
1048
1103
  # @return [String]
1049
- attr_accessor :next_page_token
1104
+ attr_accessor :update_time
1050
1105
 
1051
- # Teachers who match the list request.
1052
- # Corresponds to the JSON property `teachers`
1053
- # @return [Array<Google::Apis::ClassroomV1::Teacher>]
1054
- attr_accessor :teachers
1106
+ # Absolute link to the submission in the Classroom web UI.
1107
+ # Read-only.
1108
+ # Corresponds to the JSON property `alternateLink`
1109
+ # @return [String]
1110
+ attr_accessor :alternate_link
1055
1111
 
1056
1112
  def initialize(**args)
1057
1113
  update!(**args)
@@ -1059,47 +1115,40 @@ module Google
1059
1115
 
1060
1116
  # Update properties of this object
1061
1117
  def update!(**args)
1062
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1063
- @teachers = args[:teachers] if args.key?(:teachers)
1118
+ @late = args[:late] if args.key?(:late)
1119
+ @draft_grade = args[:draft_grade] if args.key?(:draft_grade)
1120
+ @course_work_type = args[:course_work_type] if args.key?(:course_work_type)
1121
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
1122
+ @state = args[:state] if args.key?(:state)
1123
+ @user_id = args[:user_id] if args.key?(:user_id)
1124
+ @course_work_id = args[:course_work_id] if args.key?(:course_work_id)
1125
+ @course_id = args[:course_id] if args.key?(:course_id)
1126
+ @id = args[:id] if args.key?(:id)
1127
+ @assigned_grade = args[:assigned_grade] if args.key?(:assigned_grade)
1128
+ @multiple_choice_submission = args[:multiple_choice_submission] if args.key?(:multiple_choice_submission)
1129
+ @assignment_submission = args[:assignment_submission] if args.key?(:assignment_submission)
1130
+ @associated_with_developer = args[:associated_with_developer] if args.key?(:associated_with_developer)
1131
+ @short_answer_submission = args[:short_answer_submission] if args.key?(:short_answer_submission)
1132
+ @update_time = args[:update_time] if args.key?(:update_time)
1133
+ @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
1064
1134
  end
1065
1135
  end
1066
1136
 
1067
- # URL item.
1068
- class Link
1137
+ # Request to turn in a student submission.
1138
+ class TurnInStudentSubmissionRequest
1069
1139
  include Google::Apis::Core::Hashable
1070
1140
 
1071
- # URL of a thumbnail image of the target URL.
1072
- # Read-only.
1073
- # Corresponds to the JSON property `thumbnailUrl`
1074
- # @return [String]
1075
- attr_accessor :thumbnail_url
1076
-
1077
- # URL to link to.
1078
- # This must be a valid UTF-8 string containing between 1 and 2024 characters.
1079
- # Corresponds to the JSON property `url`
1080
- # @return [String]
1081
- attr_accessor :url
1082
-
1083
- # Title of the target of the URL.
1084
- # Read-only.
1085
- # Corresponds to the JSON property `title`
1086
- # @return [String]
1087
- attr_accessor :title
1088
-
1089
1141
  def initialize(**args)
1090
1142
  update!(**args)
1091
1143
  end
1092
1144
 
1093
1145
  # Update properties of this object
1094
1146
  def update!(**args)
1095
- @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url)
1096
- @url = args[:url] if args.key?(:url)
1097
- @title = args[:title] if args.key?(:title)
1098
1147
  end
1099
1148
  end
1100
1149
 
1101
- # Response when listing guardians.
1102
- class ListGuardiansResponse
1150
+ # Response when listing student submissions.
1151
+ class ListStudentSubmissionsResponse
1103
1152
  include Google::Apis::Core::Hashable
1104
1153
 
1105
1154
  # Token identifying the next page of results to return. If empty, no further
@@ -1108,11 +1157,10 @@ module Google
1108
1157
  # @return [String]
1109
1158
  attr_accessor :next_page_token
1110
1159
 
1111
- # Guardians on this page of results that met the criteria specified in
1112
- # the request.
1113
- # Corresponds to the JSON property `guardians`
1114
- # @return [Array<Google::Apis::ClassroomV1::Guardian>]
1115
- attr_accessor :guardians
1160
+ # Student work that matches the request.
1161
+ # Corresponds to the JSON property `studentSubmissions`
1162
+ # @return [Array<Google::Apis::ClassroomV1::StudentSubmission>]
1163
+ attr_accessor :student_submissions
1116
1164
 
1117
1165
  def initialize(**args)
1118
1166
  update!(**args)
@@ -1121,34 +1169,20 @@ module Google
1121
1169
  # Update properties of this object
1122
1170
  def update!(**args)
1123
1171
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1124
- @guardians = args[:guardians] if args.key?(:guardians)
1172
+ @student_submissions = args[:student_submissions] if args.key?(:student_submissions)
1125
1173
  end
1126
1174
  end
1127
1175
 
1128
- # Alternative identifier for a course.
1129
- # An alias uniquely identifies a course. It must be unique within one of the
1130
- # following scopes:
1131
- # * domain: A domain-scoped alias is visible to all users within the alias
1132
- # creator's domain and can be created only by a domain admin. A domain-scoped
1133
- # alias is often used when a course has an identifier external to Classroom.
1134
- # * project: A project-scoped alias is visible to any request from an
1135
- # application using the Developer Console project ID that created the alias
1136
- # and can be created by any project. A project-scoped alias is often used when
1137
- # an application has alternative identifiers. A random value can also be used
1138
- # to avoid duplicate courses in the event of transmission failures, as retrying
1139
- # a request will return `ALREADY_EXISTS` if a previous one has succeeded.
1140
- class CourseAlias
1176
+ # Request to modify the attachments of a student submission.
1177
+ class ModifyAttachmentsRequest
1141
1178
  include Google::Apis::Core::Hashable
1142
1179
 
1143
- # Alias string. The format of the string indicates the desired alias scoping.
1144
- # * `d:<name>` indicates a domain-scoped alias.
1145
- # Example: `d:math_101`
1146
- # * `p:<name>` indicates a project-scoped alias.
1147
- # Example: `p:abc123`
1148
- # This field has a maximum length of 256 characters.
1149
- # Corresponds to the JSON property `alias`
1150
- # @return [String]
1151
- attr_accessor :alias
1180
+ # Attachments to add.
1181
+ # A student submission may not have more than 20 attachments.
1182
+ # Form attachments are not supported.
1183
+ # Corresponds to the JSON property `addAttachments`
1184
+ # @return [Array<Google::Apis::ClassroomV1::Attachment>]
1185
+ attr_accessor :add_attachments
1152
1186
 
1153
1187
  def initialize(**args)
1154
1188
  update!(**args)
@@ -1156,50 +1190,24 @@ module Google
1156
1190
 
1157
1191
  # Update properties of this object
1158
1192
  def update!(**args)
1159
- @alias = args[:alias] if args.key?(:alias)
1193
+ @add_attachments = args[:add_attachments] if args.key?(:add_attachments)
1160
1194
  end
1161
1195
  end
1162
1196
 
1163
- # Response when listing course aliases.
1164
- class ListCourseAliasesResponse
1197
+ # Response when listing course work.
1198
+ class ListCourseWorkResponse
1165
1199
  include Google::Apis::Core::Hashable
1166
1200
 
1167
- # The course aliases.
1168
- # Corresponds to the JSON property `aliases`
1169
- # @return [Array<Google::Apis::ClassroomV1::CourseAlias>]
1170
- attr_accessor :aliases
1171
-
1172
1201
  # Token identifying the next page of results to return. If empty, no further
1173
1202
  # results are available.
1174
1203
  # Corresponds to the JSON property `nextPageToken`
1175
1204
  # @return [String]
1176
1205
  attr_accessor :next_page_token
1177
1206
 
1178
- def initialize(**args)
1179
- update!(**args)
1180
- end
1181
-
1182
- # Update properties of this object
1183
- def update!(**args)
1184
- @aliases = args[:aliases] if args.key?(:aliases)
1185
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1186
- end
1187
- end
1188
-
1189
- # Response when listing guardian invitations.
1190
- class ListGuardianInvitationsResponse
1191
- include Google::Apis::Core::Hashable
1192
-
1193
- # Guardian invitations that matched the list request.
1194
- # Corresponds to the JSON property `guardianInvitations`
1195
- # @return [Array<Google::Apis::ClassroomV1::GuardianInvitation>]
1196
- attr_accessor :guardian_invitations
1197
-
1198
- # Token identifying the next page of results to return. If empty, no further
1199
- # results are available.
1200
- # Corresponds to the JSON property `nextPageToken`
1201
- # @return [String]
1202
- attr_accessor :next_page_token
1207
+ # Course work items that match the request.
1208
+ # Corresponds to the JSON property `courseWork`
1209
+ # @return [Array<Google::Apis::ClassroomV1::CourseWork>]
1210
+ attr_accessor :course_work
1203
1211
 
1204
1212
  def initialize(**args)
1205
1213
  update!(**args)
@@ -1207,58 +1215,37 @@ module Google
1207
1215
 
1208
1216
  # Update properties of this object
1209
1217
  def update!(**args)
1210
- @guardian_invitations = args[:guardian_invitations] if args.key?(:guardian_invitations)
1211
1218
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1219
+ @course_work = args[:course_work] if args.key?(:course_work)
1212
1220
  end
1213
1221
  end
1214
1222
 
1215
- # Represents a whole calendar date, e.g. date of birth. The time of day and
1216
- # time zone are either specified elsewhere or are not significant. The date
1217
- # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
1218
- # represent a year and month where the day is not significant, e.g. credit card
1219
- # expiration date. The year may be 0 to represent a month and day independent
1220
- # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
1221
- # and `google.protobuf.Timestamp`.
1222
- class Date
1223
+ # YouTube video item.
1224
+ class YouTubeVideo
1223
1225
  include Google::Apis::Core::Hashable
1224
1226
 
1225
- # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
1226
- # a year.
1227
- # Corresponds to the JSON property `year`
1228
- # @return [Fixnum]
1229
- attr_accessor :year
1230
-
1231
- # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
1232
- # if specifying a year/month where the day is not significant.
1233
- # Corresponds to the JSON property `day`
1234
- # @return [Fixnum]
1235
- attr_accessor :day
1236
-
1237
- # Month of year. Must be from 1 to 12.
1238
- # Corresponds to the JSON property `month`
1239
- # @return [Fixnum]
1240
- attr_accessor :month
1241
-
1242
- def initialize(**args)
1243
- update!(**args)
1244
- end
1227
+ # Title of the YouTube video.
1228
+ # Read-only.
1229
+ # Corresponds to the JSON property `title`
1230
+ # @return [String]
1231
+ attr_accessor :title
1245
1232
 
1246
- # Update properties of this object
1247
- def update!(**args)
1248
- @year = args[:year] if args.key?(:year)
1249
- @day = args[:day] if args.key?(:day)
1250
- @month = args[:month] if args.key?(:month)
1251
- end
1252
- end
1233
+ # URL that can be used to view the YouTube video.
1234
+ # Read-only.
1235
+ # Corresponds to the JSON property `alternateLink`
1236
+ # @return [String]
1237
+ attr_accessor :alternate_link
1253
1238
 
1254
- # Student work for a multiple-choice question.
1255
- class MultipleChoiceSubmission
1256
- include Google::Apis::Core::Hashable
1239
+ # URL of a thumbnail image of the YouTube video.
1240
+ # Read-only.
1241
+ # Corresponds to the JSON property `thumbnailUrl`
1242
+ # @return [String]
1243
+ attr_accessor :thumbnail_url
1257
1244
 
1258
- # Student's select choice.
1259
- # Corresponds to the JSON property `answer`
1245
+ # YouTube API resource ID.
1246
+ # Corresponds to the JSON property `id`
1260
1247
  # @return [String]
1261
- attr_accessor :answer
1248
+ attr_accessor :id
1262
1249
 
1263
1250
  def initialize(**args)
1264
1251
  update!(**args)
@@ -1266,32 +1253,27 @@ module Google
1266
1253
 
1267
1254
  # Update properties of this object
1268
1255
  def update!(**args)
1269
- @answer = args[:answer] if args.key?(:answer)
1256
+ @title = args[:title] if args.key?(:title)
1257
+ @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
1258
+ @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url)
1259
+ @id = args[:id] if args.key?(:id)
1270
1260
  end
1271
1261
  end
1272
1262
 
1273
- # Details of the user's name.
1274
- class Name
1263
+ # Response when listing invitations.
1264
+ class ListInvitationsResponse
1275
1265
  include Google::Apis::Core::Hashable
1276
1266
 
1277
- # The user's first name.
1278
- # Read-only.
1279
- # Corresponds to the JSON property `givenName`
1280
- # @return [String]
1281
- attr_accessor :given_name
1282
-
1283
- # The user's last name.
1284
- # Read-only.
1285
- # Corresponds to the JSON property `familyName`
1267
+ # Token identifying the next page of results to return. If empty, no further
1268
+ # results are available.
1269
+ # Corresponds to the JSON property `nextPageToken`
1286
1270
  # @return [String]
1287
- attr_accessor :family_name
1271
+ attr_accessor :next_page_token
1288
1272
 
1289
- # The user's full name formed by concatenating the first and last name
1290
- # values.
1291
- # Read-only.
1292
- # Corresponds to the JSON property `fullName`
1293
- # @return [String]
1294
- attr_accessor :full_name
1273
+ # Invitations that match the list request.
1274
+ # Corresponds to the JSON property `invitations`
1275
+ # @return [Array<Google::Apis::ClassroomV1::Invitation>]
1276
+ attr_accessor :invitations
1295
1277
 
1296
1278
  def initialize(**args)
1297
1279
  update!(**args)
@@ -1299,26 +1281,16 @@ module Google
1299
1281
 
1300
1282
  # Update properties of this object
1301
1283
  def update!(**args)
1302
- @given_name = args[:given_name] if args.key?(:given_name)
1303
- @family_name = args[:family_name] if args.key?(:family_name)
1304
- @full_name = args[:full_name] if args.key?(:full_name)
1284
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1285
+ @invitations = args[:invitations] if args.key?(:invitations)
1305
1286
  end
1306
1287
  end
1307
1288
 
1308
- # A material attached to a course as part of a material set.
1309
- class CourseMaterial
1289
+ # Attachment added to student assignment work.
1290
+ # When creating attachments, setting the `form` field is not supported.
1291
+ class Attachment
1310
1292
  include Google::Apis::Core::Hashable
1311
1293
 
1312
- # Representation of a Google Drive file.
1313
- # Corresponds to the JSON property `driveFile`
1314
- # @return [Google::Apis::ClassroomV1::DriveFile]
1315
- attr_accessor :drive_file
1316
-
1317
- # YouTube video item.
1318
- # Corresponds to the JSON property `youTubeVideo`
1319
- # @return [Google::Apis::ClassroomV1::YouTubeVideo]
1320
- attr_accessor :you_tube_video
1321
-
1322
1294
  # Google Forms item.
1323
1295
  # Corresponds to the JSON property `form`
1324
1296
  # @return [Google::Apis::ClassroomV1::Form]
@@ -1329,51 +1301,61 @@ module Google
1329
1301
  # @return [Google::Apis::ClassroomV1::Link]
1330
1302
  attr_accessor :link
1331
1303
 
1304
+ # Representation of a Google Drive file.
1305
+ # Corresponds to the JSON property `driveFile`
1306
+ # @return [Google::Apis::ClassroomV1::DriveFile]
1307
+ attr_accessor :drive_file
1308
+
1309
+ # YouTube video item.
1310
+ # Corresponds to the JSON property `youTubeVideo`
1311
+ # @return [Google::Apis::ClassroomV1::YouTubeVideo]
1312
+ attr_accessor :you_tube_video
1313
+
1332
1314
  def initialize(**args)
1333
1315
  update!(**args)
1334
1316
  end
1335
1317
 
1336
1318
  # Update properties of this object
1337
1319
  def update!(**args)
1338
- @drive_file = args[:drive_file] if args.key?(:drive_file)
1339
- @you_tube_video = args[:you_tube_video] if args.key?(:you_tube_video)
1340
1320
  @form = args[:form] if args.key?(:form)
1341
1321
  @link = args[:link] if args.key?(:link)
1322
+ @drive_file = args[:drive_file] if args.key?(:drive_file)
1323
+ @you_tube_video = args[:you_tube_video] if args.key?(:you_tube_video)
1342
1324
  end
1343
1325
  end
1344
1326
 
1345
- # Additional details for assignments.
1346
- class Assignment
1327
+ # An invitation to become the guardian of a specified user, sent to a specified
1328
+ # email address.
1329
+ class GuardianInvitation
1347
1330
  include Google::Apis::Core::Hashable
1348
1331
 
1349
- # Representation of a Google Drive folder.
1350
- # Corresponds to the JSON property `studentWorkFolder`
1351
- # @return [Google::Apis::ClassroomV1::DriveFolder]
1352
- attr_accessor :student_work_folder
1353
-
1354
- def initialize(**args)
1355
- update!(**args)
1356
- end
1332
+ # ID of the student (in standard format)
1333
+ # Corresponds to the JSON property `studentId`
1334
+ # @return [String]
1335
+ attr_accessor :student_id
1357
1336
 
1358
- # Update properties of this object
1359
- def update!(**args)
1360
- @student_work_folder = args[:student_work_folder] if args.key?(:student_work_folder)
1361
- end
1362
- end
1337
+ # The state that this invitation is in.
1338
+ # Corresponds to the JSON property `state`
1339
+ # @return [String]
1340
+ attr_accessor :state
1363
1341
 
1364
- # Drive file that is used as material for course work.
1365
- class SharedDriveFile
1366
- include Google::Apis::Core::Hashable
1342
+ # Email address that the invitation was sent to.
1343
+ # This field is only visible to domain administrators.
1344
+ # Corresponds to the JSON property `invitedEmailAddress`
1345
+ # @return [String]
1346
+ attr_accessor :invited_email_address
1367
1347
 
1368
- # Representation of a Google Drive file.
1369
- # Corresponds to the JSON property `driveFile`
1370
- # @return [Google::Apis::ClassroomV1::DriveFile]
1371
- attr_accessor :drive_file
1348
+ # The time that this invitation was created.
1349
+ # Read-only.
1350
+ # Corresponds to the JSON property `creationTime`
1351
+ # @return [String]
1352
+ attr_accessor :creation_time
1372
1353
 
1373
- # Mechanism by which students access the Drive item.
1374
- # Corresponds to the JSON property `shareMode`
1354
+ # Unique identifier for this invitation.
1355
+ # Read-only.
1356
+ # Corresponds to the JSON property `invitationId`
1375
1357
  # @return [String]
1376
- attr_accessor :share_mode
1358
+ attr_accessor :invitation_id
1377
1359
 
1378
1360
  def initialize(**args)
1379
1361
  update!(**args)
@@ -1381,38 +1363,68 @@ module Google
1381
1363
 
1382
1364
  # Update properties of this object
1383
1365
  def update!(**args)
1384
- @drive_file = args[:drive_file] if args.key?(:drive_file)
1385
- @share_mode = args[:share_mode] if args.key?(:share_mode)
1366
+ @student_id = args[:student_id] if args.key?(:student_id)
1367
+ @state = args[:state] if args.key?(:state)
1368
+ @invited_email_address = args[:invited_email_address] if args.key?(:invited_email_address)
1369
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
1370
+ @invitation_id = args[:invitation_id] if args.key?(:invitation_id)
1386
1371
  end
1387
1372
  end
1388
1373
 
1389
- # A generic empty message that you can re-use to avoid defining duplicated
1390
- # empty messages in your APIs. A typical example is to use it as the request
1391
- # or the response type of an API method. For instance:
1392
- # service Foo `
1393
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
1394
- # `
1395
- # The JSON representation for `Empty` is empty JSON object ````.
1396
- class Empty
1374
+ # A set of materials that appears on the "About" page of the course.
1375
+ # These materials might include a syllabus, schedule, or other background
1376
+ # information relating to the course as a whole.
1377
+ class CourseMaterialSet
1397
1378
  include Google::Apis::Core::Hashable
1398
1379
 
1380
+ # Title for this set.
1381
+ # Corresponds to the JSON property `title`
1382
+ # @return [String]
1383
+ attr_accessor :title
1384
+
1385
+ # Materials attached to this set.
1386
+ # Corresponds to the JSON property `materials`
1387
+ # @return [Array<Google::Apis::ClassroomV1::CourseMaterial>]
1388
+ attr_accessor :materials
1389
+
1399
1390
  def initialize(**args)
1400
1391
  update!(**args)
1401
1392
  end
1402
1393
 
1403
1394
  # Update properties of this object
1404
1395
  def update!(**args)
1396
+ @title = args[:title] if args.key?(:title)
1397
+ @materials = args[:materials] if args.key?(:materials)
1405
1398
  end
1406
1399
  end
1407
1400
 
1408
- # Additional details for multiple-choice questions.
1409
- class MultipleChoiceQuestion
1401
+ # Represents a time of day. The date and time zone are either not significant
1402
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
1403
+ # types are google.type.Date and `google.protobuf.Timestamp`.
1404
+ class TimeOfDay
1410
1405
  include Google::Apis::Core::Hashable
1411
1406
 
1412
- # Possible choices.
1413
- # Corresponds to the JSON property `choices`
1414
- # @return [Array<String>]
1415
- attr_accessor :choices
1407
+ # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
1408
+ # to allow the value "24:00:00" for scenarios like business closing time.
1409
+ # Corresponds to the JSON property `hours`
1410
+ # @return [Fixnum]
1411
+ attr_accessor :hours
1412
+
1413
+ # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1414
+ # Corresponds to the JSON property `nanos`
1415
+ # @return [Fixnum]
1416
+ attr_accessor :nanos
1417
+
1418
+ # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
1419
+ # allow the value 60 if it allows leap-seconds.
1420
+ # Corresponds to the JSON property `seconds`
1421
+ # @return [Fixnum]
1422
+ attr_accessor :seconds
1423
+
1424
+ # Minutes of hour of day. Must be from 0 to 59.
1425
+ # Corresponds to the JSON property `minutes`
1426
+ # @return [Fixnum]
1427
+ attr_accessor :minutes
1416
1428
 
1417
1429
  def initialize(**args)
1418
1430
  update!(**args)
@@ -1420,146 +1432,95 @@ module Google
1420
1432
 
1421
1433
  # Update properties of this object
1422
1434
  def update!(**args)
1423
- @choices = args[:choices] if args.key?(:choices)
1435
+ @hours = args[:hours] if args.key?(:hours)
1436
+ @nanos = args[:nanos] if args.key?(:nanos)
1437
+ @seconds = args[:seconds] if args.key?(:seconds)
1438
+ @minutes = args[:minutes] if args.key?(:minutes)
1424
1439
  end
1425
1440
  end
1426
1441
 
1427
- # A Course in Classroom.
1428
- class Course
1442
+ # Response when listing courses.
1443
+ class ListCoursesResponse
1429
1444
  include Google::Apis::Core::Hashable
1430
1445
 
1431
- # Whether or not guardian notifications are enabled for this course.
1432
- # Read-only.
1433
- # Corresponds to the JSON property `guardiansEnabled`
1434
- # @return [Boolean]
1435
- attr_accessor :guardians_enabled
1436
- alias_method :guardians_enabled?, :guardians_enabled
1437
-
1438
- # The identifier of the owner of a course.
1439
- # When specified as a parameter of a
1440
- # create course request, this
1441
- # field is required.
1442
- # The identifier can be one of the following:
1443
- # * the numeric identifier for the user
1444
- # * the email address of the user
1445
- # * the string literal `"me"`, indicating the requesting user
1446
- # This must be set in a create request. Specifying this field in a course
1447
- # update mask results in an `INVALID_ARGUMENT` error.
1448
- # Corresponds to the JSON property `ownerId`
1449
- # @return [String]
1450
- attr_accessor :owner_id
1451
-
1452
- # State of the course.
1453
- # If unspecified, the default state is `PROVISIONED`.
1454
- # Corresponds to the JSON property `courseState`
1455
- # @return [String]
1456
- attr_accessor :course_state
1457
-
1458
- # Optional description.
1459
- # For example, "We'll be learning about the structure of living
1460
- # creatures from a combination of textbooks, guest lectures, and lab work.
1461
- # Expect to be excited!"
1462
- # If set, this field must be a valid UTF-8 string and no longer than 30,000
1463
- # characters.
1464
- # Corresponds to the JSON property `description`
1465
- # @return [String]
1466
- attr_accessor :description
1467
-
1468
- # The email address of a Google group containing all teachers of the course.
1469
- # This group does not accept email and can only be used for permissions.
1470
- # Read-only.
1471
- # Corresponds to the JSON property `teacherGroupEmail`
1472
- # @return [String]
1473
- attr_accessor :teacher_group_email
1474
-
1475
- # Creation time of the course.
1476
- # Specifying this field in a course update mask results in an error.
1477
- # Read-only.
1478
- # Corresponds to the JSON property `creationTime`
1479
- # @return [String]
1480
- attr_accessor :creation_time
1481
-
1482
- # Name of the course.
1483
- # For example, "10th Grade Biology".
1484
- # The name is required. It must be between 1 and 750 characters and a valid
1485
- # UTF-8 string.
1486
- # Corresponds to the JSON property `name`
1487
- # @return [String]
1488
- attr_accessor :name
1489
-
1490
- # Representation of a Google Drive folder.
1491
- # Corresponds to the JSON property `teacherFolder`
1492
- # @return [Google::Apis::ClassroomV1::DriveFolder]
1493
- attr_accessor :teacher_folder
1446
+ # Courses that match the list request.
1447
+ # Corresponds to the JSON property `courses`
1448
+ # @return [Array<Google::Apis::ClassroomV1::Course>]
1449
+ attr_accessor :courses
1494
1450
 
1495
- # Section of the course.
1496
- # For example, "Period 2".
1497
- # If set, this field must be a valid UTF-8 string and no longer than 2800
1498
- # characters.
1499
- # Corresponds to the JSON property `section`
1451
+ # Token identifying the next page of results to return. If empty, no further
1452
+ # results are available.
1453
+ # Corresponds to the JSON property `nextPageToken`
1500
1454
  # @return [String]
1501
- attr_accessor :section
1455
+ attr_accessor :next_page_token
1502
1456
 
1503
- # Identifier for this course assigned by Classroom.
1504
- # When
1505
- # creating a course,
1506
- # you may optionally set this identifier to an
1507
- # alias string in the
1508
- # request to create a corresponding alias. The `id` is still assigned by
1509
- # Classroom and cannot be updated after the course is created.
1510
- # Specifying this field in a course update mask results in an error.
1511
- # Corresponds to the JSON property `id`
1512
- # @return [String]
1513
- attr_accessor :id
1457
+ def initialize(**args)
1458
+ update!(**args)
1459
+ end
1514
1460
 
1515
- # Optional room location.
1516
- # For example, "301".
1517
- # If set, this field must be a valid UTF-8 string and no longer than 650
1518
- # characters.
1519
- # Corresponds to the JSON property `room`
1520
- # @return [String]
1521
- attr_accessor :room
1461
+ # Update properties of this object
1462
+ def update!(**args)
1463
+ @courses = args[:courses] if args.key?(:courses)
1464
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1465
+ end
1466
+ end
1522
1467
 
1523
- # The email address of a Google group containing all members of the course.
1524
- # This group does not accept email and can only be used for permissions.
1525
- # Read-only.
1526
- # Corresponds to the JSON property `courseGroupEmail`
1527
- # @return [String]
1528
- attr_accessor :course_group_email
1468
+ # Google Forms item.
1469
+ class Form
1470
+ include Google::Apis::Core::Hashable
1529
1471
 
1530
- # Sets of materials that appear on the "about" page of this course.
1472
+ # URL of a thumbnail image of the Form.
1531
1473
  # Read-only.
1532
- # Corresponds to the JSON property `courseMaterialSets`
1533
- # @return [Array<Google::Apis::ClassroomV1::CourseMaterialSet>]
1534
- attr_accessor :course_material_sets
1474
+ # Corresponds to the JSON property `thumbnailUrl`
1475
+ # @return [String]
1476
+ attr_accessor :thumbnail_url
1535
1477
 
1536
- # Enrollment code to use when joining this course.
1537
- # Specifying this field in a course update mask results in an error.
1478
+ # URL of the form responses document.
1479
+ # Only set if respsonses have been recorded and only when the
1480
+ # requesting user is an editor of the form.
1538
1481
  # Read-only.
1539
- # Corresponds to the JSON property `enrollmentCode`
1482
+ # Corresponds to the JSON property `responseUrl`
1540
1483
  # @return [String]
1541
- attr_accessor :enrollment_code
1484
+ attr_accessor :response_url
1542
1485
 
1543
- # Optional heading for the description.
1544
- # For example, "Welcome to 10th Grade Biology."
1545
- # If set, this field must be a valid UTF-8 string and no longer than 3600
1546
- # characters.
1547
- # Corresponds to the JSON property `descriptionHeading`
1486
+ # URL of the form.
1487
+ # Corresponds to the JSON property `formUrl`
1548
1488
  # @return [String]
1549
- attr_accessor :description_heading
1489
+ attr_accessor :form_url
1550
1490
 
1551
- # Time of the most recent update to this course.
1552
- # Specifying this field in a course update mask results in an error.
1491
+ # Title of the Form.
1553
1492
  # Read-only.
1554
- # Corresponds to the JSON property `updateTime`
1493
+ # Corresponds to the JSON property `title`
1555
1494
  # @return [String]
1556
- attr_accessor :update_time
1495
+ attr_accessor :title
1557
1496
 
1558
- # Absolute link to this course in the Classroom web UI.
1559
- # Read-only.
1560
- # Corresponds to the JSON property `alternateLink`
1497
+ def initialize(**args)
1498
+ update!(**args)
1499
+ end
1500
+
1501
+ # Update properties of this object
1502
+ def update!(**args)
1503
+ @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url)
1504
+ @response_url = args[:response_url] if args.key?(:response_url)
1505
+ @form_url = args[:form_url] if args.key?(:form_url)
1506
+ @title = args[:title] if args.key?(:title)
1507
+ end
1508
+ end
1509
+
1510
+ # Response when listing teachers.
1511
+ class ListTeachersResponse
1512
+ include Google::Apis::Core::Hashable
1513
+
1514
+ # Token identifying the next page of results to return. If empty, no further
1515
+ # results are available.
1516
+ # Corresponds to the JSON property `nextPageToken`
1561
1517
  # @return [String]
1562
- attr_accessor :alternate_link
1518
+ attr_accessor :next_page_token
1519
+
1520
+ # Teachers who match the list request.
1521
+ # Corresponds to the JSON property `teachers`
1522
+ # @return [Array<Google::Apis::ClassroomV1::Teacher>]
1523
+ attr_accessor :teachers
1563
1524
 
1564
1525
  def initialize(**args)
1565
1526
  update!(**args)
@@ -1567,52 +1528,60 @@ module Google
1567
1528
 
1568
1529
  # Update properties of this object
1569
1530
  def update!(**args)
1570
- @guardians_enabled = args[:guardians_enabled] if args.key?(:guardians_enabled)
1571
- @owner_id = args[:owner_id] if args.key?(:owner_id)
1572
- @course_state = args[:course_state] if args.key?(:course_state)
1573
- @description = args[:description] if args.key?(:description)
1574
- @teacher_group_email = args[:teacher_group_email] if args.key?(:teacher_group_email)
1575
- @creation_time = args[:creation_time] if args.key?(:creation_time)
1576
- @name = args[:name] if args.key?(:name)
1577
- @teacher_folder = args[:teacher_folder] if args.key?(:teacher_folder)
1578
- @section = args[:section] if args.key?(:section)
1579
- @id = args[:id] if args.key?(:id)
1580
- @room = args[:room] if args.key?(:room)
1581
- @course_group_email = args[:course_group_email] if args.key?(:course_group_email)
1582
- @course_material_sets = args[:course_material_sets] if args.key?(:course_material_sets)
1583
- @enrollment_code = args[:enrollment_code] if args.key?(:enrollment_code)
1584
- @description_heading = args[:description_heading] if args.key?(:description_heading)
1585
- @update_time = args[:update_time] if args.key?(:update_time)
1586
- @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
1531
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1532
+ @teachers = args[:teachers] if args.key?(:teachers)
1587
1533
  end
1588
1534
  end
1589
1535
 
1590
- # Representation of a Google Drive file.
1591
- class DriveFile
1536
+ # URL item.
1537
+ class Link
1592
1538
  include Google::Apis::Core::Hashable
1593
1539
 
1594
- # URL that can be used to access the Drive item.
1540
+ # Title of the target of the URL.
1595
1541
  # Read-only.
1596
- # Corresponds to the JSON property `alternateLink`
1542
+ # Corresponds to the JSON property `title`
1597
1543
  # @return [String]
1598
- attr_accessor :alternate_link
1544
+ attr_accessor :title
1599
1545
 
1600
- # URL of a thumbnail image of the Drive item.
1546
+ # URL of a thumbnail image of the target URL.
1601
1547
  # Read-only.
1602
1548
  # Corresponds to the JSON property `thumbnailUrl`
1603
1549
  # @return [String]
1604
1550
  attr_accessor :thumbnail_url
1605
1551
 
1606
- # Drive API resource ID.
1607
- # Corresponds to the JSON property `id`
1552
+ # URL to link to.
1553
+ # This must be a valid UTF-8 string containing between 1 and 2024 characters.
1554
+ # Corresponds to the JSON property `url`
1608
1555
  # @return [String]
1609
- attr_accessor :id
1556
+ attr_accessor :url
1610
1557
 
1611
- # Title of the Drive item.
1612
- # Read-only.
1613
- # Corresponds to the JSON property `title`
1558
+ def initialize(**args)
1559
+ update!(**args)
1560
+ end
1561
+
1562
+ # Update properties of this object
1563
+ def update!(**args)
1564
+ @title = args[:title] if args.key?(:title)
1565
+ @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url)
1566
+ @url = args[:url] if args.key?(:url)
1567
+ end
1568
+ end
1569
+
1570
+ # Response when listing guardians.
1571
+ class ListGuardiansResponse
1572
+ include Google::Apis::Core::Hashable
1573
+
1574
+ # Guardians on this page of results that met the criteria specified in
1575
+ # the request.
1576
+ # Corresponds to the JSON property `guardians`
1577
+ # @return [Array<Google::Apis::ClassroomV1::Guardian>]
1578
+ attr_accessor :guardians
1579
+
1580
+ # Token identifying the next page of results to return. If empty, no further
1581
+ # results are available.
1582
+ # Corresponds to the JSON property `nextPageToken`
1614
1583
  # @return [String]
1615
- attr_accessor :title
1584
+ attr_accessor :next_page_token
1616
1585
 
1617
1586
  def initialize(**args)
1618
1587
  update!(**args)
@@ -1620,21 +1589,25 @@ module Google
1620
1589
 
1621
1590
  # Update properties of this object
1622
1591
  def update!(**args)
1623
- @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
1624
- @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url)
1625
- @id = args[:id] if args.key?(:id)
1626
- @title = args[:title] if args.key?(:title)
1592
+ @guardians = args[:guardians] if args.key?(:guardians)
1593
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1627
1594
  end
1628
1595
  end
1629
1596
 
1630
- # Global user permission description.
1631
- class GlobalPermission
1597
+ # Response when listing course aliases.
1598
+ class ListCourseAliasesResponse
1632
1599
  include Google::Apis::Core::Hashable
1633
1600
 
1634
- # Permission value.
1635
- # Corresponds to the JSON property `permission`
1601
+ # The course aliases.
1602
+ # Corresponds to the JSON property `aliases`
1603
+ # @return [Array<Google::Apis::ClassroomV1::CourseAlias>]
1604
+ attr_accessor :aliases
1605
+
1606
+ # Token identifying the next page of results to return. If empty, no further
1607
+ # results are available.
1608
+ # Corresponds to the JSON property `nextPageToken`
1636
1609
  # @return [String]
1637
- attr_accessor :permission
1610
+ attr_accessor :next_page_token
1638
1611
 
1639
1612
  def initialize(**args)
1640
1613
  update!(**args)
@@ -1642,20 +1615,69 @@ module Google
1642
1615
 
1643
1616
  # Update properties of this object
1644
1617
  def update!(**args)
1645
- @permission = args[:permission] if args.key?(:permission)
1618
+ @aliases = args[:aliases] if args.key?(:aliases)
1619
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1646
1620
  end
1647
1621
  end
1648
1622
 
1649
- # Request to return a student submission.
1650
- class ReturnStudentSubmissionRequest
1623
+ # Response when listing guardian invitations.
1624
+ class ListGuardianInvitationsResponse
1625
+ include Google::Apis::Core::Hashable
1626
+
1627
+ # Token identifying the next page of results to return. If empty, no further
1628
+ # results are available.
1629
+ # Corresponds to the JSON property `nextPageToken`
1630
+ # @return [String]
1631
+ attr_accessor :next_page_token
1632
+
1633
+ # Guardian invitations that matched the list request.
1634
+ # Corresponds to the JSON property `guardianInvitations`
1635
+ # @return [Array<Google::Apis::ClassroomV1::GuardianInvitation>]
1636
+ attr_accessor :guardian_invitations
1637
+
1638
+ def initialize(**args)
1639
+ update!(**args)
1640
+ end
1641
+
1642
+ # Update properties of this object
1643
+ def update!(**args)
1644
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1645
+ @guardian_invitations = args[:guardian_invitations] if args.key?(:guardian_invitations)
1646
+ end
1647
+ end
1648
+
1649
+ # Alternative identifier for a course.
1650
+ # An alias uniquely identifies a course. It must be unique within one of the
1651
+ # following scopes:
1652
+ # * domain: A domain-scoped alias is visible to all users within the alias
1653
+ # creator's domain and can be created only by a domain admin. A domain-scoped
1654
+ # alias is often used when a course has an identifier external to Classroom.
1655
+ # * project: A project-scoped alias is visible to any request from an
1656
+ # application using the Developer Console project ID that created the alias
1657
+ # and can be created by any project. A project-scoped alias is often used when
1658
+ # an application has alternative identifiers. A random value can also be used
1659
+ # to avoid duplicate courses in the event of transmission failures, as retrying
1660
+ # a request will return `ALREADY_EXISTS` if a previous one has succeeded.
1661
+ class CourseAlias
1651
1662
  include Google::Apis::Core::Hashable
1652
1663
 
1664
+ # Alias string. The format of the string indicates the desired alias scoping.
1665
+ # * `d:<name>` indicates a domain-scoped alias.
1666
+ # Example: `d:math_101`
1667
+ # * `p:<name>` indicates a project-scoped alias.
1668
+ # Example: `p:abc123`
1669
+ # This field has a maximum length of 256 characters.
1670
+ # Corresponds to the JSON property `alias`
1671
+ # @return [String]
1672
+ attr_accessor :alias
1673
+
1653
1674
  def initialize(**args)
1654
1675
  update!(**args)
1655
1676
  end
1656
1677
 
1657
1678
  # Update properties of this object
1658
1679
  def update!(**args)
1680
+ @alias = args[:alias] if args.key?(:alias)
1659
1681
  end
1660
1682
  end
1661
1683
  end