google-api-client 0.13.2 → 0.13.3

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