google-api-client 0.9.6 → 0.9.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (149) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +6 -0
  3. data/api_names.yaml +15 -0
  4. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  5. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +75 -12
  6. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +25 -5
  7. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +6 -2
  8. data/generated/google/apis/adexchangeseller_v2_0.rb +1 -1
  9. data/generated/google/apis/admin_directory_v1/classes.rb +1 -1
  10. data/generated/google/apis/admin_directory_v1/representations.rb +1 -2
  11. data/generated/google/apis/adsense_v1_4.rb +1 -1
  12. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  13. data/generated/google/apis/analytics_v3.rb +1 -1
  14. data/generated/google/apis/analyticsreporting_v4.rb +37 -0
  15. data/generated/google/apis/analyticsreporting_v4/classes.rb +1385 -0
  16. data/generated/google/apis/analyticsreporting_v4/representations.rb +597 -0
  17. data/generated/google/apis/analyticsreporting_v4/service.rb +88 -0
  18. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  19. data/generated/google/apis/androidenterprise_v1/classes.rb +98 -2
  20. data/generated/google/apis/androidenterprise_v1/representations.rb +48 -0
  21. data/generated/google/apis/androidenterprise_v1/service.rb +63 -1
  22. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  23. data/generated/google/apis/androidpublisher_v2/classes.rb +268 -0
  24. data/generated/google/apis/androidpublisher_v2/representations.rb +142 -0
  25. data/generated/google/apis/androidpublisher_v2/service.rb +121 -0
  26. data/generated/google/apis/appstate_v1.rb +1 -1
  27. data/generated/google/apis/autoscaler_v1beta2.rb +1 -1
  28. data/generated/google/apis/autoscaler_v1beta2/classes.rb +10 -47
  29. data/generated/google/apis/autoscaler_v1beta2/representations.rb +1 -18
  30. data/generated/google/apis/autoscaler_v1beta2/service.rb +4 -4
  31. data/generated/google/apis/bigquery_v2.rb +1 -1
  32. data/generated/google/apis/bigquery_v2/classes.rb +97 -61
  33. data/generated/google/apis/bigquery_v2/representations.rb +23 -18
  34. data/generated/google/apis/calendar_v3.rb +1 -1
  35. data/generated/google/apis/classroom_v1.rb +23 -2
  36. data/generated/google/apis/classroom_v1/classes.rb +920 -6
  37. data/generated/google/apis/classroom_v1/representations.rb +419 -0
  38. data/generated/google/apis/classroom_v1/service.rb +507 -1
  39. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  40. data/generated/google/apis/cloudbuild_v1/classes.rb +30 -23
  41. data/generated/google/apis/cloudbuild_v1/representations.rb +4 -3
  42. data/generated/google/apis/cloudbuild_v1/service.rb +25 -25
  43. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  44. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  45. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  46. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +55 -0
  47. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +40 -0
  48. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +35 -0
  49. data/generated/google/apis/cloudtrace_v1.rb +11 -3
  50. data/generated/google/apis/cloudtrace_v1/classes.rb +5 -5
  51. data/generated/google/apis/cloudtrace_v1/service.rb +8 -6
  52. data/generated/google/apis/compute_beta.rb +2 -2
  53. data/generated/google/apis/compute_beta/classes.rb +162 -32
  54. data/generated/google/apis/compute_beta/representations.rb +58 -0
  55. data/generated/google/apis/compute_beta/service.rb +392 -267
  56. data/generated/google/apis/compute_v1.rb +2 -2
  57. data/generated/google/apis/compute_v1/classes.rb +21 -9
  58. data/generated/google/apis/compute_v1/representations.rb +1 -0
  59. data/generated/google/apis/compute_v1/service.rb +291 -253
  60. data/generated/google/apis/container_v1.rb +1 -1
  61. data/generated/google/apis/container_v1/classes.rb +148 -0
  62. data/generated/google/apis/container_v1/representations.rb +55 -0
  63. data/generated/google/apis/container_v1/service.rb +161 -0
  64. data/generated/google/apis/content_v2.rb +1 -1
  65. data/generated/google/apis/content_v2/classes.rb +18 -6
  66. data/generated/google/apis/content_v2/representations.rb +1 -0
  67. data/generated/google/apis/customsearch_v1.rb +1 -1
  68. data/generated/google/apis/dataproc_v1.rb +2 -11
  69. data/generated/google/apis/dataproc_v1/classes.rb +0 -19
  70. data/generated/google/apis/dataproc_v1/representations.rb +0 -13
  71. data/generated/google/apis/dataproc_v1/service.rb +8 -87
  72. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  73. data/generated/google/apis/dfareporting_v2_3.rb +1 -1
  74. data/generated/google/apis/dfareporting_v2_3/classes.rb +41 -32
  75. data/generated/google/apis/discovery_v1.rb +2 -2
  76. data/generated/google/apis/discovery_v1/service.rb +2 -2
  77. data/generated/google/apis/dns_v1.rb +2 -3
  78. data/generated/google/apis/dns_v1/service.rb +1 -2
  79. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  80. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  81. data/generated/google/apis/drive_v2.rb +3 -2
  82. data/generated/google/apis/drive_v2/service.rb +2 -1
  83. data/generated/google/apis/drive_v3.rb +3 -2
  84. data/generated/google/apis/drive_v3/service.rb +2 -1
  85. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  86. data/generated/google/apis/games_management_v1management.rb +1 -1
  87. data/generated/google/apis/games_management_v1management/classes.rb +34 -0
  88. data/generated/google/apis/games_management_v1management/representations.rb +16 -0
  89. data/generated/google/apis/games_v1.rb +1 -1
  90. data/generated/google/apis/games_v1/classes.rb +34 -0
  91. data/generated/google/apis/games_v1/representations.rb +16 -0
  92. data/generated/google/apis/games_v1/service.rb +212 -53
  93. data/generated/google/apis/genomics_v1.rb +1 -1
  94. data/generated/google/apis/genomics_v1/classes.rb +18 -0
  95. data/generated/google/apis/genomics_v1/representations.rb +3 -0
  96. data/generated/google/apis/genomics_v1/service.rb +2 -2
  97. data/generated/google/apis/gmail_v1.rb +1 -1
  98. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  99. data/generated/google/apis/identitytoolkit_v3/classes.rb +19 -7
  100. data/generated/google/apis/identitytoolkit_v3/representations.rb +3 -1
  101. data/generated/google/apis/mybusiness_v3.rb +32 -0
  102. data/generated/google/apis/mybusiness_v3/classes.rb +1864 -0
  103. data/generated/google/apis/mybusiness_v3/representations.rb +741 -0
  104. data/generated/google/apis/mybusiness_v3/service.rb +960 -0
  105. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  106. data/generated/google/apis/plus_domains_v1.rb +2 -2
  107. data/generated/google/apis/plus_domains_v1/service.rb +1 -1
  108. data/generated/google/apis/plus_v1.rb +2 -2
  109. data/generated/google/apis/plus_v1/service.rb +1 -1
  110. data/generated/google/apis/prediction_v1_6.rb +4 -1
  111. data/generated/google/apis/proximitybeacon_v1beta1.rb +5 -2
  112. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +169 -22
  113. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +36 -1
  114. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +254 -39
  115. data/generated/google/apis/replicapool_v1beta2.rb +3 -3
  116. data/generated/google/apis/replicapool_v1beta2/service.rb +2 -2
  117. data/generated/google/apis/resourceviews_v1beta2.rb +1 -1
  118. data/generated/google/apis/script_v1.rb +6 -3
  119. data/generated/google/apis/script_v1/service.rb +2 -2
  120. data/generated/google/apis/sheets_v4.rb +43 -0
  121. data/generated/google/apis/sheets_v4/classes.rb +5425 -0
  122. data/generated/google/apis/sheets_v4/representations.rb +2070 -0
  123. data/generated/google/apis/sheets_v4/service.rb +402 -0
  124. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  125. data/generated/google/apis/sqladmin_v1beta4/classes.rb +19 -4
  126. data/generated/google/apis/sqladmin_v1beta4/representations.rb +3 -0
  127. data/generated/google/apis/storage_v1.rb +1 -1
  128. data/generated/google/apis/storage_v1/classes.rb +2 -1
  129. data/generated/google/apis/taskqueue_v1beta2.rb +2 -2
  130. data/generated/google/apis/taskqueue_v1beta2/service.rb +1 -1
  131. data/generated/google/apis/vision_v1.rb +4 -5
  132. data/generated/google/apis/vision_v1/classes.rb +69 -68
  133. data/generated/google/apis/vision_v1/representations.rb +13 -13
  134. data/generated/google/apis/vision_v1/service.rb +3 -4
  135. data/generated/google/apis/youtube_analytics_v1.rb +2 -2
  136. data/generated/google/apis/youtube_analytics_v1/service.rb +1 -1
  137. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  138. data/generated/google/apis/youtube_partner_v1/classes.rb +121 -0
  139. data/generated/google/apis/youtube_partner_v1/representations.rb +50 -0
  140. data/generated/google/apis/youtube_partner_v1/service.rb +40 -0
  141. data/generated/google/apis/youtube_v3.rb +1 -1
  142. data/generated/google/apis/youtube_v3/classes.rb +24 -0
  143. data/generated/google/apis/youtube_v3/representations.rb +4 -0
  144. data/generated/google/apis/youtubereporting_v1.rb +3 -3
  145. data/generated/google/apis/youtubereporting_v1/classes.rb +19 -0
  146. data/generated/google/apis/youtubereporting_v1/representations.rb +3 -0
  147. data/generated/google/apis/youtubereporting_v1/service.rb +3 -4
  148. data/lib/google/apis/version.rb +1 -1
  149. metadata +14 -2
@@ -28,6 +28,48 @@ module Google
28
28
  include Google::Apis::Core::JsonObjectSupport
29
29
  end
30
30
 
31
+ class DriveFolder
32
+ class Representation < Google::Apis::Core::JsonRepresentation; end
33
+
34
+ include Google::Apis::Core::JsonObjectSupport
35
+ end
36
+
37
+ class CourseMaterialSet
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
43
+ class CourseMaterial
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class DriveFile
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
55
+ class YouTubeVideo
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ include Google::Apis::Core::JsonObjectSupport
59
+ end
60
+
61
+ class Link
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class Form
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
31
73
  class Empty
32
74
  class Representation < Google::Apis::Core::JsonRepresentation; end
33
75
 
@@ -106,6 +148,114 @@ module Google
106
148
  include Google::Apis::Core::JsonObjectSupport
107
149
  end
108
150
 
151
+ class CourseWork
152
+ class Representation < Google::Apis::Core::JsonRepresentation; end
153
+
154
+ include Google::Apis::Core::JsonObjectSupport
155
+ end
156
+
157
+ class Material
158
+ class Representation < Google::Apis::Core::JsonRepresentation; end
159
+
160
+ include Google::Apis::Core::JsonObjectSupport
161
+ end
162
+
163
+ class SharedDriveFile
164
+ class Representation < Google::Apis::Core::JsonRepresentation; end
165
+
166
+ include Google::Apis::Core::JsonObjectSupport
167
+ end
168
+
169
+ class Date
170
+ class Representation < Google::Apis::Core::JsonRepresentation; end
171
+
172
+ include Google::Apis::Core::JsonObjectSupport
173
+ end
174
+
175
+ class TimeOfDay
176
+ class Representation < Google::Apis::Core::JsonRepresentation; end
177
+
178
+ include Google::Apis::Core::JsonObjectSupport
179
+ end
180
+
181
+ class Assignment
182
+ class Representation < Google::Apis::Core::JsonRepresentation; end
183
+
184
+ include Google::Apis::Core::JsonObjectSupport
185
+ end
186
+
187
+ class MultipleChoiceQuestion
188
+ class Representation < Google::Apis::Core::JsonRepresentation; end
189
+
190
+ include Google::Apis::Core::JsonObjectSupport
191
+ end
192
+
193
+ class ListCourseWorkResponse
194
+ class Representation < Google::Apis::Core::JsonRepresentation; end
195
+
196
+ include Google::Apis::Core::JsonObjectSupport
197
+ end
198
+
199
+ class StudentSubmission
200
+ class Representation < Google::Apis::Core::JsonRepresentation; end
201
+
202
+ include Google::Apis::Core::JsonObjectSupport
203
+ end
204
+
205
+ class AssignmentSubmission
206
+ class Representation < Google::Apis::Core::JsonRepresentation; end
207
+
208
+ include Google::Apis::Core::JsonObjectSupport
209
+ end
210
+
211
+ class Attachment
212
+ class Representation < Google::Apis::Core::JsonRepresentation; end
213
+
214
+ include Google::Apis::Core::JsonObjectSupport
215
+ end
216
+
217
+ class ShortAnswerSubmission
218
+ class Representation < Google::Apis::Core::JsonRepresentation; end
219
+
220
+ include Google::Apis::Core::JsonObjectSupport
221
+ end
222
+
223
+ class MultipleChoiceSubmission
224
+ class Representation < Google::Apis::Core::JsonRepresentation; end
225
+
226
+ include Google::Apis::Core::JsonObjectSupport
227
+ end
228
+
229
+ class ListStudentSubmissionsResponse
230
+ class Representation < Google::Apis::Core::JsonRepresentation; end
231
+
232
+ include Google::Apis::Core::JsonObjectSupport
233
+ end
234
+
235
+ class TurnInStudentSubmissionRequest
236
+ class Representation < Google::Apis::Core::JsonRepresentation; end
237
+
238
+ include Google::Apis::Core::JsonObjectSupport
239
+ end
240
+
241
+ class ReclaimStudentSubmissionRequest
242
+ class Representation < Google::Apis::Core::JsonRepresentation; end
243
+
244
+ include Google::Apis::Core::JsonObjectSupport
245
+ end
246
+
247
+ class ReturnStudentSubmissionRequest
248
+ class Representation < Google::Apis::Core::JsonRepresentation; end
249
+
250
+ include Google::Apis::Core::JsonObjectSupport
251
+ end
252
+
253
+ class ModifyAttachmentsRequest
254
+ class Representation < Google::Apis::Core::JsonRepresentation; end
255
+
256
+ include Google::Apis::Core::JsonObjectSupport
257
+ end
258
+
109
259
  class Course
110
260
  # @private
111
261
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -121,6 +271,83 @@ module Google
121
271
  property :enrollment_code, as: 'enrollmentCode'
122
272
  property :course_state, as: 'courseState'
123
273
  property :alternate_link, as: 'alternateLink'
274
+ property :teacher_group_email, as: 'teacherGroupEmail'
275
+ property :course_group_email, as: 'courseGroupEmail'
276
+ property :teacher_folder, as: 'teacherFolder', class: Google::Apis::ClassroomV1::DriveFolder, decorator: Google::Apis::ClassroomV1::DriveFolder::Representation
277
+
278
+ collection :course_material_sets, as: 'courseMaterialSets', class: Google::Apis::ClassroomV1::CourseMaterialSet, decorator: Google::Apis::ClassroomV1::CourseMaterialSet::Representation
279
+
280
+ end
281
+ end
282
+
283
+ class DriveFolder
284
+ # @private
285
+ class Representation < Google::Apis::Core::JsonRepresentation
286
+ property :id, as: 'id'
287
+ property :title, as: 'title'
288
+ property :alternate_link, as: 'alternateLink'
289
+ end
290
+ end
291
+
292
+ class CourseMaterialSet
293
+ # @private
294
+ class Representation < Google::Apis::Core::JsonRepresentation
295
+ property :title, as: 'title'
296
+ collection :materials, as: 'materials', class: Google::Apis::ClassroomV1::CourseMaterial, decorator: Google::Apis::ClassroomV1::CourseMaterial::Representation
297
+
298
+ end
299
+ end
300
+
301
+ class CourseMaterial
302
+ # @private
303
+ class Representation < Google::Apis::Core::JsonRepresentation
304
+ property :drive_file, as: 'driveFile', class: Google::Apis::ClassroomV1::DriveFile, decorator: Google::Apis::ClassroomV1::DriveFile::Representation
305
+
306
+ property :you_tube_video, as: 'youTubeVideo', class: Google::Apis::ClassroomV1::YouTubeVideo, decorator: Google::Apis::ClassroomV1::YouTubeVideo::Representation
307
+
308
+ property :link, as: 'link', class: Google::Apis::ClassroomV1::Link, decorator: Google::Apis::ClassroomV1::Link::Representation
309
+
310
+ property :form, as: 'form', class: Google::Apis::ClassroomV1::Form, decorator: Google::Apis::ClassroomV1::Form::Representation
311
+
312
+ end
313
+ end
314
+
315
+ class DriveFile
316
+ # @private
317
+ class Representation < Google::Apis::Core::JsonRepresentation
318
+ property :id, as: 'id'
319
+ property :title, as: 'title'
320
+ property :alternate_link, as: 'alternateLink'
321
+ property :thumbnail_url, as: 'thumbnailUrl'
322
+ end
323
+ end
324
+
325
+ class YouTubeVideo
326
+ # @private
327
+ class Representation < Google::Apis::Core::JsonRepresentation
328
+ property :id, as: 'id'
329
+ property :title, as: 'title'
330
+ property :alternate_link, as: 'alternateLink'
331
+ property :thumbnail_url, as: 'thumbnailUrl'
332
+ end
333
+ end
334
+
335
+ class Link
336
+ # @private
337
+ class Representation < Google::Apis::Core::JsonRepresentation
338
+ property :url, as: 'url'
339
+ property :title, as: 'title'
340
+ property :thumbnail_url, as: 'thumbnailUrl'
341
+ end
342
+ end
343
+
344
+ class Form
345
+ # @private
346
+ class Representation < Google::Apis::Core::JsonRepresentation
347
+ property :form_url, as: 'formUrl'
348
+ property :response_url, as: 'responseUrl'
349
+ property :title, as: 'title'
350
+ property :thumbnail_url, as: 'thumbnailUrl'
124
351
  end
125
352
  end
126
353
 
@@ -229,6 +456,8 @@ module Google
229
456
  property :user_id, as: 'userId'
230
457
  property :profile, as: 'profile', class: Google::Apis::ClassroomV1::UserProfile, decorator: Google::Apis::ClassroomV1::UserProfile::Representation
231
458
 
459
+ property :student_work_folder, as: 'studentWorkFolder', class: Google::Apis::ClassroomV1::DriveFolder, decorator: Google::Apis::ClassroomV1::DriveFolder::Representation
460
+
232
461
  end
233
462
  end
234
463
 
@@ -240,6 +469,196 @@ module Google
240
469
  property :next_page_token, as: 'nextPageToken'
241
470
  end
242
471
  end
472
+
473
+ class CourseWork
474
+ # @private
475
+ class Representation < Google::Apis::Core::JsonRepresentation
476
+ property :course_id, as: 'courseId'
477
+ property :id, as: 'id'
478
+ property :title, as: 'title'
479
+ property :description, as: 'description'
480
+ collection :materials, as: 'materials', class: Google::Apis::ClassroomV1::Material, decorator: Google::Apis::ClassroomV1::Material::Representation
481
+
482
+ property :state, as: 'state'
483
+ property :alternate_link, as: 'alternateLink'
484
+ property :creation_time, as: 'creationTime'
485
+ property :update_time, as: 'updateTime'
486
+ property :due_date, as: 'dueDate', class: Google::Apis::ClassroomV1::Date, decorator: Google::Apis::ClassroomV1::Date::Representation
487
+
488
+ property :due_time, as: 'dueTime', class: Google::Apis::ClassroomV1::TimeOfDay, decorator: Google::Apis::ClassroomV1::TimeOfDay::Representation
489
+
490
+ property :max_points, as: 'maxPoints'
491
+ property :work_type, as: 'workType'
492
+ property :associated_with_developer, as: 'associatedWithDeveloper'
493
+ property :submission_modification_mode, as: 'submissionModificationMode'
494
+ property :assignment, as: 'assignment', class: Google::Apis::ClassroomV1::Assignment, decorator: Google::Apis::ClassroomV1::Assignment::Representation
495
+
496
+ property :multiple_choice_question, as: 'multipleChoiceQuestion', class: Google::Apis::ClassroomV1::MultipleChoiceQuestion, decorator: Google::Apis::ClassroomV1::MultipleChoiceQuestion::Representation
497
+
498
+ end
499
+ end
500
+
501
+ class Material
502
+ # @private
503
+ class Representation < Google::Apis::Core::JsonRepresentation
504
+ property :drive_file, as: 'driveFile', class: Google::Apis::ClassroomV1::SharedDriveFile, decorator: Google::Apis::ClassroomV1::SharedDriveFile::Representation
505
+
506
+ property :youtube_video, as: 'youtubeVideo', class: Google::Apis::ClassroomV1::YouTubeVideo, decorator: Google::Apis::ClassroomV1::YouTubeVideo::Representation
507
+
508
+ property :link, as: 'link', class: Google::Apis::ClassroomV1::Link, decorator: Google::Apis::ClassroomV1::Link::Representation
509
+
510
+ property :form, as: 'form', class: Google::Apis::ClassroomV1::Form, decorator: Google::Apis::ClassroomV1::Form::Representation
511
+
512
+ end
513
+ end
514
+
515
+ class SharedDriveFile
516
+ # @private
517
+ class Representation < Google::Apis::Core::JsonRepresentation
518
+ property :drive_file, as: 'driveFile', class: Google::Apis::ClassroomV1::DriveFile, decorator: Google::Apis::ClassroomV1::DriveFile::Representation
519
+
520
+ property :share_mode, as: 'shareMode'
521
+ end
522
+ end
523
+
524
+ class Date
525
+ # @private
526
+ class Representation < Google::Apis::Core::JsonRepresentation
527
+ property :year, as: 'year'
528
+ property :month, as: 'month'
529
+ property :day, as: 'day'
530
+ end
531
+ end
532
+
533
+ class TimeOfDay
534
+ # @private
535
+ class Representation < Google::Apis::Core::JsonRepresentation
536
+ property :hours, as: 'hours'
537
+ property :minutes, as: 'minutes'
538
+ property :seconds, as: 'seconds'
539
+ property :nanos, as: 'nanos'
540
+ end
541
+ end
542
+
543
+ class Assignment
544
+ # @private
545
+ class Representation < Google::Apis::Core::JsonRepresentation
546
+ property :student_work_folder, as: 'studentWorkFolder', class: Google::Apis::ClassroomV1::DriveFolder, decorator: Google::Apis::ClassroomV1::DriveFolder::Representation
547
+
548
+ end
549
+ end
550
+
551
+ class MultipleChoiceQuestion
552
+ # @private
553
+ class Representation < Google::Apis::Core::JsonRepresentation
554
+ collection :choices, as: 'choices'
555
+ end
556
+ end
557
+
558
+ class ListCourseWorkResponse
559
+ # @private
560
+ class Representation < Google::Apis::Core::JsonRepresentation
561
+ collection :course_work, as: 'courseWork', class: Google::Apis::ClassroomV1::CourseWork, decorator: Google::Apis::ClassroomV1::CourseWork::Representation
562
+
563
+ property :next_page_token, as: 'nextPageToken'
564
+ end
565
+ end
566
+
567
+ class StudentSubmission
568
+ # @private
569
+ class Representation < Google::Apis::Core::JsonRepresentation
570
+ property :course_id, as: 'courseId'
571
+ property :course_work_id, as: 'courseWorkId'
572
+ property :id, as: 'id'
573
+ property :user_id, as: 'userId'
574
+ property :creation_time, as: 'creationTime'
575
+ property :update_time, as: 'updateTime'
576
+ property :state, as: 'state'
577
+ property :late, as: 'late'
578
+ property :draft_grade, as: 'draftGrade'
579
+ property :assigned_grade, as: 'assignedGrade'
580
+ property :alternate_link, as: 'alternateLink'
581
+ property :course_work_type, as: 'courseWorkType'
582
+ property :associated_with_developer, as: 'associatedWithDeveloper'
583
+ property :assignment_submission, as: 'assignmentSubmission', class: Google::Apis::ClassroomV1::AssignmentSubmission, decorator: Google::Apis::ClassroomV1::AssignmentSubmission::Representation
584
+
585
+ property :short_answer_submission, as: 'shortAnswerSubmission', class: Google::Apis::ClassroomV1::ShortAnswerSubmission, decorator: Google::Apis::ClassroomV1::ShortAnswerSubmission::Representation
586
+
587
+ property :multiple_choice_submission, as: 'multipleChoiceSubmission', class: Google::Apis::ClassroomV1::MultipleChoiceSubmission, decorator: Google::Apis::ClassroomV1::MultipleChoiceSubmission::Representation
588
+
589
+ end
590
+ end
591
+
592
+ class AssignmentSubmission
593
+ # @private
594
+ class Representation < Google::Apis::Core::JsonRepresentation
595
+ collection :attachments, as: 'attachments', class: Google::Apis::ClassroomV1::Attachment, decorator: Google::Apis::ClassroomV1::Attachment::Representation
596
+
597
+ end
598
+ end
599
+
600
+ class Attachment
601
+ # @private
602
+ class Representation < Google::Apis::Core::JsonRepresentation
603
+ property :drive_file, as: 'driveFile', class: Google::Apis::ClassroomV1::DriveFile, decorator: Google::Apis::ClassroomV1::DriveFile::Representation
604
+
605
+ property :you_tube_video, as: 'youTubeVideo', class: Google::Apis::ClassroomV1::YouTubeVideo, decorator: Google::Apis::ClassroomV1::YouTubeVideo::Representation
606
+
607
+ property :link, as: 'link', class: Google::Apis::ClassroomV1::Link, decorator: Google::Apis::ClassroomV1::Link::Representation
608
+
609
+ property :form, as: 'form', class: Google::Apis::ClassroomV1::Form, decorator: Google::Apis::ClassroomV1::Form::Representation
610
+
611
+ end
612
+ end
613
+
614
+ class ShortAnswerSubmission
615
+ # @private
616
+ class Representation < Google::Apis::Core::JsonRepresentation
617
+ property :answer, as: 'answer'
618
+ end
619
+ end
620
+
621
+ class MultipleChoiceSubmission
622
+ # @private
623
+ class Representation < Google::Apis::Core::JsonRepresentation
624
+ property :answer, as: 'answer'
625
+ end
626
+ end
627
+
628
+ class ListStudentSubmissionsResponse
629
+ # @private
630
+ class Representation < Google::Apis::Core::JsonRepresentation
631
+ collection :student_submissions, as: 'studentSubmissions', class: Google::Apis::ClassroomV1::StudentSubmission, decorator: Google::Apis::ClassroomV1::StudentSubmission::Representation
632
+
633
+ property :next_page_token, as: 'nextPageToken'
634
+ end
635
+ end
636
+
637
+ class TurnInStudentSubmissionRequest
638
+ # @private
639
+ class Representation < Google::Apis::Core::JsonRepresentation
640
+ end
641
+ end
642
+
643
+ class ReclaimStudentSubmissionRequest
644
+ # @private
645
+ class Representation < Google::Apis::Core::JsonRepresentation
646
+ end
647
+ end
648
+
649
+ class ReturnStudentSubmissionRequest
650
+ # @private
651
+ class Representation < Google::Apis::Core::JsonRepresentation
652
+ end
653
+ end
654
+
655
+ class ModifyAttachmentsRequest
656
+ # @private
657
+ class Representation < Google::Apis::Core::JsonRepresentation
658
+ collection :add_attachments, as: 'addAttachments', class: Google::Apis::ClassroomV1::Attachment, decorator: Google::Apis::ClassroomV1::Attachment::Representation
659
+
660
+ end
661
+ end
243
662
  end
244
663
  end
245
664
  end
@@ -22,7 +22,7 @@ module Google
22
22
  module ClassroomV1
23
23
  # Google Classroom API
24
24
  #
25
- # Google Classroom API
25
+ # Manages classes, rosters, and invitations in Google Classroom.
26
26
  #
27
27
  # @example
28
28
  # require 'google/apis/classroom_v1'
@@ -733,6 +733,512 @@ module Google
733
733
  execute_or_queue_command(command, &block)
734
734
  end
735
735
 
736
+ # Creates course work. The resulting course work (and corresponding student
737
+ # submissions) are associated with the Developer Console project of the [OAuth
738
+ # client ID](https://support.google.com/cloud/answer/6158849) used to make the
739
+ # request. Classroom API requests to modify course work and student submissions
740
+ # must be made with an OAuth client ID from the associated Developer Console
741
+ # project. This method returns the following error codes: * `PERMISSION_DENIED`
742
+ # if the requesting user is not permitted to access the requested course, create
743
+ # course work in the requested course, or for access errors. * `INVALID_ARGUMENT`
744
+ # if the request is malformed. * `NOT_FOUND` if the requested course does not
745
+ # exist.
746
+ # @param [String] course_id
747
+ # Identifier of the course. This identifier can be either the Classroom-assigned
748
+ # identifier or an alias.
749
+ # @param [Google::Apis::ClassroomV1::CourseWork] course_work_object
750
+ # @param [String] fields
751
+ # Selector specifying which fields to include in a partial response.
752
+ # @param [String] quota_user
753
+ # Available to use for quota purposes for server-side applications. Can be any
754
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
755
+ # @param [Google::Apis::RequestOptions] options
756
+ # Request-specific options
757
+ #
758
+ # @yield [result, err] Result & error if block supplied
759
+ # @yieldparam result [Google::Apis::ClassroomV1::CourseWork] parsed result object
760
+ # @yieldparam err [StandardError] error object if request failed
761
+ #
762
+ # @return [Google::Apis::ClassroomV1::CourseWork]
763
+ #
764
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
765
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
766
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
767
+ def create_course_work(course_id, course_work_object = nil, fields: nil, quota_user: nil, options: nil, &block)
768
+ command = make_simple_command(:post, 'v1/courses/{courseId}/courseWork', options)
769
+ command.request_representation = Google::Apis::ClassroomV1::CourseWork::Representation
770
+ command.request_object = course_work_object
771
+ command.response_representation = Google::Apis::ClassroomV1::CourseWork::Representation
772
+ command.response_class = Google::Apis::ClassroomV1::CourseWork
773
+ command.params['courseId'] = course_id unless course_id.nil?
774
+ command.query['fields'] = fields unless fields.nil?
775
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
776
+ execute_or_queue_command(command, &block)
777
+ end
778
+
779
+ # Returns course work. This method returns the following error codes: * `
780
+ # PERMISSION_DENIED` if the requesting user is not permitted to access the
781
+ # requested course or course work, or for access errors. * `INVALID_ARGUMENT` if
782
+ # the request is malformed. * `NOT_FOUND` if the requested course or course work
783
+ # does not exist.
784
+ # @param [String] course_id
785
+ # Identifier of the course. This identifier can be either the Classroom-assigned
786
+ # identifier or an alias.
787
+ # @param [String] id
788
+ # Identifier of the course work.
789
+ # @param [String] fields
790
+ # Selector specifying which fields to include in a partial response.
791
+ # @param [String] quota_user
792
+ # Available to use for quota purposes for server-side applications. Can be any
793
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
794
+ # @param [Google::Apis::RequestOptions] options
795
+ # Request-specific options
796
+ #
797
+ # @yield [result, err] Result & error if block supplied
798
+ # @yieldparam result [Google::Apis::ClassroomV1::CourseWork] parsed result object
799
+ # @yieldparam err [StandardError] error object if request failed
800
+ #
801
+ # @return [Google::Apis::ClassroomV1::CourseWork]
802
+ #
803
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
804
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
805
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
806
+ def get_course_work(course_id, id, fields: nil, quota_user: nil, options: nil, &block)
807
+ command = make_simple_command(:get, 'v1/courses/{courseId}/courseWork/{id}', options)
808
+ command.response_representation = Google::Apis::ClassroomV1::CourseWork::Representation
809
+ command.response_class = Google::Apis::ClassroomV1::CourseWork
810
+ command.params['courseId'] = course_id unless course_id.nil?
811
+ command.params['id'] = id unless id.nil?
812
+ command.query['fields'] = fields unless fields.nil?
813
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
814
+ execute_or_queue_command(command, &block)
815
+ end
816
+
817
+ # Returns a list of course work that the requester is permitted to view. Course
818
+ # students may only view `PUBLISHED` course work. Course teachers and domain
819
+ # administrators may view all course work. This method returns the following
820
+ # error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to
821
+ # access the requested course or for access errors. * `INVALID_ARGUMENT` if the
822
+ # request is malformed. * `NOT_FOUND` if the requested course does not exist.
823
+ # @param [String] course_id
824
+ # Identifier of the course. This identifier can be either the Classroom-assigned
825
+ # identifier or an alias.
826
+ # @param [Array<String>, String] course_work_states
827
+ # Restriction on the work status to return. Only courseWork that matches is
828
+ # returned. If unspecified, items with a work status of `PUBLISHED` is returned.
829
+ # @param [String] order_by
830
+ # Optional sort ordering for results. A comma-separated list of fields with an
831
+ # optional sort direction keyword. Supported fields are `updateTime` and `
832
+ # dueDate`. Supported direction keywords are `asc` and `desc`. If not specified,
833
+ # `updateTime desc` is the default behavior. Examples: `dueDate asc,updateTime
834
+ # desc`, `updateTime,dueDate desc`
835
+ # @param [Fixnum] page_size
836
+ # Maximum number of items to return. Zero or unspecified indicates that the
837
+ # server may assign a maximum. The server may return fewer than the specified
838
+ # number of results.
839
+ # @param [String] page_token
840
+ # nextPageToken value returned from a previous list call, indicating that the
841
+ # subsequent page of results should be returned. The list request must be
842
+ # otherwise identical to the one that resulted in this token.
843
+ # @param [String] fields
844
+ # Selector specifying which fields to include in a partial response.
845
+ # @param [String] quota_user
846
+ # Available to use for quota purposes for server-side applications. Can be any
847
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
848
+ # @param [Google::Apis::RequestOptions] options
849
+ # Request-specific options
850
+ #
851
+ # @yield [result, err] Result & error if block supplied
852
+ # @yieldparam result [Google::Apis::ClassroomV1::ListCourseWorkResponse] parsed result object
853
+ # @yieldparam err [StandardError] error object if request failed
854
+ #
855
+ # @return [Google::Apis::ClassroomV1::ListCourseWorkResponse]
856
+ #
857
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
858
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
859
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
860
+ def list_course_works(course_id, course_work_states: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
861
+ command = make_simple_command(:get, 'v1/courses/{courseId}/courseWork', options)
862
+ command.response_representation = Google::Apis::ClassroomV1::ListCourseWorkResponse::Representation
863
+ command.response_class = Google::Apis::ClassroomV1::ListCourseWorkResponse
864
+ command.params['courseId'] = course_id unless course_id.nil?
865
+ command.query['courseWorkStates'] = course_work_states unless course_work_states.nil?
866
+ command.query['orderBy'] = order_by unless order_by.nil?
867
+ command.query['pageSize'] = page_size unless page_size.nil?
868
+ command.query['pageToken'] = page_token unless page_token.nil?
869
+ command.query['fields'] = fields unless fields.nil?
870
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
871
+ execute_or_queue_command(command, &block)
872
+ end
873
+
874
+ # Returns a student submission. * `PERMISSION_DENIED` if the requesting user is
875
+ # not permitted to access the requested course, course work, or student
876
+ # submission or for access errors. * `INVALID_ARGUMENT` if the request is
877
+ # malformed. * `NOT_FOUND` if the requested course, course work, or student
878
+ # submission does not exist.
879
+ # @param [String] course_id
880
+ # Identifier of the course. This identifier can be either the Classroom-assigned
881
+ # identifier or an alias.
882
+ # @param [String] course_work_id
883
+ # Identifier of the course work.
884
+ # @param [String] id
885
+ # Identifier of the student submission.
886
+ # @param [String] fields
887
+ # Selector specifying which fields to include in a partial response.
888
+ # @param [String] quota_user
889
+ # Available to use for quota purposes for server-side applications. Can be any
890
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
891
+ # @param [Google::Apis::RequestOptions] options
892
+ # Request-specific options
893
+ #
894
+ # @yield [result, err] Result & error if block supplied
895
+ # @yieldparam result [Google::Apis::ClassroomV1::StudentSubmission] parsed result object
896
+ # @yieldparam err [StandardError] error object if request failed
897
+ #
898
+ # @return [Google::Apis::ClassroomV1::StudentSubmission]
899
+ #
900
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
901
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
902
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
903
+ def get_student_submission(course_id, course_work_id, id, fields: nil, quota_user: nil, options: nil, &block)
904
+ command = make_simple_command(:get, 'v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}', options)
905
+ command.response_representation = Google::Apis::ClassroomV1::StudentSubmission::Representation
906
+ command.response_class = Google::Apis::ClassroomV1::StudentSubmission
907
+ command.params['courseId'] = course_id unless course_id.nil?
908
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
909
+ command.params['id'] = id unless id.nil?
910
+ command.query['fields'] = fields unless fields.nil?
911
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
912
+ execute_or_queue_command(command, &block)
913
+ end
914
+
915
+ # Updates one or more fields of a student submission. See google.classroom.v1.
916
+ # StudentSubmission for details of which fields may be updated and who may
917
+ # change them. This request must be made by the Developer Console project of the
918
+ # [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to
919
+ # create the corresponding course work item. This method returns the following
920
+ # error codes: * `PERMISSION_DENIED` if the requesting developer project did not
921
+ # create the corresponding course work, if the user is not permitted to make the
922
+ # requested modification to the student submission, or for access errors. * `
923
+ # INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested
924
+ # course, course work, or student submission does not exist.
925
+ # @param [String] course_id
926
+ # Identifier of the course. This identifier can be either the Classroom-assigned
927
+ # identifier or an alias.
928
+ # @param [String] course_work_id
929
+ # Identifier of the course work.
930
+ # @param [String] id
931
+ # Identifier of the student submission.
932
+ # @param [Google::Apis::ClassroomV1::StudentSubmission] student_submission_object
933
+ # @param [String] update_mask
934
+ # Mask that identifies which fields on the student submission to update. This
935
+ # field is required to do an update. The update fails if invalid fields are
936
+ # specified. The following fields may be specified by teachers: * `draft_grade` *
937
+ # `assigned_grade`
938
+ # @param [String] fields
939
+ # Selector specifying which fields to include in a partial response.
940
+ # @param [String] quota_user
941
+ # Available to use for quota purposes for server-side applications. Can be any
942
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
943
+ # @param [Google::Apis::RequestOptions] options
944
+ # Request-specific options
945
+ #
946
+ # @yield [result, err] Result & error if block supplied
947
+ # @yieldparam result [Google::Apis::ClassroomV1::StudentSubmission] parsed result object
948
+ # @yieldparam err [StandardError] error object if request failed
949
+ #
950
+ # @return [Google::Apis::ClassroomV1::StudentSubmission]
951
+ #
952
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
953
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
954
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
955
+ def patch_student_submission(course_id, course_work_id, id, student_submission_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
956
+ command = make_simple_command(:patch, 'v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}', options)
957
+ command.request_representation = Google::Apis::ClassroomV1::StudentSubmission::Representation
958
+ command.request_object = student_submission_object
959
+ command.response_representation = Google::Apis::ClassroomV1::StudentSubmission::Representation
960
+ command.response_class = Google::Apis::ClassroomV1::StudentSubmission
961
+ command.params['courseId'] = course_id unless course_id.nil?
962
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
963
+ command.params['id'] = id unless id.nil?
964
+ command.query['updateMask'] = update_mask unless update_mask.nil?
965
+ command.query['fields'] = fields unless fields.nil?
966
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
967
+ execute_or_queue_command(command, &block)
968
+ end
969
+
970
+ # Returns a list of student submissions that the requester is permitted to view,
971
+ # factoring in the OAuth scopes of the request. `-` may be specified as the `
972
+ # course_work_id` to include student submissions for multiple course work items.
973
+ # Course students may only view their own work. Course teachers and domain
974
+ # administrators may view all student submissions. This method returns the
975
+ # following error codes: * `PERMISSION_DENIED` if the requesting user is not
976
+ # permitted to access the requested course or course work, or for access errors.
977
+ # * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the
978
+ # requested course does not exist.
979
+ # @param [String] course_id
980
+ # Identifier of the course. This identifier can be either the Classroom-assigned
981
+ # identifier or an alias.
982
+ # @param [String] course_work_id
983
+ # Identifer of the student work to request. If `user_id` is specified, this may
984
+ # be set to the string literal `"-"` to request student work for all course work
985
+ # in the specified course.
986
+ # @param [String] user_id
987
+ # Optional argument to restrict returned student work to those owned by the
988
+ # student with the specified identifier. The identifier can be one of the
989
+ # following: * the numeric identifier for the user * the email address of the
990
+ # user * the string literal `"me"`, indicating the requesting user
991
+ # @param [Array<String>, String] states
992
+ # Requested submission states. If specified, returned student submissions match
993
+ # one of the specified submission states.
994
+ # @param [String] late
995
+ # Requested lateness value. If specified, returned student submissions are
996
+ # restricted by the requested value. If unspecified, submissions are returned
997
+ # regardless of `late` value.
998
+ # @param [Fixnum] page_size
999
+ # Maximum number of items to return. Zero or unspecified indicates that the
1000
+ # server may assign a maximum. The server may return fewer than the specified
1001
+ # number of results.
1002
+ # @param [String] page_token
1003
+ # nextPageToken value returned from a previous list call, indicating that the
1004
+ # subsequent page of results should be returned. The list request must be
1005
+ # otherwise identical to the one that resulted in this token.
1006
+ # @param [String] fields
1007
+ # Selector specifying which fields to include in a partial response.
1008
+ # @param [String] quota_user
1009
+ # Available to use for quota purposes for server-side applications. Can be any
1010
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1011
+ # @param [Google::Apis::RequestOptions] options
1012
+ # Request-specific options
1013
+ #
1014
+ # @yield [result, err] Result & error if block supplied
1015
+ # @yieldparam result [Google::Apis::ClassroomV1::ListStudentSubmissionsResponse] parsed result object
1016
+ # @yieldparam err [StandardError] error object if request failed
1017
+ #
1018
+ # @return [Google::Apis::ClassroomV1::ListStudentSubmissionsResponse]
1019
+ #
1020
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1021
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1022
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1023
+ def list_student_submissions(course_id, course_work_id, user_id: nil, states: nil, late: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1024
+ command = make_simple_command(:get, 'v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions', options)
1025
+ command.response_representation = Google::Apis::ClassroomV1::ListStudentSubmissionsResponse::Representation
1026
+ command.response_class = Google::Apis::ClassroomV1::ListStudentSubmissionsResponse
1027
+ command.params['courseId'] = course_id unless course_id.nil?
1028
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1029
+ command.query['userId'] = user_id unless user_id.nil?
1030
+ command.query['states'] = states unless states.nil?
1031
+ command.query['late'] = late unless late.nil?
1032
+ command.query['pageSize'] = page_size unless page_size.nil?
1033
+ command.query['pageToken'] = page_token unless page_token.nil?
1034
+ command.query['fields'] = fields unless fields.nil?
1035
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1036
+ execute_or_queue_command(command, &block)
1037
+ end
1038
+
1039
+ # Turns in a student submission. Turning in a student submission transfers
1040
+ # ownership of attached Drive files to the teacher and may also update the
1041
+ # submission state. This may only be called by the student that owns the
1042
+ # specified student submission. This request must be made by the Developer
1043
+ # Console project of the [OAuth client ID](https://support.google.com/cloud/
1044
+ # answer/6158849) used to create the corresponding course work item. This method
1045
+ # returns the following error codes: * `PERMISSION_DENIED` if the requesting
1046
+ # user is not permitted to access the requested course or course work, turn in
1047
+ # the requested student submission, or for access errors. * `INVALID_ARGUMENT`
1048
+ # if the request is malformed. * `NOT_FOUND` if the requested course, course
1049
+ # work, or student submission does not exist.
1050
+ # @param [String] course_id
1051
+ # Identifier of the course. This identifier can be either the Classroom-assigned
1052
+ # identifier or an alias.
1053
+ # @param [String] course_work_id
1054
+ # Identifier of the course work.
1055
+ # @param [String] id
1056
+ # Identifier of the student submission.
1057
+ # @param [Google::Apis::ClassroomV1::TurnInStudentSubmissionRequest] turn_in_student_submission_request_object
1058
+ # @param [String] fields
1059
+ # Selector specifying which fields to include in a partial response.
1060
+ # @param [String] quota_user
1061
+ # Available to use for quota purposes for server-side applications. Can be any
1062
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1063
+ # @param [Google::Apis::RequestOptions] options
1064
+ # Request-specific options
1065
+ #
1066
+ # @yield [result, err] Result & error if block supplied
1067
+ # @yieldparam result [Google::Apis::ClassroomV1::Empty] parsed result object
1068
+ # @yieldparam err [StandardError] error object if request failed
1069
+ #
1070
+ # @return [Google::Apis::ClassroomV1::Empty]
1071
+ #
1072
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1073
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1074
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1075
+ def turn_in_student_submission(course_id, course_work_id, id, turn_in_student_submission_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1076
+ command = make_simple_command(:post, 'v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn', options)
1077
+ command.request_representation = Google::Apis::ClassroomV1::TurnInStudentSubmissionRequest::Representation
1078
+ command.request_object = turn_in_student_submission_request_object
1079
+ command.response_representation = Google::Apis::ClassroomV1::Empty::Representation
1080
+ command.response_class = Google::Apis::ClassroomV1::Empty
1081
+ command.params['courseId'] = course_id unless course_id.nil?
1082
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1083
+ command.params['id'] = id unless id.nil?
1084
+ command.query['fields'] = fields unless fields.nil?
1085
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1086
+ execute_or_queue_command(command, &block)
1087
+ end
1088
+
1089
+ # Reclaims a student submission on behalf of the student that owns it.
1090
+ # Reclaiming a student submission transfers ownership of attached Drive files to
1091
+ # the student and update the submission state. Only the student that ownes the
1092
+ # requested student submission may call this method, and only for a student
1093
+ # submission that has been turned in. This request must be made by the Developer
1094
+ # Console project of the [OAuth client ID](https://support.google.com/cloud/
1095
+ # answer/6158849) used to create the corresponding course work item. This method
1096
+ # returns the following error codes: * `PERMISSION_DENIED` if the requesting
1097
+ # user is not permitted to access the requested course or course work, unsubmit
1098
+ # the requested student submission, or for access errors. * `FAILED_PRECONDITION`
1099
+ # if the student submission has not been turned in. * `INVALID_ARGUMENT` if the
1100
+ # request is malformed. * `NOT_FOUND` if the requested course, course work, or
1101
+ # student submission does not exist.
1102
+ # @param [String] course_id
1103
+ # Identifier of the course. This identifier can be either the Classroom-assigned
1104
+ # identifier or an alias.
1105
+ # @param [String] course_work_id
1106
+ # Identifier of the course work.
1107
+ # @param [String] id
1108
+ # Identifier of the student submission.
1109
+ # @param [Google::Apis::ClassroomV1::ReclaimStudentSubmissionRequest] reclaim_student_submission_request_object
1110
+ # @param [String] fields
1111
+ # Selector specifying which fields to include in a partial response.
1112
+ # @param [String] quota_user
1113
+ # Available to use for quota purposes for server-side applications. Can be any
1114
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1115
+ # @param [Google::Apis::RequestOptions] options
1116
+ # Request-specific options
1117
+ #
1118
+ # @yield [result, err] Result & error if block supplied
1119
+ # @yieldparam result [Google::Apis::ClassroomV1::Empty] parsed result object
1120
+ # @yieldparam err [StandardError] error object if request failed
1121
+ #
1122
+ # @return [Google::Apis::ClassroomV1::Empty]
1123
+ #
1124
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1125
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1126
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1127
+ def reclaim_student_submission(course_id, course_work_id, id, reclaim_student_submission_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1128
+ command = make_simple_command(:post, 'v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim', options)
1129
+ command.request_representation = Google::Apis::ClassroomV1::ReclaimStudentSubmissionRequest::Representation
1130
+ command.request_object = reclaim_student_submission_request_object
1131
+ command.response_representation = Google::Apis::ClassroomV1::Empty::Representation
1132
+ command.response_class = Google::Apis::ClassroomV1::Empty
1133
+ command.params['courseId'] = course_id unless course_id.nil?
1134
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1135
+ command.params['id'] = id unless id.nil?
1136
+ command.query['fields'] = fields unless fields.nil?
1137
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1138
+ execute_or_queue_command(command, &block)
1139
+ end
1140
+
1141
+ # Returns a student submission. Returning a student submission transfers
1142
+ # ownership of attached Drive files to the student and may also update the
1143
+ # submission state. Unlike the Classroom application, returning a student
1144
+ # submission does not set assignedGrade to the draftGrade value. Only a teacher
1145
+ # of the course that contains the requested student submission may call this
1146
+ # method. This request must be made by the Developer Console project of the [
1147
+ # OAuth client ID](https://support.google.com/cloud/answer/6158849) used to
1148
+ # create the corresponding course work item. This method returns the following
1149
+ # error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to
1150
+ # access the requested course or course work, return the requested student
1151
+ # submission, or for access errors. * `INVALID_ARGUMENT` if the request is
1152
+ # malformed. * `NOT_FOUND` if the requested course, course work, or student
1153
+ # submission does not exist.
1154
+ # @param [String] course_id
1155
+ # Identifier of the course. This identifier can be either the Classroom-assigned
1156
+ # identifier or an alias.
1157
+ # @param [String] course_work_id
1158
+ # Identifier of the course work.
1159
+ # @param [String] id
1160
+ # Identifier of the student submission.
1161
+ # @param [Google::Apis::ClassroomV1::ReturnStudentSubmissionRequest] return_student_submission_request_object
1162
+ # @param [String] fields
1163
+ # Selector specifying which fields to include in a partial response.
1164
+ # @param [String] quota_user
1165
+ # Available to use for quota purposes for server-side applications. Can be any
1166
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1167
+ # @param [Google::Apis::RequestOptions] options
1168
+ # Request-specific options
1169
+ #
1170
+ # @yield [result, err] Result & error if block supplied
1171
+ # @yieldparam result [Google::Apis::ClassroomV1::Empty] parsed result object
1172
+ # @yieldparam err [StandardError] error object if request failed
1173
+ #
1174
+ # @return [Google::Apis::ClassroomV1::Empty]
1175
+ #
1176
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1177
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1178
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1179
+ def return_student_submission(course_id, course_work_id, id, return_student_submission_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1180
+ command = make_simple_command(:post, 'v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return', options)
1181
+ command.request_representation = Google::Apis::ClassroomV1::ReturnStudentSubmissionRequest::Representation
1182
+ command.request_object = return_student_submission_request_object
1183
+ command.response_representation = Google::Apis::ClassroomV1::Empty::Representation
1184
+ command.response_class = Google::Apis::ClassroomV1::Empty
1185
+ command.params['courseId'] = course_id unless course_id.nil?
1186
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1187
+ command.params['id'] = id unless id.nil?
1188
+ command.query['fields'] = fields unless fields.nil?
1189
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1190
+ execute_or_queue_command(command, &block)
1191
+ end
1192
+
1193
+ # Modifies attachments of student submission. Attachments may only be added to
1194
+ # student submissions whose type is `ASSIGNMENT`. This request must be made by
1195
+ # the Developer Console project of the [OAuth client ID](https://support.google.
1196
+ # com/cloud/answer/6158849) used to create the corresponding course work item.
1197
+ # This method returns the following error codes: * `PERMISSION_DENIED` if the
1198
+ # requesting user is not permitted to access the requested course or course work,
1199
+ # if the user is not permitted to modify attachments on the requested student
1200
+ # submission, or for access errors. * `INVALID_ARGUMENT` if the request is
1201
+ # malformed. * `NOT_FOUND` if the requested course, course work, or student
1202
+ # submission does not exist.
1203
+ # @param [String] course_id
1204
+ # Identifier of the course. This identifier can be either the Classroom-assigned
1205
+ # identifier or an alias.
1206
+ # @param [String] course_work_id
1207
+ # Identifier of the course work.
1208
+ # @param [String] id
1209
+ # Identifier of the student submission.
1210
+ # @param [Google::Apis::ClassroomV1::ModifyAttachmentsRequest] modify_attachments_request_object
1211
+ # @param [String] fields
1212
+ # Selector specifying which fields to include in a partial response.
1213
+ # @param [String] quota_user
1214
+ # Available to use for quota purposes for server-side applications. Can be any
1215
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1216
+ # @param [Google::Apis::RequestOptions] options
1217
+ # Request-specific options
1218
+ #
1219
+ # @yield [result, err] Result & error if block supplied
1220
+ # @yieldparam result [Google::Apis::ClassroomV1::StudentSubmission] parsed result object
1221
+ # @yieldparam err [StandardError] error object if request failed
1222
+ #
1223
+ # @return [Google::Apis::ClassroomV1::StudentSubmission]
1224
+ #
1225
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1226
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1227
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1228
+ def modify_student_submission_attachments(course_id, course_work_id, id, modify_attachments_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1229
+ command = make_simple_command(:post, 'v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments', options)
1230
+ command.request_representation = Google::Apis::ClassroomV1::ModifyAttachmentsRequest::Representation
1231
+ command.request_object = modify_attachments_request_object
1232
+ command.response_representation = Google::Apis::ClassroomV1::StudentSubmission::Representation
1233
+ command.response_class = Google::Apis::ClassroomV1::StudentSubmission
1234
+ command.params['courseId'] = course_id unless course_id.nil?
1235
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1236
+ command.params['id'] = id unless id.nil?
1237
+ command.query['fields'] = fields unless fields.nil?
1238
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1239
+ execute_or_queue_command(command, &block)
1240
+ end
1241
+
736
1242
  # Creates an invitation. Only one invitation for a user and course may exist at
737
1243
  # a time. Delete and re-create an invitation to make changes. This method
738
1244
  # returns the following error codes: * `PERMISSION_DENIED` if the requesting