google-apis-classroom_v1 0.36.0 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: df46324cf6d4b09b4fce27a765d58e17e8134baa85ff6588eb47c37c9c5f120e
4
- data.tar.gz: a067c1c986bdc1b1e3d6887b7ffcc8b066f219f77deced8596b6d40dc35f36ec
3
+ metadata.gz: ec30411ad000943b56e98f737d5a24c00cec005b1fba738b84cabf5abbb2dc6f
4
+ data.tar.gz: 1f015ca368fb672ebd51f54af1864487fa5469c2203fec01e79cf8b1076f4e44
5
5
  SHA512:
6
- metadata.gz: d90ca0d84b6c9ed23f4d4ee7bb4128ef39a9ecfa984ea8b3d7f4118e8c08f50e79aafa25ab8e36940a193a5f885707552fdc969486fae2f504ca07b77762ac49
7
- data.tar.gz: bc86606c45e28313c715de1069ee2a0121255cf692aae3fb508dd92d9c57526fa1623cc8c483710a0a38052b11fab9930688d93540ff15cab42f8875a3a4fb32
6
+ metadata.gz: 9db671427639b8b86774711b4e35de9716bbb17f6abb8bb1c69bced849404844aaef5bbf7292da2f83ffae089b304e8a510f85d0cc735f73e33cae99abb8b6df
7
+ data.tar.gz: b654e9e4d4f69a2422eedc315c3a6022e09939cf51d2d2e2cf63e251e264f07a27f41630153651214ac99713da46c72501a4dcd2f6451e87bb46152ce674fe17
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-classroom_v1
2
2
 
3
+ ### v0.37.0 (2024-12-02)
4
+
5
+ * Regenerated from discovery document revision 20241119
6
+
3
7
  ### v0.36.0 (2024-10-13)
4
8
 
5
9
  * Regenerated from discovery document revision 20241007
@@ -1005,6 +1005,44 @@ module Google
1005
1005
  end
1006
1006
  end
1007
1007
 
1008
+ # A rubric criterion. Each criterion is a dimension on which performance is
1009
+ # rated.
1010
+ class Criterion
1011
+ include Google::Apis::Core::Hashable
1012
+
1013
+ # The description of the criterion.
1014
+ # Corresponds to the JSON property `description`
1015
+ # @return [String]
1016
+ attr_accessor :description
1017
+
1018
+ # The criterion ID. On creation, an ID is assigned.
1019
+ # Corresponds to the JSON property `id`
1020
+ # @return [String]
1021
+ attr_accessor :id
1022
+
1023
+ # The list of levels within this criterion.
1024
+ # Corresponds to the JSON property `levels`
1025
+ # @return [Array<Google::Apis::ClassroomV1::Level>]
1026
+ attr_accessor :levels
1027
+
1028
+ # The title of the criterion.
1029
+ # Corresponds to the JSON property `title`
1030
+ # @return [String]
1031
+ attr_accessor :title
1032
+
1033
+ def initialize(**args)
1034
+ update!(**args)
1035
+ end
1036
+
1037
+ # Update properties of this object
1038
+ def update!(**args)
1039
+ @description = args[:description] if args.key?(:description)
1040
+ @id = args[:id] if args.key?(:id)
1041
+ @levels = args[:levels] if args.key?(:levels)
1042
+ @title = args[:title] if args.key?(:title)
1043
+ end
1044
+ end
1045
+
1008
1046
  # Represents a whole or partial calendar date, such as a birthday. The time of
1009
1047
  # day and time zone are either specified elsewhere or are insignificant. The
1010
1048
  # date is relative to the Gregorian Calendar. This can represent one of the
@@ -1502,6 +1540,45 @@ module Google
1502
1540
  end
1503
1541
  end
1504
1542
 
1543
+ # A level of the criterion.
1544
+ class Level
1545
+ include Google::Apis::Core::Hashable
1546
+
1547
+ # The description of the level.
1548
+ # Corresponds to the JSON property `description`
1549
+ # @return [String]
1550
+ attr_accessor :description
1551
+
1552
+ # The level ID. On creation, an ID is assigned.
1553
+ # Corresponds to the JSON property `id`
1554
+ # @return [String]
1555
+ attr_accessor :id
1556
+
1557
+ # Optional points associated with this level. If set, all levels within the
1558
+ # rubric must specify points and the value must be distinct across all levels
1559
+ # within a single criterion. 0 is distinct from no points.
1560
+ # Corresponds to the JSON property `points`
1561
+ # @return [Float]
1562
+ attr_accessor :points
1563
+
1564
+ # The title of the level. If the level has no points set, title must be set.
1565
+ # Corresponds to the JSON property `title`
1566
+ # @return [String]
1567
+ attr_accessor :title
1568
+
1569
+ def initialize(**args)
1570
+ update!(**args)
1571
+ end
1572
+
1573
+ # Update properties of this object
1574
+ def update!(**args)
1575
+ @description = args[:description] if args.key?(:description)
1576
+ @id = args[:id] if args.key?(:id)
1577
+ @points = args[:points] if args.key?(:points)
1578
+ @title = args[:title] if args.key?(:title)
1579
+ end
1580
+ end
1581
+
1505
1582
  # URL item.
1506
1583
  class Link
1507
1584
  include Google::Apis::Core::Hashable
@@ -1769,6 +1846,32 @@ module Google
1769
1846
  end
1770
1847
  end
1771
1848
 
1849
+ # Response when listing rubrics.
1850
+ class ListRubricsResponse
1851
+ include Google::Apis::Core::Hashable
1852
+
1853
+ # Token identifying the next page of results to return. If empty, no further
1854
+ # results are available.
1855
+ # Corresponds to the JSON property `nextPageToken`
1856
+ # @return [String]
1857
+ attr_accessor :next_page_token
1858
+
1859
+ # Rubrics that match the request.
1860
+ # Corresponds to the JSON property `rubrics`
1861
+ # @return [Array<Google::Apis::ClassroomV1::Rubric>]
1862
+ attr_accessor :rubrics
1863
+
1864
+ def initialize(**args)
1865
+ update!(**args)
1866
+ end
1867
+
1868
+ # Update properties of this object
1869
+ def update!(**args)
1870
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1871
+ @rubrics = args[:rubrics] if args.key?(:rubrics)
1872
+ end
1873
+ end
1874
+
1772
1875
  # Response when listing student submissions.
1773
1876
  class ListStudentSubmissionsResponse
1774
1877
  include Google::Apis::Core::Hashable
@@ -2150,6 +2253,103 @@ module Google
2150
2253
  end
2151
2254
  end
2152
2255
 
2256
+ # The rubric of the course work. A rubric is a scoring guide used to evaluate
2257
+ # student work and give feedback. For further details, see [Rubrics structure
2258
+ # and known limitations](/classroom/rubrics/limitations).
2259
+ class Rubric
2260
+ include Google::Apis::Core::Hashable
2261
+
2262
+ # Identifier of the course. Read-only.
2263
+ # Corresponds to the JSON property `courseId`
2264
+ # @return [String]
2265
+ attr_accessor :course_id
2266
+
2267
+ # Identifier for the course work this corresponds to. Read-only.
2268
+ # Corresponds to the JSON property `courseWorkId`
2269
+ # @return [String]
2270
+ attr_accessor :course_work_id
2271
+
2272
+ # Output only. Timestamp when this rubric was created. Read-only.
2273
+ # Corresponds to the JSON property `creationTime`
2274
+ # @return [String]
2275
+ attr_accessor :creation_time
2276
+
2277
+ # List of criteria. Each criterion is a dimension on which performance is rated.
2278
+ # Corresponds to the JSON property `criteria`
2279
+ # @return [Array<Google::Apis::ClassroomV1::Criterion>]
2280
+ attr_accessor :criteria
2281
+
2282
+ # Classroom-assigned identifier for the rubric. This is unique among rubrics for
2283
+ # the relevant course work. Read-only.
2284
+ # Corresponds to the JSON property `id`
2285
+ # @return [String]
2286
+ attr_accessor :id
2287
+
2288
+ # Input only. Immutable. Google Sheets ID of the spreadsheet. This spreadsheet
2289
+ # must contain formatted rubric settings. See [Create or reuse a rubric for an
2290
+ # assignment](https://support.google.com/edu/classroom/answer/9335069). Use of
2291
+ # this field requires the `https://www.googleapis.com/auth/spreadsheets.readonly`
2292
+ # or `https://www.googleapis.com/auth/spreadsheets` scope.
2293
+ # Corresponds to the JSON property `sourceSpreadsheetId`
2294
+ # @return [String]
2295
+ attr_accessor :source_spreadsheet_id
2296
+
2297
+ # Output only. Timestamp of the most recent change to this rubric. Read-only.
2298
+ # Corresponds to the JSON property `updateTime`
2299
+ # @return [String]
2300
+ attr_accessor :update_time
2301
+
2302
+ def initialize(**args)
2303
+ update!(**args)
2304
+ end
2305
+
2306
+ # Update properties of this object
2307
+ def update!(**args)
2308
+ @course_id = args[:course_id] if args.key?(:course_id)
2309
+ @course_work_id = args[:course_work_id] if args.key?(:course_work_id)
2310
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
2311
+ @criteria = args[:criteria] if args.key?(:criteria)
2312
+ @id = args[:id] if args.key?(:id)
2313
+ @source_spreadsheet_id = args[:source_spreadsheet_id] if args.key?(:source_spreadsheet_id)
2314
+ @update_time = args[:update_time] if args.key?(:update_time)
2315
+ end
2316
+ end
2317
+
2318
+ # A rubric grade set for the student submission. There is at most one entry per
2319
+ # rubric criterion.
2320
+ class RubricGrade
2321
+ include Google::Apis::Core::Hashable
2322
+
2323
+ # Optional. Criterion ID.
2324
+ # Corresponds to the JSON property `criterionId`
2325
+ # @return [String]
2326
+ attr_accessor :criterion_id
2327
+
2328
+ # Optional. Optional level ID of the selected level. If empty, no level was
2329
+ # selected.
2330
+ # Corresponds to the JSON property `levelId`
2331
+ # @return [String]
2332
+ attr_accessor :level_id
2333
+
2334
+ # Optional. Optional points assigned for this criterion, typically based on the
2335
+ # level. Levels might or might not have points. If unset, no points were set for
2336
+ # this criterion.
2337
+ # Corresponds to the JSON property `points`
2338
+ # @return [Float]
2339
+ attr_accessor :points
2340
+
2341
+ def initialize(**args)
2342
+ update!(**args)
2343
+ end
2344
+
2345
+ # Update properties of this object
2346
+ def update!(**args)
2347
+ @criterion_id = args[:criterion_id] if args.key?(:criterion_id)
2348
+ @level_id = args[:level_id] if args.key?(:level_id)
2349
+ @points = args[:points] if args.key?(:points)
2350
+ end
2351
+ end
2352
+
2153
2353
  # Drive file that is used as material for course work.
2154
2354
  class SharedDriveFile
2155
2355
  include Google::Apis::Core::Hashable
@@ -2304,6 +2504,14 @@ module Google
2304
2504
  # @return [Float]
2305
2505
  attr_accessor :assigned_grade
2306
2506
 
2507
+ # Assigned rubric grades based on the rubric's Criteria. This map is empty if
2508
+ # there is no rubric attached to this course work or if a rubric is attached,
2509
+ # but no grades have been set on any Criteria. Entries are only populated for
2510
+ # grades that have been set. Key: The rubric's criterion ID. Read-only.
2511
+ # Corresponds to the JSON property `assignedRubricGrades`
2512
+ # @return [Hash<String,Google::Apis::ClassroomV1::RubricGrade>]
2513
+ attr_accessor :assigned_rubric_grades
2514
+
2307
2515
  # Student work for an assignment.
2308
2516
  # Corresponds to the JSON property `assignmentSubmission`
2309
2517
  # @return [Google::Apis::ClassroomV1::AssignmentSubmission]
@@ -2345,6 +2553,14 @@ module Google
2345
2553
  # @return [Float]
2346
2554
  attr_accessor :draft_grade
2347
2555
 
2556
+ # Pending rubric grades based on the rubric's criteria. This map is empty if
2557
+ # there is no rubric attached to this course work or if a rubric is attached,
2558
+ # but no grades have been set on any criteria. Entries are only populated for
2559
+ # grades that have been set. Key: The rubric's criterion ID. Read-only.
2560
+ # Corresponds to the JSON property `draftRubricGrades`
2561
+ # @return [Hash<String,Google::Apis::ClassroomV1::RubricGrade>]
2562
+ attr_accessor :draft_rubric_grades
2563
+
2348
2564
  # Classroom-assigned Identifier for the student submission. This is unique among
2349
2565
  # submissions for the relevant course work. Read-only.
2350
2566
  # Corresponds to the JSON property `id`
@@ -2396,6 +2612,7 @@ module Google
2396
2612
  def update!(**args)
2397
2613
  @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
2398
2614
  @assigned_grade = args[:assigned_grade] if args.key?(:assigned_grade)
2615
+ @assigned_rubric_grades = args[:assigned_rubric_grades] if args.key?(:assigned_rubric_grades)
2399
2616
  @assignment_submission = args[:assignment_submission] if args.key?(:assignment_submission)
2400
2617
  @associated_with_developer = args[:associated_with_developer] if args.key?(:associated_with_developer)
2401
2618
  @course_id = args[:course_id] if args.key?(:course_id)
@@ -2403,6 +2620,7 @@ module Google
2403
2620
  @course_work_type = args[:course_work_type] if args.key?(:course_work_type)
2404
2621
  @creation_time = args[:creation_time] if args.key?(:creation_time)
2405
2622
  @draft_grade = args[:draft_grade] if args.key?(:draft_grade)
2623
+ @draft_rubric_grades = args[:draft_rubric_grades] if args.key?(:draft_rubric_grades)
2406
2624
  @id = args[:id] if args.key?(:id)
2407
2625
  @late = args[:late] if args.key?(:late)
2408
2626
  @multiple_choice_submission = args[:multiple_choice_submission] if args.key?(:multiple_choice_submission)
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module ClassroomV1
18
18
  # Version of the google-apis-classroom_v1 gem
19
- GEM_VERSION = "0.36.0"
19
+ GEM_VERSION = "0.37.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.15.1"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20241007"
25
+ REVISION = "20241119"
26
26
  end
27
27
  end
28
28
  end
@@ -124,6 +124,12 @@ module Google
124
124
  include Google::Apis::Core::JsonObjectSupport
125
125
  end
126
126
 
127
+ class Criterion
128
+ class Representation < Google::Apis::Core::JsonRepresentation; end
129
+
130
+ include Google::Apis::Core::JsonObjectSupport
131
+ end
132
+
127
133
  class Date
128
134
  class Representation < Google::Apis::Core::JsonRepresentation; end
129
135
 
@@ -214,6 +220,12 @@ module Google
214
220
  include Google::Apis::Core::JsonObjectSupport
215
221
  end
216
222
 
223
+ class Level
224
+ class Representation < Google::Apis::Core::JsonRepresentation; end
225
+
226
+ include Google::Apis::Core::JsonObjectSupport
227
+ end
228
+
217
229
  class Link
218
230
  class Representation < Google::Apis::Core::JsonRepresentation; end
219
231
 
@@ -274,6 +286,12 @@ module Google
274
286
  include Google::Apis::Core::JsonObjectSupport
275
287
  end
276
288
 
289
+ class ListRubricsResponse
290
+ class Representation < Google::Apis::Core::JsonRepresentation; end
291
+
292
+ include Google::Apis::Core::JsonObjectSupport
293
+ end
294
+
277
295
  class ListStudentSubmissionsResponse
278
296
  class Representation < Google::Apis::Core::JsonRepresentation; end
279
297
 
@@ -364,6 +382,18 @@ module Google
364
382
  include Google::Apis::Core::JsonObjectSupport
365
383
  end
366
384
 
385
+ class Rubric
386
+ class Representation < Google::Apis::Core::JsonRepresentation; end
387
+
388
+ include Google::Apis::Core::JsonObjectSupport
389
+ end
390
+
391
+ class RubricGrade
392
+ class Representation < Google::Apis::Core::JsonRepresentation; end
393
+
394
+ include Google::Apis::Core::JsonObjectSupport
395
+ end
396
+
367
397
  class SharedDriveFile
368
398
  class Representation < Google::Apis::Core::JsonRepresentation; end
369
399
 
@@ -691,6 +721,17 @@ module Google
691
721
  end
692
722
  end
693
723
 
724
+ class Criterion
725
+ # @private
726
+ class Representation < Google::Apis::Core::JsonRepresentation
727
+ property :description, as: 'description'
728
+ property :id, as: 'id'
729
+ collection :levels, as: 'levels', class: Google::Apis::ClassroomV1::Level, decorator: Google::Apis::ClassroomV1::Level::Representation
730
+
731
+ property :title, as: 'title'
732
+ end
733
+ end
734
+
694
735
  class Date
695
736
  # @private
696
737
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -830,6 +871,16 @@ module Google
830
871
  end
831
872
  end
832
873
 
874
+ class Level
875
+ # @private
876
+ class Representation < Google::Apis::Core::JsonRepresentation
877
+ property :description, as: 'description'
878
+ property :id, as: 'id'
879
+ property :points, as: 'points'
880
+ property :title, as: 'title'
881
+ end
882
+ end
883
+
833
884
  class Link
834
885
  # @private
835
886
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -920,6 +971,15 @@ module Google
920
971
  end
921
972
  end
922
973
 
974
+ class ListRubricsResponse
975
+ # @private
976
+ class Representation < Google::Apis::Core::JsonRepresentation
977
+ property :next_page_token, as: 'nextPageToken'
978
+ collection :rubrics, as: 'rubrics', class: Google::Apis::ClassroomV1::Rubric, decorator: Google::Apis::ClassroomV1::Rubric::Representation
979
+
980
+ end
981
+ end
982
+
923
983
  class ListStudentSubmissionsResponse
924
984
  # @private
925
985
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1051,6 +1111,29 @@ module Google
1051
1111
  end
1052
1112
  end
1053
1113
 
1114
+ class Rubric
1115
+ # @private
1116
+ class Representation < Google::Apis::Core::JsonRepresentation
1117
+ property :course_id, as: 'courseId'
1118
+ property :course_work_id, as: 'courseWorkId'
1119
+ property :creation_time, as: 'creationTime'
1120
+ collection :criteria, as: 'criteria', class: Google::Apis::ClassroomV1::Criterion, decorator: Google::Apis::ClassroomV1::Criterion::Representation
1121
+
1122
+ property :id, as: 'id'
1123
+ property :source_spreadsheet_id, as: 'sourceSpreadsheetId'
1124
+ property :update_time, as: 'updateTime'
1125
+ end
1126
+ end
1127
+
1128
+ class RubricGrade
1129
+ # @private
1130
+ class Representation < Google::Apis::Core::JsonRepresentation
1131
+ property :criterion_id, as: 'criterionId'
1132
+ property :level_id, as: 'levelId'
1133
+ property :points, as: 'points'
1134
+ end
1135
+ end
1136
+
1054
1137
  class SharedDriveFile
1055
1138
  # @private
1056
1139
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1100,6 +1183,8 @@ module Google
1100
1183
  class Representation < Google::Apis::Core::JsonRepresentation
1101
1184
  property :alternate_link, as: 'alternateLink'
1102
1185
  property :assigned_grade, as: 'assignedGrade'
1186
+ hash :assigned_rubric_grades, as: 'assignedRubricGrades', class: Google::Apis::ClassroomV1::RubricGrade, decorator: Google::Apis::ClassroomV1::RubricGrade::Representation
1187
+
1103
1188
  property :assignment_submission, as: 'assignmentSubmission', class: Google::Apis::ClassroomV1::AssignmentSubmission, decorator: Google::Apis::ClassroomV1::AssignmentSubmission::Representation
1104
1189
 
1105
1190
  property :associated_with_developer, as: 'associatedWithDeveloper'
@@ -1108,6 +1193,8 @@ module Google
1108
1193
  property :course_work_type, as: 'courseWorkType'
1109
1194
  property :creation_time, as: 'creationTime'
1110
1195
  property :draft_grade, as: 'draftGrade'
1196
+ hash :draft_rubric_grades, as: 'draftRubricGrades', class: Google::Apis::ClassroomV1::RubricGrade, decorator: Google::Apis::ClassroomV1::RubricGrade::Representation
1197
+
1111
1198
  property :id, as: 'id'
1112
1199
  property :late, as: 'late'
1113
1200
  property :multiple_choice_submission, as: 'multipleChoiceSubmission', class: Google::Apis::ClassroomV1::MultipleChoiceSubmission, decorator: Google::Apis::ClassroomV1::MultipleChoiceSubmission::Representation
@@ -1344,6 +1344,71 @@ module Google
1344
1344
  execute_or_queue_command(command, &block)
1345
1345
  end
1346
1346
 
1347
+ # Updates a rubric. See google.classroom.v1.Rubric for details of which fields
1348
+ # can be updated. Rubric update capabilities are [limited](/classroom/rubrics/
1349
+ # limitations) once grading has started. This request must be made by the Google
1350
+ # Cloud console of the [OAuth client ID](https://support.google.com/cloud/answer/
1351
+ # 6158849) used to create the parent course work item. This method returns the
1352
+ # following error codes: * `PERMISSION_DENIED` if the requesting developer
1353
+ # project didn't create the corresponding course work, if the user isn't
1354
+ # permitted to make the requested modification to the rubric, or for access
1355
+ # errors. This error code is also returned if grading has already started on the
1356
+ # rubric. * `INVALID_ARGUMENT` if the request is malformed and for the following
1357
+ # request error: * `RubricCriteriaInvalidFormat` * `NOT_FOUND` if the requested
1358
+ # course, course work, or rubric doesn't exist or if the user doesn't have
1359
+ # access to the corresponding course work. * `INTERNAL` if grading has already
1360
+ # started on the rubric.
1361
+ # @param [String] course_id
1362
+ # Required. Identifier of the course.
1363
+ # @param [String] course_work_id
1364
+ # Required. Identifier of the course work.
1365
+ # @param [Google::Apis::ClassroomV1::Rubric] rubric_object
1366
+ # @param [String] id
1367
+ # Optional. Identifier of the rubric.
1368
+ # @param [String] update_mask
1369
+ # Optional. Mask that identifies which fields on the rubric to update. This
1370
+ # field is required to do an update. The update fails if invalid fields are
1371
+ # specified. There are multiple options to define the criteria of a rubric: the `
1372
+ # source_spreadsheet_id` and the `criteria` list. Only one of these can be used
1373
+ # at a time to define a rubric. The rubric `criteria` list is fully replaced by
1374
+ # the rubric criteria specified in the update request. For example, if a
1375
+ # criterion or level is missing from the request, it is deleted. New criteria
1376
+ # and levels are added and an ID is assigned. Existing criteria and levels
1377
+ # retain the previously assigned ID if the ID is specified in the request. The
1378
+ # following fields can be specified by teachers: * `criteria` * `
1379
+ # source_spreadsheet_id`
1380
+ # @param [String] fields
1381
+ # Selector specifying which fields to include in a partial response.
1382
+ # @param [String] quota_user
1383
+ # Available to use for quota purposes for server-side applications. Can be any
1384
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1385
+ # @param [Google::Apis::RequestOptions] options
1386
+ # Request-specific options
1387
+ #
1388
+ # @yield [result, err] Result & error if block supplied
1389
+ # @yieldparam result [Google::Apis::ClassroomV1::Rubric] parsed result object
1390
+ # @yieldparam err [StandardError] error object if request failed
1391
+ #
1392
+ # @return [Google::Apis::ClassroomV1::Rubric]
1393
+ #
1394
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1395
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1396
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1397
+ def update_course_course_work_rubric(course_id, course_work_id, rubric_object = nil, id: nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1398
+ command = make_simple_command(:patch, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubric', options)
1399
+ command.request_representation = Google::Apis::ClassroomV1::Rubric::Representation
1400
+ command.request_object = rubric_object
1401
+ command.response_representation = Google::Apis::ClassroomV1::Rubric::Representation
1402
+ command.response_class = Google::Apis::ClassroomV1::Rubric
1403
+ command.params['courseId'] = course_id unless course_id.nil?
1404
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1405
+ command.query['id'] = id unless id.nil?
1406
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1407
+ command.query['fields'] = fields unless fields.nil?
1408
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1409
+ execute_or_queue_command(command, &block)
1410
+ end
1411
+
1347
1412
  # Creates an add-on attachment under a post. Requires the add-on to have
1348
1413
  # permission to create new attachments on the post. This method returns the
1349
1414
  # following error codes: * `PERMISSION_DENIED` for access errors. * `
@@ -1701,6 +1766,246 @@ module Google
1701
1766
  execute_or_queue_command(command, &block)
1702
1767
  end
1703
1768
 
1769
+ # Creates a rubric. This request must be made by the Google Cloud console of the
1770
+ # [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to
1771
+ # create the parent course work item. For further details, see [Rubrics
1772
+ # structure and known limitations](/classroom/rubrics/limitations). This method
1773
+ # returns the following error codes: * `PERMISSION_DENIED` if the requesting
1774
+ # user isn't permitted to create rubrics for course work in the requested course.
1775
+ # * `INTERNAL` if the request has insufficient OAuth scopes. * `
1776
+ # INVALID_ARGUMENT` if the request is malformed and for the following request
1777
+ # error: * `RubricCriteriaInvalidFormat` * `NOT_FOUND` if the requested course
1778
+ # or course work don't exist or the user doesn't have access to the course or
1779
+ # course work. * `FAILED_PRECONDITION` for the following request error: * `
1780
+ # AttachmentNotVisible`
1781
+ # @param [String] course_id
1782
+ # Required. Identifier of the course.
1783
+ # @param [String] course_work_id
1784
+ # Required. Identifier of the course work.
1785
+ # @param [Google::Apis::ClassroomV1::Rubric] rubric_object
1786
+ # @param [String] fields
1787
+ # Selector specifying which fields to include in a partial response.
1788
+ # @param [String] quota_user
1789
+ # Available to use for quota purposes for server-side applications. Can be any
1790
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1791
+ # @param [Google::Apis::RequestOptions] options
1792
+ # Request-specific options
1793
+ #
1794
+ # @yield [result, err] Result & error if block supplied
1795
+ # @yieldparam result [Google::Apis::ClassroomV1::Rubric] parsed result object
1796
+ # @yieldparam err [StandardError] error object if request failed
1797
+ #
1798
+ # @return [Google::Apis::ClassroomV1::Rubric]
1799
+ #
1800
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1801
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1802
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1803
+ def create_course_course_work_rubric(course_id, course_work_id, rubric_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1804
+ command = make_simple_command(:post, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics', options)
1805
+ command.request_representation = Google::Apis::ClassroomV1::Rubric::Representation
1806
+ command.request_object = rubric_object
1807
+ command.response_representation = Google::Apis::ClassroomV1::Rubric::Representation
1808
+ command.response_class = Google::Apis::ClassroomV1::Rubric
1809
+ command.params['courseId'] = course_id unless course_id.nil?
1810
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1811
+ command.query['fields'] = fields unless fields.nil?
1812
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1813
+ execute_or_queue_command(command, &block)
1814
+ end
1815
+
1816
+ # Deletes a rubric. This request must be made by the Google Cloud console of the
1817
+ # [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to
1818
+ # create the corresponding rubric. This method returns the following error codes:
1819
+ # * `PERMISSION_DENIED` if the requesting developer project didn't create the
1820
+ # corresponding rubric, or if the requesting user isn't permitted to delete the
1821
+ # requested rubric. * `NOT_FOUND` if no rubric exists with the requested ID or
1822
+ # the user does not have access to the course, course work, or rubric. * `
1823
+ # INVALID_ARGUMENT` if grading has already started on the rubric.
1824
+ # @param [String] course_id
1825
+ # Required. Identifier of the course.
1826
+ # @param [String] course_work_id
1827
+ # Required. Identifier of the course work.
1828
+ # @param [String] id
1829
+ # Required. Identifier of the rubric.
1830
+ # @param [String] fields
1831
+ # Selector specifying which fields to include in a partial response.
1832
+ # @param [String] quota_user
1833
+ # Available to use for quota purposes for server-side applications. Can be any
1834
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1835
+ # @param [Google::Apis::RequestOptions] options
1836
+ # Request-specific options
1837
+ #
1838
+ # @yield [result, err] Result & error if block supplied
1839
+ # @yieldparam result [Google::Apis::ClassroomV1::Empty] parsed result object
1840
+ # @yieldparam err [StandardError] error object if request failed
1841
+ #
1842
+ # @return [Google::Apis::ClassroomV1::Empty]
1843
+ #
1844
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1845
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1846
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1847
+ def delete_course_course_work_rubric(course_id, course_work_id, id, fields: nil, quota_user: nil, options: nil, &block)
1848
+ command = make_simple_command(:delete, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}', options)
1849
+ command.response_representation = Google::Apis::ClassroomV1::Empty::Representation
1850
+ command.response_class = Google::Apis::ClassroomV1::Empty
1851
+ command.params['courseId'] = course_id unless course_id.nil?
1852
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1853
+ command.params['id'] = id unless id.nil?
1854
+ command.query['fields'] = fields unless fields.nil?
1855
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1856
+ execute_or_queue_command(command, &block)
1857
+ end
1858
+
1859
+ # Returns a rubric. This method returns the following error codes: * `
1860
+ # PERMISSION_DENIED` for access errors. * `INVALID_ARGUMENT` if the request is
1861
+ # malformed. * `NOT_FOUND` if the requested course, course work, or rubric doesn'
1862
+ # t exist or if the user doesn't have access to the corresponding course work.
1863
+ # @param [String] course_id
1864
+ # Required. Identifier of the course.
1865
+ # @param [String] course_work_id
1866
+ # Required. Identifier of the course work.
1867
+ # @param [String] id
1868
+ # Required. Identifier of the rubric.
1869
+ # @param [String] fields
1870
+ # Selector specifying which fields to include in a partial response.
1871
+ # @param [String] quota_user
1872
+ # Available to use for quota purposes for server-side applications. Can be any
1873
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1874
+ # @param [Google::Apis::RequestOptions] options
1875
+ # Request-specific options
1876
+ #
1877
+ # @yield [result, err] Result & error if block supplied
1878
+ # @yieldparam result [Google::Apis::ClassroomV1::Rubric] parsed result object
1879
+ # @yieldparam err [StandardError] error object if request failed
1880
+ #
1881
+ # @return [Google::Apis::ClassroomV1::Rubric]
1882
+ #
1883
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1884
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1885
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1886
+ def get_course_course_work_rubric(course_id, course_work_id, id, fields: nil, quota_user: nil, options: nil, &block)
1887
+ command = make_simple_command(:get, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}', options)
1888
+ command.response_representation = Google::Apis::ClassroomV1::Rubric::Representation
1889
+ command.response_class = Google::Apis::ClassroomV1::Rubric
1890
+ command.params['courseId'] = course_id unless course_id.nil?
1891
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1892
+ command.params['id'] = id unless id.nil?
1893
+ command.query['fields'] = fields unless fields.nil?
1894
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1895
+ execute_or_queue_command(command, &block)
1896
+ end
1897
+
1898
+ # Returns a list of rubrics that the requester is permitted to view. This method
1899
+ # returns the following error codes: * `PERMISSION_DENIED` for access errors. * `
1900
+ # INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested
1901
+ # course or course work doesn't exist or if the user doesn't have access to the
1902
+ # corresponding course work.
1903
+ # @param [String] course_id
1904
+ # Required. Identifier of the course.
1905
+ # @param [String] course_work_id
1906
+ # Required. Identifier of the course work.
1907
+ # @param [Fixnum] page_size
1908
+ # The maximum number of rubrics to return. If unspecified, at most 1 rubric is
1909
+ # returned. The maximum value is 1; values above 1 are coerced to 1.
1910
+ # @param [String] page_token
1911
+ # nextPageToken value returned from a previous list call, indicating that the
1912
+ # subsequent page of results should be returned. The list request must be
1913
+ # otherwise identical to the one that resulted in this token.
1914
+ # @param [String] fields
1915
+ # Selector specifying which fields to include in a partial response.
1916
+ # @param [String] quota_user
1917
+ # Available to use for quota purposes for server-side applications. Can be any
1918
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1919
+ # @param [Google::Apis::RequestOptions] options
1920
+ # Request-specific options
1921
+ #
1922
+ # @yield [result, err] Result & error if block supplied
1923
+ # @yieldparam result [Google::Apis::ClassroomV1::ListRubricsResponse] parsed result object
1924
+ # @yieldparam err [StandardError] error object if request failed
1925
+ #
1926
+ # @return [Google::Apis::ClassroomV1::ListRubricsResponse]
1927
+ #
1928
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1929
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1930
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1931
+ def list_course_course_work_rubrics(course_id, course_work_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1932
+ command = make_simple_command(:get, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics', options)
1933
+ command.response_representation = Google::Apis::ClassroomV1::ListRubricsResponse::Representation
1934
+ command.response_class = Google::Apis::ClassroomV1::ListRubricsResponse
1935
+ command.params['courseId'] = course_id unless course_id.nil?
1936
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1937
+ command.query['pageSize'] = page_size unless page_size.nil?
1938
+ command.query['pageToken'] = page_token unless page_token.nil?
1939
+ command.query['fields'] = fields unless fields.nil?
1940
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1941
+ execute_or_queue_command(command, &block)
1942
+ end
1943
+
1944
+ # Updates a rubric. See google.classroom.v1.Rubric for details of which fields
1945
+ # can be updated. Rubric update capabilities are [limited](/classroom/rubrics/
1946
+ # limitations) once grading has started. This request must be made by the Google
1947
+ # Cloud console of the [OAuth client ID](https://support.google.com/cloud/answer/
1948
+ # 6158849) used to create the parent course work item. This method returns the
1949
+ # following error codes: * `PERMISSION_DENIED` if the requesting developer
1950
+ # project didn't create the corresponding course work, if the user isn't
1951
+ # permitted to make the requested modification to the rubric, or for access
1952
+ # errors. This error code is also returned if grading has already started on the
1953
+ # rubric. * `INVALID_ARGUMENT` if the request is malformed and for the following
1954
+ # request error: * `RubricCriteriaInvalidFormat` * `NOT_FOUND` if the requested
1955
+ # course, course work, or rubric doesn't exist or if the user doesn't have
1956
+ # access to the corresponding course work. * `INTERNAL` if grading has already
1957
+ # started on the rubric.
1958
+ # @param [String] course_id
1959
+ # Required. Identifier of the course.
1960
+ # @param [String] course_work_id
1961
+ # Required. Identifier of the course work.
1962
+ # @param [String] id
1963
+ # Optional. Identifier of the rubric.
1964
+ # @param [Google::Apis::ClassroomV1::Rubric] rubric_object
1965
+ # @param [String] update_mask
1966
+ # Optional. Mask that identifies which fields on the rubric to update. This
1967
+ # field is required to do an update. The update fails if invalid fields are
1968
+ # specified. There are multiple options to define the criteria of a rubric: the `
1969
+ # source_spreadsheet_id` and the `criteria` list. Only one of these can be used
1970
+ # at a time to define a rubric. The rubric `criteria` list is fully replaced by
1971
+ # the rubric criteria specified in the update request. For example, if a
1972
+ # criterion or level is missing from the request, it is deleted. New criteria
1973
+ # and levels are added and an ID is assigned. Existing criteria and levels
1974
+ # retain the previously assigned ID if the ID is specified in the request. The
1975
+ # following fields can be specified by teachers: * `criteria` * `
1976
+ # source_spreadsheet_id`
1977
+ # @param [String] fields
1978
+ # Selector specifying which fields to include in a partial response.
1979
+ # @param [String] quota_user
1980
+ # Available to use for quota purposes for server-side applications. Can be any
1981
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1982
+ # @param [Google::Apis::RequestOptions] options
1983
+ # Request-specific options
1984
+ #
1985
+ # @yield [result, err] Result & error if block supplied
1986
+ # @yieldparam result [Google::Apis::ClassroomV1::Rubric] parsed result object
1987
+ # @yieldparam err [StandardError] error object if request failed
1988
+ #
1989
+ # @return [Google::Apis::ClassroomV1::Rubric]
1990
+ #
1991
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1992
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1993
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1994
+ def patch_course_course_work_rubric(course_id, course_work_id, id, rubric_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1995
+ command = make_simple_command(:patch, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}', options)
1996
+ command.request_representation = Google::Apis::ClassroomV1::Rubric::Representation
1997
+ command.request_object = rubric_object
1998
+ command.response_representation = Google::Apis::ClassroomV1::Rubric::Representation
1999
+ command.response_class = Google::Apis::ClassroomV1::Rubric
2000
+ command.params['courseId'] = course_id unless course_id.nil?
2001
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
2002
+ command.params['id'] = id unless id.nil?
2003
+ command.query['updateMask'] = update_mask unless update_mask.nil?
2004
+ command.query['fields'] = fields unless fields.nil?
2005
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2006
+ execute_or_queue_command(command, &block)
2007
+ end
2008
+
1704
2009
  # Returns a student submission. * `PERMISSION_DENIED` if the requesting user is
1705
2010
  # not permitted to access the requested course, course work, or student
1706
2011
  # submission or for access errors. * `INVALID_ARGUMENT` if the request is
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-classroom_v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.36.0
4
+ version: 0.37.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-13 00:00:00.000000000 Z
11
+ date: 2024-12-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-classroom_v1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-classroom_v1/v0.36.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-classroom_v1/v0.37.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-classroom_v1
63
63
  post_install_message:
64
64
  rdoc_options: []
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  requirements: []
78
- rubygems_version: 3.5.21
78
+ rubygems_version: 3.5.22
79
79
  signing_key:
80
80
  specification_version: 4
81
81
  summary: Simple REST client for Google Classroom API V1