google-apis-classroom_v1 0.36.0 → 0.38.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: 7fc456c834d9e586b95a3f5316900a744d00f9a368fb49b0d47ff14c57af50dc
4
+ data.tar.gz: ab21ced080d89f0d418d8e41ff466cbcfba4e048476755c7a091ad59d45d162f
5
5
  SHA512:
6
- metadata.gz: d90ca0d84b6c9ed23f4d4ee7bb4128ef39a9ecfa984ea8b3d7f4118e8c08f50e79aafa25ab8e36940a193a5f885707552fdc969486fae2f504ca07b77762ac49
7
- data.tar.gz: bc86606c45e28313c715de1069ee2a0121255cf692aae3fb508dd92d9c57526fa1623cc8c483710a0a38052b11fab9930688d93540ff15cab42f8875a3a4fb32
6
+ metadata.gz: c6bb86acf406d34546317f8f1093a02705abb962a0c6c0232902891073039907f0d5f641b919d2b00fdb46f51fc95ac423cb971ced7866f38506c9a269d2f127
7
+ data.tar.gz: d8cd29cb4d9a1db0f12224efd3e83fbb5de564fdf90f4c69559dbb922dca9705375a0a1669dbbbd233cc8456e69146a01a3ba2fa22e54ee7d5417f80c4cc7ce8
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Release history for google-apis-classroom_v1
2
2
 
3
+ ### v0.38.0 (2024-12-15)
4
+
5
+ * Regenerated from discovery document revision 20241209
6
+
7
+ ### v0.37.0 (2024-12-02)
8
+
9
+ * Regenerated from discovery document revision 20241119
10
+
3
11
  ### v0.36.0 (2024-10-13)
4
12
 
5
13
  * 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.38.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 = "20241209"
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,74 @@ 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. The requesting user and course owner
1350
+ # must have rubrics creation capabilities. For details, see [licensing
1351
+ # requirements](https://developers.google.com/classroom/rubrics/limitations#
1352
+ # license-requirements). This request must be made by the Google Cloud console
1353
+ # of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used
1354
+ # to create the parent course work item. This method returns the following error
1355
+ # codes: * `PERMISSION_DENIED` if the requesting developer project didn't create
1356
+ # the corresponding course work, if the user isn't permitted to make the
1357
+ # requested modification to the rubric, or for access errors. This error code is
1358
+ # also returned if grading has already started on the rubric. * `
1359
+ # INVALID_ARGUMENT` if the request is malformed and for the following request
1360
+ # error: * `RubricCriteriaInvalidFormat` * `NOT_FOUND` if the requested course,
1361
+ # course work, or rubric doesn't exist or if the user doesn't have access to the
1362
+ # corresponding course work. * `INTERNAL` if grading has already started on the
1363
+ # rubric.
1364
+ # @param [String] course_id
1365
+ # Required. Identifier of the course.
1366
+ # @param [String] course_work_id
1367
+ # Required. Identifier of the course work.
1368
+ # @param [Google::Apis::ClassroomV1::Rubric] rubric_object
1369
+ # @param [String] id
1370
+ # Optional. Identifier of the rubric.
1371
+ # @param [String] update_mask
1372
+ # Optional. Mask that identifies which fields on the rubric to update. This
1373
+ # field is required to do an update. The update fails if invalid fields are
1374
+ # specified. There are multiple options to define the criteria of a rubric: the `
1375
+ # source_spreadsheet_id` and the `criteria` list. Only one of these can be used
1376
+ # at a time to define a rubric. The rubric `criteria` list is fully replaced by
1377
+ # the rubric criteria specified in the update request. For example, if a
1378
+ # criterion or level is missing from the request, it is deleted. New criteria
1379
+ # and levels are added and an ID is assigned. Existing criteria and levels
1380
+ # retain the previously assigned ID if the ID is specified in the request. The
1381
+ # following fields can be specified by teachers: * `criteria` * `
1382
+ # source_spreadsheet_id`
1383
+ # @param [String] fields
1384
+ # Selector specifying which fields to include in a partial response.
1385
+ # @param [String] quota_user
1386
+ # Available to use for quota purposes for server-side applications. Can be any
1387
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1388
+ # @param [Google::Apis::RequestOptions] options
1389
+ # Request-specific options
1390
+ #
1391
+ # @yield [result, err] Result & error if block supplied
1392
+ # @yieldparam result [Google::Apis::ClassroomV1::Rubric] parsed result object
1393
+ # @yieldparam err [StandardError] error object if request failed
1394
+ #
1395
+ # @return [Google::Apis::ClassroomV1::Rubric]
1396
+ #
1397
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1398
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1399
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1400
+ 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)
1401
+ command = make_simple_command(:patch, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubric', options)
1402
+ command.request_representation = Google::Apis::ClassroomV1::Rubric::Representation
1403
+ command.request_object = rubric_object
1404
+ command.response_representation = Google::Apis::ClassroomV1::Rubric::Representation
1405
+ command.response_class = Google::Apis::ClassroomV1::Rubric
1406
+ command.params['courseId'] = course_id unless course_id.nil?
1407
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1408
+ command.query['id'] = id unless id.nil?
1409
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1410
+ command.query['fields'] = fields unless fields.nil?
1411
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1412
+ execute_or_queue_command(command, &block)
1413
+ end
1414
+
1347
1415
  # Creates an add-on attachment under a post. Requires the add-on to have
1348
1416
  # permission to create new attachments on the post. This method returns the
1349
1417
  # following error codes: * `PERMISSION_DENIED` for access errors. * `
@@ -1701,6 +1769,254 @@ module Google
1701
1769
  execute_or_queue_command(command, &block)
1702
1770
  end
1703
1771
 
1772
+ # Creates a rubric. The requesting user and course owner must have rubrics
1773
+ # creation capabilities. For details, see [licensing requirements](https://
1774
+ # developers.google.com/classroom/rubrics/limitations#license-requirements). For
1775
+ # further details, see [Rubrics structure and known limitations](/classroom/
1776
+ # rubrics/limitations). This request must be made by the Google Cloud console of
1777
+ # the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to
1778
+ # create the parent course work item. This method returns the following error
1779
+ # codes: * `PERMISSION_DENIED` if the requesting user isn't permitted to create
1780
+ # rubrics for course work in the requested course. * `INTERNAL` if the request
1781
+ # has insufficient OAuth scopes. * `INVALID_ARGUMENT` if the request is
1782
+ # malformed and for the following request error: * `RubricCriteriaInvalidFormat`
1783
+ # * `NOT_FOUND` if the requested course or course work don't exist or the user
1784
+ # doesn't have access to the course or course work. * `FAILED_PRECONDITION` for
1785
+ # the following request error: * `AttachmentNotVisible`
1786
+ # @param [String] course_id
1787
+ # Required. Identifier of the course.
1788
+ # @param [String] course_work_id
1789
+ # Required. Identifier of the course work.
1790
+ # @param [Google::Apis::ClassroomV1::Rubric] rubric_object
1791
+ # @param [String] fields
1792
+ # Selector specifying which fields to include in a partial response.
1793
+ # @param [String] quota_user
1794
+ # Available to use for quota purposes for server-side applications. Can be any
1795
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1796
+ # @param [Google::Apis::RequestOptions] options
1797
+ # Request-specific options
1798
+ #
1799
+ # @yield [result, err] Result & error if block supplied
1800
+ # @yieldparam result [Google::Apis::ClassroomV1::Rubric] parsed result object
1801
+ # @yieldparam err [StandardError] error object if request failed
1802
+ #
1803
+ # @return [Google::Apis::ClassroomV1::Rubric]
1804
+ #
1805
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1806
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1807
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1808
+ def create_course_course_work_rubric(course_id, course_work_id, rubric_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1809
+ command = make_simple_command(:post, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics', options)
1810
+ command.request_representation = Google::Apis::ClassroomV1::Rubric::Representation
1811
+ command.request_object = rubric_object
1812
+ command.response_representation = Google::Apis::ClassroomV1::Rubric::Representation
1813
+ command.response_class = Google::Apis::ClassroomV1::Rubric
1814
+ command.params['courseId'] = course_id unless course_id.nil?
1815
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1816
+ command.query['fields'] = fields unless fields.nil?
1817
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1818
+ execute_or_queue_command(command, &block)
1819
+ end
1820
+
1821
+ # Deletes a rubric. The requesting user and course owner must have rubrics
1822
+ # creation capabilities. For details, see [licensing requirements](https://
1823
+ # developers.google.com/classroom/rubrics/limitations#license-requirements).
1824
+ # This request must be made by the Google Cloud console of the [OAuth client ID](
1825
+ # https://support.google.com/cloud/answer/6158849) used to create the
1826
+ # corresponding rubric. This method returns the following error codes: * `
1827
+ # PERMISSION_DENIED` if the requesting developer project didn't create the
1828
+ # corresponding rubric, or if the requesting user isn't permitted to delete the
1829
+ # requested rubric. * `NOT_FOUND` if no rubric exists with the requested ID or
1830
+ # the user does not have access to the course, course work, or rubric. * `
1831
+ # INVALID_ARGUMENT` if grading has already started on the rubric.
1832
+ # @param [String] course_id
1833
+ # Required. Identifier of the course.
1834
+ # @param [String] course_work_id
1835
+ # Required. Identifier of the course work.
1836
+ # @param [String] id
1837
+ # Required. Identifier of the rubric.
1838
+ # @param [String] fields
1839
+ # Selector specifying which fields to include in a partial response.
1840
+ # @param [String] quota_user
1841
+ # Available to use for quota purposes for server-side applications. Can be any
1842
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1843
+ # @param [Google::Apis::RequestOptions] options
1844
+ # Request-specific options
1845
+ #
1846
+ # @yield [result, err] Result & error if block supplied
1847
+ # @yieldparam result [Google::Apis::ClassroomV1::Empty] parsed result object
1848
+ # @yieldparam err [StandardError] error object if request failed
1849
+ #
1850
+ # @return [Google::Apis::ClassroomV1::Empty]
1851
+ #
1852
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1853
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1854
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1855
+ def delete_course_course_work_rubric(course_id, course_work_id, id, fields: nil, quota_user: nil, options: nil, &block)
1856
+ command = make_simple_command(:delete, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}', options)
1857
+ command.response_representation = Google::Apis::ClassroomV1::Empty::Representation
1858
+ command.response_class = Google::Apis::ClassroomV1::Empty
1859
+ command.params['courseId'] = course_id unless course_id.nil?
1860
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1861
+ command.params['id'] = id unless id.nil?
1862
+ command.query['fields'] = fields unless fields.nil?
1863
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1864
+ execute_or_queue_command(command, &block)
1865
+ end
1866
+
1867
+ # Returns a rubric. This method returns the following error codes: * `
1868
+ # PERMISSION_DENIED` for access errors. * `INVALID_ARGUMENT` if the request is
1869
+ # malformed. * `NOT_FOUND` if the requested course, course work, or rubric doesn'
1870
+ # t exist or if the user doesn't have access to the corresponding course work.
1871
+ # @param [String] course_id
1872
+ # Required. Identifier of the course.
1873
+ # @param [String] course_work_id
1874
+ # Required. Identifier of the course work.
1875
+ # @param [String] id
1876
+ # Required. Identifier of the rubric.
1877
+ # @param [String] fields
1878
+ # Selector specifying which fields to include in a partial response.
1879
+ # @param [String] quota_user
1880
+ # Available to use for quota purposes for server-side applications. Can be any
1881
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1882
+ # @param [Google::Apis::RequestOptions] options
1883
+ # Request-specific options
1884
+ #
1885
+ # @yield [result, err] Result & error if block supplied
1886
+ # @yieldparam result [Google::Apis::ClassroomV1::Rubric] parsed result object
1887
+ # @yieldparam err [StandardError] error object if request failed
1888
+ #
1889
+ # @return [Google::Apis::ClassroomV1::Rubric]
1890
+ #
1891
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1892
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1893
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1894
+ def get_course_course_work_rubric(course_id, course_work_id, id, fields: nil, quota_user: nil, options: nil, &block)
1895
+ command = make_simple_command(:get, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}', options)
1896
+ command.response_representation = Google::Apis::ClassroomV1::Rubric::Representation
1897
+ command.response_class = Google::Apis::ClassroomV1::Rubric
1898
+ command.params['courseId'] = course_id unless course_id.nil?
1899
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1900
+ command.params['id'] = id unless id.nil?
1901
+ command.query['fields'] = fields unless fields.nil?
1902
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1903
+ execute_or_queue_command(command, &block)
1904
+ end
1905
+
1906
+ # Returns a list of rubrics that the requester is permitted to view. This method
1907
+ # returns the following error codes: * `PERMISSION_DENIED` for access errors. * `
1908
+ # INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested
1909
+ # course or course work doesn't exist or if the user doesn't have access to the
1910
+ # corresponding course work.
1911
+ # @param [String] course_id
1912
+ # Required. Identifier of the course.
1913
+ # @param [String] course_work_id
1914
+ # Required. Identifier of the course work.
1915
+ # @param [Fixnum] page_size
1916
+ # The maximum number of rubrics to return. If unspecified, at most 1 rubric is
1917
+ # returned. The maximum value is 1; values above 1 are coerced to 1.
1918
+ # @param [String] page_token
1919
+ # nextPageToken value returned from a previous list call, indicating that the
1920
+ # subsequent page of results should be returned. The list request must be
1921
+ # otherwise identical to the one that resulted in this token.
1922
+ # @param [String] fields
1923
+ # Selector specifying which fields to include in a partial response.
1924
+ # @param [String] quota_user
1925
+ # Available to use for quota purposes for server-side applications. Can be any
1926
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1927
+ # @param [Google::Apis::RequestOptions] options
1928
+ # Request-specific options
1929
+ #
1930
+ # @yield [result, err] Result & error if block supplied
1931
+ # @yieldparam result [Google::Apis::ClassroomV1::ListRubricsResponse] parsed result object
1932
+ # @yieldparam err [StandardError] error object if request failed
1933
+ #
1934
+ # @return [Google::Apis::ClassroomV1::ListRubricsResponse]
1935
+ #
1936
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1937
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1938
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1939
+ 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)
1940
+ command = make_simple_command(:get, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics', options)
1941
+ command.response_representation = Google::Apis::ClassroomV1::ListRubricsResponse::Representation
1942
+ command.response_class = Google::Apis::ClassroomV1::ListRubricsResponse
1943
+ command.params['courseId'] = course_id unless course_id.nil?
1944
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
1945
+ command.query['pageSize'] = page_size unless page_size.nil?
1946
+ command.query['pageToken'] = page_token unless page_token.nil?
1947
+ command.query['fields'] = fields unless fields.nil?
1948
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1949
+ execute_or_queue_command(command, &block)
1950
+ end
1951
+
1952
+ # Updates a rubric. See google.classroom.v1.Rubric for details of which fields
1953
+ # can be updated. Rubric update capabilities are [limited](/classroom/rubrics/
1954
+ # limitations) once grading has started. The requesting user and course owner
1955
+ # must have rubrics creation capabilities. For details, see [licensing
1956
+ # requirements](https://developers.google.com/classroom/rubrics/limitations#
1957
+ # license-requirements). This request must be made by the Google Cloud console
1958
+ # of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used
1959
+ # to create the parent course work item. This method returns the following error
1960
+ # codes: * `PERMISSION_DENIED` if the requesting developer project didn't create
1961
+ # the corresponding course work, if the user isn't permitted to make the
1962
+ # requested modification to the rubric, or for access errors. This error code is
1963
+ # also returned if grading has already started on the rubric. * `
1964
+ # INVALID_ARGUMENT` if the request is malformed and for the following request
1965
+ # error: * `RubricCriteriaInvalidFormat` * `NOT_FOUND` if the requested course,
1966
+ # course work, or rubric doesn't exist or if the user doesn't have access to the
1967
+ # corresponding course work. * `INTERNAL` if grading has already started on the
1968
+ # rubric.
1969
+ # @param [String] course_id
1970
+ # Required. Identifier of the course.
1971
+ # @param [String] course_work_id
1972
+ # Required. Identifier of the course work.
1973
+ # @param [String] id
1974
+ # Optional. Identifier of the rubric.
1975
+ # @param [Google::Apis::ClassroomV1::Rubric] rubric_object
1976
+ # @param [String] update_mask
1977
+ # Optional. Mask that identifies which fields on the rubric to update. This
1978
+ # field is required to do an update. The update fails if invalid fields are
1979
+ # specified. There are multiple options to define the criteria of a rubric: the `
1980
+ # source_spreadsheet_id` and the `criteria` list. Only one of these can be used
1981
+ # at a time to define a rubric. The rubric `criteria` list is fully replaced by
1982
+ # the rubric criteria specified in the update request. For example, if a
1983
+ # criterion or level is missing from the request, it is deleted. New criteria
1984
+ # and levels are added and an ID is assigned. Existing criteria and levels
1985
+ # retain the previously assigned ID if the ID is specified in the request. The
1986
+ # following fields can be specified by teachers: * `criteria` * `
1987
+ # source_spreadsheet_id`
1988
+ # @param [String] fields
1989
+ # Selector specifying which fields to include in a partial response.
1990
+ # @param [String] quota_user
1991
+ # Available to use for quota purposes for server-side applications. Can be any
1992
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1993
+ # @param [Google::Apis::RequestOptions] options
1994
+ # Request-specific options
1995
+ #
1996
+ # @yield [result, err] Result & error if block supplied
1997
+ # @yieldparam result [Google::Apis::ClassroomV1::Rubric] parsed result object
1998
+ # @yieldparam err [StandardError] error object if request failed
1999
+ #
2000
+ # @return [Google::Apis::ClassroomV1::Rubric]
2001
+ #
2002
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2003
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2004
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2005
+ 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)
2006
+ command = make_simple_command(:patch, 'v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}', options)
2007
+ command.request_representation = Google::Apis::ClassroomV1::Rubric::Representation
2008
+ command.request_object = rubric_object
2009
+ command.response_representation = Google::Apis::ClassroomV1::Rubric::Representation
2010
+ command.response_class = Google::Apis::ClassroomV1::Rubric
2011
+ command.params['courseId'] = course_id unless course_id.nil?
2012
+ command.params['courseWorkId'] = course_work_id unless course_work_id.nil?
2013
+ command.params['id'] = id unless id.nil?
2014
+ command.query['updateMask'] = update_mask unless update_mask.nil?
2015
+ command.query['fields'] = fields unless fields.nil?
2016
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2017
+ execute_or_queue_command(command, &block)
2018
+ end
2019
+
1704
2020
  # Returns a student submission. * `PERMISSION_DENIED` if the requesting user is
1705
2021
  # not permitted to access the requested course, course work, or student
1706
2022
  # 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.38.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-15 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.38.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.23
79
79
  signing_key:
80
80
  specification_version: 4
81
81
  summary: Simple REST client for Google Classroom API V1